A 2.4-tonne two-seater hovers, flips and launches on ten jets of compressed
air. Every 25 ms the controller asks for a force and a moment, a constrained solver decides how
hard each nozzle pushes, and on/off valves turn that into pulses. The maths is on screen while it
flies: the 6 × 10 effectiveness matrix, the allocation and the valve timing of every nozzle. Free,
in the browser, nothing to install.
What the model computes
A rigid body in six degrees of freedom, integrated every 0.25 ms with a quaternion for the
attitude, four wheels on springs (on the runway and up a 27 m curved ramp, held on by a
downforce fan), drag and an air tank. Each cold-gas nozzle gives
T = CF At pc at 40 bar (specific impulse about 63 s).
Four rear nozzles push 20 kN each, four lift nozzles under the corners 12 kN, two side nozzles
6 kN.
Which nozzle fires
The ten thrusts and the wrench are linked by τ = B u: six equations, ten unknowns. The
pseudo-inverse answer often asks a nozzle for negative thrust, which no nozzle can give. The
car instead solves a bounded weighted least-squares problem with an active-set method: attitude
first, then lift, then horizontal force, using the least air.
From thrust to valve timing
The valves only open or close. Thrust becomes a duty cycle D = u / Tavail,
and the valve stays open for ton = D · 25 ms. The shortest pulse is 3 ms;
below that a sigma-delta carry saves the impulse for the next period. The oscilloscope under the
view shows every pulse.
What it deliberately is not
An educational model. The 80 kN of the rear nozzles and the 0.81 s to 60 mph are the
figures quoted for the real car; everything else (mass, nozzle positions, tank, valves) is an
estimate. The simulator gets 0.82 s. With a real 250-litre tank it can hover for only about
5 seconds.