그래서 전달 함수가 있습니다.
$$ H [z] = 1 + \ sqrt {2} z ^ {-1} + z ^ {-2} $$
그리고 저는 $ H (e ^ {j \ omega}) $ for $ \ omega = 0, \ pi / 4, \ pi / 4 \ ldots $
오일러의 공식을 사용하여 수동으로 계산을 수행했지만 이제 할당은 MATLAB에서 freqz
를 사용하여이 플롯을 플롯과 비교해달라고 요청했습니다. 이러한 유형의 전달 함수로이를 수행 할 수있는 방법에 대한 지침을 찾을 수없는 것 같습니다.
댓글
Answer
분모가 $ 1 $와 같기 때문에 a = 1
를 지정하기 만하면됩니다. 따라서
b = [1,sqrt(2),1]; a = 1; N = 512; [H,w] = freqz(b,a,N);
이를 분석 솔루션과 비교할 수 있습니다.
H2 = 1 + sqrt(2)*exp(-1i*w) + exp(-1i*2*w); max(abs(H2-H)) % 8.0825e-16
댓글
- 죄송합니다. ' 정말 처음입니다.하지만 여기서 N은 무엇을 나타 냅니까?
- @Freddie : ' 주파수 응답이 평가되는 (등거리) 주파수 포인트의 수입니다.
freqz
의 Matlab 설명서를 확인하세요.
Answer
특정 주파수에서만 평가하려면 두 개 이상의 주파수가 포함 된 주파수 벡터를 지정해야합니다 ( MATLAB “s freqz ). 다음은 주파수 $ \ omega = 0, \ pi / 4, \ pi / 2, 3 \ pi / 4, \ text {and} \ \ pi $ .
>> [h, w] = freqz([1, sqrt(2), 1], 1, [0 , pi/4, pi/2, 3*pi/4 pi]) h = 3.4142 + 0.0000i 2.0000 - 2.0000i 0.0000 - 1.4142i -0.0000 - 0.0000i 0.5858 + 0.0000i w = 0 0.7854 1.5708 2.3562 3.1416 >>
위의 결과를 시각화하려면 크기를 참조하세요. 응답, 즉 $ 20 \ log_ {10} \ left (\ lvert H \ left (\ omega \ right) \ rvert \ right) $ , 5 개 주파수로 아래에 표시 빨간색으로 표시됩니다.
$ \ pm 3 \ pi / 4 $ 의 경우 (위의 코드 결과 참조) $$ H \ left (\피 m \ frac {3 \ pi} {4} \ right) = 0 \ implies 20 \ log_ {10} \ left (\ bigg \ lvert H \ left (\ pm \ frac {3 \ pi} {4} \ right) \ bigg \ rvert \ right) =-\ infty $$ 0이 $$ z =-\ frac {\ sqrt {2}}에 있다는 사실에서도 {2} \ pm j \ frac {\ sqrt {2}} {2} \ quad \ text {with} \ quad z = e ^ {j \ omega} $$ $ \ omega = 3 \ pi / 4 $ 는 위의 단면 크기 응답 플롯에 표시되지 않지만 에서 점근 추세를 볼 수 있습니다. $ 3 \ pi / 4 $ .
b
)가 있습니다. 필터의. 따라서freqz
및 짜잔에 연결하기 만하면됩니다.