4. Verification activities

Verification answers a narrow but essential question: are we solving the equations correctly? It is distinct from validation, which asks whether the equations themselves represent the physical reality of interest. In a crash simulation credibility plan, verification is the first gate. If the solver contains a coding defect, or if the discretized solution has not converged, then any subsequent comparison against physical test data is contaminated by numerical error that cannot be separated from modeling error. This chapter covers the three verification activities that must be planned and documented for explicit crash solvers: code verification, solution verification, and mesh convergence studies.

Code Verification: Establishing That the Solver Implements the Intended Equations

Code verification is a software-quality activity. Its purpose is to demonstrate that the implementation matches the mathematical model — no more, no less. For explicit crash solvers, the most rigorous and widely accepted technique is the Method of Manufactured Solutions (MMS). The procedure is straightforward in principle: choose a smooth analytical solution, substitute it into the governing partial differential equations to derive the required source terms and boundary conditions, run the code with those terms imposed, and measure the discretization error against the known exact solution as the mesh is refined. The observed order of accuracy should match the theoretical order of the spatial discretization scheme.

For an explicit dynamic solver, MMS is applied to the semi-discrete momentum equation. A representative manufactured displacement field for a 1D elastic bar is:

u(x,t) = A · sin(kx) · sin(ωt)
with A = 1.0e-3 m, k = 2π/L, ω = 2π/T, L = 1.0 m, T = 1.0e-3 s

Required body force from momentum balance:
  f(x,t) = ρ·ü − E·u_xx
         = ρ·(−A·ω²·sin(kx)·sin(ωt)) − E·(−A·k²·sin(kx)·sin(ωt))
         = A·(E·k² − ρ·ω²)·sin(kx)·sin(ωt)

With ρ = 7850 kg/m³, E = 210 GPa, the source term is fully determined. The analyst then runs a sequence of uniform meshes (e.g., 20, 40, 80, 160, 320 elements) with a fixed CFL number, computes the L2 norm of the displacement error at a fixed time, and fits the convergence rate p from log(error) versus log(h). For a consistent second-order element formulation, the observed rate should approach 2.0. A rate significantly below the theoretical value — say 1.2 instead of 2.0 — signals a defect in the element formulation, the time integration, or the boundary condition application.

Code verification is performed once per solver version, not per project. However, when a solver version is upgraded, or when a new element formulation, contact algorithm, or material routine is activated for the first time in a project, the relevant MMS test should be re-run and the result recorded in the credibility plan.

Beyond MMS, code verification for explicit solvers should include regression tests against analytical benchmarks: the Taylor bar impact (rigid-plastic wave propagation), the 1D elastic bar wave speed check (c = √(E/ρ)), and energy conservation in an undamped free-vibration case. These are cheap to run and catch gross errors quickly.

Solution Verification: Quantifying Numerical Error in a Specific Simulation

Solution verification asks: for this model, how large is the numerical error? It does not require an exact solution. The standard approach is Richardson extrapolation applied to a systematic mesh refinement study. The analyst runs the same model on three meshes of increasing refinement (coarse, medium, fine) with a constant refinement ratio r (typically 1.5 or 2.0), extracts a scalar quantity of interest (QoI) — peak intrusion, peak acceleration, energy absorption, or a specific nodal displacement — and computes the observed order of convergence and the discretization error estimate.

Given QoI values: Q1 (coarse), Q2 (medium), Q3 (fine), r = 2.0

Observed order:  p = ln[(Q1 − Q2)/(Q2 − Q3)] / ln(r)
Extrapolated value: Q_ext = Q3 + (Q3 − Q2)/(r^p − 1)
Relative discretization error on fine mesh: e = |Q3 − Q_ext| / |Q_ext|

For crash simulations, the QoI is rarely smooth in time — peak acceleration is notoriously noisy and may not converge monotonically. In such cases, use a time-averaged or filtered QoI (e.g., 50 ms moving average of acceleration, or total internal energy at a fixed time) and report the convergence behavior honestly. If the three-mesh sequence does not show monotonic convergence, the mesh study is inconclusive and a fourth mesh or a different QoI should be selected. The credibility plan should state the acceptance criterion explicitly: for example, "discretization error on the fine mesh shall be below 5% for peak intrusion and below 10% for filtered peak acceleration."

