Skip to content

Adding support for SEOBNRv4EHM, SEOBNRv4HM, NRSur7dq4 networks#258

Draft
nihargupte-ph wants to merge 42 commits into
mainfrom
eccentricity-clean
Draft

Adding support for SEOBNRv4EHM, SEOBNRv4HM, NRSur7dq4 networks#258
nihargupte-ph wants to merge 42 commits into
mainfrom
eccentricity-clean

Conversation

@nihargupte-ph

@nihargupte-ph nihargupte-ph commented Oct 8, 2024

Copy link
Copy Markdown
Collaborator

This PR adds support for SEOBNRv4EHM, SEOBNRv4HM and NRSur7dq4. In particular it implements TD conditions for waveform modes so that we can use the synthetic phase.

I removed most things not related to waveform generation from the PR to keep it clean (dingo_pipe injections which still needs to get merged)

@nihargupte-ph nihargupte-ph marked this pull request as draft October 8, 2024 13:11
nihargupte-ph added a commit that referenced this pull request Jul 6, 2026
Enable the NRSur7dq4 precessing surrogate in the synthetic-phase mode path
(WaveformGenerator.generate_hplus_hcross_m), so it can be used with the phase
treated as an extrinsic parameter.

NRSur7dq4 (approximant 93) is a time-domain, precessing model whose modes are
generated via SimInspiralChooseTDModes, exactly like SEOBNRv4PHM. Enabling it
is therefore just adding it to the SimInspiralChooseTDModes branch of
generate_TD_modes_L0; the existing per-mode taper (taper_td_modes_in_place)
then handles it like the other TD approximants. Measured against the direct
SimInspiralFD polarizations across NRSur7dq4's region of validity, this default
taper gives a mode-reconstruction mismatch of ~1e-4 (tail up to ~1e-3) under
phase shifts -- as good as or better than a common-window or stepped-back
conditioning, which only help at fixed zero phase shift.

Focused extraction of the NRSur7dq4 support from PR #258 (dropping
SEOBNRv4EHM/SEOBNRv4HM and unrelated changes; #258's own NRSur7dq4 tapering
branch was dead code due to a "NRsur7dq4" typo, so it also used this default
taper in practice).

Test: tests/gw/waveform_generator/test_wfg_m.py adds NRSur7dq4 to the
mode-reconstruction test (reconstructed vs. direct polarizations), sampling a
precessing prior whose entire support lies inside the surrogate's validity
(chirp-mass floor of 60 so f_min = 10 Hz is always reachable). The test is
skipped when the NRSur7dq4 surrogate data file is not installed.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
nihargupte-ph added a commit that referenced this pull request Jul 10, 2026
Enable the NRSur7dq4 precessing surrogate in the synthetic-phase mode path
(WaveformGenerator.generate_hplus_hcross_m), so it can be used with the phase
treated as an extrinsic parameter.

NRSur7dq4 (approximant 93) is a time-domain, precessing model whose modes are
generated via SimInspiralChooseTDModes, exactly like SEOBNRv4PHM. Enabling it
is therefore just adding it to the SimInspiralChooseTDModes branch of
generate_TD_modes_L0; the existing per-mode taper (taper_td_modes_in_place)
then handles it like the other TD approximants. Measured against the direct
SimInspiralFD polarizations across NRSur7dq4's region of validity, this default
taper gives a mode-reconstruction mismatch of ~1e-4 (tail up to ~1e-3) under
phase shifts -- as good as or better than a common-window or stepped-back
conditioning, which only help at fixed zero phase shift.

Focused extraction of the NRSur7dq4 support from PR #258 (dropping
SEOBNRv4EHM/SEOBNRv4HM and unrelated changes; #258's own NRSur7dq4 tapering
branch was dead code due to a "NRsur7dq4" typo, so it also used this default
taper in practice).

Test: tests/gw/waveform_generator/test_wfg_m.py adds NRSur7dq4 to the
mode-reconstruction test (reconstructed vs. direct polarizations), sampling a
precessing prior whose entire support lies inside the surrogate's validity
(chirp-mass floor of 60 so f_min = 10 Hz is always reachable). The test is
skipped when the NRSur7dq4 surrogate data file is not installed.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant