如何使用ode45在MATLAB中求解耦合微分方程

时间:2018-11-28 12:17:23

标签: matlab matlab-figure ode45

我有两个微分方程:da / dt = a(.3 / a ^ 3 + .7)^ 1/2和dτ/ dt = 1 / a。初始条件为t = 0; a = 1和τ= 0。如何在Matlab中求解方程式?我需要计算a,t和τ的不同值,并绘制τvs a。谢谢。

1 个答案:

答案 0 :(得分:2)

那很容易。

首先编写一个函数来实现您的微分方程,并将其保存为与函数名称相对应的文件名:

function dy = my_ode(t,y)
dy(1) = y(1)*(0.3/y(1)^3 + 0.)^(1/2); % a
dy(2) = 1/dy(1); % tau

然后在MATLAB中,使用函数调用ode45求解器

[t,y] = ode45(@my_ode,[0 10],[1; 0]);

这是结果:

enter image description here