| 查看: 720 | 回复: 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. 我不是信号处理方向的,最近只研究了一些理论背景资料,所以这些代码涉及数学运算方面的看不太懂,滤波器的一些特性还是知道的。 求懂的朋友解释一下,或者帮忙运行查错一下。 |
» 猜你喜欢
重庆交大26年硕士生招生拟调剂通知已出!欢迎加入机器视觉与3D光学成像课题组。
已经有0人回复
**
已经有1人回复
物理学I论文润色/翻译怎么收费?
已经有171人回复
0702一志愿吉大B区求调剂 本科期间发表一篇Sci
已经有3人回复
基底STO,薄膜SRO,XRD里面的振荡,是laue震荡还是kiessig振荡? 怎么判断?
已经有2人回复
B区学生调剂-兰州交通大学材料科学与工程学院
已经有8人回复
山西大同大学物理学专业还有调剂名额,欢迎调剂!
已经有12人回复
桂林理工大学物理学专业招收调剂
已经有11人回复
VASP 的一组 GPU / CPU 基准测试记录
已经有0人回复
美国顶级物理期刊《应用物理快报》(APL)的编辑欺骗和歧视作者及AIP的官僚主义傲慢
已经有1人回复














回复此楼
5