/ / Matlabは実数と想像上の根をプロットする - matlab、matlab-figure

Matlabは実数と想像上の根をプロットする - matlab、matlab-figure

plot_pz([pole]、[zeros])のコードを使用すると

function plot_pz(b,a)

b_roots = roots(b);
a_roots = roots(a);

plot(b_roots,"x black");
plot(a_roots,"o blue");
axis equal;

私はb_rootsを適切にプロットすることができますが、私はa_rootsは1 + 0i軸(またはx = 1)に連続的にプロットされます。例えば、Z-Transform H(z)= [[1 2 2]、[0.18]]は、以下の極と零点を与えます(matlabごと)。

poles =

-1.0000 + 1.0000i
-1.0000 - 1.0000i


zeros =

-0.8000

それはこのように見えるはずです

H(z)を修正する

代わりに私が得るのは

間違ったH(z)

私の0は-1 + 1iと-1-1iにあり、私の極は1-.8iにあるようですが、代わりに-8 + 0iにするべきです

私はそれが私が行方不明の単純なものだと確信していますが、私はそれを理解することはできません。私はそれが単極か単一のゼロを持っているときだけ起こると思う。

plot(X)は常に1 + xiをプロットするのがデフォルトですか?

回答:

回答№1は1

real()とimag()でより明確になることで修正されました。

plot(real(b_roots),imag(b_roots),"o blue");
plot(real(a_roots),imag(a_roots),"x red");