The shell is integrated frame-by-frame under gravity, quadratic
air drag opposing its velocity, and a steady crosswind pushing it out
of the vertical firing plane. The dashed grey curve is the ideal
drag-free parabola for comparison — the gap between the two shows
exactly how much energy drag removes from the flight. The small
side offset strip along the top of the chart traces the sideways
(crosswind) drift as the shell travels downrange.
a = g + wind_accel − (Cd·ρ·A / 2m) · |v| · v
x(t+dt) = x(t) + v(t)·dt
range = x at the moment y returns to 0
- Launch angle — elevation of the barrel above the horizontal; range peaks near 45° only in vacuum, lower with drag.
- Muzzle velocity — initial speed leaving the barrel.
- Drag coefficient — how strongly air resistance decelerates the shell; 0 reproduces the vacuum parabola exactly.
- Crosswind — lateral wind that deflects the shell sideways over the flight, shown as the drift-strip curving away from centre.
This is the same numerical approach real fire-control computers use:
since drag makes the equations of motion have no closed-form solution,
they step the trajectory forward in small time increments rather than
using the textbook range formula.