您当前的位置:五五电子网电子知识电子学习基础知识电脑-单片机-自动控制用matlab设计的IIR滤波器源程序 正文
用matlab设计的IIR滤波器源程序

用matlab设计的IIR滤波器源程序

点击数:7911 次   录入时间:03-04 12:01:16   整理:http://www.55dianzi.com   电脑-单片机-自动控制
K=floor(N/2);
for i=1:K
    theta(i)=pi*(N-1+2*i)/(2*N);
end
for i=1:K
    omega(i)=omegas/sin(theta(i));
end
for i=1:K
    G(i)=(1+omega(i)^-2)/(1-2*omega0^-1*cos(theta(i))+omega0^-2+omega(i)^-2);
end
for i=1:K
    a1(i)=2*(1-omega0^-2+omega(i)^-2)/(1-2*omega0^-1*cos(theta(i))+omega0^-2+omega(i)^-2);
end
for i=1:K
    a2(i)=(1+2*omega0^-1*cos(theta(i))+omega0^-2+omega(i)^-2)/(1-2*omega0^-1*cos(theta(i))+omega0^-2+omega(i)^-2);
end
for i=1:K
    b1(i)=2*(1-omega(i))/(1+omega(i));
end
if K<(N/2)
    G0=omega0/(omega0+1);a0=(omega0-1)/(omega0+1); 
else
    H0=sqrt(1/(1+ep^2));
end
f=(0+eps):1/100:10;
Hf2=(cheby(N,omegas./tan(pi*f/fs))).^2./((cheby(N,omegas./tan(pi*f/fs))).^2+es^2);
plot(f,abs(Hf2));
grid;

    (10)chebyshev 中用到的函数 cheby.m
function CN=cheby(N,x)
if x<=1
    CN=cos(N*acos(x));
else
    CN=cosh(N*log(x+sqrt(x.^2-1)));
end
 



上一页  [1] [2] 


本文关键字:滤波器  源程序  matlab  电脑-单片机-自动控制电子学习 - 基础知识 - 电脑-单片机-自动控制