Abaqus中不收敛问题的解决方法与对策
导读:当我们在进行Abaqus问题求解的时候,经常遇到不收敛的情况。对于新手来说,往往不知所措。对于有经验的人来说,可以通过相关的输出文件快速判断问题的原因和提出有效的解决方法。
例如,在状态监视文件中,我们可以看到一些蛛丝马迹,如图1所示。
图1 常见出现收敛困难的模型的求解状态文件
原因分析:
此类问题大多由于出现了不稳定情况,进而导致求解过程无法按照前一步的求解参数继续求解,需要减少时间增量步来获得收敛解。造成不稳定的原因通常有两类:一类是由于局部状态改变造成的局部不稳定;另一类是由于在接触初始状态时出现了刚体位移。刚体位移较好解决,通过更改边界条件一般能够取得满意的结果,但是前一种局部不稳定比较复杂,需要根据不同的情况进行分析。
一般来说,造成局部不稳定的因素有以下几种:
· 几何问题,如局部屈曲;
· 接触问题,例如将载荷应用于模型其他部分的实体分离;
· 摩擦粘滑行为;
· 材料软化引起的局部化。
解决方法:
对于局部不稳定问题,一般有两类解决方法:第一种是将静力学问题转化为准静态的动力学问题,此种方法比较有效,但是会带来额外的惯性力;第二种是采取附加阻尼的方法,该种方法无需对模型做大的调整,在使用过程中更加便捷和有效,使用较为广泛。
其原理是在平衡方程中附加一个粘性阻尼项,如下公式所示。
式中,c 为阻尼系数,M * 为单位密度质量矩阵。
由于阻尼系数的引用,为系统必然引入额外的能量,这个能量称为耗散能 (stabilization dissipation energy),为了保证引入的阻尼系数对计算没有太大影响,必须将耗散能与应变能的比值控制在一个比较小的范围内。在Abaqus中提供了三种方法引入粘性阻尼,如图2所示。
图2 引入粘性阻尼控制局部不稳定
在Edit Step 的菜单里,存在一个Automatic stabilization 的选项,这个就是用于引入粘性阻尼控制局部不稳定。这里面有三个选项,分别是:
· specify dissipated energy fraction
· specify damping factor
· use damping factor from the previous general step
当计算过程中出现不收敛,可以尝试使用“specify dissipated energy fraction”选项。使用该选项时,Abaqus会自动计算一个阻尼系数用以平衡方程,同时保证其产生的耗散能仅为模型应变能的一小部分,这个值默认为2e-4,如图3所示。
图3通过定义耗散能定义粘性阻尼
当计算在初始时就出现不收敛,可以尝试使用“specify damping factor”直接指定阻尼计算以提高模型的稳定性,尽快进入收敛。默认值为2e-4,如图4所示。
图4通过定义阻尼系数定义粘性阻尼
无论采用哪种方法,为了避免引入阻尼对模型求解造成过大影响,都可以勾选Use adaptive stabilization with max. ratio of stabilization to strain energy,以确保耗散能仅为模型应变能的一小部分,这个值默认为5%。这个值也是用来衡量结果可靠性的一个重要指标。在结果中,可以输出ALLSD(总耗散能)和ALLIE(总应变能),保证两者的比值在一个较小的范围,一般小于5%。同时也可以输出粘性力 (VF) 和总力 (TF),保证两者的比值在一个较小的范围,一般小于5%。
图5 VF和TF场变量输出
图6 ALLSD和ALLIE历史变量输出
来源:仿真秀App微信公众号(ID:fangzhenxiu2018),作者:幻想飞翔。
页:
[1]