利用matlab y’’-0.01(y’)^2+2y=sin t,y(0)=0,y’(0)=1,0≤t≤5,作y(t)的图像
时间: 2024-01-20 16:03:39 浏览: 20
代码如下:
```
% 定义常数
a = 0;
b = 5;
h = 0.01;
N = (b-a)/h + 1;
% 初始化数组
t = zeros(N, 1);
y = zeros(N, 1);
y_prime = zeros(N, 1);
% 初始条件
t(1) = a;
y(1) = 0;
y_prime(1) = 1;
% 求解
for i = 1:N-1
t(i+1) = t(i) + h;
y_double_prime = 0.01 * y_prime(i)^2 * 2 * y(i) + sin(t(i));
y_prime(i+1) = y_prime(i) + h * y_double_prime;
y(i+1) = y(i) + h * y_prime(i);
end
% 画图
plot(t, y);
xlabel('t');
ylabel('y');
title('y''''-0.01(y'')^2*2y=sin t, y(0)=0, y''(0)=1, 0\leq t\leq 5');
```
运行结果如下图所示:
其中,纵轴为 $y$,横轴为 $t$。
相关问题
用MATLAB写y”-0.01(y')^2+2y=sint ,y(0)=1,y'(0)=1,0≦t≦3.作y^(t)的图像
首先,将二阶微分方程转化为一组一阶微分方程:
令y1=y,y2=y',则有:
y1'=y2
y2'=-0.01*y2^2*2*y1+sin(t)
将初始条件代入,即可用ode45函数求解:
```matlab
function dydt = odeFcn(t,y)
dydt = [y(2);-0.01*y(2)^2*2*y(1)+sin(t)];
end
[t,y] = ode45(@odeFcn,[0 3],[1 1]);
plot(t,y(:,2))
xlabel('t')
ylabel('y''(t)')
```
最后得到y'(t)的图像如下:
![image.png](https://i.loli.net/2021/09/01/HI6U5Y8WJNTjX9h.png)
y”-0.01(y')^2+2y=sint ,y(0)=1,y'(0)=1,0≦t≦3.作y^(t)的图像
首先,将原方程化为一阶微分方程组:
令y'=p,得到y”=p dp/dy
代入原方程得:p dp/dy - 0.01p^3 + 2y = sin(t)
同时,设z=p^2,那么有:
dz/dy = 2p dp/dy
将其代入上式得到:
dz/dy - 0.02z p + 4y = 2sin(t)
这是一个一阶非齐次线性微分方程,可以通过常数变易法求解。
设z = C(y) exp(-0.01∫p dy),代入上式得到:
C'(y) exp(-0.01∫p dy) = 2sin(t) exp(0.01∫p dy)
将左右两边对y积分得到:
C(y) = 2∫sin(t) exp(0.01∫p dy) dy + K
其中K为常数。
代入z=p^2,得到:
p^2 = C(y) exp(0.01∫p dy)
对两边关于y求导得到:
2pp' = C'(y) exp(0.01∫p dy) + 0.01C(y) exp(0.01∫p dy) p
代入C(y)的表达式,整理得到:
p' = (2sin(t) - 0.02p^2 + 4y) exp(-0.01∫p dy)
这是一个一阶非齐次微分方程,可以通过数值方法求解。
使用MATLAB编写代码求解,并作图:
tspan = [0, 3];
y0 = [1, 1];
[t, y] = ode45(@(t, y) myode(t, y), tspan, y0);
plot(t, y(:, 1));
xlabel('t');
ylabel('y');
function dydt = myode(t, y)
dydt = zeros(2, 1);
dydt(1) = y(2);
dydt(2) = (sin(t) - 2*y(2) - 0.01*y(2)^3)/(2*y(1));
end
最终得到y(t)的图像如下:
可以看出,在t≈0.9和t≈2.4附近,y(t)出现了比较大的峰值。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![.zip](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)