Do not confuse mesh convergence with solution verification. A mesh convergence study shows that the answer stops changing; solution verification quantifies the remaining error and provides an extrapolated reference value. Both are needed, and the extrapolated value becomes the numerical benchmark against which the production mesh result is judged.

Mesh Convergence Studies for Explicit Crash Models

Explicit crash models present specific mesh convergence challenges that differ from implicit static analysis. The time step is governed by the smallest element (Δt ≤ L_min/c), so uniform refinement of the entire model is computationally prohibitive. Practical convergence studies therefore focus on the crush zone — the region that undergoes large plastic deformation and folding — while keeping the non-critical regions at a fixed mesh density. The refinement ratio should be applied consistently within the crush zone, and the transition region must be far enough from the QoI extraction location that it does not influence the result.

A defensible mesh convergence study for a frontal impact model might proceed as follows. The baseline crush-zone element size is 8 mm. Two additional meshes at 5.3 mm and 4 mm (r ≈ 1.5) are generated by refining only the front rail, bumper, and crash box. The QoIs are peak intrusion at the firewall, total energy absorbed at 80 ms, and filtered peak deceleration at the B-pillar base. The study is run with the same material cards, contact definitions, and time step control (mass scaling disabled or held constant). Results are tabulated and the observed convergence rate is computed. If the fine mesh differs from the medium mesh by less than the acceptance threshold, the medium mesh may be adopted for production, provided the extrapolated error is documented.

Verification Workflow for Explicit Crash Solvers Code Verification Method of Manufactured Solutions • Choose smooth u(x,t) • Derive source term f(x,t) • Run mesh sequence (h halved) • Fit observed order p • Compare p to theoretical order Pass: p ≈ p_theory (±0.3) Solution Verification Richardson Extrapolation • 3 meshes, ratio r = 1.5–2.0 • Extract QoI (intrusion, energy) • Compute p, Q_ext, error e • Check monotonic convergence • Report e on fine mesh Pass: e < acceptance threshold Mesh Convergence Crush-Zone Refinement • Refine crush zone only • 8 → 5.3 → 4 mm elements • Fixed material & contact • Tabulate QoI vs. h • Select production mesh Pass: ΔQoI < threshold Observed Convergence (log-log) log(element size h) log(L2 error) slope = −2.0 (2nd-order scheme) Example QoI Convergence Table Mesh h (mm) Intrusion (mm) Energy (kJ) Coarse 8.0 142.6 38.2 Medium 5.3 136.1 39.7 Fine 4.0 134.0 40.1 Extrapolated — 132.9 40.3 Fine-mesh error: 0.8% intrusion, 0.5% energy → medium mesh acceptable for production

The figure above summarizes the three verification activities as a sequential gate structure, with a representative convergence plot and QoI table. Note that the table values are illustrative and would be replaced by actual run results in a project credibility plan.

Documenting Verification in the Credibility Plan

Each verification activity must leave a traceable record. For code verification, record the solver version, the MMS case definition, the mesh sequence, the observed order of accuracy, and the pass/fail judgment against the theoretical order. For solution verification, record the three mesh definitions, the QoI extraction method (including any filtering), the computed p, Q_ext, and relative error, and the acceptance threshold with its justification. For mesh convergence, record the refinement strategy, the element sizes, the QoIs, and the selected production mesh with the supporting error estimate.

A common failure mode in crash simulation projects is to perform a mesh convergence study on a simplified model and then apply the resulting mesh density to a different, more complex model without re-verification. The credibility plan should explicitly state the scope of each verification result — which model configuration, which QoIs, and which loading condition it covers — and require re-verification when the model topology or the dominant deformation mode changes. Verification is not a one-time checkbox; it is a documented, scoped, and repeatable activity that underpins every subsequent validation claim.