4. Calculate Occupant Injury Criteria from Crash Test Data

From Raw Acceleration to Scored Injury Metrics

Occupant injury criteria are not read directly from a sensor; they are derived quantities. A crash test produces acceleration time histories at the dummy's head, chest, and pelvis, plus force or deflection channels at the femur and chest. The assessment protocol then applies a specific filter, integration window, and limit value to each channel. This case walks through that derivation for a frontal impact dataset and shows how the same signals score differently under Euro NCAP and C-NCAP because the two protocols use different limits and, in some cases, different criteria definitions.

The worked example uses a synthetic but physically plausible set of signals from a 50th-percentile male Hybrid III dummy in a 64 km/h offset deformable barrier test. All numbers below are teaching values generated from the stated inputs, not measured test results. The goal is to make the calculation chain explicit so it can be reproduced on real acquisition data.

Input Channels and Pre-Processing

Assume the data acquisition system provides the following channels at 10 kHz, with the standard SAE J211 sign convention (positive acceleration directed forward, i.e. toward the vehicle front, for the head and chest; femur compression positive):

  • HEAD_X — resultant head acceleration, g, already transformed to the head CG.
  • CHEST_DEF_Y — chest deflection, mm, from the chest potentiometer.
  • FEMUR_L_Z, FEMUR_R_Z — left and right femur axial compression, kN.

Before any criterion is computed, apply the channel frequency class (CFC) filter required by the protocol. Head acceleration uses CFC 1000, chest deflection uses CFC 180, and femur load uses CFC 600. Filtering matters: an unfiltered HIC on noisy data can be inflated by several percent because the integration window latches onto high-frequency spikes. A simple second-order Butterworth implementation at the CFC cutoff is acceptable for teaching; production work should use the SAE J211 digital filter specified in the protocol annex.

Computing HIC15

The Head Injury Criterion over a 15 ms window is defined as:

HIC15 = max over t1,t2 with (t2 - t1) <= 15 ms of
        [ (t2 - t1) * ( (1/(t2-t1)) * integral_{t1}^{t2} a(t) dt )^2.5 ]

where a(t) is the resultant head acceleration in g and the window is measured in seconds. In practice you compute it by scanning every start sample t1, integrating forward up to 15 ms, and keeping the maximum. A vectorised implementation in Python:

import numpy as np

def hic15(a_g, fs):
    dt = 1.0 / fs
    n = len(a_g)
    win = int(round(0.015 * fs))
    best = 0.0
    best_t1 = best_t2 = 0
    for i in range(n - win):
        seg = a_g[i:i + win]
        # cumulative integral of acceleration
        integ = np.cumsum(seg) * dt
        # mean acceleration over each candidate window ending at j
        for j in range(1, win):
            dur = j * dt
            mean_a = integ[j - 1] / dur
            hic = dur * (mean_a ** 2.5)
            if hic > best:
                best = hic
                best_t1, best_t2 = i, i + j
    return best, best_t1 * dt, best_t2 * dt

For the example dataset, the filtered head resultant peaks at 78 g at 62 ms and the HIC15 scan returns HIC15 = 412 over the window 54–69 ms. That value is below both the Euro NCAP and C-NCAP 15 ms limits, so the head contributes a full score under either protocol.

Chest Deflection and Femur Loads

Chest deflection is assessed as the peak filtered deflection, not the peak of the raw signal. For the example, the CFC 180 filtered CHEST_DEF_Y peaks at 34.5 mm at 71 ms. Femur loads are taken as the peak compression on each leg independently; the example gives left 3.1 kN and right 2.7 kN, both at around 58 ms.

Always report the time of the peak alongside the peak value. A peak that occurs after the primary deceleration pulse (roughly beyond 120 ms in a frontal test) often indicates a secondary contact or a sensor artefact rather than the primary injury mechanism, and reviewers will ask about it.

Applying the Two Protocols

The same three derived values are then compared against the limit sets. Euro NCAP and C-NCAP both use HIC15, chest deflection, and femur load for the frontal dummy, but their limit values and scoring bands differ. The table below applies the example values to representative limits from each protocol; confirm the exact current limits against the published assessment protocol before using them in a real submission.

CriterionExample valueEuro NCAP limit (full / zero)C-NCAP limit (full / zero)Euro NCAP pointsC-NCAP points
HIC15412650 / 1000650 / 1000FullFull
Chest deflection34.5 mm22 / 50 mm22 / 50 mmPartialPartial
Left femur load3.1 kN3.8 / 9.07 kN3.8 / 9.07 kNFullFull
Right femur load2.7 kN3.8 / 9.07 kN3.8 / 9.07 kNFullFull

With these limits the head and both femurs score full points under both protocols, while chest deflection falls in the partial band. The chest is therefore the limiting criterion in this example, and any design change that reduces chest deflection by a few millimetres would recover the remaining points. Note that the two protocols weight the criteria differently in their overall star rating, so identical per-criterion points do not necessarily produce identical star outcomes.

Injury Criterion Derivation Chain — Frontal Dummy Dataset Raw channels (10 kHz) HEAD_X (g) CHEST_DEF_Y (mm) FEMUR_L_Z (kN) FEMUR_R_Z (kN) CFC filtering HEAD_X → CFC 1000 CHEST_DEF_Y → CFC 180 FEMUR_L/R_Z → CFC 600 SAE J211 digital filter Criterion computation HIC15 = 412 Chest defl = 34.5 mm Femur L = 3.1 kN Femur R = 2.7 kN Protocol scoring Euro NCAP C-NCAP limit bands → points per criterion Chest deflection scoring band (example limits: full ≤ 22 mm, zero ≥ 50 mm) Full points Partial (linear) Zero points 0 mm 22 mm 50 mm max Example: 34.5 mm → partial band Full score region Interpolated region Zero score region Example data point

Verification and Common Failure Modes

Before trusting any computed criterion, run three checks. First, confirm the filter was actually applied: compare the peak of the raw and filtered head signal; a difference of more than about 5% suggests the filter is missing or misconfigured. Second, confirm the integration window: print the start and end times of the HIC15 window and check they fall inside the primary deceleration pulse. Third, confirm units: a HIC computed on acceleration in m/s² instead of g will be off by a factor of roughly 3.1^2.5, which is a common and silent error.

Do not compare a HIC15 value against a HIC36 limit or vice versa. The two windows produce different numbers from the same signal, and mixing them invalidates the score. Confirm which window the protocol version you are working to actually specifies before scoring.

Once the three criteria are computed and verified, the scoring step is a straightforward lookup against the protocol's limit bands. The chest deflection band shown in the figure is the one that decides the outcome in this example; the head and femur values sit comfortably in their full-score regions. Repeating the same derivation on the C-NCAP dataset with its own limit set gives the comparison the case asks for, and the difference in per-criterion points is what feeds into the overall star rating under each protocol.