ubaabd
ubaabd

Reputation: 435

Incorrect zeros positions in zplane

I am trying to plot pole/zero plot of a simple polynomial (1+z)^(2p) for p=7. My code is as follows:

p = 7;
rCoeffs = [1 1];
for ii=1:2*p-1
    rCoeffs = conv(rCoeffs, [1 1]);
end
zplane(real(rCoeffs),1);

The plot displays the following:

enter image description here

I don't understand why the zeros are complex numbers. I think that all the zeros should be located at z=-1 but this plot shows a circle. This doesn't happen when p is small but again I have seen a few plots online that are apparently generated by zplane and they show large number of zeros on a particular point.

Upvotes: 1

Views: 739

Answers (2)

Rasman
Rasman

Reputation: 5359

Basically you're looking for 14 solutions to the equation given the setup. Unfortunately the general solution to polynomial equations of order 5 or greater doesn't exist and must be found numerically. The solution provided is correct only in that is approximately what the algorithm thinks you're looking for.

I would add that Nathan's method works as intended, and if you change it slightly, you will see all the solutions to the above equation.

z = tf('z',1)
H = (1+z)^(2*7);
[p,z1] = pzmap(H)
z1 % solution to H = 0
(1+z1)^(2*7)

Upvotes: 1

N8TRO
N8TRO

Reputation: 3364

An easier way:

p = 7

z = zpk('z',0.1);
H = (1+z)^(2*p);

pzmap(H)

Upvotes: 0

Related Questions