2. LS-DYNA求解器基础与乘员安全仿真环境
乘员安全仿真(正面碰撞、侧面碰撞、气囊展开、安全带预紧等)本质上是一类强非线性、大变形、短时瞬态问题。LS-DYNA 采用显式时间积分求解这类问题,其求解流程、单位制约定、关键字文件组织方式与前后处理工具链,共同构成了乘员安全仿真的基础环境。理解这四者之间的关系,比记住某个按钮的位置更重要。
一、显式动力学求解流程:从关键字到 d3plot
LS-DYNA 的求解过程可以概括为:读入关键字文件 → 初始化模型 → 逐时间步显式积分 → 输出结果数据库。显式积分基于中心差分法,其核心是时间步长受稳定性条件限制。临界时间步长近似为:
Δt_crit ≈ L_min / c
c = sqrt(E / ρ) (杆件波速,E为弹性模量,ρ为密度)
其中 L_min 是网格中最小单元的特征长度,c 是材料声速。这意味着:网格越小、材料越硬、密度越低,时间步长越小,计算量越大。例如钢材 E≈210 GPa、ρ≈7.85e-9 t/mm³,声速约 5170 mm/ms;若最小单元尺寸为 5 mm,则 Δt_crit≈0.97 μs。一个 100 ms 的碰撞过程需要约 10 万步以上。因此 LS-DYNA 中常用质量缩放(*CONTROL_TIMESTEP)来人为增大时间步长,但必须控制附加质量比例(通常建议 <1%~5%),否则会改变物理结果。
求解流程中另一个关键点是沙漏控制。单点积分实体单元和壳单元计算效率高,但会产生零能变形模式(沙漏)。乘员安全模型中气囊、安全带、座椅常使用壳单元和膜单元,必须通过 *HOURGLASS 或 *CONTROL_HOURGLASS 设置合适的沙漏控制类型(如类型 4 或 6)和系数(通常 0.03~0.10),并通过 glstat 中的沙漏能占比判断:沙漏能应小于总内能的 5%,否则结果不可信。
二、单位制:乘员安全仿真的“隐形陷阱”
LS-DYNA 本身不强制单位制,但要求所有输入量在同一个一致单位制下自洽。乘员安全仿真中最常用的是 mm-tonne-s-N-MPa 体系,因为碰撞位移以毫米计、质量以吨计、时间以秒计,数值范围适中。下表列出该体系下常用物理量的单位与典型值:
| 物理量 | 单位 | 乘员安全典型值 |
|---|---|---|
| 长度 | mm | 车体 4000,气囊 600 |
| 质量 | t | 整车 1.5,假人 0.075 |
| 时间 | s | 碰撞 0.1,气囊展开 0.03 |
| 力 | N | 安全带限力 4000 |
| 应力/模量 | MPa | 钢 210000,气囊织物 200 |
| 密度 | t/mm³ | 钢 7.85e-9,气囊织物 7.5e-10 |
| 速度 | mm/s | 50 km/h ≈ 13889 |
| 加速度 | mm/s² | 1 g ≈ 9810 |
单位制错误是初学者最常见的失败原因。典型症状包括:模型瞬间穿透、能量爆炸、时间步长异常小、气囊展开速度离谱。排查时优先检查密度、弹性模量、初速度三项是否与所选单位制一致。例如把钢的密度写成 7.85e-9 kg/mm³(应为 t/mm³),质量会差 1000 倍,惯性效应完全错误。
三、关键字文件结构:一个模型就是一棵关键字树
LS-DYNA 的输入文件(通常为 .k 或 .key)由一系列关键字块组成,每个块以 * 开头,后跟参数卡片。乘员安全模型的关键字组织通常遵循以下层次:
- *KEYWORD:文件头,声明版本与单位制注释。
- *CONTROL:全局控制,如 *CONTROL_TERMINATION(终止时间)、*CONTROL_TIMESTEP(时间步)、*CONTROL_ENERGY(能量控制)、*CONTROL_CONTACT(接触控制)。
- *DATABASE:输出控制,如 *DATABASE_BINARY_D3PLOT(动画输出间隔)、*DATABASE_GLSTAT(全局能量)、*DATABASE_NODOUT(节点加速度/位移)。
- *PART / *SECTION / *MAT / *ELEMENT:部件、截面、材料、单元定义,是模型的主体。
- *SET:节点集、单元集、段集,用于接触、加载和输出。
- *CONTACT:接触定义,如 *CONTACT_AUTOMATIC_SINGLE_SURFACE(整车自接触)、*CONTACT_AUTOMATIC_SURFACE_TO_SURFACE(假人与气囊/安全带)。
- *BOUNDARY / *INITIAL:边界条件与初始速度。
- *CONSTRAINED:约束,如 *CONSTRAINED_NODAL_RIGID_BODY(刚性连接)、*CONSTRAINED_EXTRA_NODES(附加节点)。
- *LOAD:载荷,如 *LOAD_BODY_Z(重力)、*LOAD_SEGMENT(压力载荷)。
乘员安全仿真中,气囊通常用 *MAT_FABRIC 或 *MAT_ELASTIC 配合 *AIRBAG_ 系列关键字(如 *AIRBAG_SIMPLE_PRESSURE_VOLUME、*AIRBAG_WANG_NEFSKE)定义;安全带用 *MAT_SEATBELT 和 *ELEMENT_SEATBELT 定义;假人则通过 *INCLUDE 引入 LSTC 假人模型文件。关键字文件支持 *INCLUDE 嵌套,便于把整车、假人、气囊、安全带分文件管理。
四、前后处理工具链:从 CAD 到结果判读
LS-DYNA 本身是求解器,不提供建模界面。乘员安全仿真的典型工具链为:
- 前处理:HyperMesh / ANSA / LS-PrePost 用于网格划分、材料赋予、接触定义、关键字导出。乘员安全模型常从整车模型简化而来,需保留 B 柱、门槛、座椅、转向管柱等与假人交互的结构。
- 求解:LS-DYNA 可执行文件(lsdyna 或 ls-dyna_smp_d_xxx),通过命令行提交,如
lsdyna i=main.k o=d3hsp。 - 后处理:LS-PrePost 查看 d3plot 动画、绘制假人头部加速度曲线、计算 HIC、胸部压缩量、大腿力等损伤指标;HyperGraph 用于批量曲线对比。
- 验证:将仿真得到的假人响应与滑台试验或整车碰撞试验对比,判断相关性。
把上述四部分串起来看:前处理负责把物理问题翻译成关键字文件,单位制保证翻译过程中量纲自洽,关键字结构决定求解器读什么、算什么、输出什么,求解器按显式时间推进完成计算,后处理把 d3plot 和曲线还原为可判读的乘员响应。任何一环出错,最终结果都不可信。实际项目中,建议在提交长时计算前,先用 5~10 ms 的短时算例检查模型是否稳定、能量是否守恒、接触是否正常,再放开到完整碰撞时间。