2. PAM-CRASH solver architecture for side impact

Side impact is one of the most demanding load cases a crashworthiness solver must handle. The loading is highly localized, the contact interfaces are complex (door trim, B-pillar, seat, occupant), and the event unfolds in roughly 50–120 ms. PAM-CRASH was designed around an explicit finite element core that maps naturally onto this problem class. This section explains how the solver is structured, how it advances the solution in time, how contact and materials are handled, and how the input deck is organized so that a side impact model can actually be built and run.

Explicit time integration as the solver backbone

PAM-CRASH uses the explicit central-difference scheme. The semi-discrete equation of motion is:

M · a(t) = F_ext(t) − F_int(t) + F_contact(t)

where M is the lumped mass matrix, a the nodal acceleration vector, and the right-hand side collects external loads, internal element forces, and contact forces. Because M is lumped (diagonal), no matrix inversion is required — accelerations are obtained by simple division, then integrated to velocity and displacement:

a_n = M⁻¹ · (F_ext,n − F_int,n + F_contact,n)
v_(n+1/2) = v_(n−1/2) + a_n · Δt
d_(n+1)   = d_n + v_(n+1/2) · Δt

The scheme is conditionally stable. The critical time step is governed by the smallest element in the mesh:

Δt_crit = 2 / ω_max ≈ L_min / c,   c = √(E / ρ)

For a typical steel side-impact model with E = 210 GPa, ρ = 7.85e-9 t/mm³, the wave speed is about 5.17 mm/ms. A 3 mm shell element therefore gives Δt_crit ≈ 0.58 µs. PAM-CRASH applies a scale factor (commonly 0.9) and, if needed, mass scaling on small elements to keep the step economical. In side impact, the B-pillar and rocker often contain 2–4 mm elements, so the global step typically lands between 0.4 and 0.8 µs. A 100 ms event then requires on the order of 150,000–250,000 cycles — this is why explicit solvers dominate crash simulation.

Mass scaling is a trade-off, not a free fix. Adding mass to reach a target step changes inertia and can suppress realistic buckling. Always check that added mass stays below roughly 1–2% of total model mass and that kinetic energy is not artificially inflated.

Contact algorithms for side impact interfaces

Side impact is contact-dominated: the barrier hits the door, the door intrudes into the occupant compartment, and the dummy interacts with trim and airbag. PAM-CRASH provides penalty-based contact, where penetration is resisted by a spring force proportional to the overlap:

F_contact = k_penalty · δ

The penalty stiffness is derived from element properties and a scale factor, so it is not a user-tuned spring constant in the physical sense. Two families of contact are relevant here:

  • Node-to-surface (NTS) — used for barrier-to-door and rigid-wall impacts. Cheap and robust when the master surface is coarse relative to the slave nodes.
  • Surface-to-surface (STS) — preferred for door trim to dummy, seat to occupant, and airbag to body. It distributes contact over segments and reduces noise on soft materials.

Key controls include the friction coefficient (typically 0.1–0.3 for painted steel, higher for trim), the contact thickness (must match shell thickness to avoid early or late contact), and the sliding interface type. For self-contact of a folding door or a crushing rocker, a single-surface contact with a search depth covering the element size is required.

A frequent side-impact failure is contact missing entirely because the slave set was defined on the wrong side of the shell. PAM-CRASH shell normals matter: if the normal points away from the master surface, the penalty force never activates and the door passes through the barrier. Always verify normals with a contour plot before running.

Material models for side impact

Side impact involves mild steel, high-strength steel, aluminum, foam, and polymer trim. PAM-CRASH material cards are selected by number and matched to the strain-rate regime:

MaterialTypical cardSide-impact role
Mild steelElasto-plastic (e.g. 103)Door outer panel, floor
High-strength steelRate-dependent plasticity (e.g. 108)B-pillar, rocker, door beam
AluminumElasto-plastic with failureDoor beam, bumper
FoamCrushable foamDoor trim, energy absorber
PolymerVisco-elastic / plasticTrim clips, interior panels

Strain-rate sensitivity is essential. The Cowper–Symonds form is widely used:

σ_y(ε̇) = σ_y0 · [1 + (ε̇ / D)^(1/p)]

