matlab零极点图程序,Matlab绘制数字滤波器零极点图

本人找到一个绘制零极点图的程序(如下),但是实际调用中发现老提示55行有错误,本人是个菜鸟,希望大虾给我帮助,另外如果可以的话希望各位给我提供点最小相位滤波器设计的资料

function pzplot(num,den)

%绘制系统函数的零极点图

%

%pzplot(num,den)

%num为系统函数分子多项式的系数向量

%den为系统函数分母多项式的系数向量

%

hold on

axis('square');

%

%绘制单位圆

%

x= -1:0.01:1;

y=(1-x.^2).^0.5;

y1=-(1-x.^2).^0.5;

plot(x,y,'k',x,y1,'k');

%

%求取系统的零极点

%

Lnum=length(num);

Lden=length(den);

if(Lnum>1)

z=roots(num);

else

z=0;

end

if(Lden>1)

p=roots(den);

else

p=0;

end

%

%判断绘图范围

%

if(Lnum>1&Lden>1)

realmaxz=max(abs(real(z)));

imagmaxz=max(abs(imag(z)));

axis

你可能感兴趣的:(matlab零极点图程序)