1. 课程导入与LS-DYNA失效建模全景

在显式动力学分析中,材料失效与损伤建模是决定仿真结果是否可信的关键环节。LS-DYNA作为以显式时间积分见长的求解器,其材料本构库中内置了大量失效与损伤模型,覆盖金属延性断裂、复合材料层间分层、混凝土压溃、泡沫压实、粘接界面脱粘等典型场景。本课程的目标,是帮助学习者建立一条从"物理失效机制"到"关键字输入"再到"结果判读"的完整链路,而不是停留在会跑通算例的层面。

学习本课程后,你应当能够:第一,判断一个工程问题属于哪类失效模式,从而选择匹配的材料模型与失效准则;第二,独立编写包含失效定义的关键字输入文件,并理解每个参数在物理上控制什么;第三,通过单元删除、损伤变量、能量曲线等输出判断失效是否被正确触发;第四,识别常见的失效建模错误,例如网格依赖性、删除过早或过晚、参数单位不一致等。

失效建模在显式动力学中的位置

显式动力学求解的核心是运动方程 M·a = F_ext − F_int 的逐步时间积分。材料失效通过改变单元刚度、应力承载能力或直接删除单元,影响内力 F_int 的计算,从而改变整个结构的响应路径。因此,失效模型不是后处理阶段的附加选项,而是直接参与求解的物理组成部分。一个失效参数设置不当,可能导致能量不守恒、沙漏能异常增大,甚至求解崩溃。

在LS-DYNA中,失效建模通常与三类关键字协同工作:材料本构关键字(如 *MAT_PLASTIC_KINEMATIC、*MAT_JOHNSON_COOK、*MAT_*CONCRETE)、失效准则关键字(如 *MAT_ADD_EROSION、*MAT_ADD_DAMAGE_GISSMO)以及单元控制关键字(如 *CONTROL_TIMESTEP、*SECTION_SHELL 中的积分点设置)。理解这三者的分工与耦合关系,是后续章节展开的基础。

LS-DYNA 失效建模关键字体系与工作流 物理失效机制 金属延性断裂 等效塑性应变 / 应力三轴度 复合材料分层 界面强度 / 断裂能 混凝土压溃 损伤因子 / 应变软化 泡沫压实 体积应变 / 密实化 粘接界面脱粘 内聚力 / 牵引分离 失效模式判断 是选型的第一步 LS-DYNA 关键字体系 材料本构关键字 *MAT_PLASTIC_KINEMATIC(各向同性/随动硬化) *MAT_JOHNSON_COOK(应变率+温度效应) *MAT_*CONCRETE / *MAT_CRUSHABLE_FOAM 失效准则关键字 *MAT_ADD_EROSION(多准则组合删除) *MAT_ADD_DAMAGE_GISSMO(损伤演化) *MAT_COHESIVE_MIXED_MODE(界面脱粘) 单元与控制关键字 *SECTION_SHELL(积分点、厚度方向) *CONTROL_TIMESTEP(时间步、质量缩放) *CONTROL_TERMINATION / *DATABASE_BINARY_D3PLOT 三层关键字通过共享材料ID与单元集合耦合 建模工作流 ① 失效模式判断 确定主导失效机制 ② 材料模型选型 匹配本构与失效准则 ③ 参数标定 试验曲线反推参数 ④ 关键字编写 输入文件组织与检查 ⑤ 求解与监控 能量、沙漏、时间步 ⑥ 结果判读与迭代 失效建模的核心逻辑:物理机制决定模型选型,关键字实现物理定义,工作流保证可复现与可验证

常用关键字体系的分工

材料本构关键字负责描述材料在失效前的应力-应变响应。以金属为例,*MAT_PLASTIC_KINEMATIC 适合描述各向同性或随动硬化,其失效通常通过 *MAT_ADD_EROSION 附加等效塑性应变阈值来实现;而 *MAT_JOHNSON_COOK 本身包含损伤演化参数 D1~D5,可在本构内部直接计算损伤累积。选择哪一种,取决于你是否需要应变率效应和温度软化。

失效准则关键字是"附加层"。*MAT_ADD_EROSION 允许同时定义多个删除准则,例如最大主应变、最小时间步、压力截断等,任一条件满足即删除单元。它的优势是灵活,但风险也在于此:如果阈值设置过松,单元会在物理上不应失效时被删除;设置过紧,则损伤无法充分发展。实际工程中,建议先用单一准则标定,再逐步叠加。

单元与控制关键字决定失效的"执行方式"。壳单元通过 *SECTION_SHELL 的积分点数量控制厚度方向应力分布,积分点越多,损伤沿厚度方向的演化越精细,但计算成本也越高。时间步控制则直接影响单元删除后的稳定性:删除单元会改变最小特征长度,若时间步未同步调整,可能引发负体积或能量突变。

一个最小可运行示例

下面给出一个金属拉伸试样失效建模的关键字片段,用于说明三层关键字如何协同。示例参数为教学假设值,不代表任何特定材料实测数据。

*MAT_PLASTIC_KINEMATIC
$#   mid        ro         e        pr      sigy      etan      beta
         1  7.85e-9   210000.0       0.3     355.0    1200.0       0.0
$#    src       srp        fs        vp
       0.0       0.0       0.0       0.0

*MAT_ADD_EROSION
$#   mid    excl
         1       0.0
$#  mxeps    mineps     maxp     minp    sigp1    sigvm    mxdam    mxseg
      0.35       0.0       0.0       0.0       0.0       0.0       0.0       0.0

*SECTION_SHELL
$#   secid    elform      shrf       nip     propt   qr/irid       icomp
         1         2       1.0         5       1.0       0.0       0.0
$#      t1        t2        t3        t4
       1.0       1.0       1.0       1.0

*CONTROL_TIMESTEP
$#  dtinit    tssfac      isdo    tslimt     dt2ms      lctm     erode     ms1st
       0.0       0.6         0       0.0       0.0         0         1         0

这段输入中,*MAT_PLASTIC_KINEMATIC 定义了弹性模量 210 GPa、屈服强度 355 MPa、切线模量 1200 MPa;*MAT_ADD_EROSION 设置最大等效塑性应变为 0.35,超过即删除单元;*SECTION_SHELL 使用 5 个厚度积分点;*CONTROL_TIMESTEP 中 erode=1 表示单元删除后重新计算时间步。运行后应重点观察 glstat 中的总能量曲线是否平滑、matsum 中失效单元数量是否与预期一致。

失效建模的常见误区是"先跑通再调参"。更有效的做法是:在建模前先明确失效模式,再选择能表达该模式的最简关键字组合,最后用单元级或试样级算例验证参数是否合理。本课程后续章节将按这一逻辑逐类展开。

工作流的闭环

从工程实践角度看,失效建模不是一次性操作,而是一个迭代闭环:判断失效模式 → 选择材料模型与失效准则 → 用试验数据标定参数 → 编写并检查关键字 → 求解并监控能量与时间步 → 对比试验结果并修正参数。其中"监控"环节最容易被忽略。一个典型的失败案例是:单元删除后总能量出现阶跃,但分析者只看了应力云图,误以为结果正常。因此,建议在每次求解后至少检查 glstat 中的总能量、沙漏能、内能三项曲线,以及 matsum 中的失效单元统计。