| 查看: 701 | 回复: 0 | ||
[求助]
matlab信号处理,两段设计带阻滤波器的代码,报错或运行异常,求解
|
|
滤波器设计程序一 n=6 ; %设计阶数为6的Butterworth模拟原型滤波器 [z,p,k]=buttap(n) [b,a]=zp2tf(z,p,k);%将零点极点增益形式转化传递函数形式 [H,w]=freqs(b,a,0:0.01:2);%计算指定频率点的复数频率响应 subplot(2,1,1),plot(w,abs(H).^2);%绘制平方幅度响应 xlabel('w/wc');ylabel('Butterworth ︳H(jw) ︳^2'); title('Butterworth 低通原型滤波器(wc=1)') hold on; figure(1) grid on; end figure(2) hold on; n=6 ;%设计阶数为6的Butterworth模拟带阻滤波器 [z,p,k]=buttap(n); [b,a]=zp2tf(z,p,k); f0=2200;bw=3600;%中心点频率和阻带带宽 [bt,at]=lp2bs(b,a,f0,bw);%频率转换 [Ht,ft]=freqs(bt,at,0:2:400);%计算带阻滤波器指定频率点的复数频率响应 plot(ft,abs(Ht).^2);%%绘制平方幅度响应 xlabel('f/hz');ylabel('Butterworth ︳H(jw) ︳^2'); title('Butterworth 带阻滤波器(f0=2200,bw=3600)'); grid on;end 滤波器设计程序二 Fs=50000;%滤波器最大频带 ws=400;%滤波器阻带截止频率 wp=4000;%滤波器通带截止频率 rp=1;%通带衰减 rs=21;%阻带衰减 [N,Wc]=buttord(wp/(Fs/2),ws/(Fs/2),rp,rs);%估算阶数 Wn = [wp/(Fs/2) ws/(Fs/2)]; [B,A] = BUTTER(N,Wn,'stop');设计一个带阻滤波器 [h,f]=freqz(B,A,8000);%带阻滤波器频率响应 subplot(4,1,3); plot(w/pi,abs(h)); grid; title('BW型带阻滤波器'); 第一个滤波器设计,我使用自己的wave文件,滤波后只剩下尖锐的高频,感觉不应该这样啊 第二个滤波器设计,直接报错,运行不成功 错误信息:[B,A] = BUTTER(N,Wn,'stop');设计一个带阻滤波器 | Error: Missing variable or function. 我不是信号处理方向的,最近只研究了一些理论背景资料,所以这些代码涉及数学运算方面的看不太懂,滤波器的一些特性还是知道的。 求懂的朋友解释一下,或者帮忙运行查错一下。 |
» 猜你喜欢
新西兰Robinson研究所招收全奖PhD
已经有0人回复
石墨烯转移--二氧化硅衬底石墨烯
已经有0人回复
物理学I论文润色/翻译怎么收费?
已经有200人回复
笼目材料中量子自旋液体基态的证据
已经有0人回复
数学教学论硕士可以读数学物理博士吗?
已经有0人回复
德国亥姆霍兹Hereon中心汉堡分部招镁合金腐蚀裂变SCC课题方向2026公派博士生
已经有4人回复
澳门大学 应用物理及材料工程研究院 潘晖教授课题组诚招博士后
已经有11人回复
求助NH4V4O10晶体的CIF文件
已经有0人回复
英国全奖博士招聘-深度学习与量子物理
已经有0人回复
间接带隙半导体有效质量求助
已经有1人回复
投稿chemical physical letters不送审?
已经有2人回复













回复此楼