The shell is treated as a 45 kg, 155 mm point mass. Every physics step sums three forces — gravity, quadratic aerodynamic drag, and the Magnus (spin-lift) force from the shell's rifling spin — and integrates the resulting acceleration with a fixed-substep semi-implicit Euler scheme for numerical stability at high spin/velocity.
m·(dv/dt) = m·g + F_drag + F_magnus
F_drag = -½·ρ·Cd·A·|v|·v
F_magnus = S·(ω × v)
ρ = 1.225 kg/m³ (air) or 0 (vacuum)
Cd = 0.29, A = π·r², r = 0.0775 m
ω = spin rate about the vertical axis
- Muzzle velocity sets initial speed |v₀| at launch.
- Elevation angle sets the launch angle above horizontal.
- Spin rate sets ω, driving the Magnus force that curves the path sideways.
- Standard Air / Vacuum toggles ρ, switching drag on or off.
- Fire launches a new shell; the faded arc from the previous shot stays visible for comparison.
Real fire-control computers solve the same drag + Magnus + Coriolis equations, corrected with radar-tracked muzzle velocity, to place artillery and naval shells on target at ranges of tens of kilometres.