MATLAB 软件自身并没有leadlag这个函数,怀疑你很可能是从薛定宇教授编的书里看到的吧?提供代码如下,供参考:
function gc = leadlag(gp,f,w1,w2)
[gn gd]=tfdata(gp,'v'); [fn fd]=tfdata(f,'v');
h=0.01; w=w1:h:w2; s=sqrt(-1)*w;
gn=polyval(gn,s); g1=real(gn); g2=imag(gn);
gd=polyval(gd,s); g3=real(gd); g4=imag(gd);
fn=polyval(fn,s); h1=real(fn); h2=imag(fn);
fd=polyval(fd,s); h3=real(fd); h4=imag(fd);
A=h3.*g1-h4.*g2-g1.*h1+h2.*g2; D=h1.*g4+h2.*g3;
B=-h3.*g2-h4.*g1+h1.*g2+h2.*g1; E=h1.*g3-h2.*g4;
T=w1w2int([1,3,5],(A.^2+B.^2),w); R=w1w2int([2,4],(A.*D+B.*E),w);
S=w1w2int([1,3,5],(A.*E-B.*D),w); Q=w1w2int([3 5],(D.^2+E.^2),w);
x=[T(1) 0 -T(3) R(2) S(3); 0 T(3) 0 -S(3) R(4);
-T(3) 0 T(5) -R(4) -S(5); R(2) -S(3) -R(4) Q(3) 0;
S(3) R(4) -S(5) 0 Q(5)]; z=[S(1) R(2) -S(3) 0 Q(3)]';
y=x\z; gc=tf(y(3:-1:1)', [y(5) y(4) 1]);
function t=w1w2int(kk,coef,w)
for k=kk; y=(w.^(k-1)).*coef; t(k)=trapz(w,y); end