没有合适的资源?快使用搜索试试~ 我知道了~
首页matlab编写的IIR低通切比雪夫滤波器及其滤波过程
资源详情
资源评论
资源推荐

%IIR 低通切比雪夫
figure(7);
wp=0.2*pi;
ws=0.25*pi;
Rp=0.5;
As=50;
T=0.001;Fs=1/T;
OmegaP=(2/T)*tan(wp/2);
OmegaS=(2/T)*tan(ws/2);
ep=sqrt(10^(Rp/10)-1);
Ripple=sqrt(1/(1+ep*ep));
Attn=1/(10^(As/20));
[N,OmegaC]=cheb1ord(OmegaP,OmegaS,Rp,As,'s');
[z0,p0,k0]=cheb1ap(N,Rp);
ba0=k0*real(poly(z0));
aa0=real(poly(p0));
[bd,ad]= bilinear(ba0,aa0,Fs/OmegaC);
[sos,G]=tf2sos(bd,ad)
[H,w]=freqz(bd,ad,1000,'whole');
H=(H(1:1:501))';w=(w(1:1:501))';
mag=abs(H);
db=20*log10((mag+eps)/max(mag));
grd=grpdelay(bd,ad,w);
pha=angle(H);
subplot(2,2,1);plot(w/pi,mag);title('幅频响应');
ylabel('|H|');axis([0,1,0,1.1]);
set(gca,'XTickMode','manual','XTick',[0,0.2,0.25,1]);grid on;
set(gca,'XTickMode','manual','XTick',[0,Attn,Ripple,1]);
subplot(2,2,3);plot(w/pi,db);title('幅度(单位 :dB)');
xlabel('频率(单位 :pi)');ylabel('分贝');axis([0,1,-100,50]);
set(gca,'XTickMode','manual','XTick',[0,0.2,0.25,1]);
set(gca,'XTickMode','manual','XTick',[-100,-50,0,50]);grid on;
subplot(2,2,2);plot(w/pi,pha/pi);title('相位响应');
xlabel('');ylabel('单位 :pi');axis([0,1,-1,1]);
set(gca,'XTickMode','manual','XTick',[0,0.2,0.25,1]);
set(gca,'XTickMode','manual','XTick',[-1,0,1]);grid on;
subplot(2,2,4);plot(w/pi,grd);title('群延迟');
xlabel('频率(单位:pi)');ylabel('样本');axis([0,1,0,20]);
set(gca,'XTickMode','manual','XTick',[0,0.2,0.25,1]);
set(gca,'XTickMode','manual','XTick',[0:2:20]);grid on;
set(gcf,'color','w');
figure(8);
fs=50;















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0