LTI 系统的时域分析求y"(t)+4y'(t)+4y(t)=f'(t)+f(t)系统的冲激响应与阶跃响应的matlab代码
时间: 2023-08-06 21:05:05 浏览: 73
首先,我们可以通过求解该二阶常系数齐次线性微分方程的特征方程来求解其零输入响应(即系统的冲激响应和阶跃响应的零件):
特征方程为:λ^2 + 4λ + 4 = 0
解得特征根为:λ = -2(重根)
所以,其零输入响应为:y_h(t) = (c_1 + c_2 t) e^(-2t)
其中,c_1 和 c_2 为待定系数。
然后,我们可以通过求解其零状态响应(即系统对外部输入信号的响应)来求解其冲激响应和阶跃响应的非零部分。根据题意,外部输入信号为:
f(t) = f'(t) + f(t)
对其进行拉普拉斯变换,得到:
F(s) = sF(s) + 1/(s+1)
解得:
F(s) = 1/(s+1)^2
则其零状态响应为:
y_p(t) = L^{-1} {F(s) / (s^2 + 4s + 4)} = (1/2) t e^(-2t)
其中,L^{-1} 表示拉普拉斯逆变换。
综上所述,该系统的完整响应为:
y(t) = y_h(t) + y_p(t) = (c_1 + c_2 t) e^(-2t) + (1/2) t e^(-2t)
下面是对应的MATLAB代码:
```
syms t s;
% 求解特征方程的特征根和零输入响应
r = roots([1, 4, 4]);
y_h = (c1 + c2*t)*exp(-2*t);
% 求解拉普拉斯变换
F = laplace(diff(sym('f(t)')) + sym('f(t)'), t, s);
% 求解零状态响应的拉普拉斯逆变换
y_p = ilaplace(F / (s^2 + 4*s + 4));
% 将特定的初值条件代入求解待定系数
y = simplify(y_h + y_p);
y0 = subs(y, t, 0);
y1 = subs(diff(y), t, 0);
[sol_c1, sol_c2] = solve(y0 == 0, y1 == 0);
% 将求解到的待定系数代入完整响应中
y = subs(y, [c1, c2], [sol_c1, sol_c2]);
% 绘制冲激响应和阶跃响应的图像
subplot(2,1,1);
impulse(y);
title('冲激响应');
subplot(2,1,2);
step(y);
title('阶跃响应');
```
运行上述代码,即可绘制出该LTI系统的冲激响应和阶跃响应的图像。