frogfish 发表于 2016-5-24 09:48

ADAMS 静平衡出错,常用的解决方法

Adams建立一系列的力-位移的非线性微分方程,然后利用逐步迭代的办法来求解静平衡位置。当静平衡失败的时候,我们常常要对静平衡的设置做一些改变,从而使得节约计算时间和成功计算静平衡位置。

1:Alimt和Tlimt是我们经常需要改变大小的参数。
Alimt是每次迭代的最大角位移增量(单位为rad,因为adams在返回角度值时通常单位为rad,比如建立一个measure其默认的单位都是rad,而不论系统角度单位为弧度或者度);Tlimt是每次迭代的最大线位移增量。当我们尝试改变这两个参数值时候,应该综合考虑我们模型中的长度单位、和系统到达静平衡位置时可能的最大线位移和角位移(rad)。

比方说:我们设置的alimt为1,而模型中使用的长度单位为mm,那么adams在计算时候所允许每次迭代的最大线位移为1mm。如果此时,系统到达静平衡位置需要的线位移为1M,那么adams在计算过程中则至少需要迭代1000mm/1mm,即1000次之久,显然这是不合理的。而且如果设置得过大,当平衡位置不只一个时,就很可能造成所求的位置并不是迭代次数最少的平衡位置。

同样的如果我们设置的最大角位移增量为50RAD,而系统达到静平衡位置所需要的角位移增量为7rad,这时,迭代1次就可能超过了静平衡位置,也是不合理的。

因此在选择Alimt和Tlimt的值时,即不能太小也不能太大。当我们很难确定其值的时,就只有不断的加以测试。

2:stability参数的调整:
将质量与阻尼阵比例添加到刚度阵的系数。这可以避免随遇稳定系统的雅克比矩阵奇异。 在大多数情况下,我们不需要对此参数进行调整。但是当我们系统包含有小质量的随遇静平衡物体时,适当增加此系数值,可以有助于收敛。

比方说:一个质量很小的球放在平板上,在系统达到静平衡之前会有一系列的迭代求解,如果此时我们适当增加stability的参数值如提高到1E-3,将有助于收敛,避免雅克比矩阵的奇异,当然也会增加我们的计算时间。该参数通常不影响精度。

3:Error、Imbalance参数的调整:
这两个参数主要是对静平衡计算时,精度的调整。

Error:达到静平衡时所允许的位移误差,增加则精度下降,有助于静平衡收敛。

Imbalance:达到静平衡时合力的平衡误差(每次迭代的时候,adams会将力、力矩的绝对值进行总和,其总和值就是这里的imbalance)

4、maxit允许的最大静平衡迭代次数
增加有助于静平衡

常见错误:
1、静平衡分析后,所得到的静平衡位置可能不只一个,adams通常返回的是最先找到的静平衡位置,当然有时候也不一定会。此时,我们可以通过降低Alimt和Tlimt来获得我们想要的静平衡位置。另外一种方法,则是在进行静平衡分析前先进行一短暂的瞬态分析。(通过脚本文件实现) 

2、模型建立错误,当所得到的静平衡位置并非想得到的是,这有可能是模型建立错误导致的。 

3、模型没有静平衡位置;(比如一小球在重力作用下的自由落体运动)

3、与位移相关的力和重力定义错误或者缺失;

4、存在不连续的力; 

5、单位使用不当或者ERROR、Imbalance设置不当。

sovereign 发表于 2016-5-24 13:20

感谢楼主,学习了
页: [1]
查看完整版本: ADAMS 静平衡出错,常用的解决方法