matlab巴特沃斯滤波器设计

%% 滤波
Wp = input('通带截止频率(Hz)');
Ws = input('阻带截止频率(Hz)');
rp = input('通带波动 (dB)');
rs = input('阻带波动 (dB)');
num = input('数据段长度');
Wp = Wp*2*pi;
Ws = Ws*2*pi;
[n,Wn] = buttord(Wp/fs,Ws/fs,rp,rs);
[z,p,k] = butter(n,Wn);
[b,a] = zp2tf(z,p,k);          %将零点、极点、增益的形式转换为传递函数
[xx1,zf1] = filter(b,a,data1);
[xx2,zf2] = filter(b,a,data2);
[xx3,zf3] = filter(b,a,data3);
[xx4,zf4] = filter(b,a,data4);
newy1 = filter(b,a,data1,zf1); 
newy2 = filter(b,a,data2,zf2); 
newy3 = filter(b,a,data3,zf3); 
newy4 = filter(b,a,data4,zf4); 
yy=1:length(data1);
figure(3)
subplot(421)
plot(yy,data1)
subplot(422)
plot(yy,newy1)

subplot(423)
plot(yy,data2)
subplot(424)
plot(yy,newy2)

subplot(425)
plot(yy,data3)
subplot(426)
plot(yy,newy3)

subplot(427)
plot(yy,data4)
subplot(428)
plot(yy,newy4)

figure(4)
subplot(221)
plot(yy,data1,yy,newy1)
subplot(222)
plot(yy,data2,yy,newy2)
subplot(223)
plot(yy,data3,yy,newy3)
subplot(224)
plot(yy,data4,yy,newy4)

 

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值