IMRPhenomHM phase-offset component
Scope and status
hm.phase.offsets.eq9.v1 specifies London's three-branch phase composition
for the six positive-frequency higher modes, conditional on a supplied smooth
\((2,2)\) carrier phase and QNM frequencies. It is a research component of the
provisional IMRPhenomHM family,
not a complete waveform qualification.
Inputs, conventions, and options
\(f\), \(f_0^\phi\), \(f_{\ell m}^{\rm RD}\), and \(f_{22}^{\rm RD}\) use positive, dimensionless \(Mf\) units, with \(0<f_0^\phi<f_{\ell m}^{\rm RD}\) and \(f_{22}^{\rm RD}>2f_0^\phi/m\). The component accepts a supplied carrier phase \(\phi_{22}(g)\) in radians; the scalar reference contains no PhenomD fits or QNM table. Each join value belongs to the lower-frequency branch. The paper chooses \(f_0^\phi=0.014 f_{\ell m}^{\rm RD}/f_{22}^{\rm RD}\); the tests use this value. The phase origin is fixed by the printed low-frequency PN/symmetry offset.
Mathematics and components
London et al., arXiv:1708.00404v4, Methods Eqs. (3), (5)–(8) give \(\phi_{\ell m}=\kappa\phi_{22}[g(f)]+\Delta_{\ell m}\). The frequency-map component specifies \(g\): for the PhenomD phase, its slopes are \(2/m\), \(s=(f_{22}^{\rm RD}-2f_0^\phi/m)/ (f_{\ell m}^{\rm RD}-f_0^\phi)\), and \(f_{22}^{\rm RD}/f_{\ell m}^{\rm RD}\). Their reciprocals are \(\kappa_0,\kappa_1,\kappa_2\). With \(g_0=2f_0^\phi/m\), \(Q=f_{22}^{\rm RD}\), and \(\Delta_0=\pi[3\ell+((\ell+m)\bmod 2)-2]/2\), continuity fixes
The one-sided phase derivatives agree at both joins because \(\kappa_i g_i'=1\) for all three branches, assuming a differentiable carrier. The high-frequency map here is the paper's PhenomD-specific multiplicative Eq. (8), rather than its earlier additive map. The high offset is the continuity value implied by Eqs. (3), (6)–(8) after that substitution.
The component ID retains its historical eq9 label so existing receipts still
resolve; the offsets are Eq. (7) in the numbered London PDF.
| Component ID/version | Source | Variant | Status | Scalar reference | Torch | JAX | Maintained check |
|---|---|---|---|---|---|---|---|
hm.phase.offsets.eq9.v1 |
London Methods Eqs. (3), (5)–(8) | supplied carrier/QNM | executable, conditional | mapped_phase |
_production_mapped_phase_c1 |
_production_mapped_phase_c1 |
test_imrphenomhm_phase_offsets_math_reference.py |
Implementation mapping
The independent mpmath evaluator is
src/diffgw_reference/imrphenomhm_phase_offsets.py; the tests call the live
_production_mapped_phase_c1 helpers in Torch and JAX. Neither frontend
imports the scalar reference. The frontend helpers are called by the public HM
assembly, but this check supplies a polynomial carrier to isolate the offset
algebra from PhenomD calibration and QNM fits. The separate
ringdown phase-shape component covers the
London Eq. (9) modification of PhenomD Eq. (14).
Evidence and limitations
The hand-reduced low-branch value, independent 70-digit scalar values around both joins, and symbolic derivatives with respect to all four frequency inputs and symbolic one-sided frequency derivatives at both joins are checked for the five non-22 modes in both CPU FP64 frontends. This tests the source transcription and sampled implementation agreement. The paper specifies \(f_0^A=0.018 f_{\ell m}^{\rm RD}/f_{22}^{\rm RD}\) and \(f_0^\phi=0.014 f_{\ell m}^{\rm RD}/f_{22}^{\rm RD}\), whereas the public Torch/JAX assembly currently passes the opposite assignments. These are distinct source conventions: Khan et al.'s PhenomD carrier joins amplitude at \(Mf=0.014\) and phase at \(Mf=0.018\), while London explicitly optimized separate higher-mode mapping transitions. The public assembly uses the PhenomD pair. This component gate supplies London's printed phase transition and therefore does not qualify the public assembly's transition choice. It also does not establish amplitude scaling, fitted QNM values, London Eq. (9) carrier correction, whole-mode binary agreement, or physical accuracy across the model domain.
Reproduce the checks
With the reference, Torch, JAX, and test extras installed, run
JAX_ENABLE_X64=1 JAX_PLATFORMS=cpu python -m pytest -q
tests/test_imrphenomhm_phase_offsets_math_reference.py --reference-device=cpu
-ra. The strict mathematical-reference CI job discovers
this file. A changed equation or convention needs a new component version and
reviewed source/fixture update.