위상 응답
MATLAB® 함수를 사용하여 필터의 위상 응답을 추출할 수 있습니다. 주어진 주파수 응답에 대해 함수 abs
는 크기를 반환하고 angle
은 위상각(단위: 라디안)을 반환합니다. 버터워스 필터의 크기와 위상을 확인하려면 다음을 입력하십시오.
d = designfilt("lowpassiir",FilterOrder=9, ... HalfPowerFrequency=0.4); freqz(d)
unwrap
함수는 주파수 분석에서도 유용합니다. unwrap
은 필요에 따라 ±360°의 배수를 더하여 위상을 펼침으로써 360° 위상 불연속 지점에서 위상을 연속으로 만듭니다. unwrap
이 얼마나 유용한지 살펴보기 위해 다음과 같이 25차 저역통과 FIR 필터를 설계해 보겠습니다.
h = fir1(25,0.4);
freqz
로 주파수 응답을 구하고 위상을 도 단위로 플로팅합니다.
[H,f] = freqz(h,1,512,2); plot(f,angle(H)*180/pi) grid
360° 비약(angle
내의 아크탄젠트 함수로 인해 생성된 아티팩트)과 주파수 응답에서 0을 나타내는 180° 비약을 구분하기가 어렵습니다. unwrap
은 360° 비약을 제거합니다.
plot(f,unwrap(angle(H))*180/pi)
또한 phasez
를 사용하여 펼쳐진 위상을 확인할 수도 있습니다.
phasez(h,1)