质量缩放(Mass scaling),是显式动力学分析中很多人都喜欢用的一种手段,其好处就是可以显著提高显式动力学分析过程中的稳定时间增量,进而缩短总的计算周期。然而,在使用过程中如果搞不清质量缩放的原理及影响,很容易导致计算结果的失真。
1.稳定极限
我们知道,显式分析中系统的稳定时间增量非常小,大约在1e-9~1e-7 量级,远低于隐式分析的时间步长,之所以采用这么小的时间增量,是为了保证显式求解的精度,如果稳定时间增量过大,超出系统的稳定极限,会导致数值结果不稳定。
稳定极限:理论上,一般依据系统的最高频率来定义,无阻尼时的定义如下:
一个复杂系统的实际最高频率依赖于许多相互作用因素,难以计算出确切数值。研究发现,基于一个个单元确定的最高频率常常比整个系统的最高频率要高,单元的稳定极限可以估算如下:
其中Le是单元特征长度,Cd是材料的波速,Cd定义如下:
其中,E是杨氏模量,ρ是密度。
可以看出:
保守起见,对于一个含有许多单元的系统,采用最短边长来估算稳定极限。
2.为什么要慎用质量缩放?
帮助文档中对质量缩放的适用范围是这样定义的,“Mass scaling is often used in Abaqus/Explicit for computational efficiency in quasi-static analyses and in some dynamic analyses that contain a few very small elements that control the stable time increment”。即准静态分析及稳定时间增量受少数小尺寸单元限制的动态分析中。
准静态分析的前提是动能与内能的比值不超过5%或加载速率小于材料波速的1%,这样才能近似忽略动力学方程中的前两项惯性力的影响,近似看成一个准静态过程,用显式动力学方法去求解一个准静态问题,当然实际工程问题分析中,有时候5%的限定还是过大了。
而使用了质量缩放以后,惯性力项发生变化,如果质量缩放使用不合理,会严重破坏准静态条件,当准静态条件不满足时,分析结果也就不准确了。
准静态问题尚且影响这么大,动态分析就更不用说了,动态问题中,质量缩放直接影响系统的质量特性,盲目的使用质量缩放只会导致错误的结果。尤其是对于一些喜欢将目标稳定时间增量设置成固定数值的同学。如下图所示的Abaqus软件中的情况,如果系统默认的稳定时间增量是1e-10,那么整个模型计算下来可能需要好几天才能完成,为了提高计算效率,人为将目标稳定时间增量提高到1e-7,在材料模量、单元尺寸都不变化的情况下,稳定时间增量要达到这么大幅度的提升,密度得增加1e6倍,动力学方程中的惯性力项将急剧增大,结构的整体质量特性都发生了翻天覆地的变化,计算结果离真实结果可能相差十万八千里。
所以,对于动态问题,质量缩放的使用要格外慎重,缩放方式也要慎重选择,且仅能用于少数几个单元,以保证不影响结构的整体质量特性。至于如何使用质量缩放,网上的帖子很多,就不在这里赘述了。
3.如何提高稳定时间增量?
除了质量缩放之外,影响稳定时间增量的另一个重要因素是单元特征长度,因此,要首先保证整个模型中避免出现个别极小单元或极小单元边,在Abaqus中,可以在mesh模块下“verify mesh”中检查网格质量,如下图所示。
也可以在任务监控中查看哪些单元影响了整个系统的稳定时间增量,status文件中会将最临界的10个单元列出来,一一去检查这几个单元,确保没有极小单元或极短边。
如果上述方法检查过后,效果不明显,有些显式动力学分析软件如Abaqus或radioss中还提供了另一种方法,叫“subcycling子循环技术”。
4.子循环subcycling
子循环技术可以实现不同的单元集合采用不同的稳定时间增量,当一个模型的稳定时间增量受限于少数单元集合时,对该单元集使用子循环,可以减少整个模型的分析时间。
目前,Abaqus CAE中暂不支持子循环技术,使用时需要编辑关键字如下:
*SUBCYCLING, ELSET=element_set_name
其中element_set_name即为需要定义子循环的单元集合名称。
以下是关键字编辑模板,仅供参考:
*HEADING
…
*ELSET, ELSET=ZONE1
…
*SUBCYCLING, ELSET=ZONE1
*************************
*STEP
*DYNAMIC, EXPLICIT
...
*END STEP
文章转载自“复合材料力学”微信公众号,原文链接如下:
为什么显式分析中要慎用质量缩放Mass scaling?
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删