咕噜噜 发表于 2007-5-30 17:07

关于非线性振动的数值解法

非线性振动必然涉及非线性微分方程(组),数值解法里面我知道的最直接是直接积分法,如线性加速度法,威尔逊θ法,newmark法。对于单自由度系统来说这些方法相对来说是比较简单的,但是如果是多自由度系统很多在应用上就出现了困难,尤其是自由度超过3。
记得gghhjj说线性加速度法现在很少人用了,那么现在数值解法现在用的比较多的是什么?
数值解法来说那个方法更好一些,有没有适用情况对比?
单自由度到多自由度的话需要怎么样一个思路转换,应该不仅仅是从数值到矩阵吧?

咕噜噜 发表于 2007-5-30 17:11

这三种方法中涉及到了稳定条件,newmark法是无条件稳定的,威尔逊θ法在θ>=0.5,α>=0.25(0.5+θ)是稳定的

wanyeqing2003 发表于 2007-5-30 18:00

newmark法也有稳定性条件。

论坛里有这个问题的回复,只是搜索不方便,不能为你查询了。

[ 本帖最后由 wanyeqing2003 于 2007-5-30 18:04 编辑 ]

wanyeqing2003 发表于 2007-5-30 18:04

从一般概念上理解,单自由度与多自由度的解法是相似的。可以通用,我做过这样的尝试。

而在实际应用中,矩阵运算可能会有计算量大,计算精度的条件的制约。可能会影响计算效果。

咕噜噜 发表于 2007-5-30 18:49

回复 #4 wanyeqing2003 的帖子

解法是相似,可实际操作起来并不那么简单了
对于不少非线性微分方程可以用matlab的函数直接求解,可某些情况不能
所以如果要求取较为精确的数值解选择合适的数值解法,自己编程序还是很必要的

咕噜噜 发表于 2007-5-30 18:49

回复 #3 wanyeqing2003 的帖子

^_^,那看来我理解还是有些问题的,我再看看

wanyeqing2003 发表于 2007-5-30 19:49

我是编过这些程序的,而不是用malab。其中就包括一些矩阵运算的程序。所以我觉得我还是有点发言权的。

wanyeqing2003 发表于 2007-5-30 19:53

有问题可以一起讨论。

咕噜噜 发表于 2007-5-30 20:10

回复 #8 wanyeqing2003 的帖子

^_^,万老师当然有发言权啊,我现在就是想把这个问题讨论清楚
我对这个问题还不是很清楚,连同我同学也很想弄清楚

wanyeqing2003 发表于 2007-5-30 20:14

那你得把具体的问题提出来,我们可以一起讨论。
不过你要先看看书,做做练习。

wanyeqing2003 发表于 2007-5-30 20:19

我这两天在和一位会员讨论,发现有一些朋友处理实际问题的能力稍稍欠缺一点。常常不知道应该问一些什么问题,如何开展工作。
有的时候我都不知道该怎么回答他的问题。请看:
http://forum.vibunion.com/forum/viewthread.php?tid=43964&extra=&page=2

wanyeqing2003 发表于 2007-5-30 22:00

刚刚又想了一下,我可能说得有点过头了。有些经验不一定都管用。

如果有误导他人之处,还请多多原谅。

咕噜噜 发表于 2007-5-30 22:09

回复 #12 wanyeqing2003 的帖子

^_^,万老师谦虚了
话总是要说出来让人辨别才知道对于不对
比如我同学她自己随便用来练习的例子吧,二自由度,a*D2x+b*d2y+c*Dx+D*dy=0;e*D2y+f*D2x+d*Dx+c*Dy+sin(w*t)=0
这个我试了一下最后没作出来,可能我真是比较笨,不知道怎么去展开

咕噜噜 发表于 2007-5-30 22:11

回复 #12 wanyeqing2003 的帖子

另,我给的这个方程组用matlab中的ode45是无法求解的,必须自己动手推倒、编程序
我发现我也不会展开问题,好像有点不知所云

gghhjj 发表于 2007-5-31 07:00

上面的问题用ode45应该可以求解

至于展开非常容易,设置变量z(1)=xz(2)=x'z(3)=yz(z)=y'
代入方程,整理成
z'=f(z)的形式就行了
页: [1] 2 3 4
查看完整版本: 关于非线性振动的数值解法