声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1614|回复: 2

[综合讨论] 怎么用四阶五次Runge—Kutta方法解变系数微分方程组

[复制链接]
发表于 2009-7-14 21:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
请问哪位用MATLAB做过用四阶五次Runge—Kutta方法解变系数微分方程组?请指教下!
回复
分享到:

使用道具 举报

发表于 2009-7-16 16:08 | 显示全部楼层
doc ode45看看,里面有例子——可能比你说的还要稍微难点儿。

评分

1

查看全部评分

发表于 2009-7-16 23:12 | 显示全部楼层
下面给个用1stOpt解变系数微分方程组的例子,非常方便。

微分方程组:

x1'=dx1/dt=a*x1+b*x2+c;
x2'=dx2/dt=-b*x1+a*x2/c;

其中,a=-0.1, b=-1,c为变系数,范围[1,3]
t变化范围=[0,10*pi],初值x1(0)=1, x2(0)=1

1stOpt代码:

LoopConstant c=[1:0.1:3];
Constant a=-.1,b=-1;
Variable t=[0,10*pi],x1=1,x2=1;
Plot x1[x],x2;
ODEFunction x1'=a*x1+b*x2+c;
                      x2'=-b*x1+a*x2/c;

结果:
常微分方程(初值问题):
1: x1' = dx1/dt = (-0.1)*x1+(-1)*x2+(1)
2: x2' = dx2/dt = 0 -(-1)*x1+(-0.1)*x2/(1)
算法: 龙格-库塔-费尔博格法(Runge-Kutta-Fehlberg Method)
步长值: 0.0628318530717959
步长数: 500
结果:
t            x1(t)                  x2(t)              x1'(t)                 x2'(t)
0            1                      1                  -0.1                   0.9
31.415927    0.137945214439506      0.990526871076025 -0.00432139251997565   0.0388925273319032
uh.jpg

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-26 09:57 , Processed in 0.062375 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表