polarstar 发表于 2010-6-7 19:01:58

讨论:隐式算法与显式算法的比较

本帖最后由 polarstar 于 2010-6-7 19:03 编辑

小弟对力学和有限元理论只了解皮毛,设置求解器时总是要选择隐式和显式算法,每次
都很郁闷,不知道两者的区别,所以就在网上搜索了一下,参考simwe、fea@88和adina
的help,总结了如下,希望抛砖引玉,大家谈一谈这两种算法的应用场合和实际使用时
遇到的问题。
----------------------------
1. 隐式算法,在对第n步求解时使用第n+1步的信息,需要对第n+1步的所有方程组求解
,涉及到矩阵求逆、迭代、收敛等,每一时间步的计算量较大,刚度矩阵不能奇异,但
无条件稳定,可采用较大的时间步。
2. 显式算法,在对第n步求解时使用第n-1步的信息,故无需迭代,可顺序求解,不存在
矩阵求逆、迭代、收敛问题,毎一时间步的计算量较小,但条件稳定,时间步需取小值
以保证精度,存在误差积累问题。
3. 隐式算法的计算成本与自由度数目的平方成正比,显式算法的计算成本与单元数目、
最小单元尺寸的倒数成正比,并与材料属性相关。模型中的最小单元尺寸决定显式算法
的时间步长,提高材料的可压缩性可增大显式算法的时间步长,隐式算法则不存在这两
个问题。
4. 小型模型计算可采用隐式算法,大型工程问题收敛较慢,甚至不收敛,可考虑显式算
法。
5. 对线性和非线性静力学问题,采用隐式算法。
6. 对低速动力学问题,像大多数的结构动力学问题、某些金属成型问题、压溃分析、地
震响应和生物医学问题等,求解时间相对于波在单元的传播时间比较长,隐式算法比较
合适。
7. 对高速动力学问题,像波传播、爆炸、高速压缩等,求解时间与波在单元的传播时间
相当,显式算法比较合适。
8. 对不能用低速或高速定义的动力学问题,像碰撞、跌落试验和金属成型等,如果没有
收敛问题,建议采用隐式算法。
9. 对非线性程度较高的模型,隐式算法迭代次数多,容易导致不收敛,可采用显式算法

wjpope1 发表于 2011-2-11 14:48:21

又学习了点知识:)

hanchuanjun 发表于 2011-7-28 16:59:52

楼主总结得真是精炼。

oyks 发表于 2011-8-13 09:49:39

学习中,顶!

dfdfpk56 发表于 2011-8-26 16:50:54

多谢楼主的经验总结,学习了

ymywudi 发表于 2011-8-27 11:23:31

订货顶顶idng
页: [1]
查看完整版本: 讨论:隐式算法与显式算法的比较