仿真笔记——Abaqus隐式和显式求解算法的区别和应用
Abaqus有限元计算要使用的求解器类型:隐式还是显式?求解器类型会影响求解的方程组、某些单元的可用性、运行时间,甚至是否获得收敛。本文将解释Abaqus中可用的两个求解器之间的区别,它们的优缺点以及何时选择哪种求解器。
有什么区别?
当谈论FEA中的隐式或显式时,谈论的是用于时间增量的算法,在两种情况下,模型的状态都是在多个时间点计算,新状态是根据旧状态计算的。使用显式算法,可以直接从当前状态下的可用数据计算新状态,基本上是一种推断。而使用隐式算法,不能直接从旧状态计算新状态,必须求解一个耦合的方程组,这需要非线性解算法,通常是Newton-Raphson方法。计算成本和时间增量大小
单个显式增量的计算成本很小,所需的所有信息都可用,计算简单快捷。但是,时间增量不能太大,因为这样会变得不稳定,解上的误差会呈指数级增长。如果我们将其视为外推,远远超出已知范围的推断往往会给出错误的结果,特别是如果错误有机会相加。可以使用的最大时间增量由 Abaqus 自动计算,称为稳定时间增量,稳定的时间增量随着单元尺寸的减小、密度的降低和刚度的提高而减小。具有最小稳定时间增量的单元决定了整个分析的时间增量,因此,单个形状不良的单元会极大地影响仿真时间。在整个分析过程中,稳定时间增量通常近似恒定,因此,一旦第一个增量完成,可以估计运行分析所需的时间。隐式增量的计算成本要大得多,因为需要求解一个方程组,对于非线性分析,这甚至需要多次完成。因此,解决单个隐式增量将需要更多的时间和内存。另一方面,时间增量大小不受隐式算法稳定性问题的限制,通常允许比显式算法更大的时间增量。Abaqus/Standard(隐式求解器)中的增量大小通常由 Abaqus 根据Newton-Raphson方案收敛的难易程度自动确定。越是非线性,找到收敛解决方案的计算成本就越高。关注公 众 号:CAE仿真学社,时刻学习掌握CAE/CFD模拟仿真关键技术!
对于显式,较大的时间增量会导致解决方案上出现较大的错误,对于隐式,较大的时间增量不会导致解上更大的误差,因为使用了迭代方法(Newton-Raphson方法)。因此,在显式和隐式之间进行选择,通常是在许多小增量和较少的大增量之间进行选择。动态效应
Abaqus/Standard隐式求解器,可以求解静态平衡:力的总和为零的状态。还可以包括动态效果,如果不包括动态效应,则必须存在静态平衡。惯性不能用于稳定系统,因此不允许刚体运动。在静态分析中,内部能不能转换为动能。Abaqus/Explicit总是计算动态平衡:力 = 质量 x 加速度。与静态隐式分析相比,显式分析中的振动更多,并且结果更具振荡性。时间具有物理意义,加载速率很重要。加载速率不会影响稳定的时间增量。因此,大量的模拟时间也会占用大量的模拟时间。如果对动态效应不感兴趣,则应施加较慢的载荷速度,以使质量加速度引起的力不起作用。这也可能比实际负载应用速率更快,更快地施加载荷的替代方法是通过增加质量来增加稳定时间增量,即为质量缩放。接触:明确首选
接触可以包含在 Abaqus/Standard和Abaqus/Explicit中,并不总是以完全相同的方式定义,但大多数选项在这两种情况下都可用。接触的变化是极其非线性的。正因为如此,隐式算法通常需要多次迭代才能解决它,这在计算上是昂贵的。因此,具有挑战性的接触问题通常更容易在Abqus/Explicit中解决。功能仅在一个求解器中可用
某些选项仅在 Abaqus/Standard或Abaqus/Explicit中可用。这些包括:何时使用哪个?
Abaqus/Standard对于速度慢且相对线性的问题更有利,而Abaqus/Explicit对于快速且非常非线性的问题更有益。通常,大多数挑战都出现在缓慢且极其非线性的问题中:应该使用Abaqus/Standard还是Abaqus/Explicit来解决?这个问题并不总是有一个简单的答案:Abaqus/Standard会给出收敛问题,而Abaqus/Explicit会花费很长时间和/或给出错误的结果。应用质量缩放可能有助于减少Explicit 中所需的时间。推荐首先尝试Abaqus/Standard,如果收敛太麻烦,隐式步骤可以用显式步骤替换,而不必再次设置整个模型。在一个分析中不能同时使用隐式求解器和显式求解器。可以先使用一个求解器执行分析,导入结果,然后在使用不同求解器的第二个分析中从第一个分析结束时的状态继续。当将轻度预载荷(隐式)与极端载荷(显式)相结合时,或者当进行成形分析(显式)并想知道之后的弹性回弹(隐式)时,这尤其有用。示例
设置
模拟了一个空心钢圆柱体(用壳体元件建模)(图2),长500毫米,直径为100毫米,厚度为0.5毫米。上端和底端分别使用运动学耦合连接到参考点。底点完全受约束,顶点施加100 mm的位移。使用Abaqus/Standard 和 Abaqus/Explicit 来分析的。在Abaqus /Standard 中,使用 1s 的步进时间,在 Abaqus/Explicit 中,使用 1 秒的步进时间或 0.1 秒的步进。结果分析
隐式分析未完成:在大约12.5%的阶跃时间内,由于收敛问题而停止。显式分析完成。隐式分析和快速显式分析的仿真时间 (0.1s) 处于相同的数量级。图3 在所有三种情况下,变形圆柱体约占总应用载荷的 10%,隐式(左)、显式(带参考时序)和显式且具有更快载荷应用(右)随着显式分析的继续,它们都显示了屈曲行为,尽管并不完全相同。
这种屈曲行为导致隐式分析中的收敛问题,使用Riks分析可能会有所帮助。在所有情况下,平均反作用力都是相似的(图4),与Standard分析相比,显式分析的反应力更具振荡性。需要过滤才能获得合理的值。蓝线(显式与参考时序)的振荡比红线(显式快速加载)小得多,隐式分析未出现振荡(黄色虚线。当负载施加得更快时,动能更大(图5),这在屈曲点之后是显而易见的变化。图5 用于较慢和较快负载应用的动能,用于比较(左)和(右)内能对于更快的荷载应用工况,时间被缩放到施加的位移匹配。当负载施加得更快时,动能更大。在屈曲之前,差异不明显。结论
Abaqus/Standard非常擅长快速解决具有大时间尺度的线性到轻度非线性问题,而对于极端非线性问题,它可以减慢速度或可能根本找不到解决方案。另一方面,Abaqus/Explicit擅长于具有小时间尺度的极端非线性问题,对于具有大时间尺度的问题,仿真时间可能长得令人望而却步。