1、模型规模与复杂度

l网格数量多

毋庸置疑,网格、节点数量越多,需要构建的方程也会更加复杂,单位步长下,计算的数据量越大,单位步长的计算时间增加

图片

l单元类型复杂

实体单元比壳单元梁单元的节点数会更多,因此,相同模型采用实体单元计算时,构建的方程也会更加复杂。

2、接触定义复杂

l接触搜索与处理

接触算法(如罚函数法、约束法)需要在每个时间步检测接触对并计算接触力。接触面数量多、几何复杂时、或对多部件使用自适应接触判定时(如多部件碰撞),接触计算可能占整体耗时的50%甚至更高。

图片

3、多物理场耦合的计算复杂性

l耦合场每个子步需要构建多组求解方程

例如ALE算法流体域与结构域需通过界面交换力和位移的数据,包括①流体求解(压力、流速等)②结构响应计算(变形、应力等),会在同一个时刻构建两组不同的方程,增加单位步长的计算量

图片

4、软件的输出控制

l输出频率过高

在LS-Dyna显式计算中,由于子步时间极小,计算的步数会非常的多,因此,LS-Dyna采用了间歇输出的方式进行结果的输出,如果一次计算输出较多的数据(如等距点500),会频繁占用CPU的I/O资源,增加求解时间

l不必要的输出选项

在有限元计算过程中,有时我们关注的可能是应力应变,有时关注的是塑性应变等等,这些结果类型可以在输出控制力进行调整,如果输出了多种变量结果,也会增加CPU的I/O资源的占用,增加求解时间

5、时间步长太短

l时间步长的控制

显式时间积分方法(如中心差分法)的时间步长由模型的最小单元尺寸材料波速决定,计算公式为:

图片

其中:

Δt是时间步长;

CFL是 Courant-Friedrichs-Lewy 条件系数(通常取 0.9 左右);

Lmin 是模型中最小的单元特征长度;

图片

所以,影响时间步长的关键因素有:(1)单元的最小边长;(2)材料波速;

对于分析来说,材料波速是材料的固有属性,所以,当单元尺寸过小,子步的步长也会极小,导致计算量增加

值得注意的是,由于显式计算采用的中心差分法不依赖于迭代求解,仅由当前时刻的已知量去进行计算,所以当出现单元变形较大时,单元的边长也会跟随变化,如果此变化为长度的减小,那么子步的时间也会随之减小,过程中变为动态子步时间。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