CH5 微分方程

1. 微分方程的解析解

在这里插入图片描述
在这里插入图片描述

%%
clc; clear;
r = dsolve('Du=1+u^2', 't');
disp(r);

 tan(C3 + t)
           i
          -i

在这里插入图片描述

%%
clc; clear;
y = dsolve('D2y+4*Dy+29*y = 0', 'y(0)=0, Dy(0)=15', 'x');
disp(y);

3*sin(5*x)*exp(-2*x)

在这里插入图片描述

%%
clc; clear;
[x, y, z] = dsolve('Dx=2*x-3*y+3*z', 'Dy=4*x-5*y+3*z', 'Dz=4*x-4*y+2*z', 't');
disp(x);
disp(y);
disp(z);
exp(-t)*(C8 + C10*exp(3*t))
 
exp(-2*t)*(C9 + C8*exp(t) + C10*exp(4*t))
 
exp(-2*t)*(C9 + C10*exp(4*t))
 

2. 微分方程的数值解

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

注意

  • 在解n个未知函数的方程组时,x0和x均为n维向量,m-文件中的待解方程组应以x的分量形式写成
  • 使用Matlab软件求数值解时,高阶微分方程必须等价地变换成一阶微分方程组

3. 微分方程数值例题

在这里插入图片描述

function dy = fun4(t, y)
dy = zeros(2, 1);
dy(1) = y(2);
dy(2) = 1000*(1 - y(1)^2)*y(2) - y(1);
end

%%

%4
clc; clear;
[T, Y] = ode15s('fun4', [0 3000], [2 0]);
plot(T, Y(:, 1), '-');

在这里插入图片描述

在这里插入图片描述

function dy = fun5(t, y)
dy=zeros(3, 1);
dy(1)=y(2)*y(3);
dy(2)=-y(1)*y(3);
dy(3)=-0.51*y(1)*y(2);
end
%%
clc; clear;
[T, Y] = ode45('fun5', [0 12], [0 1 1]);
plot(T, Y(:, 1), '-', T, Y(:, 2), '*', T, Y(:, 3), '+');

在这里插入图片描述

4. 导弹追踪问题

设位于坐标原点的甲舰向位于x轴上点A(1, 0)处的乙舰发射导弹,导弹头始终对准乙舰.如果乙舰以最大的速度v0(是常数)沿平行于y轴的直线行驶,导弹的速度是5v0,求导弹运行的曲线方程.又乙舰行驶多远时,导弹将它击中?
在这里插入图片描述
假设导弹在 t 时刻的位置为 P(x(t), y(t)),乙舰位于 (1, ) 0 Q v t .由于导弹头始终对准乙舰,此时直线 PQ就是导弹的轨迹曲线弧 OP 在点 P 处的切线
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 数值解

function dy = eq1(x, y)
    dy = zeros(2, 1);
    dy(1)=y(2);
    dy(2)=1/5*sqrt(1+y(1)^2)/(1-x); 
end
%%
clc; clear;
x0 = 0; 
xf=0.9999;
[x, y]=ode15s('eq1',[x0 xf],[0 0]);
plot(x,y(:,1),'b.') 
hold on
y=0:0.01:2;
plot(1,y,'b*');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值