Demonstrate browser-native BSSN to ψ4 to strain h(t) extraction with substrate-tracked phase accuracy validated against an SXS reference waveform, at precision suitable for LISA-band parameter estimation.
| Criterion | Target |
|---|---|
| Stable BBH inspiral | Evolve fiducial puncture configuration (q=1, aligned spins) on 2563 GPU resident for at least 5 orbits with Hamiltonian L2 bounded and zero regulator fires |
| Strain extraction | ψ4 at three extraction radii, −2Yℓm decomposition for (ℓ, m) = (2, ±2), Richardson-extrapolated to scri-plus, converted to h+ and h× via double time integration |
| Cross-validation | Cumulative phase drift versus SXS:BBH:0305 reference ≤ 0.1 rad over inspiral; GeoNum trust band reported per orbit |
Update (2026-05): the Weyl ψ4 extraction operator and its
−2Yℓm projection are now
implemented and validated: ψ4 = −(Eij − i Bij) m̄i m̄j
built from the electric/magnetic Weyl parts of the 3+1 data
(wasm/src/bssn/weyl.rs), reusing the engine's physical Ricci tensor. It is
validated to ~2×10−6 relative error against an
analytic linearized transverse-traceless wave - the expected 4th-order finite-difference
truncation - in the native test wasm/tests/bssn_weyl.rs, with a JS twin
(scripts/test-weyl.mjs 7/7, scripts/test-gw.mjs 15/15) covering the
projection → strain → quasinormal-ringdown chain (recovers Leaver
Mω = 0.373672 − 0.088962i to 10−16).
Surfaced (2026-05): binary runs on the GPU resident path now emit the real
mode coefficients Cℓm(t) - at each snapshot the resident state is read back
(download_state), reconstructed, and projected. Verified on hardware (nvidia
blackwell): a 643 Brill-Lindquist run returns finite, time-varying modes with the
physical head-on structure - (2,±2) dominant, (2,0) sub-dominant, (2,±1) ≈ 0
by axisymmetry. Remaining: SXS cross-validation of a calibrated merger
waveform (Task B.4), which is gated by evolution accuracy - a separate axis from the now-validated
extractor.
Standard NR practice (Boyle and Mroue 2009; Reisswig and Pollney 2011). On the extraction sphere of radius r:
ψ4(ℓm)(t, r) = ∮ ψ4(t, r, θ, φ) [−2Yℓm(θ, φ)]* dΩ
For the dominant (2, ±2) mode of a non-precessing binary this is a single complex scalar per (t, r).
wasm/src/bssn/params.rs:327-335 to return
WaveExtractionMode {time, r_ext, ell, m, psi4_real, psi4_imag} array.wasm/src/gpu/bssn/engine.rs);
per-snapshot cost is O(Nquad × Nmodes), negligible against RK4.Scope: approximately 300 lines of WGSL plus Rust. Schedule: two weeks.
No code path for ψ4 to strain conversion exists. Analytic waveform
templates (PhenomD, TaylorF2) ship in wasm/src/ligo/templates/ but they are
parametric models, not extractions from a numerical evolution.
Standard fixed-frequency integration (Reisswig and Pollney 2011, eq. 4):
h+ − i h× = ψ4 / (−ω2 e2iφ), integrated twice in time.
Implemented via FFT in the frequency domain, with a 1 / (−4π2f2) factor at frequencies above a chosen cutoff and a polynomial decay window below to stabilize the f → 0 divergence (Pollney et al. 2011, Sec. III.A).
wasm/src/ligo/strain_from_psi4.rs.wasm/src/gpu/fft.rs GPU shader already used by the LIGO matched-filter pipeline.Strain {time, h_plus, h_cross, mode} per extraction radius.Scope: approximately 150 lines of Rust, plus FFT shader reuse. Schedule: one week.
Brill-Lindquist (wasm/src/gpu/bssn/init_data.rs:42, 51) and Bowen-York
(init_data.rs:43, 53, 283, 324-327) initial data are implemented. The
configuration parameters in bssn/params.rs:113-147 wire through. No
demonstrated multi-orbit run is currently pinned in the test suite.
| Parameter | Value |
|---|---|
| Mass ratio q | 1 (equal mass) |
| Spins | χ1 = χ2 = 0 (aligned, non-spinning) |
| Initial separation | 12 M |
| Bowen-York linear momentum | Py = ±0.08 M (quasi-circular per Cook 2000) |
| Grid | 2563 GPU resident |
| Box length | 24 M |
| Extraction radii | 30, 50, 75 M |
| Duration | 1200 M coordinate time, approximately 5 orbits |
| Time step | dt = 0.1 M, CFL = 0.5 |
| Total RK4 steps | approximately 12,000 |
| Metric | Acceptance gate |
|---|---|
| Hamiltonian L2 growth over 5 orbits | < 104× |
| Puncture trajectories | Quasi-circular; no spiral-out or numerical divergence |
| Sub-grid algebraic regulator fires | 0 on physical data |
| ψ4(22)(t) | Expected inspiral chirp shape |
Scope: the code exists; this is executing the test, capturing results, and characterizing failure modes. Schedule: two weeks including iteration.
wasm/src/ligo/templates/nrsur.rs:33 returns zero amplitude. Implementation
is gated on bundling an SXS reference set.
SXS:BBH:0305 (q = 1, χeff = 0, approximately 13 orbits) as the Phase I reference. Public catalog, widely cited, validates the (2, ±2) mode against a published numerical waveform.
data.black-holes.org.|Δφ| ≤ 0.1 rad over the inspiral. For LISA-band parameter estimation the sensitivity requirement is |Δφ| < 0.1 / SNR, so 0.1 rad is comfortably inside the requirement for SNR ≤ 1000 (above the typical extreme-mass-ratio inspiral SNR).
Schedule: two weeks including HDF5 ingest, alignment, and metric calculation.
Drift is measured on snapshots post-facto in
wasm/src/drift_escalator.rs:214: drift = ham_l2.max(mom_l2).
It is not propagated through the four RK4 substages.
Mirror the existing dual-track pattern at
wasm/src/dft/geonum_dft.rs:463-697. That module runs an f64 SCF loop and a
GeoNum SCF loop in parallel; per-element Fock drift and per-energy trust are reported on
the final state.
geonum_dft.rs pattern.geonum_evaluate.{trust_per_substage: [...], worst_substage: int}.Scope: approximately 100 lines extending engine code plus 50 lines telemetry. Schedule: one week.
| Month | Tasks | Deliverable |
|---|---|---|
| 1 | B.1 (2 wk) + B.5 (1 wk) | Wave-extraction module with substrate-validated trust bands |
| 2 | B.2 (1 wk) + B.3 (2 wk) | End-to-end BSSN to strain pipeline; first BBH inspiral run |
| 3 | B.4 (2 wk) + final report (2 wk) | Validated waveform with phase-drift metric; Phase II proposal |
Each task above extends an existing, tested GDBS module by a small, well-bounded amount. The substrate (BSSN evolution, GPU dispatch, GMDBS storage, GeoNum precision) is shipped. The work is at the interface between the substrate and the LISA-specific deliverable.
| Item | Why deferred |
|---|---|
| Multi-extraction-radius Richardson extrapolation to scri-plus (Boyle and Mroue 2009, Sec. V) | Single-radius extraction at 75 M is sufficient for the Phase I phase-drift bound; scri-plus extrapolation is a Phase II refinement |
| High-mass-ratio configurations (q > 4) | Phase I focuses on equal mass aligned spin; extreme-mass-ratio inspirals require either substantially higher resolution or perturbation-theory hybrids (Effective One Body), explicit Phase II scope |
| Precessing-spin BBH | Phase I uses χeff = 0; the off-axis modes become load-bearing and the decomposition basis grows substantially |
| LISA detector PSD folding and matched-filter sensitivity | The deployed analytic LIGO pipeline (Section A.5) handles the matched-filter side; LISA-band extension is Phase II |