Respuesta de fase
MATLAB® incluye funciones para extraer la respuesta de fase de un filtro. A partir de una respuesta en frecuencia, la función abs devuelve la magnitud y angle devuelve el ángulo de la fase en radianes. Para ver la magnitud y la fase de un filtro Butterworth:
d = designfilt("lowpassiir",FilterOrder=9, ... HalfPowerFrequency=0.4); freqz(d)

La función unwrap también es útil en el análisis de frecuencia. unwrap desenvuelve la fase para hacerla continua en discontinuidades de fase de 360° añadiendo múltiplos de ±360° según se requiera. Para ver cómo unwrap le puede resultar de utilidad, diseñe un filtro paso bajo FIR de 25.º orden:
h = fir1(25,0.4);
Obtenga la respuesta en frecuencia con freqz y represente la fase en grados:
[H,f] = freqz(h,1,512,2); plot(f,angle(H)*180/pi) grid

Resulta difícil distinguir los saltos de 360° (un artefacto de la función arctangent dentro de angle) de los saltos de 180° que expresan ceros en la respuesta en frecuencia. unwrap elimina los saltos de 360°:
plot(f,unwrap(angle(H))*180/pi)

También puede utilizar phasez para ver la fase no envuelta:
phasez(h,1)
