Funciones > Procesamiento de señales > Filtrado digital > Ejemplo: Filtrado de fase cero
  
Ejemplo: Filtrado de fase cero
Utilice la función filtfilt para calcular la respuesta de fase cero de un filtro mediante un modelo de filtrado de avance-retroceso.
1. Utilice la función butter para obtener los coeficientes de un filtro Butterworth análogo de orden 2.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
2. Utilice la función iirlow para obtener los coeficientes de un filtro IIR de paso bajo con frecuencia de corte de 0.25.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
3. Utilice las funciones gain y arg para definir la respuesta de fase y magnitud del filtro.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
4. Vuelva a definir la respuesta de fase y magnitud del filtro para todos los valores de f, pero en términos de p.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
5. Trace la respuesta de magnitud y, a continuación, utilice marcadores para mostrar su magnitud en la frecuencia de corte.
Pulse aquí para copiar esta expresión
6. Trace la respuesta de fase y, a continuación, utilice marcadores para mostrar su valor en la frecuencia de corte.
Pulse aquí para copiar esta expresión
7. Defina y trace una señal de pulso de muestra.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
La entrada consta de una impulsión en el punto medio de la señal.
8. Utilice la función filtfilt para calcular la salida de fase cero.
Pulse aquí para copiar esta expresión
9. Utilice la función dft para ver el efecto que tiene el filtro en la señal calculando las transformadas de Fourier de ambas señales y trazando la magnitud y la fase de Y.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
10. Utilice la función mag para mostrar que la función de transferencia, proporcionada por la relación de magnitudes de X y Y, tiene la forma de corte Butterworth esperada.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
11. Trace la respuesta de magnitud junto con la función de transferencia.
Pulse aquí para copiar esta expresión
12. Utilice la función arg para definir la diferencia de fase entre los argumentos principales de X y Y.
Pulse aquí para copiar esta expresión
13. Trace la respuesta de magnitud y la diferencia de fase entre X y Y.
Pulse aquí para copiar esta expresión
El efecto de la función filtfilt consiste en filtrar dos veces la magnitud de la señal, tal como se muestra en el gráfico, con la diferencia de que el cambio de fase es cero en vez de la fase no lineal del filtro original.
Cuando se interprete el gráfico de fases, se debe recordar que las fases de -2π y 0 son equivalentes. Si la magnitud de Y es muy pequeña, como en el caso de las frecuencias muy por encima del corte, la fase puede ser insignificante debido al ruido numérico.