How to compute poles-zeros using matlab?

조회 수: 2 (최근 30일)
Li Hui Chew
Li Hui Chew 2021년 7월 18일
답변: Mathieu NOE 2021년 7월 19일
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?

답변 (1개)

Mathieu NOE
Mathieu NOE 2021년 7월 19일
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)

카테고리

Help CenterFile Exchange에서 Digital Filter Analysis에 대해 자세히 알아보기

태그

제품


릴리스

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by