abaqus稳定性分析教程(非线性收敛问题的六个建议)(1)

作者简介

本文作者:江丙云

本文由作者发布于iCAETube公众号,技术邻CAE学院授权转载。

江丙云,上海交通大学博士,CAEMC-国际注册CAE工程管理咨询工程师,《汽车实用技术》编委会副秘书长。专职于汽车零部件、3C电子产品分析和优化;熟悉ABAQUS(达索技术支持专家认证),专注于联合仿真和复材分析等;编著有《ABAQUS工程实例详解》、《ABAQUS Python二次开发攻略》、《ABAQUS分析之美》和《ANSYS Workbench有限元分析工程实例详解》等4本专著。

如有相关的业务咨询请点击文末左下角阅读原文,或在技术邻站内、技术邻APP搜索专家用户名即可。

求解非线性分析的工程师都经历过:收敛困难。这里提出寻找收敛问题原因的一点想法。

01

检查作业诊断

Abaqus/Viewer打开odb结果文件,菜单Tools-->Job Diagnostics 。作业诊断提供所有警告和错误,以及残差和接触信息。最有用的功能之一是视口中的突出显示选择复选框。

abaqus稳定性分析教程(非线性收敛问题的六个建议)(2)

警告选项卡中,用户可以看到数值奇点和零点(如果适用)的位置,可能会了解导致这些警告的原因。在残差选项卡中,可以显示具有最大残差的节点。查看此节点的迭代会出现收敛困难,通常会显示导致问题的模型区域。这个地区发生了什么意外事件吗? 在接触选项卡中,可以查看最大接触力误差和最大穿透误差的位置。

02

查看警告信息

查看何时发出警告以及是否可能指向该问题。例如,如果求解程序尝试以较大的增量进行第一次尝试并发出与负特征值相关的警告,然后减少时间增量并在下一个增量中获得收敛而没有任何困难或警告,则可能是警告是只是尝试过大的时间步骤的结果。

如果警告消息重复并且发生重复削减,则可能表示稳定性问题。某些警告非常具体,其他警告可能会因不同的根本原因而发生,需要更多经验才能解决问题。

03

查看边界条件

不收敛的一个原因是边界条件不足,不合理的边界条件可能导致局部极端变形,模型也可以过度约束或受约束。在约束条件下,并非所有刚体运动都被抑制,导致一个或多个自由度,零刚度和通常零枢轴警告。过度约束也会导致零枢轴警告。

尽管Abaqus检查过度约束并尝试解决它们,但这并不总是可行的,例如,如果由于接触而在一段时间后开始发生过度约束。建议检查与过度约束相关的所有警告消息,不要认为Abaqus能够正确解决过度约束。

04

查看接触

接触也是收敛困难的主要原因,因为接触的开始会给力 - 位移关系带来不连续性,这增加了牛顿法求解的难度。这就是Abaqus在接触变化时使用单独的严重不连续迭代的原因。

接触不收敛的一个可能来源是接触初始状态。如果问题依赖于稳定性的接触但开始并没有接触,则求解难以开始。特别是在使用负载控制的情况下:基本上将负载应用于没有刚度的物体并且可以发生刚体运动。如果开始使用位移控制来确保发生接触通常可以解决收敛问题。Abaqus当然提供接触稳定功能,以帮助在接触前自动控制静态问题中的刚体运动。

可以通过使用自动稳定在接触控制中定义。通过自动稳定,当表面彼此靠近但不接触时施加阻尼,因此对负载部件的位移具有阻力,并且不再能够进行刚体运动。因为这意味着允许表面接触,所以在应用它的步骤期间,阻尼减小,默认为0。建议检查粘性耗散是否过大,例如将ALLSD与ALLIE进行比较。也可以应用解决点6中提到的不稳定性的技术。

另一个潜在的接触非收敛源是没有为实际接触的表面定义接触,这可能导致不切实际的结果,非常大的变形和不收敛。例如,自接触较容易被忽视。当Abaqus强大的通用接触被应用时,通常不会发生这种情况。

05

查看材料

当应变增加时材料中的应力不增加(刚度不为正)时,会发生收敛问题。当包括损伤的实验数据用于定义模型而未建立损伤模型时会发生收敛问题。检查模型中的(最大)应力和应变是否超出了材料定义的损伤范围。

如果使用Abaqus的超弹性模型的材料拟合选项,则材料的稳定性可能会受到限制,通过右键单击材料并选择“Evaluate”,可以查看Abaqus计算的稳定性限制。

当使用塑料材料模型并且载荷到达定义曲线的末端时,Abaqus用水平线外推曲线:(塑性)应变可以增加,但应力不增加(完全可塑性)。在这种情况下,刚度为零。如果在单个单元中发生,通常模拟将运行没有问题,当模型的大部分单元是理想塑性时,可能成为一个问题,通常表明材料的负载太大。

06

采用阻尼解决不稳定

可能导致不收敛的最常见原因是存在不稳定性。模型开发的原则之一是模型不应该比描述的目标行为更复杂。考虑到这一点,通过假设为静态运行来降低模型的复杂性似乎是合理的。然而,这种简化可能使模型更难以解决。一般来说,负荷下材料的行为由牛顿第二定律描述:

F = m x a(力等于质量乘以加速度)

当假定静态行为时,加速度等于零,因此所有力的总和必须等于零:力平衡。当系统从一个平衡状态移动到下一个平衡状态并且所有状态之间也处于平衡状态时,静态假设是有效的。但情况总是这样吗?以初始未与负载控制接触的两个部件为例。为什么这种情况可能实际存在?因为负载部件的初始位移将由其惯性决定。

某种惯性或阻尼效应通常有助于获得收敛解决方案。在Step定义中,可以选择自动稳定,例如,使用默认指定的耗散能量分数。

abaqus稳定性分析教程(非线性收敛问题的六个建议)(3)

这类似于添加了一个额外的粘性力,与节点位移成比例除以模型中所有节点的时间步长,具有稳定效果,检查粘性耗散是否过大,例如将ALLSD与ALLIE进行比较。

另一种方法是使用动态隐式步骤,选择准静态应用。

abaqus稳定性分析教程(非线性收敛问题的六个建议)(4)

这使用了Euler Backward方案,该方案具有基于实际质量的粘性效果。在这种情况下,解决了时间相关的问题,因此时间尺度应该是合理的。检查相对于内部能量的动能是否很小。

-END-

,