Skip to content

NSBH branch amplitude factors gate — 27 September 2026

The frozen specification was committed as 3f0d8f1 before native comparison. It transcribes Thompson et al. (2020), Appendix A Eqs. (20)–(24), (30), and the three dimensionless factors in Table I. The half factor in Eq. (30) is explicit. The scalar reference uses paper decimals and high-precision arithmetic; no LAL source or binary waveform serves as a component oracle.

The frozen gate covers 30 controlled cases at \(\Lambda=0,0.5,1,2,800\), including all four classes and \(f_{\rm tide}=f_{\rm RD}\), plus 180 cases composed from the existing independent disruption and torus references. All 210 cases passed the 70-versus-90-digit scalar stability limit \(10^{-30}\). Torch and JAX CPU FP64 passed every frozen native comparison:

Maximum error Torch JAX Frozen limit
Adjusted ringdown frequency, relative \(2.237\times10^{-16}\) \(2.237\times10^{-16}\) \(2\times10^{-13}\)
Fit coordinates and branch factors, absolute \(3.331\times10^{-16}\) \(3.331\times10^{-16}\) \(2\times10^{-12}\)

On len, the command JAX_ENABLE_X64=1 PYTHONPATH=src /home/xangma/repos/diffgw-worktrees/xas-whole-waveform-gate/.venv/bin/python -m pytest -q -s tests/test_nsbh_branch_amplitude_fits.py tests/test_nsbh_branch_reference.py tests/test_nsbh_torus_reference.py tests/test_nsbh_disruption_reference.py tests/test_nsbh_clean_amplitude.py tests/test_clean_room_nsbh.py tests/parity/test_nsbh_parity.py ran from /home/xangma/tmp/diffgw-nsbh-branch-fits-20260927 on Linux x86-64 CPU FP64. The log is pytest.log in that directory. The combined fit and neighboring NSBH run passed 101/101 in 74.30 s, with no skips or expected failures. The test was subsequently renamed to tests/test_nsbh_branch_amplitude_fits_math_reference.py for the strict CI gate; the command above records the name used for this run.

Environment: Python 3.12.3, Torch 2.14.0+cpu, JAX 0.11.2, NumPy 2.5.3, mpmath 1.3.0, pytest 9.1.1. This qualifies the branch factors at supplied \(f_{\rm RD}\); it does not qualify the remnant/QNM provider, Table I joining frequencies, Eq. (26)/(29) corrections, amplitude windows, assembled waveform, or physical calibration.