声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1760|回复: 2

[转子动力学] 一道微分方程的难题!(动力学微分方程求解)

[复制链接]
发表于 2006-12-22 22:55 | 显示全部楼层 |阅读模式

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

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

x
x''+a*y''+c*x'+d*(x*x+y*y)+e=0;
y''+k*x''+f*y'+g*y+h=0;
用四阶Runge-Kutta法解此微分方程组,matlab程序如何表示该方程组?我令u1=x,u2=y,u3=x',u4=y',来表示方程不行.大家有什么好的方法来解决这个问题吗?
u=[x;y;x';y'];
du=[x';y';x'';y''];
du=[u3;
        u4;
        ....;(不知怎么表示啊)
       ....;
     ]
回复
分享到:

使用道具 举报

发表于 2006-12-22 23:32 | 显示全部楼层
很简单的Matlab问题啊。
先进行代数处理,
设x''+a*y''+c*x'+d*(x*x+y*y)+e=0;为方程1,
y''+k*x''+f*y'+g*y+h=0;为方程2,
方程1乘以k再减去方程2得到方程3(其中最高阶数为(a*k-1)*y",其它为一阶导数或者常数项),
然后方程2乘以a再减去方程1得到方程4(其中最高阶数为(a*k-1)*x",其它为一阶导数或者常数项),
方城3和方程4构成的微分方程组与原微分方程组等价,求之即可。


当然,以上处理的前提是a、k不等于0,如果它们等于0就可以直接数值积分了
发表于 2006-12-23 09:19 | 显示全部楼层
如果方程组里的系数不能确定的话,建议用隐函数格式展开迭代,要不就用差分方程离散化后再迭代。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-6-1 12:39 , Processed in 0.060482 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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