ⅰ.设计题目:
已知某LIT系统的差分方程为:
3y(n)-4y(n-1)+2y(n-2)=x(n)+2x(n-1)
计算n=[-20:100]时的系统单位冲激响应。
ⅱ.设计要求:
本课程设计应满足以下要求:
2. 可读性:源程序代码清晰,有层次,主要程序段有注释.
ⅲ.设计目的:
ⅳ.设计原理:
根据给定的差分方程:
3y(n)-4y(n-1)+2y(n-2)=x(n)+2x(n-1)
利用z变换,求出H(z),再通过求其逆变换,得到系统单位冲激响应h(n)。
ⅴ.具体算法:
第一步,根据差分方程:
3y(n)-4y(n-1)+2y(n-2)=x(n)+2x(n-1)
用z变换求出H(z)的表达式,原式可化为:
ⅵ.MATLAB源程序:
计算系统单位冲激响应源程序:
num=[1,2,0];
den=[3,-4,2];
n=[-20:100];
hn=dimpulse(num,den)
hn=dimpulse(num,den);
stem(hn);
title('LTI系统的单位冲激响应')
ⅶ.系统仿真结果:
(1).LTI系统的单位冲激响应的计算结果:
h(n) =
0.3333
0.4115
-0.3504
-0.0421
-0.0027
0.0102
-0.0065
LTI系统的单位冲激响应的结果图:
ⅷ.运算结果验证:
在matlab中输入以下程序进行验证:
num=[1,2,0];
den=[3,-4,2];
disp(‘系统传递函数H(z)’);
printsys(num,den,‘z’);
disp(‘转为零极点增益模型’);
[z1,p1,k1]=tf2zp(num,den)
disp(‘转为零极点留数模型’);
[r1,p1]=residue(num,den)
h(n)=dimpulse(num,den)
输出结果为:
系统传递函数H(z)
num/den =
转为零极点增益模型
z1 = 0
-2
p1 =0.6667 + 0.4714i
k1 =0.3333
转为零极点留数模型
r1 =0.5556 - 0.5500i
p1 =0.6667 + 0.4714i
h(n)=
0.3333
0.4115
-0.3504
-0.0065
ⅸ.对其进行理论验证:
当n=0时,
当n=1时,
同理可证,当n=2,3,……时,结果均与源程序运行结果相符,此实践课题已正确完成。
联系客服