For a typical HSS B-pillar, D ≈ 6844 s⁻¹ and p ≈ 3.91 are representative starting values. Failure is handled either by a plastic strain limit or by a damage variable that degrades the stress. In side impact, the B-pillar and door beam are expected to fail locally, so an element deletion criterion (e.g. effective plastic strain of 0.25–0.4) is often activated — but deletion must be used carefully, because removing elements removes load paths.

Input deck structure

A PAM-CRASH input deck is a sequence of keyword blocks. The order is not arbitrary: the solver reads model definition first, then controls, then output requests. A minimal side-impact deck looks like this:

*TITLE
Side impact — moving deformable barrier, 50 km/h

*CONTROL
  TITLE  = SI_MDB_50
  DT     = 0.0        ! auto time step
  DTSCAL = 0.9
  TEND   = 120.0      ! ms
  MASSSC = 1.0e-4     ! mass scaling threshold

*NODE
  1  0.0  0.0  0.0
  2  10.0 0.0  0.0
  ...

*ELEMENT_SHELL
  1001  1  1  2  3  4
  ...

*PART
  10  DOOR_OUTER  MAT=103  THICK=0.8
  11  B_PILLAR    MAT=108  THICK=1.6
  ...

*MAT_ELASTOPLASTIC
  103  7.85e-9  210000.0  0.3  0.35  0.0

*MAT_RATE_DEPENDENT
  108  7.85e-9  210000.0  0.3  0.9  6844.0  3.91

*CONTACT_NTS
  SLAVE  = DOOR_OUTER
  MASTER = BARRIER
  FRIC   = 0.15
  THICK  = 0.8

*CONTACT_STS
  SLAVE  = DUMMY
  MASTER = TRIM
  FRIC   = 0.25

*INITIAL_VELOCITY
  PART = BARRIER  VX = 13.89   ! 50 km/h

*OUTPUT
  TIME   = 0.5
  NODOUT = 1, 2, 3
  ELOUT  = 1001, 1002
  GLSTAT = 1
  SLEOUT = 1

Two details matter for side impact. First, *INITIAL_VELOCITY is applied to the barrier, not the vehicle — the vehicle is stationary and the MDB moves at 50 km/h (13.89 m/s). Second, GLSTAT and SLEOUT are essential energy outputs: they let you verify that hourglass energy stays below ~5% of internal energy and that sliding interface energy is not negative.

How the pieces interact during a run

The diagram below shows the data flow inside one time step and how the major solver components connect.

PAM-CRASH explicit step — side impact data flow Input Deck *NODE / *ELEMENT *PART / *MAT / *CONTACT *CONTROL / *OUTPUT Time Step Control Δt = 0.9 · L_min / c mass scaling check t → t + Δt Force Assembly F_int (element stresses) F_ext (barrier velocity) F_contact (penalty) Integrate a = M⁻¹·F v, d update central difference Contact Search NTS: barrier → door STS: trim → dummy F = k · δ (penetration) penetration δ Material Update σ_y(ε̇) rate effect plastic strain ε_p failure / deletion strain rate Energy Monitor GLSTAT: IE, KE, HE SLEOUT: contact energy hourglass < 5% IE next time step — state carried forward (d, v, σ, ε_p) Output at t = 0.5 ms intervals NODOUT: B-pillar intrusion, door velocity ELOUT: plastic strain, stress in door beam GLSTAT / SLEOUT: energy balance

Reading the results and judging the run

After the run, three checks determine whether the simulation is trustworthy. First, the energy balance: total energy should stay nearly constant, hourglass energy should remain a small fraction of internal energy, and sliding interface energy should be positive. Second, the time step history: if DT collapses, an element is distorting severely — usually a sign of a missing contact or an overly soft material. Third, physical plausibility: B-pillar intrusion at the occupant reference point should fall in a realistic range (for a 50 km/h MDB test, roughly 100–200 mm depending on vehicle class), and the door should not pass through the barrier.

If the door passes through the barrier, check shell normals and the contact thickness. If the model terminates early with a negative volume error, look for a collapsed element in the door beam and consider a smaller time step or a more robust element formulation. If hourglass energy grows, refine the mesh in the B-pillar or switch to a fully integrated shell. These symptoms map directly onto the solver architecture described above: explicit integration, penalty contact, and rate-dependent materials each have a characteristic failure mode, and recognizing them is the fastest path to a reliable side-impact model.