用MATLAB解决问题:2y''(t)+ 2y'(t)+ 77y(t) = f(t) 在t>=0时接入激励f(t)=10*sin(2 *pi *t), y'(0) =2, y(0) =1,求零状态响应,求零输入响应并图形展示
时间: 2023-07-28 07:06:49 浏览: 115
matlab求解零状态零输入响应.doc
5星 · 资源好评率100%
首先,我们需要求出这个微分方程的特征方程:
2r^2 + 2r + 77 = 0
解这个方程可以得到两个复数解:
r = -0.5 + 4.059i 或 r = -0.5 - 4.059i
因为这两个解是共轭复数,所以我们可以将通解表示为:
y(t) = e^(-0.5t)(c1*cos(4.059t) + c2*sin(4.059t))
其中c1和c2是待定系数。现在我们可以使用初始条件y(0) = 1和y'(0) = 2来解出这些系数:
y(0) = c1 = 1
y'(0) = -0.5c1 + 4.059c2 = 2
解这个方程组可以得到:
c1 = 1
c2 = 0.4919
因此,零状态响应为:
y_h(t) = e^(-0.5t)cos(4.059t)
现在我们需要求出零输入响应。我们可以令f(t) = 0,然后解出这个微分方程的零输入响应:
2y''(t) + 2y'(t) + 77y(t) = 0
这个方程的特征方程是:
2r^2 + 2r + 77 = 0
它有两个实数解:
r = -0.5 ± 4.059i
因此,零输入响应可以表示为:
y_p(t) = c1e^(-0.5t)cos(4.059t) + c2e^(-0.5t)sin(4.059t)
为了确定c1和c2的值,我们需要考虑初始条件。因为这个微分方程是线性的,我们可以将零输入响应表示为两个分别与c1和c2相关的函数之和:
y_p(t) = y1(t) + y2(t)
其中:
y1(t) = e^(-0.5t)cos(4.059t)
y2(t) = e^(-0.5t)sin(4.059t)
根据初始条件y(0) = 1和y'(0) = 2,我们可以得到:
c1 = 1
c2 = 3.5806
因此,零输入响应为:
y_p(t) = e^(-0.5t)cos(4.059t) + 3.5806e^(-0.5t)sin(4.059t)
现在我们可以将零状态响应和零输入响应相加,得到总响应:
y(t) = y_h(t) + y_p(t)
y(t) = e^(-0.5t)cos(4.059t) + e^(-0.5t)cos(4.059t) + 3.5806e^(-0.5t)sin(4.059t)
y(t) = 2e^(-0.5t)cos(4.059t) + 3.5806e^(-0.5t)sin(4.059t)
现在我们可以用MATLAB来绘制y(t)随时间变化的图形:
```
t = linspace(0, 10, 1000);
y = 2 * exp(-0.5*t) .* cos(4.059*t) + 3.5806 * exp(-0.5*t) .* sin(4.059*t);
plot(t, y);
xlabel('Time');
ylabel('y(t)');
title('Response of 2y''''(t) + 2y''(t) + 77y(t) = 10*sin(2*pi*t)');
grid on;
```
运行这段代码可以得到一个图形,它显示了y(t)随时间变化的情况。
阅读全文