← Selected work

02 / Scientific computing

Gateway.

The geometry of gravitational transport.

  • Rust
  • WebAssembly
  • Three.js
  • Numerical methods
Actual Gateway viewport showing a computed Sun-Jupiter manifold family
Actual application capture · Try the live application

The application

The geometry of gravitational transport.

Gateway grew from an interest in the structures that organise motion in a gravitational system. The visualisation is a way into the computation: choose a system, change a parameter and inspect the resulting geometry.

What I built

The original Rust engine contains adaptive integration, periodic-orbit shooting, continuation, variational dynamics and stable/unstable manifold seeds. It compiles to WebAssembly, runs behind a cancellable worker and supplies owned samples to a separate rendering layer.

Three decisions

01

Define the physical model precisely.

The overview uses approximate Keplerian orbital elements. Local experiments use the planar circular restricted three-body problem. Keeping those models separate makes the geometry interpretable without implying a full Solar System simulation.

02

Keep numerical authority out of the renderer.

The engine works in double precision. Worker scheduling owns cancellation and data transfer. The scene converts and rebases the samples for drawing, so an attractive picture is not also the source of the calculation.

03

Check against an independent implementation.

Recorded fixtures are compared with independently written SciPy DOP853 calculations. Closure, Jacobi drift and stability diagnostics provide more useful evidence than a smooth-looking orbit alone.

A view underneath

Gateway / a view underneath

The system behind
the surface.

  1. 01React experiment controls
  2. 02Rust numerical engine
  3. 03WASM worker ownership
  4. 04Owned f64 trajectory samples
  5. 05Three.js scene & diagnostics
Inspect the architecture

Evidence & boundaries

The 22 October 2026 validation record documents four Earth-Moon and Sun-Jupiter fixtures compared against an independent SciPy implementation. The recorded one-period state differences are below 6 × 10⁻¹² for those fixtures. The report states the tolerances, time windows, diagnostics and limitations.

Read the verification record
Current limits

The local laboratory uses an idealised planar circular three-body model. It does not implement halo orbits, a coupled eight-planet N-body model, FTLE fields or optimised mission transfers. Long chaotic trajectories can diverge even while energy remains accurate. Hardware-GPU and physical-phone performance are not certified by the recorded software-rendering sample.

What I take from it

Scientific visualisation is most useful when the assumptions and numerical evidence are as inspectable as the image.

Next project / 03Search Atlas