Axioforce

Resources

Metric Library

A reference for every metric Axioforce computes from force-plate data.

120 metrics

Airborne Displacement

cm

Estimated horizontal center of mass displacement during airborne phase using takeoff velocity.

d=vxy × (2 × vz / g)

Average

The average value of the dataset

average=sum(x) / n

Average Force

% BW

The average force during a phase, multiple phases, or a capture.

average_force=average(force)

Average over 1 Second

Get the average of the data for the last 1 second.

average=sum(x[t1s:]) / len(x[t1s:])

Average Power

W

The average power during a phase, multiple phases, or a capture.

average_power=average(force × velocity)

Average Relative Power

W/kg

The average power relative to the system mass during a phase, multiple phases, or a capture.

average_power=average(force × velocity) / systemmass

Average RFD

N/s

The rate at which force is developed

RFD=ΔF / Δt

Average Velocity

m/s

The average velocity during a phase, multiple phases, or a capture.

average_velocity=average(velocity)

Body Mass

N

The body mass of the individual.

body_mass=mass

Brake Time

s

Brake time - the counter to drive impulse. Elapsed time from the delivery-phase start (front-foot contact) until the DELIVERY zone's cumulative braking impulse reaches 50% of that capture's DRIVE impulse. Braking impulse COUNTERS the drive: Fz above 100% BW plus backward shear (Fy below 0), per body weight. The 50% target uses the drive impulse over the LAST drive movement (start Fz>80% BW OR Fy>3% BW; separate/end Fz<30% BW AND Fy<3% BW). Blank if the delivery leg never absorbs 50% of the drive.

brakeTime=time from deliveryphase start until trapz((max(Fz100,0)+max(Fy,0))/BW, t) over the delivery zone reaches 0.5 × driveImpulse

Count

The number of data points in the dataset

count=n

Countermovement Depth

cm

The peak negative vertical displacement during the braking and propulsive phases of a CMJ.

countermovement_depth=min(Pz)

Drive Impulse

N*s

Non-normalized net drive impulse in newton-seconds: the driveImpulse integrand (Fz above bodyweight + forward Fy, as a fraction of BW) integrated over the drive window and multiplied by systemWeight (body_mass, N). Exactly equals the raw-Newton net drive impulse (normalization is division by body_mass, a constant, so multiplying back is exact). Same drive window + Fz>80%BW qualifier as driveImpulse.

drive_impulse_Ns=systemWeight × integral((max(Fz100,0)+max(Fy,0))/100 dt) over the drive window

Drive Impulse Normalized

Ns/kg

