用MATLAB按二阶龙格库塔法求解微分方程组,大神速来,急急急

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用MATLAB按二阶龙格库塔法求解微分方程组,大神速来,急急急相关的知识,希望对你有一定的参考价值。

用MATLAB按二阶龙格库塔法求解微分方程组,在0时刻,x(0),y(0),Z(0),Vx(0), Vy(0),Vz(0)是各个方向的速度且已知,μ为常数,r等于x,y,z的平方和开根,求xyz关于时间变量的函数关系式。

参考技术A ode45的帮助 例子那里有一阶常方程组的求解方法

你可以把上面的方程组改写成一阶常方程组
令x1=x
x2=dx1/dt
x3=dx2/dt

y1=y
y2=dy1/dt
y3=dy2/dt

x3=-u*x1/r3
y3=-u*y1/r3

z类似追问

能不能应用matlab把具体的程序写出来,谢谢。另,matlab中定义能不能用function,为什么我用function定义老出错。

本回答被提问者和网友采纳
参考技术B 字母上加两点表示的是二阶导数?Vx=dx/dt?追问

是二阶导数。是这样

matlab用龙格库塔法求解变系数常微分方程

遇到一个二阶常微分方程y"=1020000*sin(12560*t)*[-0.8159*(y^4)+1.6724*(y^3)-0.1303*(y^2)+0.0042*(y)],y和y'的初值都是0,t的范围[0,0.0005],y=f(t),求使用ode45方法的程序,或者其他的龙格库塔法的程序,谢谢

参考技术A

该二阶微分方程用龙格库塔法可以这样来求解。

第一步,根据该二阶微分方程,自定义微分方程函数,func(t,y)

第二步,根据初始条件,确定y和y'的初值,即y0=[0,0]

第三步,使用ode45函数求解【t,y】的数值解,即

[t,y] = ode45(@func,[0 0.0005],y0);

第四步,根据t、y、y'值,绘制t—y(t),t—y'(t)曲线图

下图为求解结果

以上是关于用MATLAB按二阶龙格库塔法求解微分方程组,大神速来,急急急的主要内容,如果未能解决你的问题,请参考以下文章

急!matlab用龙格库塔法求解微分方程组

求编程达人帮忙用matlab编程用龙格库塔方法解微分方程

matlab龙格库塔法解微分方程

Runge-Kutta龙格-库塔法求解微分方程matlab仿真

matlab代码实现四阶龙格库塔求解微分方程

基于龙格-库塔法Runge-Kutta的常微分方程的求解matlab仿真