Så jag har överföringsfunktionen:
$$ H [z] = 1 + \ sqrt {2} z ^ {- 1} + z ^ {- 2} $$
Och jag måste utvärdera $ H (e ^ {j \ omega}) $ för $ \ omega = 0, \ pi / 4, \ pi / 4 \ ldots $
Jag har gjort beräkningarna manuellt med Eulers formel, men nu är uppgiften ber mig att jämföra dessa tomter med tomterna med freqz
i MATLAB. Jag kan inte tycka hitta instruktioner om hur jag kan göra det med denna typ av överföringsfunktion.
Kommentarer
Svara
Du anger helt enkelt a = 1
(eftersom nämnaren är lika med $ 1 $). Så du får
b = [1,sqrt(2),1]; a = 1; N = 512; [H,w] = freqz(b,a,N);
Du kan jämföra detta med den analytiska lösningen:
H2 = 1 + sqrt(2)*exp(-1i*w) + exp(-1i*2*w); max(abs(H2-H)) % 8.0825e-16
Kommentarer
- Tyvärr är jag ' verkligen ny på det här, men vad representerar N här?
- @Freddie: Det ' är antalet (lika stora) frekvenspunkter vid vilka frekvenssvaret utvärderas. Kolla in Matlab-dokumentationen för
freqz
.
Svar
För utvärderingen endast vid specifika frekvenser måste du ange frekvensvektorn med minst två frekvenser i den (se MATLAB ”s freqz ). Nedan visas MATLAB-koden för utvärderingen vid frekvenserna $ \ omega = 0, \ pi / 4, \ pi / 2, 3 \ pi / 4, \ text {och} \ \ 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 >>
För visualisering av resultaten ovan, se storleken svar, dvs. $ 20 \ log_ {10} \ left (\ lvert H \ left (\ omega \ right) \ rvert \ right) $ , ritad nedan med de fem frekvenserna markerade med rött.
Observera att för $ \ pm 3 \ pi / 4 $ har du det (se kodresultat ovan) $$ H \ left (\ s m \ frac {3 \ pi} {4} \ höger) = 0 \ innebär 20 \ log_ {10} \ vänster (\ bigg \ lvert H \ vänster (\ pm \ frac {3 \ pi} {4} \ höger) \ bigg \ rvert \ right) = – \ infty $$ Också från det faktum att nollorna är vid $$ z = – \ frac {\ sqrt {2}} {2} \ pm j \ frac {\ sqrt {2}} {2} \ quad \ text {med} \ quad z = e ^ {j \ omega} $$ Motsvarande storlek för $ \ omega = 3 \ pi / 4 $ visas inte på enkelsidigt svarstabell ovan men du kan se den asymptotiska trenden vid $ 3 \ pi / 4 $ .
b
) av ditt filter. Så koppla det helt enkelt tillfreqz
och voila.