Drive-leg impulse, normalized to body weight, over the DRIVE window. Sums Fz above 100% BW (vertical drive) PLUS positive Fy (drive-toward-home shear). WINDOW: a drive movement STARTS when Fz > 80% BW OR Fy > 3% BW - so leg lift (Fz high, Fy not yet positive) or forward shear opens it (the Fy trigger also needs Fy risen >= 2% BW above its running-min baseline so a static lean doesn't trigger; the Fz trigger has no rise guard). It ENDS/SEPARATES only when Fz < 30% BW AND Fy < 3% BW. The DRIVE is the LAST such movement. Each contribution clipped to its positive part (Fz below body weight and negative Fy contribute nothing).

driveImpulse=trapz( (max(Fz100,0) + max(Fy,0))/BW, t ) over the LAST movement (start: Fz>80%BW OR Fy>3%BW+2%rise
separate/end: Fz<30%BW AND Fy<3%BW)

Drive Time

ms

Drive time - elapsed time (ms) of the DRIVE impulse window: the last drive movement (start Fz>80% BW OR Fy>3% BW; separate/end Fz<30% BW AND Fy<3% BW). Same window driveImpulse integrates over; this is its duration.

driveTime=(drivewindow end ms) (drivewindow start ms), the last drive movement

Estimated Airborne Displacement

cm

Estimated horizontal center of mass displacement during airborne phase using takeoff velocity.

d=vxy × (2 × vz / g)

Estimated Jump Distance

cm

Estimated jump distance from center of mass displacement and takeoff velocity, assuming a symmetric flight arc.

Z: h = vz^2 / (2g)
X/Y: d = 2 × Δxcontact + vx × (2 × vz / g)

Estimated Jump Distance From Impulse

cm

Estimate jump distance from net impulse and time in air.

distance=Δv × tair
where Δv = impulse / m and tair = 2×vz/g

Estimated Time in air

s

Estimate the time spent in the air based on the vertical velocity at takeoff.

time_in_air=2 × vz / g

Exit Velocity

kph

Ball speed off the bat, manually entered or from external source (e.g., Trackman, Rapsodo)

Manual Entry

First Quartile

The value below which the first quartile of the data falls

Q1=0.25 × (n + 1)

Force at Minimum Displacement

% BW

The vertical ground reaction force applied to the system center of mass at the instant of peak negative vertical displacement of the system center of mass.

force_at_minimum_displacement=Fz_parent(tmin,Pz,parent)

Handedness

Batter handedness inferred from the front foot's lateral drive at its most-loaded instant: the sign of the mean Fx on the lead zone over a +-25 ms window centred on the peak of the Fy/Fz force resultant. A right-handed swing drives the lead foot's Fx negative; positive means left-handed. The anchor is found from force alone - Fx is excluded from the resultant so the anchor cannot be biased by the axis being read, and the Fire phase is not used at all (Fire starts at a fixed 300 ms clock offset from the commit trigger rather than at a mechanical event). A landing peak (airborne beforehand, mean Fz over [t-500 ms, t-100 ms) < 25 %BW) is preferred; the global Fy/Fz peak is the fallback so no-stride hitters still resolve. NOT STORE-VALIDATED as of 2026-08-12 - replaces the Fire-anchored rules (v1 Reaction-Window net impulse 94.4%/78% coverage; v2 mean Fx over the first 50 ms of Fire 94.0%/100%; v3 single sample at Fire start 92.9%/100%) and must be swept against the store before it is trusted. Text-valued metric.

handedness='Right handed' if mean(Fxfront over peak|(Fy,Fz)| +25ms) < 0 else 'Left handed'

Hang Time

ms

The time the athlete is in the air.

hang_time=landtime liftoff,time

Hip Rotation Magnitude

Nm

Sum of absolute peak vertical free moments (Tz) from back foot (zone_index 1) and front foot (zone_index 0) during the Swing.

hip_rot_mag=|peakTz,back| + |peakTz,front|

Hip Rotation Symmetry

Nm

Difference of absolute peak vertical free moments (Tz): back foot (zone_index 1) minus front foot (zone_index 0).

hip_rot_sym=|peakTz,back| |peakTz,front|

Impulse

Ns

The change in momentum of the athlete

impulse=force × time

Impulse Ratio

The ratio between the impulse during the propulsive phase and the braking phase during a CMJ.

impulse_ratio=propulsiveimpulse / brakingimpulse

Interquartile Range

The range between the first and third quartiles

IQR=Q3 Q1

Jump Height

cm

The height of the jump, calculated using the hang time.

jump_height=hangtime^2 × g / 8

Jump Height from Takeoff Velocity

cm

Calculate the vertical leap height based on the takeoff velocity.

vertical_leap_takeoff_velocity=vz^2 / (2 × g)

Jump Momentum

kg*m/s

Calculate the jump momentum from takeoff velocity and the athlete's MASS. NOTE: the engine passes body_mass as BODYWEIGHT in newtons, so it is divided by g (9.81) to get true mass (kg); momentum is therefore kg*m/s = mass * takeoff velocity.

jump_momentum=mass × vtakeoff, where mass = bodymass / 9.81 (bodymass is bodyweight in N)

JumpingStiffness

N/m

The vertical ground reaction force applied to the system center of mass at the instant of peak negative vertical displacement of the system center of mass divided by the peak negative vertical displacement of the system center of mass during the jumping phases.

jumping_stiffness=Fz(tmin,Pz) / abs(min(Pz))

Kurtosis

A measure of the 'tailedness' of the data distribution compared to a normal distribution

kurtosis=(1/n) × sum((x mean)^4) / (stddev^4)

L/R Asymmetry Average Force

%

The asymmetry between the left and right average force (either positive or negative) during a phase, multiple phases, or a capture.

asymmetry=((Right Left) / max(Right, Left)) × 100

L/R Asymmetry Average RFD

%

The asymmetry between the left and right RFD (either positive or negative) during a phase, multiple phases, or a test.

RFD=ΔF / Δt
asymmetry=((Right Left) / max(Right, Left)) × 100

L/R Asymmetry Average RFD

%

The asymmetry index between the left and right RFD (either positive or negative) during a phase, multiple phases, or a test.

RFD=ΔF / Δt
asymmetry_index=((Right Left) / (Total × 0.5)) × 100

L/R Asymmetry Impulse

%

The asymmetry between the left and right impulse (either positive or negative) during a phase, multiple phases, or a capture.

impulse=integral(Fz × dt)
asymmetry=((Right Left) / max(Right, Left)) × 100

L/R Asymmetry Index Average Force

%

The asymmetry index between the left and right average force (either positive or negative) during a phase, multiple phases, or a capture.

asymmetry_index=((Right Left) / (Total × 0.5)) × 100

L/R Asymmetry Index Impulse

%

The asymmetry index between the left and right impulse (either positive or negative) during a phase, multiple phases, or a capture.

impulse=integral(Fz × dt)
asymmetry_index=((Right Left) / (Total × 0.5)) × 100

L/R Asymmetry Index Peak Force

%

The asymmetry index between the left and right force (either positive or negative) during a phase, multiple phases, or a capture.

asymmetry_index=((Right Left) / (Total × 0.5)) × 100

L/R Asymmetry Index Peak RFD

%

The asymmetry index between the left and right at the peak combined (left + right) instantaneous RFD (either positive or negative) during a phase, multiple phases, or a test.

RFD=dF / dt
asymmetry_index=((Right Left) / (Total × 0.5)) × 100 at peak (L+R) RFD

L/R Asymmetry Index RFD

%

The asymmetry index between the left and right RFD (either positive or negative) during a phase, multiple phases, or a capture.

RFD=ΔF / Δt
asymmetry_index=((Right Left) / (Total × 0.5)) × 100

L/R Asymmetry Index RFD 100

%

The asymmetry index between the left and right RFD (either positive or negative) during the first 100 ms of a phase, multiple phases, or a test.

RFD=ΔF / Δt
asymmetry_index=((Right Left) / (Total × 0.5)) × 100

L/R Asymmetry Index RFD 150

%

The asymmetry index between the left and right RFD (either positive or negative) during the first 150 ms of a phase, multiple phases, or a test.

RFD=ΔF / Δt
asymmetry_index=((Right Left) / (Total × 0.5)) × 100

L/R Asymmetry Index RFD 200

%

The asymmetry index between the left and right RFD (either positive or negative) during the first 200 ms of a phase, multiple phases, or a test.

RFD=ΔF / Δt
asymmetry_index=((Right Left) / (Total × 0.5))

L/R Asymmetry Index RFD 50

%

The asymmetry index between the left and right RFD (either positive or negative) during the first 50 ms of a phase, multiple phases, or a test.

RFD=ΔF / Δt
asymmetry_index=((Right Left) / (Total × 0.5)) × 100

L/R Asymmetry Peak Force

%

The asymmetry between the left and right force (either positive or negative) during a phase, multiple phases, or a capture.

asymmetry=((Right Left) / max(Right, Left)) × 100

L/R Asymmetry Peak Landing Force

%

Percent difference between the left and right peak landing forces.

asymmetry=100 × (PeakLandingRight PeakLandingLeft) / max(PeakLandingRight, PeakLandingLeft)

L/R Asymmetry Peak RFD

%

The asymmetry between the left and right at the peak combined (left + right) instantaneous RFD (either positive or negative) during a phase, multiple phases, or a test.

RFD=dF / dt
asymmetry=((Right Left) / max(Right, Left)) × 100 at peak (L+R) RFD

L/R Asymmetry RFD

%

The asymmetry between the left and right RFD (either positive or negative) during a phase, multiple phases, or a capture.

RFD=ΔF / Δt
asymmetry=((Right Left) / max(Right, Left)) × 100

L/R Asymmetry RFD 100

%

The asymmetry between the left and right RFD (either positive or negative) during the first 100 ms of a phase, multiple phases, or a test.

RFD=ΔF / Δt
asymmetry=((Right Left) / max(Right, Left)) × 100

L/R Asymmetry RFD 150

%

The asymmetry between the left and right RFD (either positive or negative) during the first 150 ms of a phase, multiple phases, or a test.

RFD=ΔF / Δt
asymmetry=((Right Left) / max(Right, Left)) × 100

L/R Asymmetry RFD 200

%

The asymmetry between the left and right RFD (either positive or negative) during the first 200 ms of a phase, multiple phases, or a test.

RFD=ΔF / Δt
asymmetry=((Right Left) / max(Right, Left)) × 100

L/R Asymmetry RFD 50

%

The asymmetry between the left and right RFD (either positive or negative) during the first 50 ms of a phase, multiple phases, or a test.

RFD=ΔF / Δt
asymmetry=((Right Left) / max(Right, Left)) × 100

Landing Net Impulse Asymmetry

%

Left/Right asymmetry of the NET landing impulse each leg absorbs. The assessment window runs from landing touchdown until the cumulative combined net landing impulse reaches 80% of the jump's net positive impulse (the propulsion impulse that produced takeoff) -- standardizing the window to the athlete's own output and excluding the noisy stabilization tail. Uses IMPULSE, not peak force, because landing impulse (the momentum being arrested) is surface-independent while peak landing force scales with floor stiffness (concrete vs rubber vs court). Each leg's impulse is relative to its own quiet-stance weight. asymmetry = (Right - Left)/max(|Right|,|Left|)*100; + = right-dominant.

window=[landingstart .. t where cumulative combined net landing impulse >= 0.8 × jumpnet,positive,impulse]
per leg impulse = integral(max(legFz 50 %BW (half body weight, flat), 0) × bodyweightN) over window
asymmetry=(Right Left)/max(|R|,|L|)×100

LandingStiffness

N/m

Landing stiffness = vertical GRF at the deepest point of landing absorption divided by the COM sink depth (N/m). The COM displacement is RECONSTRUCTED (the stored Pz drifts to meters): anchor Vz=0 at the flight apex (flight-phase center, true zero), integrate the actual force to a real touchdown velocity, then integrate displacement from touchdown and stop at the bottom of absorption (first v>=0) so integration bias can't run away.

apex(=flight center) Vz=0 > integrate force to touchdown velocity > Pz=0 at touchdown > integrate to bottom (first v>=0)
landing_stiffness=Fz(bottom) / |min Pz|

Left Force at Minimum Displacement

% BW

The left-side vertical ground reaction force at the instant of peak negative vertical displacement of the system center of mass (Parent).

left_force_at_minimum_displacement=Fz_left(tmin,Pz,parent)

Left Force at Peak Force

% BW

The left ground reaction force applied to the system center of mass at the point of the peak instantaneous ground reaction force applied to the system center of mass.

left_force_at_peak_force=Fz_left(tpeak,parent)

Max

The maximum value in the dataset

max=max(x)

Median

The median value of the dataset

median=Q2 = 0.5 × (n + 1)

Min

The minimum value in the dataset

min=min(x)

Mode

The most frequently occurring value in the dataset

mode=most_frequent(x)

Momentum at Peak Force

kg*m/s

Calculate the momentum at peak force during a phase, multiple phases, or a capture.

momentum_at_peak_force=vat,peak,force × bodymass

mRSI

m/s

Calculate the modified Reactive Strength Index (mRSI). How much "jump" per second of effort.

mRSI=jumpheight / (contacttime or timeto,takeoff)

mRSI-Lateral

m/s

Calculate the modified Reactive Strength Index (mRSI) adapted for lateral jumps. How much "jump" per second of effort.

mRSI_lateral=jumpdistance / (contacttime or timeto,takeoff)

Net Impulse

Ns

Calculate the net impulse.

net_impulse=(F × dt)

Peak

The largest absolute value in the dataset

peak=max(abs(x))

Peak Direction

The direction of the peak value in the dataset

????

Peak Direction Phi

The phi value of the peak direction

????

Peak Direction Rho

The rho value of the peak direction

????

Peak Direction Theta

The theta value of the peak direction

????

Peak Drive Velo (COM)

m/s

COMPARISON metric (self-integrated). Peak whole-body (all-plate) COM horizontal velocity DURING the drive impulse window, computed by integrating the combined horizontal GRF from v=0 at the drive-window start (a=(F%BW/100)*g, mass cancels) instead of reading stored Vx/Vy. COM = is_parent virtual device (drive + both delivery plates). Peak searched only within [drive_start, drive_end] because the landing zone brakes the COM after front-foot contact. Self-contained, so it also works on older captures whose stored velocity was never recorded. Returns (peak COM velocity m/s, time of peak s).

peak=max(sqrt(Vx^2+Vy^2)) for drivestart<=t<=driveend
Vx=integral(Fx/100×g dt), Vy=integral(Fy/100×g dt) from drivestart

Peak Force

% BW

The peak force (either positive or negative) during a phase, multiple phases, or a capture.

peak_force=max(abs(Force))

Peak Free Moment

Nm

Peak vertical free moment (Tz) — pure rotational torque about the vertical axis. Returns value at peak |Tz| with sign preserved.

peak_Tz=Tz at max(|Tz|)

Peak Impulse

Ns

The maximum impulse value in the dataset

peak_impulse=max(impulse)

Peak Momentum XY

kg*m/s

Calculate the peak momentum in the XY (horizontal) plane during a phase, multiple phases, or a capture: mass * sqrt(Vx^2 + Vy^2). NOTE: the engine passes body_mass as BODYWEIGHT in newtons, so it is divided by g (9.81) to get true mass (kg); momentum is therefore kg*m/s. Returns (peak momentum, time of peak in s).

peak_momentum_xy=max(sqrt(Vx^2 + Vy^2) × dt)

Peak Power

W

The peak instantaneous power (either positive or negative) during a phase, multiple phases, or a capture.

peak_power=max(abs(force × velocity))

Peak Relative Power

W/kg

The peak instantaneous power relative to the system mass (either positive or negative) during a phase, multiple phases, or a capture.

peak_power=max(abs(force × velocity)) / systemmass

Peak RFD

N/s

Peak instantaneous rate of force development

peak(RFD) = max(dF / dt)

Peak to Peak Amplitude

The difference between the maximum and minimum values in the dataset

peak_to_peak_amplitude=max(x) min(x)

Peak Velocity

m/s

The peak velocity (either positive or negative) during a phase, multiple phases, or a capture.

peak_velocity=max(abs(Velocity))

Phase Duration

s

Duration of the phase in seconds: last sample time minus first over the phase's data slice.

phaseDuration=(tlast tfirst) / 1000

Pitch Velocity

kph

Ball velocity at release, manually entered or from external source (e.g., Trackman)

Manual Entry

Positive Impulse

Ns

The impulse during the braking and propulsive phases.

positive_impulse=(F × dt)

Positive Net Impulse

Ns

Net vertical impulse over the propulsive phase (Fz above body weight, integrated directly from the force signal). Because the propulsive phase begins at the countermovement bottom (velocity = 0), this equals mass x takeoff velocity -- the exact determinant of jump height for a vertical jump. Previously summed braking+propulsive, which over-counted the braking impulse that merely reverses the countermovement.

positive_net_impulse=integral((Fz bodyweight) dt) over the Propulsive phase only = mass × takeoff velocity

Positive Net Impulse Asymmetry

%

Asymmetry of each leg's NET positive impulse during the propulsive phase, taken above a flat 50 %BW (half body weight) per leg -- NOT each leg's own stance -- so a standing posture already favoring the stronger leg is captured, not masked. asymmetry = (Right-Left)/max(|R|,|L|)*100.

per_leg_net_impulse=integral((legFz 50)×bodyweightN) over Propulsive (50 %BW = half body weight, flat)
asymmetry=(Right Left)/max(|R|,|L|)×100

Pre-Takeoff Displacement

cm

Horizontal center of mass displacement at the end of the propulsive phase.

Px
Py
Pvector=sqrt(Px^2 + Py^2)

Range

The difference between the maximum and minimum values in the dataset

range=max(x) min(x)

Rate of Force Development

N/s

The rate at which force is developed

RFD=ÎForce / ÎTime

Reaction Time

ms

The duration of the reaction phase.

duration=t2 t1

Reaction Time to Takeoff

ms

The total time taken from the start of the visual stimulus to the takeoff.

reaction_time_to_takeoff=timeof,takeoff timeof,stimulus

Recoil Time

ms

Time from first negative Fy after Delivery contact to the first zero-crossing of Fy back to >= 0.

recoil_time_ms=t(Fy crosses 0 up) t(first Fy < 0 after contact)

Relative Net Impulse

Ns/kg

Calculate the net impulse relative to body mass.

net_impulse=(F × dt) / systemmass

Relative Positive Impulse

Ns/kg

The impulse during the braking and propulsive phases relative to body mass.

positive_impulse=(F × dt) / systemmass

RFD 100

N/s

The rate at which force is developed during the first 100 ms of the test or phase.

RFD=ΔF / Δt

RFD 150

N/s

The rate at which force is developed during the first 150 ms of the test or phase.

RFD=ΔF / Δt

RFD 200

N/s

The rate at which force is developed during the first 200 ms of the test or phase.

RFD=ΔF / Δt

RFD 50

N/s

The rate at which force is developed during the first 50 ms of the test or phase

RFD=ΔF / Δt

Right Force at Minimum Displacement

% BW

The right-side vertical ground reaction force at the instant of peak negative vertical displacement of the system center of mass (Parent).

right_force_at_minimum_displacement=Fz_right(tmin,Pz,parent)

Right Force at Peak Force

% BW

The right ground reaction force applied to the system center of mass at the point of the peak instantaneous ground reaction force applied to the system center of mass.

right_force_at_peak_force=Fz_right(tpeak,parent)

RSI

Calculate the Reactive Strength Index (RSI).

RSI=flighttime / (contacttime or timeto,takeoff)

Skewness

A measure of the asymmetry of the data distribution

skewness=(1/n) × sum((x mean)^3) / (stddev^3)

Standard Deviation

A measure of the amount of variation or dispersion in the dataset

std_dev=sqrt((1/n) × sum((x mean)^2))

Stride Angle

deg

Stride angle in degrees, measured from straight toward home plate (0 deg). Built from the same stride vector as strideLength/strideWidth: forward length = (lead-foot COPy at Delivery peak Fz - back-foot COPy at Loading peak Fz) + plate separation (140.26 cm); lateral width = COPx delta. Angle = atan2(width, length). 0 deg = the lead foot lands directly in line with home; the sign indicates which side of the line the stride falls (open vs closed).

strideAngle=degrees( atan2( strideWidth, strideLength ) )

Stride Length

cm

Forward distance between back-foot COP at Loading peak Fz and lead-foot COP at Delivery peak Fz.

stride_length_cm=COPydelivery COPyloading

Stride Type

ms

Stride Type: (forward-drive END) - (delivery-phase START) in ms. The forward-drive END is the last time the drive-plate Fy is >= 3% BW (the drive-toward-home push), with the vertical (Fz) condition intentionally dropped - so the boundary tracks when forward drive stops, not when the drive foot finally unloads. Positive = TERRESTRIAL (drive still pushing after front-foot contact, overlap); negative = AERIAL (forward drive ended before contact, flight gap). Uses the same drive-movement detection + Fz>80%BW qualifier as driveImpulse to find the drive; delivery start = first time zone_index 0 is in phase 'Delivery'.

strideStyle=(drivewindow end ms) (deliveryphase start ms)
+ = terrestrial, = aerial

Swing Stride Angle

deg

Stride direction as a JSON value {angle, direction, signedDeg}: angle = magnitude in degrees off the straight-ahead line (same stride vector as swingStrideLength/swingStrideWidth, landing COP averaged +-30 ms around the force-vector peak); direction = open/closed resolved through the batter's handedness (inlined canon rule: sign of the mean front Fx over a +-25 ms window centred on the peak of the Fy/Fz resultant, Fire not consulted), null when handedness cannot be resolved (fewer than 2 samples in the +-25 ms window, or a non-finite or exactly-zero mean); signedDeg = the raw signed angle for machines. Back-foot COP = occupancy centroid of the rear footprint over Gather..RW start (outlier-rejected, 5 mm cells, dwell-unbiased) when a Gather phase exists; legacy loading-peak COP otherwise.

{'angle': |atan2(width, length)| deg, 'direction': open/closed via handedness, 'signedDeg': signed}

Swing Stride Length

cm

Distance (cm) between lead-foot COPy at landing peak and back-foot COPy at the loading peak before it, measured in the group-global Y frame. Landing COP averaged over +-30 ms around the front force-vector peak (single-sample COP is jitter-prone at touchdown). Back-foot COP = occupancy centroid of the rear footprint over Gather..RW start (outlier-rejected, 5 mm cells, dwell-unbiased) when a Gather phase exists; legacy loading-peak COP otherwise.

stride_length_cm=(COPylanding COPyloading) × 100 + originoffset,landing / 10

Swing Stride Tempo

ms

Time between peak force vectors on the back-foot plate (zone_index 1) and the lead-foot plate (zone_index 0).

tempo_ms=tlead,peakF tback,peakF

Swing Stride Width

cm

Lateral (X) COP displacement between the two plates at their respective peak force vectors during the Swing. Landing COP averaged over +-30 ms around the front force-vector peak (single-sample COP is jitter-prone at touchdown). Back-foot COP = occupancy centroid of the rear footprint over Gather..RW start (outlier-rejected, 5 mm cells, dwell-unbiased) when a Gather phase exists; legacy loading-peak COP otherwise.

stride_width_cm=(COPxzone1,peakF COPxzone0,peakF) × 100

System Weight

N

The body mass of the individual

system_weight=weight

Takeoff Velocity

m/s

Velocity of the center of mass at the instant of take-off.

takeoff_velocity=velocity at time of takeoff

Third Quartile

The value below which the third quartile of the data falls

Q3=0.75 × (n + 1)

Time to Peak Force

ms

The total time taken from the initiation of movement to the peak force.

time_to_peak_force=timeof,peak,force timeof,initial,movement

Time to Takeoff

ms

The total time taken from the initiation of movement to the instant of take-off.

time_to_takeoff=timeof,takeoff timeof,initial,movement

Trend

The overall direction of the data over time

trend=(y2 y1) / (x2 x1)

True Quickness

ms

Time from the start of the visual stimulus until the estimated center of mass displacement reaches 61 cm (~2 ft).

reactive_61cm_displacement_time=timeat,61cm,displacement timeof,stimulus

Variance

A measure of how far a set of numbers is spread out from their average value

variance=(1/n) × sum((x mean)^2)

Vertical Leap

cm

The vertical distance the athlete jumps

vertical_leap=(initialvelocity^2 × sin(angle)^2) / (2 × g)