声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 8887|回复: 18

[编程技巧] 求助--怎么用龙格库塔法解多元二阶微分方程组

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

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

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

x
求助--怎么用龙格库塔法解多元二阶微分方程组<BR>  有范例更好<BR>谢谢!!

本帖被以下淘专辑推荐:

回复
分享到:

使用道具 举报

发表于 2006-3-24 08:19 | 显示全部楼层

回复:(yjh2911)求助--怎么用龙格库塔法解多元二阶微...

doc ode45<BR>例子里边也有
发表于 2006-3-30 07:48 | 显示全部楼层
我也想知道,例了里的太简单了。
发表于 2006-3-30 19:16 | 显示全部楼层

回复:(yjh2911)求助--怎么用龙格库塔法解多元二阶微...

简单来说就是将方程转化到状态空间<BR><BR>然后根据状态空间中的方程写出function<BR>该function返回值是广义坐标的一阶导数,输入值就是广义坐标,当然还可以有参变量<BR><BR>然后直接调用ode45,ode45的具体参数表示什么含义帮助里说得很清楚了<BR><BR>至于具体例子,论坛中多得很,自己找来看吧,要多复杂都有
发表于 2006-3-30 20:07 | 显示全部楼层
<DIV class=quote><B>以下是引用<I>happy</I>在2006-3-30 19:16:46的发言:</B><BR>简单来说就是将方程转化到状态空间<BR><BR>然后根据状态空间中的方程写出function<BR>该function返回值是广义坐标的一阶导数,输入值就是广义坐标,当然还可以有参变量<BR><BR>然后直接调用ode45,ode45的具体参数表示什么含义帮助里说得很清楚了<BR><BR>至于具体例子,论坛中多得很,自己找来看吧,要多复杂都有</DIV>
<P>要多复杂都有,不是吧?我另发了一个贴子了。这个微分方程,说来不怕你笑我笨,我解了快一个月了,还没解出来。先是将方程近似线性化,再就无量纲化,推来推去,都不行。结果还是发散哪(Y无限大),但在实际中,这种方程是有解的,而且是有规律的。呈正或余弦变化。</P>
发表于 2006-3-31 19:45 | 显示全部楼层

回复:(siyanger)以下是引用happy在2006-3-30 19:16...

<DIV class=quote><B>以下是引用<I>siyanger</I>在2006-3-30 20:07:03的发言:</B><BR><BR>
<P>要多复杂都有,不是吧?我另发了一个贴子了。这个微分方程,说来不怕你笑我笨,我解了快一个月了,还没解出来。先是将方程近似线性化,再就无量纲化,推来推去,都不行。结果还是发散哪(Y无限大),但在实际中,这种方程是有解的,而且是有规律的。呈正或余弦变化。</P></DIV>
<br>呵呵,理论上用rk法求解是没有问题的,但是对于高维系统,rk法效果很差的,发散是常见,换算法吧
发表于 2006-3-31 19:56 | 显示全部楼层
能推荐一下什么算法比较好吗?非常感谢!!<BR>又:我这个方程的自由度说来也不算很多,15个。变成状态方程就是30个了。
发表于 2006-3-31 19:58 | 显示全部楼层

回复:(siyanger)能推荐一下什么算法比较好吗?非常...

<DIV class=quote><B>以下是引用<I>siyanger</I>在2006-3-31 19:56:26的发言:</B><BR>能推荐一下什么算法比较好吗?非常感谢!!<BR>又:我这个方程的自由度说来也不算很多,15个。变成状态方程就是30个了。</DIV>
<br>30个求解就非常困难了<BR>曾经用rk法算过16个自由度的,调得只郁闷<BR>虽然最后算出来了,代价太大了<BR>可以试试直接积分法,就是newmark之类的
发表于 2006-3-31 21:11 | 显示全部楼层
呵呵,我的方程是15个自由度啊,比起你的16个自由度,还少一个呢。我是说变为状态方程是30个。你的不是8自由度吧?我再试试直接积分法吧,再作不出来,毕业不了啦!谢谢你哟!<BR>等我解出来,再交流交流!
 楼主| 发表于 2006-4-1 16:15 | 显示全部楼层

给个实例--谢谢

给个实例--谢谢!!
发表于 2006-4-1 16:31 | 显示全部楼层

回复:(yjh2911)给个实例--谢谢

<DIV class=quote><B>以下是引用<I>yjh2911</I>在2006-4-1 16:15:09的发言:</B><BR>给个实例--谢谢!!</DIV>
<P>自己到前面的帖子里找吧</P>
 楼主| 发表于 2006-4-12 20:11 | 显示全部楼层
<P>我的是6个自由度<BR>状态方程是12个<BR>可是总是提示初始矩阵小,怎么回事?</P>
发表于 2006-4-14 20:48 | 显示全部楼层

回复:(yjh2911)我的是6个自由度状态方程是12个可是...

<DIV class=quote><B>以下是引用<I>yjh2911</I>在2006-4-12 20:11:21的发言:</B><br>
<P>我的是6个自由度<br>状态方程是12个<br>可是总是提示初始矩阵小,怎么回事?</P></DIV><br>把代码给出来,问题应该是你给的初值少于12个量
[此贴子已经被作者于2006-4-14 20:49:30编辑过]

发表于 2014-5-19 23:32 | 显示全部楼层
我也想知道
发表于 2014-7-24 19:53 | 显示全部楼层
???doc ode45<BR>例子里边也有 这个在哪里下载?
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-5-23 10:31 , Processed in 0.104630 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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