matlab设计切比雪夫低通滤波器

 

绘制Chebshev 1型模拟低通滤波器的平方幅频响应曲线,阶数为2、4、6、8:

n=0:0.01:2;
for i=1:4
switch i
    case 1 ,N=2;
    case 2; N=4;
    case 3;N=6;
    case 4; N=8;
end
Rp = 1;                         %设置通滤波纹为1db
[z,p,k] =cheb1ap(N,Rp);         %设计chebyshev 1 滤波器
[b,a] = zp2tf(z,p,k);           %将零点、级点、增益形式转换为传递函数的形式
[H,w] =freqs(b,a,n);            %按n指定的频率点给出频率响应
magH2 = (abs(H)).^2;            %给出传递函数的幅度平方
posplot=['2,2',num2str(i)];     %将数字i转换为字符转,与‘2,2’合并并赋给posplot
subplot(posplot);
plot(w,magH2);
xlabel ('w/wc');

ylabel('Chebyshev 1 | H(jw)|^2');
grid on;
end

matlab设计切比雪夫低通滤波器
Chebyshev 1行滤波器的特点:通带内具有等波纹起伏特性,而在阻带内单调下降,具有更大的衰减特性;阶数愈高,特性愈接近矩形;传递函数是没有零点的(这个就要有数学的推到了)。

绘制Chebshev 2型模拟低通滤波器的平方幅频响应曲线,阶数为2、4、6、8:

n=0:0.01:2;
for i=1:4
switch i
    case 1 ,N=2;
    case 2; N=4;
    case 3;N=6;
    case 4; N=8;
end
Rs = 16;                           %设置通滤波纹为1db
[z,p,k] =cheb2ap(N,Rs);            %设计chebyshev 1 滤波器
[b,a] = zp2tf(z,p,k);              %将零点级点增益转换为传递函数的形式
[H,w] =freqs(b,a,n);               %按n指定的频率点给出频率响应
magH2 = (abs(H)).^2;               %给出传递函数幅度平方
posplot=['2,2',num2str(i)];        %将数字i转换为字符串‘N=’合并作为标题
subplot(posplot);
plot(w,magH2);
xlabel ('w/wc');

ylabel('Chebyshev 1 | H(jw)|^2');
grid on;
end

matlab设计切比雪夫低通滤波器

Chebyshev 1行滤波器的特点:通带内具单调的、平滑的,而在阻带内有等纹波起伏特性;阶数愈高,特性愈接近矩形;传递函数是既有极点又有零点(这个就要有数学的推到了)。

 


 

 

posted @ 2010-12-13 21:47  北同学  阅读(1562)  评论(0编辑  收藏  举报