某因果线性时不变系统(LTI)由下面差分方程描述 y (n) =0.81y(n-2)+x(n) -x(n-2) 试求系统对单位阶跃u(n)的响应v(n)即单位阶跃响应)。用MATLAB代码表示。
时间: 2023-12-12 14:02:26 浏览: 180
信号与系统(第4版):第8章 离散时间系统的时域与变换域分析.ppt
根据差分方程,可以列出系统的传递函数:
H(z) = Y(z) / X(z) = 1 / (1 - 0.81z^-2 + z^-4)
对于单位阶跃输入u(n),其z变换为:
U(z) = 1 / (1 - z^-1)
则系统的输出为:
V(z) = H(z) * U(z) = 1 / (1 - 0.81z^-2 + z^-4) * 1 / (1 - z^-1)
将V(z)展开,得到:
V(z) = (0.0191z^3 - 0.0574z^2 + 0.0574z - 0.0191) / (1 - 0.81z^-2 + z^-4)
根据部分分式分解,可以将V(z)表示为:
V(z) = (0.0044 / (z - 0.9) + 0.0047 / (z + 0.9) + 0.005 / (z - 0.3) - 0.0141 / (z + 0.3)) / (1 - 0.81z^-2 + z^-4)
对上式进行z变换逆变换,即可得到系统对单位阶跃的响应v(n),MATLAB代码如下:
```
b = [0.0044, 0.0047, 0, 0.005, 0, 0, -0.0141, 0, 0];
a = [1, 0, 0, -0.81, 0, 0, 1, 0, -1];
n = 0:50;
h = filter(b, a, [1 zeros(1, 50)]);
stem(n, h);
xlabel('n');
ylabel('v(n)');
```
其中,b和a分别是传递函数的分子和分母系数,n为时间序列,h为系统的单位阶跃响应。
阅读全文