How to compute poles-zeros using matlab?

2 visualizzazioni (ultimi 30 giorni)
Li Hui Chew
Li Hui Chew il 18 Lug 2021
Risposto: Mathieu NOE il 19 Lug 2021
H(z)=(1-2^-2)/(1-0.9*z^-1+0.6*z^-2+0.5*z^-3)
b=[1 0 -1 0];
a=[1 0.9 0.6 0.5];
% to find zeors
zeros=roots(b)
% to find poles
poles=roots(a)
% to plot
zplane(b,a)
Is my approach correct?

Risposte (1)

Mathieu NOE
Mathieu NOE il 19 Lug 2021
hello
I hope the coefficient in b and a are correct (then the zeros and poles are inside the unit circle ) , because the first line is not 100% matching the coefficients you declared in b and a :
H(z)=(1-2^-2)/(1-0.9*z^-1+0.6*z^-2+0.5*z^-3) should be then replaced by :
H(z)=(1-z^-2)/(1+0.9*z^-1+0.6*z^-2+0.5*z^-3)
otherwise the zeros and pole computation is correct , and there is also this method (FYI) :
% alternative :
[Z,P,K] = tf2zp(b,a)

Tag

Prodotti


Release

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by