fineshang 发表于 2007-8-31 16:25

10自由度二阶微分方程组的MATLAB求解问题

10自由度二阶微分方程组的MATLAB求解!!
我正在分析一个振动问题,列出的是10自由度二阶微分方程组,形如:
{X''}+{X'}+{X}={P}
其中=diag{J1,J2,J3,J4,J5,J6,J7,J8,m,m}
    {X}=(φ1,φ2,φ3,φ4,φ5,φ6,φ7,φ8,X,Y)
    为10×10阶的常数矩阵
    为10×10阶的时变矩阵,其中每个元素均是时间t的函数,Kij=Kij(t)
    {P}=diag{Tin,0,0,0,0,0,0,0,0,-Tout}
想用数值解法(四阶龙格库塔法),借助matlab进行求解,最后输出
   (1)X与Y的轨迹图
   (2)Xsp(t)=Rs×φ2-Rp×φ3-Rc×φ7 与 X'sp(t)=Rs×φ'2-Rp×φ'3-Rc×φ'7
   (3)Xcl(t)=Rc×(φ7-φ8) 与 X'cl(t)=Rc×(φ'7-φ'8)
   (4)Xsp(t) 与 X'sp(t)的相平面图

程序编好了,一运行,结果前几千次迭代全为零,后面就显示NaN,曲线也输不出来,本人百思不得其原因何在,请教各位高手帮帮忙,给分析一下。是不是因为没有量纲一化的缘故呢?
非常感谢!程序很简单,就是输入质量矩阵,刚度矩阵,阻尼矩阵等,调用一次ode45!

[ 本帖最后由 eight 于 2007-9-1 17:01 编辑 ]

eight 发表于 2007-9-1 17:01

原帖由 fineshang 于 2007-8-31 16:25 发表 http://www.chinavib.com/forum/images/common/back.gif
10自由度二阶微分方程组的MATLAB求解!!
我正在分析一个振动问题,列出的是10自由度二阶微分方程组,形如:
{X''}+{X'}+{X}={P}
其中=diag{J1,J2,J3,J4,J5,J6,J7,J8,m,m}
    {X}=(φ1,φ2, ...

贴一下代码吧,让路过的这方面的高手帮你看看

HONGRIVER 发表于 2007-10-6 15:58

我也需要

无水1324 发表于 2007-10-6 16:09

回复 #1 fineshang 的帖子

应该是全部写成了一阶方程(状态方程)了,然后再求解把。
还有调整一下你的初值。
页: [1]
查看完整版本: 10自由度二阶微分方程组的MATLAB求解问题