1. 课程导入与效率瓶颈诊断
LS-DYNA 的显式分析之所以能在碰撞、冲击、爆炸、跌落等强非线性场景中稳定求解,核心在于它不组装整体刚度矩阵、不做迭代收敛判断,而是沿时间轴逐步推进。代价是:每一步都要遍历全部单元计算内力,再按最小单元特征尺寸决定的时间步长向前走。因此,计算成本 ≈ 单步成本 × 总步数,而单步成本由单元/接触规模决定,总步数由物理时长与时间步长之比决定。理解这条乘法关系,是后续所有优化手段的出发点。
一、计算成本从哪里来
显式求解的单步开销主要分布在四块:单元内力计算(实体、壳、梁、SPH 等各自的本构与沙漏控制)、接触搜索与力计算(尤其是自接触与大量从面节点)、状态变量与历史变量的读写、以及时间步长与能量统计等全局操作。其中接触往往是"隐形大户":一个包含 50 万壳单元、开启单面自接触的整车模型,接触搜索可能占到单步耗时的 40% 以上。
总步数则由 Δt 决定。显式中心差分法的稳定条件要求时间步长不超过临界值,工程上常用估算式为:
Δt_crit ≈ L_min / c
c = sqrt(E / ρ) (线弹性声速)
Δt = α · Δt_crit (α 为时间步缩放因子,默认 0.9)
其中 L_min 是模型中最小单元的特征长度,c 是材料声速。以钢材为例,E = 210 GPa、ρ = 7.85e-9 t/mm³,则 c ≈ 5.17e6 mm/s。若最小单元尺寸为 1 mm,Δt_crit ≈ 1.93e-7 s,取 α=0.9 后约 1.74e-7 s。要模拟 50 ms 的碰撞过程,需要约 28.7 万步。若把最小单元从 1 mm 放大到 2 mm,步数直接减半——这就是"一个单元尺寸决定全局成本"的典型体现。
L_min 由全模型最小单元决定,而不是平均尺寸。一个 0.2 mm 的倒角网格,可能让整个百万单元模型的时间步长被拉低一个数量级。诊断时务必先定位最小单元的位置。二、模型规模与时间步长的耦合关系
模型规模对成本的影响不是线性的。单元数增加会同时抬高单步成本,而局部细化又会压低 Δt、抬高总步数,两者相乘形成"双重惩罚"。下面这张图把本节的核心关系组织成一张诊断视图:左侧是成本来源,中间是规模与步长的耦合,右侧是四类常见效率问题及其对应的优化方向。
三、四类常见效率问题的识别信号
诊断不是凭感觉,而是看数据。LS-DYNA 在 d3hsp 文件开头会打印初始时间步长、最小单元位置与单元号,运行中还会输出每步的 dt 与能量统计。以下是四类问题的典型信号与判断依据:
| 问题类型 | 关键观察量 | 典型阈值/信号 | 首选对策 |
|---|---|---|---|
| A 时间步长被拖低 | d3hsp 中的最小单元尺寸与位置 | L_min 比平均尺寸小 5 倍以上 | 清理畸形单元、质量缩放 |
| B 接触开销过大 | 接触能量 / 总能量、单步耗时 | 接触能量占比 > 15% 且持续上升 | 缩小接触面、改用罚函数接触 |
| C 模型冗余 | 远离关注区的单元数占比 | 非关注区单元 > 40% | 刚体化、子模型、删除 |
| D 输出与 I/O 负担 | d3plot 文件大小、写盘间隔 | 单次输出 > 500 MB 或间隔 < 0.5 ms | 降低输出频率、选择性输出 |
四、优化目标如何设定
优化目标不能笼统写成"让计算更快",而应绑定到可度量的指标上。建议从三个维度设定:
- 时间维度:以当前单次求解的墙钟时间为基线,设定目标压缩比例(例如 50%),并记录 CPU 核时。
- 精度维度:选定一个关键响应量(如最大侵入量、峰值加速度、吸能量),要求优化前后偏差不超过 5%。
- 稳定性维度:检查沙漏能占总能量比例 < 5%、质量缩放增加的质量 < 1%,避免"提速但失真"。
d3hsp 中的初始时间步长、最小单元位置、单步平均耗时与总步数。这四项数据就是后续所有优化的对照基准,没有基线就无法判断优化是否真正有效。