matlab做离散时间系统,4.离散时间系统的Matlab实现.ppt

4.离散时间系统的Matlab实现

MATLAB数字信号处理 离散时间系统的Matlab实现 Impz函数 功能:求解系统的单位冲击响应 调用方式: [h,t]=impz(b,a):b、a分别为系统传递函数的分子和分母的系数向量。返回系统(b,a)的冲激响应h和相应的时间轴向量t。 [h,t]=impz(b,a,n):返回n点冲激响应。 impz(b,a);在当前窗口用stem(t,h )函数出图。 【例1】计算线性系统(b,a)的冲激响应: b=[0.2 0.1 0.3 0.1 0.15]; a=[1 -1.1 1.45 -0.6 0.3]; impz(b,a,50); dstep 功能:求解数字系统的阶跃响应。 调用格式: [h,t]=dstep(b,a);求解数字系统的阶跃响应h,取样点数为缺省值。 [h,t]=dstep(b,a,n);求解数字系统的阶跃响应h,取样点数为n值。 dstep(b,a);在当前窗口用stairs(t,h)函数出图。 【例2】已知一个因果系统的差分方程为 6y(n)+2y(n-2)=x(n)+3x(n-1)+3x(n-2)+x(n-3)满足初始条件y(-1)=0,x(-1)=0.求系统的单位冲激响应和阶跃响应。 解:将上述方程对y(n)项系数进行归一化,得到其系统函数分子和分母系数 a0=1, a1=0, a2=1/3, a3=0 b0=1/6, b1=1/2, b2=1/2, b3=1/6 用impz()函数的MATLAB程序(取N=32点作图) a=[1,0,1/3, 0]; b=[1/6, 1/2, 1/2, 1/6]; N=32; n=0:N-1; hn=impz(b,a,n); gn=dstep(b,a,n); subplot(1,2,1),stem(n,hn,’filled’); title(‘系统的单位冲击响应’); ylabel(‘h(n)’);xlabel(‘n’); axis([0,N-1,-1.1*min(hn),1.1*max(hn)]); subplot(1,2,2), stem(n,gn,’k’); title(‘系统的单位阶跃响应’); ylabel(‘g(n)’);xlabel(‘n’); axis([0,N-1,-1.1*min(gn),1.1*max(gn)]); zplane zplane(z,p):绘制系统零极点图,“o”表示零点,“x”表示极点。z,p分别为零点和极点向量。 zplane(b,a):b、a分别为系统传递函数的分子和分母系数向量。 【例3】计算线性系统(b,a)的零点和极点。 b=[0.2 0.1 0.3 0.1 0.15]; a=[1 -1.1 1.45 -0.6 0.3]; zplane(b,a); legend('零点','极点'); filter 功能:对数字系统的输入信号进行滤波处理。因为一个离散系统可以看作是一个滤波器,系统的输出就是输入经过滤波器滤波的结果。 调用格式:y=filter(b , a, x),对于由矢量b, a决定的数字系统(b和a分别表示系统函数H(z)对应的分子项和分母项系数构成的数组,而且分母系数要归一化处理。)当输入信号为x时,对x中的数据进行滤波,结果存于y中,长度取max(na , nb). [y , zf]=filter(b , a, x);除得到结果矢量y外,还得到x 的最终状态矢量zf。 y=filter(b , a, x, zi);可在zi中指定x的初始状态。 【例4】计算低通滤波器的冲激响应。 x=[1 zeros(1,100)]; [b,a] = cheby1(11,1,.4); y=filter(b,a,x); stem(y); filtic子函数 功能:为filter子函数选择初始条件。 调用格式: zi=filtic(b ,a ,y ,x);求给定输入x和y时的初始状态。 zi=filtic(b , a, y);求x=0,给定输入y时的初始状态。 其中,x和y分别是表示过去的输入和输出。 【例5】已知一个因果系统的差分方程为 6y(n)+2y(n-2)=x(n)+3x(n-1)+3x(n-2)+x(n-3)满足初始条件y(-1)=0,x(-1)=0.求系统的单位冲激响应和阶跃响应。用filter()函数的MATLAB程序(取N=32点作图) a=[1,0,1/3, 0]; b=[1/6, 1/2, 1/2, 1/6]; xi=filtic(b,a,0,0); N=32; n=0:N-1; x1=[n==0]; %单位冲激信号 hn=filter(b,a,x1,xi); subplot(1,2,1),stem(n,hn,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值