[bz,az]=impinvar(b,a,Fs)
[bz,az]=impinvar(b,a)
例如:取采样频率f=1KHz,用双线性变换法设计五阶Butterworth低通数字滤波器,绘出模拟滤波器与数字滤波器的幅频与相频特性,MATLAB程序如下:
[z,p,k]=buttap(5) % 设计五阶Butterworth低通模拟滤波器原型
[zd,pd,kd]=bilinear(z,p,k,1000)%双线性变换得到低通数字滤波器
[b,a]=zp2tf(zd,pd,kd)%滤波器类型转换
w=128
freqs(b,a,w)
figure
freqz(b,a,w)
实例:1、设带通滤波镇拆器的滤波器中心频率为W0=2KHz,带宽为BW=100Hz, 取采样频率f=10kHZ,用脉冲相应不变法设计,设计五阶带通Butterworth数字滤波器,绘出数字滤波器的频谱特性
[z,p,k]=buttap(5)
[b,a]=zp2tf(z,p,k)
w=128
w0=2000
[bt,at]=lp2bp(b,a,w0,10000)
[bz,az]=impinvar(b,a,w)
freqz(bt,at,w)
2、直接设计五阶butterworth带通滤波器,绘出频谱图。(高端与低端截止频率分别为0.2和0.9)
figure
w=[0.2,0.9]
[b,a]=butter(5,w)
freqz(b,a)
3、设高通截止频率为w0=10000Hz, 取采样频率f=20000,用指正双线性变换法设计六阶高通Butterworth数字滤波器,绘出数字滤波器的频谱特性
[z,p,k]=besselap(6)
[b,a]=zp2tf(z,p,k)
w=128
w0=10000
[bt,at]=lp2hp(b,a,w0)
[bz,az]=bilinear(bt,at,20000)
freqz(bz,az,w)
4、取采样频率f=100Hz,用双线性变换法设计五阶Butterworth低通数字滤波器,绘出模拟滤波器与数字滤波器的幅频与相频特性
御逗枣 [z,p,k]=buttap(5)
[zd,pd,kd]=bilinear(z,p,k,100)
[b,a]=zp2tf(zd,pd,kd)
w=128
freqs(b,a,w)
figure
freqz(b,a,w)
具体的得根据情况自己确定
matlab安装教程如下:
*** 作设备:戴尔笔记本电脑
*** 作系统:win10
*** 作程序:matlab安装包2.0
1、双击【setup】
打伏型尺开matlab安装包,双击【setup】。
2、使用文件密钥安装
选择【使用文件密钥安装】,点击【下一缺高步】。
3、接受许可协议条款
选择【是】,点击【下一步】。
4、填写安装密钥
选择【我已有租派我的许可证的文件安装密钥】,填写自己的安装密钥。
5、选择安装位置
点击【浏览】。
6、完成
等待安装完成即可。
1 x'-- x的转置矩阵x*x'的结果是矩阵或数值,由x的维数(x若为向量,维数就是其长度)决定
2 inv 求逆矩阵。
miu=1/(ad'*inv(R)*ad)
既然程序没有报错,那么(ad'*inv(R)*ad)就是一个数值,而
w = miu*inv(R)*ad = 1/(ad'*inv(R)*ad) * inv(R)*ad 是矩阵运算,
不能按照代数四则运算进行简单的“约分”败饥。
3 y(1,v)=w.'*a
v=v+1 这是为了记录向量y,v表液枯耐示当前值在向量中的位置。算完这一个后,位置向后移动,从v到(v+1),继续循环,算出的y值闹春就记录在(v+1)位置处
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)