已知某LTI系统的方程为:y''(t)+5y'(t)+6y(t)=6x(t) 其中,x(t)=10sin(2πt) u( t) 利用Matlab绘出0≤t≤5 范围内系统零状态响应的波形图。
时间: 2023-07-27 17:07:07 浏览: 166
基于Matlab的波形显示程序
首先,我们需要找到系统的零输入响应,即对于初始条件 y(0)=y'(0)=0 的情况下,x(t) = 0 时的响应。这个可以通过求解齐次方程 y''(t)+5y'(t)+6y(t)=0 得到:
特征方程为 λ^2 + 5λ + 6 = 0,解得 λ1 = -2,λ2 = -3。
因此,齐次方程的通解为 y_h(t) = c1e^{-2t} + c2e^{-3t}。
由于 y(0) = y'(0) = 0,所以有:
y_h(t) = c1e^{-2t} + c2e^{-3t} = 0
c1 + c2 = 0
-2c1 - 3c2 = 0
解得 c1 = -3,c2 = 3。
因此,系统的零输入响应为 y_{zi}(t) = -3e^{-2t} + 3e^{-3t}。
接下来,我们需要找到系统的完全响应,即对于任意初始条件,x(t) = 10sin(2πt) u(t) 时的响应。这个可以通过求解非齐次方程 y''(t)+5y'(t)+6y(t)=6x(t) 得到。
我们可以使用 Matlab 中的 ode45 函数来求解非齐次方程,具体代码如下:
```matlab
function dydt = lti_system(t, y)
x = 10*sin(2*pi*t);
dydt = [y(2); 6*x - 6*y(1) - 5*y(2)];
end
[t, y] = ode45(@lti_system, [0 5], [0 0]);
```
最后,我们可以将系统的零状态响应和完全响应相加得到系统的总响应:
y(t) = y_{zi}(t) + y_{zp}(t)
其中,y_{zp}(t) 为系统的零极点响应,由于这个系统的极点为 -2 和 -3,所以可以表示为:
y_{zp}(t) = K_1e^{-2t} + K_2e^{-3t}
根据初始条件 y(0)=y'(0)=0,可以解得 K1=-3,K2=3。
因此,系统的总响应为:
y(t) = -3e^{-2t} + 3e^{-3t} + y_{zp}(t)
代码如下:
```matlab
function dydt = lti_system(t, y)
x = 10*sin(2*pi*t);
dydt = [y(2); 6*x - 6*y(1) - 5*y(2)];
end
[t, y] = ode45(@lti_system, [0 5], [0 0]);
yzi = -3*exp(-2*t) + 3*exp(-3*t);
yzp = -3*exp(-2*t) + 3*exp(-3*t);
y_total = yzi + yzp;
plot(t, y_total);
xlabel('Time (s)');
ylabel('Amplitude');
title('System Response');
```
运行这段代码就可以得到系统的零状态响应波形图。
阅读全文