Reputation: 435
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:
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
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