filtfilt
Filtrado digital de fase cero
Descripción
realiza un filtrado digital de fase cero procesando los datos de entrada y
= filtfilt(b
,a
,x
)x
tanto en dirección directa como inversa. Después de filtrar los datos en dirección directa, la función establece una correspondencia con las condiciones iniciales para minimizar los transitorios de inicio y final, invierte la secuencia filtrada y vuelve a pasar la secuencia invertida por el filtro. El resultado tiene estas características:
Distorsión de fase cero
Una función de transferencia de filtro igual a la magnitud al cuadrado de la función de transferencia del filtro original
Un orden del filtro que es el doble del orden de filtro especificado por
b
ya
filtfilt
implementa el algoritmo propuesto por Gustafsson [1].
No utilice filtfilt
con filtros FIR diferenciadores y de Hilbert, porque el funcionamiento de esos filtros depende en gran medida de su respuesta de fase.
filtra de fase cero los datos de entrada y
= filtfilt(d
,x
)x
utilizando un filtro digital d
. Utilice designfilt
para generar d
según las especificaciones de frecuencia-respuesta.
Ejemplos
Argumentos de entrada
Argumentos de salida
Referencias
[1] Gustafsson, F. “Determining the initial states in forward-backward filtering.” IEEE® Transactions on Signal Processing. Vol. 44, April 1996, pp. 988–992. https://doi.org/10.1109/78.492552.
[2] Mitra, Sanjit K. Digital Signal Processing. 2nd Ed. New York: McGraw-Hill, 2001.
[3] Oppenheim, Alan V., and Ronald W. Schafer, with John R. Buck. Discrete-Time Signal Processing. 2nd Ed. Upper Saddle River, NJ: Prentice Hall, 1999.
Capacidades ampliadas
Historial de versiones
Introducido antes de R2006a