Takže mám přenosovou funkci:
$$ H [z] = 1 + \ sqrt {2} z ^ {- 1} + z ^ {- 2} $$
A musím vyhodnotit $ H (e ^ {j \ omega}) $ for $ \ omega = 0, \ pi / 4, \ pi / 4 \ ldots $
Výpočty jsem provedl ručně pomocí Eulerova vzorce, ale nyní je přiřazení žádá mě, abych porovnal tyto grafy s grafy pomocí freqz
v MATLABu. Zdá se mi, že nenajdu pokyny, jak to s tímto typem přenosové funkce udělat.
Komentáře
Odpovědět
Jednoduše zadáte a = 1
(protože jmenovatel se rovná $ 1 $). Takže získáte
b = [1,sqrt(2),1]; a = 1; N = 512; [H,w] = freqz(b,a,N);
Můžete to porovnat s analytickým řešením:
H2 = 1 + sqrt(2)*exp(-1i*w) + exp(-1i*2*w); max(abs(H2-H)) % 8.0825e-16
Komentáře
- Omlouvám se, že jsem ' opravdu nový, ale co zde představuje N?
- @Freddie: Je to ' počet frekvenčních bodů (ve stejné vzdálenosti), ve kterých je vyhodnocena frekvenční odezva. Stačí si prohlédnout dokumentaci Matlabu
freqz
.
Odpověď
Pro vyhodnocení pouze na konkrétních frekvencích je třeba zadat frekvenční vektor s alespoň dvěma frekvencemi (viz MATLAB „s freqz ). Níže je uveden MATLAB kód pro vyhodnocení na frekvencích $ \ 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 >>
Vizualizace výše uvedených výsledků viz velikost odezva, tj. $ 20 \ log_ {10} \ left (\ lvert H \ left (\ omega \ right) \ rvert \ right) $ , níže vynesené s pěti frekvencemi označeno červeně.
U $ \ pm 3 \ pi / 4 $ to máte (viz výsledky kódu výše) $$ H \ left (\ str m \ frac {3 \ pi} {4} \ right) = 0 \ implikuje 20 \ log_ {10} \ left (\ bigg \ lvert H \ left (\ pm \ frac {3 \ pi} {4} \ right) \ bigg \ rvert \ right) = – \ infty $$ Také ze skutečnosti, že nuly jsou na $$ z = – \ frac {\ sqrt {2}} {2} \ pm j \ frac {\ sqrt {2}} {2} \ quad \ text {with} \ quad z = e ^ {j \ omega} $$ Odpovídající velikost pro $ \ omega = 3 \ pi / 4 $ se nezobrazuje na jednostranném grafu odpovědi výše, ale asymptotický trend můžete vidět na 3 $ \ pi / 4 $ .
b
) vašeho filtru. Jednoduše jej tedy připojte kfreqz
a voila.