-图文教程-
非线性收敛控制
--Abaqus非线性--
01
前言
❖ 关键词_
# Abaqus
# 非线性收敛控制
❖先前篇章就Abaqus的非线性求解原理进行了简易介绍,当非线性计算出现收敛问题时,我们又该如何解决呢?
❖本篇章针对Abaqus的收敛性控制进行简易介绍,主要内容如下__
▓ 不收敛原因分析
▓ 模型问题
■ 单位制、单元类型、材料、网格、约束不足等;
■ 过约束问题:多点约束、单点约束、接触、绑定约束、刚体、连接器等;
■ 初始间隙
▓ 物理系统本身问题
■ 全局不稳定
■ 局部不稳定
■ 网格对收敛性的影响
■ 材料对收敛性的影响
■ 接触对收敛性的影响
❖部分内容来源于网络整理,部分内容来源于个人理解_
❖可能存在理解错误或不足的情况,欢迎指正交流_
02
正文
▓ 不收敛原因分析
☑ 不收敛问题发生了,该怎么办?
❆Abaqus模拟无法找到收敛解的原因非常多;
❆并不存在好的、通用的方法来解决非线性计算的不收敛问题;
❆我们首先需要去找寻不收敛的原因,然后对症下药;
❆几乎所有收敛问题的症状,都可以在*.msg文件中找到;
❆同时*.dat文件和*.sta文件也可能包含问题的症状;
❆可在Visualization模块下_Tools菜单_Job Diagnostics进入可视化诊断界面_
❆该JOB即计算任务中所有的增量步、增量尝试及迭代等信息都可以在此查看,可通过Highlight selcetion in viewport对所需要查看的问题点进行高亮显示_
❂ 以下是一些常见信息,仅供参考_
***WARNING: THE SOLUTION APPEARS TO BE DIVERGING
***警告:求解趋于发散
***WARNING: THE STRAIN INCREMENT HAS EXCEEDED FIFTY TIMES THE STRAIN TO CAUSE FIRST YIELD AT 7 POINTS
***警告:应变增量已超出5倍,导致点7出现第一次屈服
***WARNING: THE SYSTEM MATRIX HAS 3 NEGATIVE EIGENVALUES
***警告:系统矩阵有3个负特征值
***WARNING: ELEMENT 441 IS DISTORTING SO MUCH THAT IT TURNS INSIDE OUT
***警告:单元441扭曲得太严重
***WARNING: OVERCLOSURE OF CONTACT SURFACES ARM1-A and PIPE IS TOO SEVERE -- CUTBACK WILL RESULT
***警告:接触面ARM1-A和管道的穿透太严重--将导致增量步缩减
***WARNING: SOLVER PROBLEM. ZERO PIVOT WHEN PROCESSING NODE 1 D.O.F. 1
***警告:求解问题。处理节点1的1自由度时,出现零主元
***NOTE: THE RATE OF CONVERGENCE IS VERY SLOW.
***注意:收敛速率很慢
***NOTE: SOLUTION FAILS TO CONVERGE IN MAXIMUM EQUILIBRIUM ITERATIONS ALLOWED.
***注意:在允许的最大平衡迭代中,求解无法收敛
***WARNING: CONVERGENCE JUDGED UNLIKELY. INCREMENT WILL BE ATTEMPTED AGAIN WITH A TIME INCREMENT OF 1.97754E-02
***警告:不太可能收敛。将再次尝试增量步,时间增量为1.97754E-02
***WARNING: FORCE EQUILIBRIUM ACCEPTED USING ALTERNATE TOLERANCE
***警告:使用容差接受力平衡
***ERROR: TOO MANY INCREMENTS NEEDED TO COMPLETE THE STEP
***错误:完成分析步所需的增量步太多
***ERROR: TOO MANY ATTEMPTS MADE FOR THIS INCREMENT: ANALYSIS TERMINATED
***错误:此增量步进行的尝试太多:分析已终止
***ERROR: TIME INCREMENT REQUIRED IS LESS THAN MINIMUM SPECIFIED. ANALYSIS ENDS
***错误:所需的时间增量小于指定的最小值。分析结束
▓ 模型问题
☑ 可能存在以下问题_
■ 单位制不统一、模型设置缺失、材料数据不完整、单元不合适、约束不足(刚体运动);
■ 过约束
• 单点约束:基础运动、边界条件。
• 多点约束:运动耦合、绑定约束、刚体约束等。
• 接触
• 连接器单元
• 零主元警告(Zero pivot warning):Abaqus无法解析的过度约束,通常会导致在msg文件中,发出零主元消息;
■ 初始间隙
❂ 过约束解析
❆过约束检查控制_
❆默认过约束检查:
• Abaqus将试图消除尽可能多的过度约束;
• 如果检测到冲突的过度约束,将发出错误消息,并停止分析;
• 如果识别出一致的过度约束,但无法移除,则会发出详细消息;
❆控制约束检查关键字
❆建议
✦必须更改模型,以移除所有无法自动移除的已识别过约束;
✦打开msg或dat文件,查找以字符串OVERCONSTRAINT CHECKS开头的消息;
✦在msg文件中,搜索零主元警告(不能忽视,总是过度约束的迹象);
❂ 零主元警告信息举例
***WARNING: SOLVER PROBLEM. ZERO PIVOT WHEN PROCESSING ELEMENT 20025 INTERNAL NODE 1 D.O.F. 4 OVERCONSTRAINT CHECKS: An overconstraint was detected at one of the Lagrange multipliers associated with element 20025. There are multiple constraints applied directly or chained constraints that are applied indirectly to this element. The following is a list of nodes and chained constraints between these nodes that most likely lead to the detected overconstraint.
❂ 举例_绑定约束干涉
✦在标记的位置:
✦有三个约束将三个节点绑定在了一起;
✦其实只需要两个约束;
✦Abaqus会自动消除该点的一个约束;
❂ 举例_接触与边界干涉
✦左侧边界条件与接触在部分节点处存在过约束;
✦仅在过约束节点处,Abaqus自动将接触的摩擦公式由Rough(粗糙)改为Penalty(惩罚);
❂ 举例_接触和绑定干涉
✦节点不匹配的网格通过TIE绑定在一起;
✦接触位置的从属节点同时受接触约束和绑定约束;
✦Abaqus默认不会对绑定约束的从属节点强制执行接触约束;
❂ 举例_接触和边界干涉
✦标记位置的接触从属节点,具有与接触约束方向相同的边界条件;
✦Abaqus默认不会将接触约束应用于过渡约束的从属节点;
▓ 初始间隙对收敛性的影响
✦初始模型不收敛
✦初始接触状态中,螺母和轮缘之间接触没有建立(COPEN=0.005mm),有刚体 位移;
❂ 改进策略
❆ 调整间隙:
✦ 重新定位部件、adjust、过盈等;
❆ 位移控制:
✦ 在分析过程的前期,可通过添加位移控制来提高局部的稳定性,后期撤掉位移并不会对最终结果产生较大影响;
❆ 接触稳定:
✦ 我们可以在接触属性中添加阻尼或者采用Contact controls来提高接触位置的稳定性;
✦上图为在接触属性中添加阻尼_
✦阻尼的具体参数可参照上图或自行设置;
✦上图为采用Contact controls_
❂ 注意
✦ 无论采用哪种方式,最终的计算结果其耗散能(ALLSD)与内能(ALLIE)的比例越小越好,建议小于5%;
✦ 遇到计算不收敛时,首先应检查模型的单位制、设置、接触、约束等,以排除模型自身问题导致计算不收敛的可能性;
▓ 物理系统本身问题
❆ 物理系统本身非常不稳定,很难找到平衡解,场景包括_
• 薄壁屈曲,圆柱壳结构
• 突跳失稳,接触改变
• 高度受限的压缩、不可压缩材料(橡胶)
• 局部不稳定性的发展
✦对于这些案例,使用正确的单元类型和分析技术是很重要的;否则,可能很难获得解;
❆ 逐步调试,更容易找到问题_
✦不要把问题的所有复杂性和细节都放进一个模型中;
✦可以尝试从最简单的模型开始,逐步增加模型的复杂度,如摩擦、塑性等;
❂ 全局不稳定问题可采用弧长法
❆在平衡迭代中,Riks分析步采用弧长法;
✦具体思路为:每个增量步自动控制一定的位移增量(单调增加),荷载增量则根据位移增量来反算(可增可减);
❆ Riks分析步的参数设置基本如下:
1、输入该分析步的荷载值;
2、打开几何非线性开关;
3、初始弧长和总弧长,(它俩的比值)乘以(第一步中设置的荷载值)就是第一步的荷载增量;
4、可以设置荷载准则和位移准则(4.1),如果没有设置,程序将在达到最大增量步时终止(4.2);
❂ 局部不稳定问题的自动稳定技术
❆局部不稳定的起源,可以有三个方面
• 几何:局部屈曲
• 接触:载荷施加在模型不同部件,造成的接触状态改变
• 摩擦粘-滑行为
❆对于局部不稳定问题,可采用自动稳定技术_
❆_基于耗散能分数
✦默认情况下(2e-4),此时Abaqus自动计算阻尼因子c;
✦阻尼因子会随时间和空间而变化;
✦Abaqus根据“收敛历程”和“粘滞阻尼耗散能量与总能量的比值”,自动调整阻尼因子;
✦阻尼因子可以在一个分析步的持续时间内保持不变;
❆_阻尼因子
✦用户指定的阻尼因子作为初始值;
✦比较困难,阻尼与模型尺寸和材料刚度的关系不明显;
❆_自适应计算的阻尼因子
✦阻尼因子不会从一个分析步传递到另一个分析步;
✦使用自适应计算的阻尼因子,可以传播到后续分析步;
❂ 阻尼系数c的确定原则
✦应确保粘性耗散能是模型应变能的一小部分;
❂ 注意
✦采用自动稳定技术将对模型中的所有节点施加一个附加粘性力,该力的大小与节点的位移除以时间步长成比例,其具有稳定模型计算的效果;
✦最终的计算结果其耗散能(ALLSD)与内能(ALLIE)的比例越小越好,建议小于5%;
❂ 求解不稳定问题的方法:
❆使用阻尼
✦接触属性中设置阻尼
✦采用自动稳定技术
❆隐式动力学方法
✦使用动态,隐式步分析步
✦选择Dynamic, Implicit_选择Quasi-static(准静态分析);
❆位移控制替代力控制
❆显式计算
✦在某些极端非线性的情况下,使用Abaqus / Standard来获得收敛的解决方案可能是不现实的;
✦使用Abaqus / Explicit,至少可以确定不会出现任何收敛问题;
▓ 网格对收敛性的影响
❆使用减缩积分单元有一个缺点,它会导致网格不稳定,通常称为“沙漏”;
❆一阶缩减积分四边形和六面体单元的沙漏模式可以传播;
❆因此,沙漏对这些单元来说可能是一个严重的问题;
❆沙漏模式主要是一阶减缩积分四边形与六面体单元的问题;
✦三角形和四面体单元总是使用完全积分,不会受到沙漏的影响;
❆沙漏模式可以出现在几何线性和非线性问题中,包括有限应变问题;
❆在几何线性问题中,沙漏通常不影响应力计算;
❆在几何非线性分析中,沙漏模式往往与积分点的应变相互作用,导致误差或不稳定;
✦对于有限应变弹性变形(超弹性)或者非常大(不可压缩) 塑性变形,沙漏特别麻烦;
✦对于有限应变弹性分析,在可行的情况下,强烈建议使用完全积分单元;
❆当沙漏产生并导致收敛问题时,模拟往往会发散,求解增量步会削减;
❂ 沙漏问题处理
❆厚度方向使用多个单元(至少四个单元):来应对沙漏问题;
❆为了抑制沙漏,必须添加人为“沙漏控制”;
❆对于所有一阶减缩积分单元,Abaqus使用沙漏控制;
❂ 两种方法进行沙漏控制_
✦刚度控制(Stiffness-based)
✦增强控制(Enhanced strain)
❂ 注意
✦沙漏控制能量是否过度使用:可以通过查看能量历程曲线来验证;
✦用于控制沙漏的人为能量(ALLAE)相对于内能(ALLIE)较小,建议<1%;
✦该部分内容大多为网络整理,博主对这块接触较少,整理的目的也是方便日后自己查阅之用,可能会存在部分错误;
▓ 材料对收敛性的影响
❆在Abaqus中,线弹性材料不适合大弹性应变场景;
✦对于小的弹性应变(<5%),建立线弹性材料模型;
✦对于弹性应变大于30%的情况,收敛性较差,即使收敛,计算结果可能也不准确;
❆当对承受较大应变的结构进行建模时,在简化模型时,不要将材料响应近似为线性弹性;
✦如果预计材料会屈服,则采用弹塑性材料;
✦如果响应是完全弹性,则采用超弹性材料;
❆某些塑性模型,会产生非对称刚度矩阵;
✦Drucker-Prager材料模型的膨胀角不等于摩擦角;
✦莫尔-库仑、 带帽盖塑性和可压溃泡沫模型;
❆如果这些材料模型,不使用非对称方程求解器,Abaqus可能无法找到收敛解;
▓ 小结
1、前处理很重要,如果预测到模型收敛性不佳,请尽可能提升网格质量,并使接触位置两个部件的节点保持重合;
2、同时注意接触创建,主从面设置规则、边界条件设置等;
3、提前考虑网格、材料等对计算的收敛性影响;
4、出现收敛性问题时,并不存在万能的方法,需要找到计算不收敛的原因,再对症下药;
✦通过计算产生的*.msg文件、*.dat文件和*.sta文件等寻找有效信息;
✦可在Visualization模块下_Tools菜单_Job Diagnostics进入可视化诊断界面;
5、收敛性受分析步中载荷与时间的关系影响;
✦设置合适的STEP步长、初始时间增量等;
✦为STEP增加一个Smooth曲线以改变载荷与时间的关系;
6、如果接触位置存在初始间隙,可能需要重新定位部件、adjust、过盈等;
7、可适当添加位移控制以提高局部稳定性;
✦在分析过程的前期,可通过添加位移控制来提高局部的稳定性,后期撤掉位移并不会对最终结果产生较大影响;
8、对于全局不稳定问题(如屈曲等)可采用弧长法,即使用Static,Riks分析步;
9、对于局部不稳定问题,可采用阻尼提高稳定性;
✦使用自动稳定技术;
✦在接触属性中加入合适的阻尼特性;
✦计算完成后需要校验其耗散能(ALLSD)与内能(ALLIE)的比例,建议小于5%;
10、采用隐式动力学方法计算;
✦使用动态,隐式分析步计算;
✦即选择Dynamic, Implicit_选择Quasi-static(准静态分析);
11、采用位移控制替代力控制收敛性貌似会更好;
12、显式计算
✦如果尝试了以上所有方法,依旧无法收敛,可选择显示计算;
✦在某些极端非线性的情况下,使用Abaqus / Standard来获得收敛的解决方案可能是不现实的;
✦使用Abaqus / Explicit,至少可以确定不会出现任何收敛问题;
❂ 注意
✦更改Abaqus的求解设置会改变计算收敛性,但是不建议新手用户更改;