2. LS-DYNA显式动力学与失效分析基础
在LS-DYNA中做材料失效与断裂分析,首先要理解一个基本事实:失效判据是在每一个时间步上被检查的。如果时间步、沙漏控制或质量缩放处理不当,单元可能在应力尚未达到失效应力时就被“算坏”,也可能在已经严重畸变后仍不触发删除。因此,显式积分算法、时间步控制、沙漏控制和质量缩放不是四个独立的设置项,而是共同决定“失效何时被触发、是否被正确触发”的数值基础。
显式积分算法:为什么它适合断裂问题
LS-DYNA的显式中心差分法求解运动方程 M·a = F_ext − F_int,其中 M 为质量矩阵。采用集中质量矩阵时,M 为对角阵,加速度可直接由节点力除以节点质量得到,无需组装和求解整体刚度矩阵,也不存在迭代收敛问题。这一点对断裂分析至关重要:单元删除、接触状态突变、材料软化都会造成刚度矩阵剧烈变化,隐式方法容易在这些时刻出现收敛困难,而显式方法只需保证时间步足够小即可继续推进。
显式方法的核心代价是条件稳定。稳定条件可近似写为 Δt ≤ 2/ω_max,工程上更常用的是基于单元特征长度的估计:Δt_crit = L_e / c,其中 L_e 为单元特征长度,c 为材料声速。对线弹性材料,c = sqrt(E/ρ)。例如钢材取 E = 210 GPa、ρ = 7850 kg/m³,则 c ≈ 5172 m/s;若最小单元尺寸为 1 mm,则 Δt_crit ≈ 1.93×10⁻⁷ s,实际计算通常再乘以 0.9 左右的安全系数。这意味着一个 10 ms 的冲击过程需要约 5×10⁴ 个时间步,计算量与最小单元尺寸直接相关。
时间步控制:失效分析中最容易被忽视的环节
LS-DYNA默认按全局最小时间步推进,即所有单元共用同一个 Δt。这带来一个典型问题:模型中只要有一个很小的单元,整个模型的时间步都会被拉低。在失效分析中,这个“小单元”往往出现在需要精细网格的断裂区域,或者由网格畸变产生。因此,时间步控制的第一项工作就是检查最小单元尺寸分布。
常用手段包括:用 *CONTROL_TIMESTEP 设置 DTINIT 指定初始时间步,设置 TSSFAC(默认0.9)作为安全系数;通过 DT2MS 启用质量缩放;通过 ISDO 选择是否考虑壳单元厚度方向尺寸。需要特别注意的是,DT2MS 为正时表示对所有小于该时间步的单元进行质量缩放,为负时表示仅对时间步小于 |DT2MS| 的单元缩放,且缩放后时间步不超过该值。在失效分析中,如果对断裂区单元进行质量缩放,会改变其惯性效应,可能延迟颈缩和断裂的触发,因此通常建议只对远离失效区的小单元做质量缩放,或改用 *CONTROL_TIMESTEP 的 ISDO=1 配合壳厚方向处理。
沙漏控制:为什么单点积分必须配沙漏控制
LS-DYNA的实体单元和壳单元常采用单点积分,即只在单元中心一个积分点计算应力。这样做计算效率高,但会产生一种非物理的零能变形模式——沙漏模式。沙漏模式下单元节点发生交替变形,而积分点应力为零,因此不产生抵抗变形的内力。如果不加控制,沙漏能会不断累积,最终导致单元畸变、应力振荡,甚至使失效判据在错误的应力状态下被触发。
沙漏控制通过引入人工刚度或人工阻尼来抑制沙漏模式。常用关键字为 *CONTROL_HOURGLASS,其中 IHQ 选择控制类型:IHQ=1 为标准LS-DYNA沙漏控制,IHQ=4 为基于刚度的控制,IHQ=5 为基于刚度的精确控制,IHQ=6 为基于刚度的壳单元控制。对于失效分析,推荐使用 IHQ=4 或 IHQ=5,并将 QM 系数控制在 0.03~0.10 之间。系数过小无法抑制沙漏,过大则会使单元过刚,延迟失效。
判断沙漏是否受控,应查看 glstat 文件中的沙漏能与内能之比。工程经验认为,该比值应小于5%,最好小于2%。如果沙漏能持续增长并超过内能的10%,则失效分析结果不可信,需要加密网格、改用全积分单元或调整沙漏控制参数。
质量缩放对失效模拟的影响
质量缩放的本质是用“增加质量”换取“增大时间步”。由于 Δt_crit ∝ sqrt(ρ),质量增加100倍才能使时间步增大10倍。但质量增加会带来两个后果:一是惯性效应增强,二是动能与内能的比例改变。在失效分析中,这两个后果都会直接影响断裂行为。
以拉伸断裂为例,如果对断裂区单元进行质量缩放,单元惯性增大,在相同加载速度下应变率会降低,材料可能表现出更低的流动应力,从而延迟颈缩和断裂。反之,如果质量缩放只作用于远离断裂区的小单元,则对断裂区的影响可以忽略。因此,质量缩放的使用原则是:先检查最小单元位置,再决定缩放范围。在LS-DYNA中可通过 *DATABASE_EXTENT_BINARY 输出 IEVERP 等参数,或直接查看 d3hsp 文件中的最小时间步单元信息。
工程示例:薄壁方管轴向压溃的失效设置
以一个 100 mm × 100 mm × 2 mm、长度 300 mm 的低碳钢薄壁方管轴向压溃为例。材料采用 *MAT_PLASTIC_KINEMATIC,密度 7850 kg/m³,弹性模量 210 GPa,屈服强度 350 MPa,失效应变 0.25。网格最小尺寸 1.5 mm,位于方管中部诱导槽区域。
按 c = 5172 m/s 计算,Δt_crit = 1.5×10⁻³ / 5172 ≈ 2.9×10⁻⁷ s,取 TSSFAC = 0.9 后实际时间步约 2.6×10⁻⁷ s。若压溃过程持续 20 ms,则需约 7.7×10⁴ 步。此时若对诱导槽区域做质量缩放,会改变该区域的惯性,影响褶皱形成顺序。因此建议:*CONTROL_TIMESTEP 中设置 DT2MS = -1.0E-7,仅对时间步小于 1.0×10⁻⁷ s 的单元缩放,且这些单元应位于远离诱导槽的端部;同时设置 IHQ = 4、QM = 0.05。计算后检查 glstat:若沙漏能占比超过 5%,应加密网格或改用 IHQ = 5;若总质量增加超过 2%,应减小缩放范围或改用更小的 DT2MS 绝对值。
glstat 和 matsum 文件,并关注沙漏能、总质量、动能与内能的变化曲线。这些曲线比单看应力云图更能判断数值设置是否可靠。小结:四个环节的协同关系
显式积分决定了求解框架,时间步控制决定了计算能否稳定推进,沙漏控制决定了单点积分单元能否正确传递应力,质量缩放则是在效率与精度之间的折中。四者共同作用于失效判据的检查过程:时间步过大或沙漏未受控,会使应力振荡,导致失效提前或滞后;质量缩放不当,会改变惯性效应,使断裂应变偏离真实值。因此,在LS-DYNA中做失效与断裂分析,数值设置不是“先跑起来再说”的附属步骤,而是与材料模型同等重要的建模内容。