ballistic-solver

Interactive demo · Native C++ package · Python/PyPI · Game-engine bindings

ballistic-solver is a native intercept solver for moving targets under gravity, quadratic drag, and optional wind. The current package uses a coordinate-residual Gauss–Newton solver; this page keeps a separate browser-based implementation for interactive use.

Interactive Solver

Enter relative position, relative velocity, and muzzle speed to compute low/high-arc launch angles and inspect the trajectories. This site demo uses its own JavaScript and Cloudflare Pages Function implementation: RK4 drag/wind integration, closest-approach residual, and an LM solve.

relative position [m]
relative velocity [m/s]
conditions
wind [m/s]
numerics

Coordinates: x forward, y right, z up. The HTTP API uses RK4 drag/wind + closest-approach residual + LM solver.

low arc -

waiting for input

high arc -

waiting for input

solve status

ready

low arc high arc target

Package and hardware

  • The native package exposes a modern C++ API, stable C ABI, Python/PyPI, and game-engine bindings.
  • The earlier auxiliary-residual research path remains available as solve_aux for comparison and reproducibility.
  • The native ARM64 solver has also been integrated with Rock 5B vision input and STM32 closed-loop actuator control.