3. Recover from Element Distortion in Explicit Crash Simulation
Why element distortion terminates an explicit crash run
In an explicit crash simulation, the stable time step is governed by the smallest characteristic element length in the mesh: Δt ≈ Lc/c, where c is the dilatational wave speed. When an element distorts severely under impact loading, its characteristic length collapses toward zero, the critical time step shrinks, and LS-DYNA either reduces the time step until the run becomes impractical or aborts with a negative-volume or "element has distorted excessively" message. The practical task is therefore not simply to "make the mesh finer" but to locate the specific region where distortion originates, decide whether the cause is under-integrated hourglassing, genuine mesh coarseness in a high-gradient zone, or a material/contact artifact, and then apply the smallest intervention that restores stability without corrupting the physics.
Reading the termination message and locating the culprit
A typical explicit crash termination looks like this in the messag or d3hsp file:
*** Error 40509 (SOL+509)
negative volume in solid element # 184223 cycle 4127
time = 3.2184E-03
The element ID is the single most valuable piece of information. Two immediate follow-ups are required:
- Confirm the element is a solid (ELFORM 1, 2, or −1) and note its part ID from the model database.
- Check whether the run had already reported hourglass energy growth before the abort. A rising hourglass-to-internal-energy ratio (often flagged in
glstatashourglass energy) above roughly 5–10% is a strong indicator that under-integrated elements are the root cause rather than pure mesh coarseness.
To isolate the distorted region, write a small keyword snippet that dumps the element's connectivity and current coordinates at the failure cycle, or use LS-PrePost's Element > Identify with the reported ID. In practice, the distorted element almost always sits in a zone of high shear or compression — a crash box corner, a spot-weld vicinity, or a contact interface — not in the bulk of the structure.
d3hsp, glstat, and matsum. The hourglass energy history and the element ID together tell you whether you are fighting hourglassing or a genuinely under-resolved mesh — these require different fixes.Choosing between hourglass control and mesh refinement
The decision is diagnostic, not stylistic. Use the following logic:
- Hourglass energy dominates and the element is a reduced-integration solid (ELFORM 1) or shell (ELFORM 2): the element is likely hourglassing. Switch to a more robust formulation (ELFORM −1 or −2 for solids, ELFORM 16 for shells) or add stiffness-based hourglass control via
*CONTROL_HOURGLASSwithIHQ=4(Flanagan-Belytschko stiffness form) and a coefficientQMin the 0.05–0.10 range. Start at 0.05; excessive QM stiffens the response artificially. - Hourglass energy is low but the element is in a high-gradient zone and its characteristic length is far below its neighbors: refine the mesh locally, or switch the part to a distortion-tolerant formulation. A single sliver element next to a coarse block is a classic trigger.
- The element is at a contact interface and shows penetration or inversion: the cause may be contact, not the element itself — check
*CONTACTthickness and considerSOFT=1orSOFT=2before touching the mesh.
Applying hourglass control in the keyword deck
If the diagnostic points to hourglassing, add a global hourglass control card and, where the part is critical, override the element formulation. A minimal, self-contained snippet:
*CONTROL_HOURGLASS
$# ihq qh
4 0.05
*PART
$# title
crash_box_inner
$# pid secid mid eosid hgid grav adpopt tmid
7 7 7 0 0 0 0 0
*SECTION_SOLID
$# secid elform aet
7 -1 0
Here IHQ=4 selects the Flanagan-Belytschko stiffness-based hourglass control, and QM=0.05 is a conservative coefficient. Switching the section to ELFORM=-1 (fully integrated solid) removes hourglassing entirely at the cost of roughly 2–3× the CPU per element and a smaller stable time step; use it only on the small distorted part, not the whole model. For shells, ELFORM=16 is the fully integrated counterpart.
Applying local mesh refinement
If hourglass energy is low, the element is genuinely too coarse or too skewed. Two practical moves:
- Refine the sliver: split the offending element and its immediate neighbors so the aspect ratio drops below roughly 5:1 and the characteristic length is comparable to adjacent elements. In LS-PrePost, use Mesh > Element > Split or re-mesh the part with a target size matched to the local gradient.
- Re-mesh the part with a size field: if the distortion is spread across a crash box, a uniform refinement to 60–70% of the original edge length in that part is usually enough to restore stability without exploding the model size.
After refinement, re-check the stable time step. A finer mesh reduces Δt, so the run may need more cycles; confirm the total simulated time is still reached within the wall-clock budget.
Verification criteria
A recovered run is not simply one that finishes. Confirm all of the following before accepting the result:
| Check | Acceptance criterion | Where to look |
|---|---|---|
| Hourglass energy | < 5% of internal energy throughout | glstat |
| Negative volume | No Error 40509 in messag | messag / d3hsp |
| Energy balance | Total energy conserved within ~1% | glstat |
| Physical response | Force–displacement curve matches baseline trend | rcforc / nodout |
| Time step | No sudden collapse of Δt before termination | glstat |
QM above ~0.10 to "force" a run to finish. Excessive hourglass stiffness adds artificial energy and can mask a genuine mesh or contact defect, producing a stable but physically wrong result. If a small QM does not fix it, the cause is almost certainly mesh or contact, not hourglassing.Common failure symptoms and their fixes
- Run aborts within the first few cycles: likely an initial penetration or a degenerate element from meshing — check
*CONTACTand element quality before touching hourglass control. - Hourglass energy climbs steadily then aborts: classic under-integration — apply
IHQ=4withQM=0.05, or switch the part toELFORM=-1. - Distortion localized at a spot weld or contact edge: refine locally and consider
SOFT=1on the contact to reduce spurious penetration forces. - Time step collapses gradually: a sliver element is shrinking — refine or remove it; do not rely on mass scaling to hide it.
With the element ID from the termination message, the hourglass energy history from glstat, and the decision path above, the fix is usually a single targeted change rather than a wholesale re-mesh — and the verification table confirms the recovered run is physically credible, not merely numerically alive.