请教:用ode函数如何解微分方程
我现在是9个变量,例如dx/dt=9.5(y-1)+z
dy/dt=2(x+z)
dz/dt=x+y
。。。
这样一直有9个不同的变量,就是9个不同的方程,怎么样用ode函数求解啊? 不管其变量多少,都一样只是写m程序复杂一点,其求解你可以在网上找一下,有很多程序!
[ 本帖最后由 无水1324 于 2007-6-14 21:08 编辑 ] 如果变量过多用ode来求,还是比较困难的
不过9个变量不算多了,最多我做过32个变量的
回复 #3 gghhjj 的帖子
用matlab的人的变量数目一般不会达到几千几万的。 建议楼主在本论坛搜索一下,相似的问题很多 原帖由 无水1324 于 2007-6-16 10:12 发表 http://www.chinavib.com/forum/images/common/back.gif用matlab的人的变量数目一般不会达到几千几万的。
呵呵,不用几千,几十就非常难调了,上次32个变量的我调了差不多半个月才选到合适的初值 哦那这个也不是ode求解的问题,是初值选取的问题,我做一个二阶系统的求解,有时候都很难取得一个比较好的初值,不需经过多次猜测 原帖由 无水1324 于 2007-6-17 09:08 发表 http://www.chinavib.com/forum/images/common/back.gif
哦那这个也不是ode求解的问题,是初值选取的问题,我做一个二阶系统的求解,有时候都很难取得一个比较好的初值,不需经过多次猜测
这里的初值不好选主要就是ode造成的,给的初值不好容易导致计算溢出
换newmark就好多了,基本不太需要考虑这个问题
回复 #8 gghhjj 的帖子
newmark听说很好,但是现在一直还没有遇到ode解决不了的,主要是我的系统比较简单 原帖由 无水1324 于 2007-6-19 08:53 发表 http://www.chinavib.com/forum/images/common/back.gifnewmark听说很好,但是现在一直还没有遇到ode解决不了的,主要是我的系统比较简单
newmark对于求解高维系统还是比较有效的,当然如果系统比较简单,完全可以用ode,比较方便
页:
[1]