LALSimulation  5.4.0.1-fe68b98
LALSimIMRPhenomX_PNR_beta.h File Reference

Prototypes

REAL8 IMRPhenomX_PNR_GeneratePNRBetaAtMf (REAL8 Mf, const IMRPhenomX_PNR_beta_parameters *betaParams, IMRPhenomXWaveformStruct *pWF, IMRPhenomXPrecessionStruct *pPrec, IMRPhenomXWaveformStruct *pWF_SingleSpin, IMRPhenomXPrecessionStruct *pPrec_SingleSpin)
 This function evaluates Eqs. More...
 
REAL8 IMRPhenomX_PNR_GenerateMergedPNRBetaAtMf (REAL8 Mf, const IMRPhenomX_PNR_beta_parameters *betaParams, IMRPhenomXWaveformStruct *pWF, IMRPhenomXPrecessionStruct *pPrec, IMRPhenomXWaveformStruct *pWF_SingleSpin, IMRPhenomXPrecessionStruct *pPrec_SingleSpin)
 This function generates beta with the tuned angles and PN expressions blended during merger-ringdown. More...
 
REAL8 IMRPhenomX_PNR_GeneratePNRBetaNoMR (REAL8 Mf, IMRPhenomXWaveformStruct *pWF, IMRPhenomXPrecessionStruct *pPrec)
 This function evaluates only the rescaled inspiral beta given in Eq. More...
 
REAL8 IMRPhenomX_PNR_GenerateRingdownPNRBeta (IMRPhenomXWaveformStruct *pWF, IMRPhenomXPrecessionStruct *pPrec)
 We evaluate beta at the final Mf_beta_upper connection frequency to approximate the final value of beta during ringdown. More...
 
REAL8 IMRPhenomX_PNR_GetPNBetaAtFreq (REAL8 Mf, const IMRPhenomX_PNR_beta_parameters *betaParams, IMRPhenomXWaveformStruct *pWF, IMRPhenomXPrecessionStruct *pPrec, IMRPhenomXWaveformStruct *pWF_SingleSpin, IMRPhenomXPrecessionStruct *pPrec_SingleSpin)
 A wrapper to produce either the NNLO or MSA beta depending on the IMRPhenomXPrecVersion. More...
 
REAL8 IMRPhenomX_PNR_GetPNBetaAtFreq_fulltwospin (REAL8 Mf, IMRPhenomXWaveformStruct *pWF, IMRPhenomXPrecessionStruct *pPrec)
 A wrapper to produce either the NNLO or MSA beta depending on the IMRPhenomXPrecVersion. More...
 
REAL8 IMRPhenomX_PNR_PNWaveformBetaWrapper (REAL8 Mf, REAL8 MSA_beta, IMRPhenomXWaveformStruct *pWF, IMRPhenomXPrecessionStruct *pPrec)
 A wrapper to generate the "waveform" PN beta from Eq. More...
 
REAL8 IMRPhenomX_PNR_chi_calc (REAL8 m1, REAL8 L, REAL8 J0, REAL8 L0, REAL8 chi_parr, REAL8 beta)
 The magnitude of the effective total spin is computed from the total and orbital angular momenta, J0 and L0 resp., along with the opening angle, beta, between them. More...
 
REAL8 IMRPhenomX_PNR_PNWaveformBeta (REAL8 Mf, REAL8 iota, REAL8 m1, REAL8 m2, REAL8 chi, REAL8 costheta)
 The "waveform" PN beta from Eq. More...
 
int IMRPhenomX_PNR_precompute_beta_coefficients (IMRPhenomX_PNR_beta_parameters *betaParams, IMRPhenomXWaveformStruct *pWF, IMRPhenomXPrecessionStruct *pPrec)
 This function evaluates the Ansatz coefficients of beta outlined in Eq. More...
 
REAL8 IMRPhenomX_PNR_beta_rescaling_1 (REAL8 Mf, REAL8 beta1, REAL8 beta2, REAL8 dbeta1, REAL8 dbeta2)
 These three functions produce the inspiral rescaling of beta described in Sec. More...
 
REAL8 IMRPhenomX_PNR_beta_rescaling_2 (REAL8 Mf, REAL8 beta1, REAL8 beta2, REAL8 dbeta1, REAL8 dbeta2)
 
REAL8 IMRPhenomX_PNR_rescale_beta_expression (REAL8 Mf, const IMRPhenomX_PNR_beta_parameters *betaParams)
 
REAL8 IMRPhenomX_PNR_MR_beta_expression (REAL8 Mf, const IMRPhenomX_PNR_beta_parameters *betaParams)
 These four functions produce the MR Ansatz of beta described in Sec. More...
 
REAL8 IMRPhenomX_PNR_MR_dbeta_expression (REAL8 Mf, const IMRPhenomX_PNR_beta_parameters *betaParams)
 expression for first derivative of beta in merger-ringdown regime More...
 
REAL8 IMRPhenomX_PNR_MR_ddbeta_expression (REAL8 Mf, const IMRPhenomX_PNR_beta_parameters *betaParams)
 expression for second derivative of beta in merger-ringdown regime More...
 
REAL8 IMRPhenomX_PNR_MR_dddbeta_expression (REAL8 Mf, const IMRPhenomX_PNR_beta_parameters *betaParams)
 expression for third derivative of beta in merger-ringdown regime More...
 
int IMRPhenomX_PNR_BetaConnectionFrequencies (IMRPhenomX_PNR_beta_parameters *betaParams)
 Here we work through the construction of the connection frequency for beta, outlined in Sec. More...
 
COMPLEX16IMRPhenomX_PNR_three_inflection_points (const IMRPhenomX_PNR_beta_parameters *betaParams)
 Compute the three roots of a depressed cubic given by Eq. More...
 
COMPLEX16IMRPhenomX_PNR_two_inflection_points (const IMRPhenomX_PNR_beta_parameters *betaParams)
 Compute the two roots of a depressed cubic given by Eq. More...
 
REAL8 IMRPhenomX_PNR_single_inflection_point (const IMRPhenomX_PNR_beta_parameters *betaParams)
 Compute the roots of a depressed cubic given by Eq. More...
 
int IMRPhenomX_PNR_beta_connection_parameters (IMRPhenomX_PNR_beta_parameters *betaParams, IMRPhenomXWaveformStruct *pWF, IMRPhenomXPrecessionStruct *pPrec, IMRPhenomXWaveformStruct *pWF_SingleSpin, IMRPhenomXPrecessionStruct *pPrec_SingleSpin)
 This function combines several functions together to compute the connection frequencies and the inspiral rescaling. More...
 
REAL8 IMRPhenomX_PNR_arctan_window (REAL8 beta)
 Utility function to compute the arctan windowing described in Eq. More...
 
UINT4 IMRPhenomX_PNR_AttachMRBeta (const IMRPhenomX_PNR_beta_parameters *betaParams)
 Determine whether to attach the MR contributions to beta. More...
 

Go to the source code of this file.

Data Structures

struct  IMRPhenomX_PNR_beta_parameters
 

Function Documentation

◆ IMRPhenomX_PNR_GeneratePNRBetaAtMf()

REAL8 IMRPhenomX_PNR_GeneratePNRBetaAtMf ( REAL8  Mf,
const IMRPhenomX_PNR_beta_parameters betaParams,
IMRPhenomXWaveformStruct pWF,
IMRPhenomXPrecessionStruct pPrec,
IMRPhenomXWaveformStruct pWF_SingleSpin,
IMRPhenomXPrecessionStruct pPrec_SingleSpin 
)

This function evaluates Eqs.

60 and 61 of arXiv:2107.08876.

Parameters
Mfgeometric frequency
betaParamsbeta parameter struct
pWFPhenomX waveform struct
pPrecPhenomX precession struct
pWF_SingleSpinPhenomX waveform struct with approximate single spin
pPrec_SingleSpinPhenomX waveform struct with approximate single spin

Definition at line 50 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_GenerateMergedPNRBetaAtMf()

REAL8 IMRPhenomX_PNR_GenerateMergedPNRBetaAtMf ( REAL8  Mf,
const IMRPhenomX_PNR_beta_parameters betaParams,
IMRPhenomXWaveformStruct pWF,
IMRPhenomXPrecessionStruct pPrec,
IMRPhenomXWaveformStruct pWF_SingleSpin,
IMRPhenomXPrecessionStruct pPrec_SingleSpin 
)

This function generates beta with the tuned angles and PN expressions blended during merger-ringdown.

Parameters
Mfgeometric frequency
betaParamsbeta parameter struct
pWFPhenomX waveform struct
pPrecPhenomX precession struct
pWF_SingleSpinPhenomX waveform struct with approximate single spin
pPrec_SingleSpinPhenomX waveform struct with approximate single spin

Definition at line 105 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_GeneratePNRBetaNoMR()

REAL8 IMRPhenomX_PNR_GeneratePNRBetaNoMR ( REAL8  Mf,
IMRPhenomXWaveformStruct pWF,
IMRPhenomXPrecessionStruct pPrec 
)

This function evaluates only the rescaled inspiral beta given in Eq.

41 of arXiv:2107.08876, without attaching the MR model or tapering the two-spin oscillations.

Parameters
Mfgeometric frequency
pWFPhenomX wavefrom struct
pPrecPhenomX precession struct

Definition at line 89 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_GenerateRingdownPNRBeta()

REAL8 IMRPhenomX_PNR_GenerateRingdownPNRBeta ( IMRPhenomXWaveformStruct pWF,
IMRPhenomXPrecessionStruct pPrec 
)

We evaluate beta at the final Mf_beta_upper connection frequency to approximate the final value of beta during ringdown.

This is required to analytically approximate the effective ringdown frequency. FIXME: add citation

Parameters
pWFPhenomX waveform struct
pPrecPhenomX precession struct

Definition at line 153 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_GetPNBetaAtFreq()

REAL8 IMRPhenomX_PNR_GetPNBetaAtFreq ( REAL8  Mf,
const IMRPhenomX_PNR_beta_parameters betaParams,
IMRPhenomXWaveformStruct pWF,
IMRPhenomXPrecessionStruct pPrec,
IMRPhenomXWaveformStruct pWF_SingleSpin,
IMRPhenomXPrecessionStruct pPrec_SingleSpin 
)

A wrapper to produce either the NNLO or MSA beta depending on the IMRPhenomXPrecVersion.

Should the MSA angle be called, we taper any potential oscillations induced by a time-varying total spin magnitude so that we return an effective single-spin value for beta at the lower connection frequency. This is described in Sec. 6C of arXiv:2107.08876

Parameters
Mfgeometric frequency
betaParamsbeta parameter struct
pWFPhenomX waveform struct
pPrecPhenomX precession struct
pWF_SingleSpinPhenomX waveform struct with approximate single spin
pPrec_SingleSpinPhenomX waveform struct with approximate single spin

Definition at line 182 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_GetPNBetaAtFreq_fulltwospin()

REAL8 IMRPhenomX_PNR_GetPNBetaAtFreq_fulltwospin ( REAL8  Mf,
IMRPhenomXWaveformStruct pWF,
IMRPhenomXPrecessionStruct pPrec 
)

A wrapper to produce either the NNLO or MSA beta depending on the IMRPhenomXPrecVersion.

This version does not modify the two-spin oscillations.

Parameters
Mfgeometric frequency
pWFPhenomX waveform struct
pPrecPhenomX precession struct

Definition at line 278 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_PNWaveformBetaWrapper()

REAL8 IMRPhenomX_PNR_PNWaveformBetaWrapper ( REAL8  Mf,
REAL8  pn_beta,
IMRPhenomXWaveformStruct pWF,
IMRPhenomXPrecessionStruct pPrec 
)

A wrapper to generate the "waveform" PN beta from Eq.

41 of arXiv:2107.08876.

The wrapper goes through the trouble of computing the frequency-dependent Sperp given by Eq. 47 of arXiv:2107.08876.

Parameters
Mfgeometric frequency
pn_betaMSA or NNLO beta
pWFPhenomX waveform struct
pPrecPhenomX precession struct

Definition at line 343 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_chi_calc()

REAL8 IMRPhenomX_PNR_chi_calc ( REAL8  m1,
REAL8  L,
REAL8  J0,
REAL8  L0,
REAL8  chi_parr,
REAL8  beta 
)

The magnitude of the effective total spin is computed from the total and orbital angular momenta, J0 and L0 resp., along with the opening angle, beta, between them.

This procedure is outlined in Eqs. 47 and 18 of arXiv:2107.08876.

Parameters
m1mass of primary (Msun)
Lmagnitude of L and Mf
J0initial magnitude of J at Mf_ref
L0initial magnitude of L at Mf_ref
chi_parrcombined spin parallel to L0
betaPN opening angle, either MSA or NNLO

Definition at line 382 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_PNWaveformBeta()

REAL8 IMRPhenomX_PNR_PNWaveformBeta ( REAL8  Mf,
REAL8  iota,
REAL8  m1,
REAL8  m2,
REAL8  chi,
REAL8  costheta 
)

The "waveform" PN beta from Eq.

41 of arXiv:2107.08876.

This function maps the dynamics iota to a version of beta more closely resembling the angle associated with the optimal emission direction described in Sec. 6B of arXiv:2107.08876.

Parameters
Mfgeometric frequency
iotadynamics precession cone opening angle
m1mass of primary (scaled to total mass 1)
m2mass of secondary (scaled to total mass 1)
chieffective single spin magnitude
costhetaeffective single spin polar angle (rad)

Definition at line 409 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_precompute_beta_coefficients()

int IMRPhenomX_PNR_precompute_beta_coefficients ( IMRPhenomX_PNR_beta_parameters betaParams,
IMRPhenomXWaveformStruct pWF,
IMRPhenomXPrecessionStruct pPrec 
)

This function evaluates the Ansatz coefficients of beta outlined in Eq.

49 of arXiv:2107.08876.

See the discussion in Sec. 8D of arXiv:2107.08876 for an explanation of the condition on B4.

The definition of B0 has since changed and now depends on the angle of the final spin; see discussion in the technical document. FIXME: add citation

Parameters
betaParamsbeta parameter struct
pWFPhenomX waveform struct
pPrecPhenomX precession struct

Definition at line 473 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_beta_rescaling_1()

REAL8 IMRPhenomX_PNR_beta_rescaling_1 ( REAL8  Mf,
REAL8  beta1,
REAL8  beta2,
REAL8  dbeta1,
REAL8  dbeta2 
)

These three functions produce the inspiral rescaling of beta described in Sec.

8B of arXiv:2107.08876.

  • IMRPhenomX_PNR_beta_rescaling_1 computes b1 in Eq. 54
  • IMRPhenomX_PNR_beta_rescaling_2 computes b2 in Eq. 55
  • IMRPhenomX_PNR_rescale_beta_expression combines the results to produce Eq. 53.
Parameters
Mfgeometric frequency
beta1PN beta evaluated at Mf
beta2MR beta evaluated at Mf
dbeta1derivative of PN beta at Mf
dbeta2derivative of MR beta at Mf

Definition at line 515 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_beta_rescaling_2()

REAL8 IMRPhenomX_PNR_beta_rescaling_2 ( REAL8  Mf,
REAL8  beta1,
REAL8  beta2,
REAL8  dbeta1,
REAL8  dbeta2 
)
Parameters
Mfgeometric frequency
beta1PN beta evaluated at Mf
beta2MR beta evaluated at Mf
dbeta1derivative of PN beta at Mf
dbeta2derivative of MR beta at Mf

Definition at line 530 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_rescale_beta_expression()

REAL8 IMRPhenomX_PNR_rescale_beta_expression ( REAL8  Mf,
const IMRPhenomX_PNR_beta_parameters betaParams 
)
Parameters
Mfgeometric frequency
betaParamsbeta parameter struct

Definition at line 545 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_MR_beta_expression()

REAL8 IMRPhenomX_PNR_MR_beta_expression ( REAL8  Mf,
const IMRPhenomX_PNR_beta_parameters betaParams 
)

These four functions produce the MR Ansatz of beta described in Sec.

7A of arXiv:2107.08876.

  • IMRPhenomX_PNR_MR_beta_expression computes the MR Ansatz detailed in Eq. 49
  • IMRPhenomX_PNR_MR_dbeta_expression computes the first derivative of Eq. 49
  • IMRPhenomX_PNR_MR_ddbeta_expression computes the second derivative of Eq. 49
  • IMRPhenomX_PNR_MR_dddbeta_expression computes the third derivative of Eq. 49
Parameters
Mfgeometric frequency
betaParamsbeta parameter struct

Definition at line 567 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_MR_dbeta_expression()

REAL8 IMRPhenomX_PNR_MR_dbeta_expression ( REAL8  Mf,
const IMRPhenomX_PNR_beta_parameters betaParams 
)

expression for first derivative of beta in merger-ringdown regime

Parameters
Mfgeometric frequency
betaParamsbeta parameter struct

Definition at line 586 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_MR_ddbeta_expression()

REAL8 IMRPhenomX_PNR_MR_ddbeta_expression ( REAL8  Mf,
const IMRPhenomX_PNR_beta_parameters betaParams 
)

expression for second derivative of beta in merger-ringdown regime

Parameters
Mfgeometric frequency
betaParamsbeta parameter struct

Definition at line 604 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_MR_dddbeta_expression()

REAL8 IMRPhenomX_PNR_MR_dddbeta_expression ( REAL8  Mf,
const IMRPhenomX_PNR_beta_parameters betaParams 
)

expression for third derivative of beta in merger-ringdown regime

Parameters
Mfgeometric frequency
betaParamsbeta parameter struct

Definition at line 627 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_BetaConnectionFrequencies()

int IMRPhenomX_PNR_BetaConnectionFrequencies ( IMRPhenomX_PNR_beta_parameters betaParams)

Here we work through the construction of the connection frequency for beta, outlined in Sec.

8B of arXiv:2107.08876, along with discussion in Sec. 8D.

In particular, this function performs the following tasks in order:

  • compute the inflection frequency required to get beta_inf
  • get derivative of beta at that frequency
  • get the extremal frequencies of beta
  • choose the lower and upper connection frequencies
Parameters
betaParamsbeta parameter struct

Definition at line 660 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_three_inflection_points()

COMPLEX16* IMRPhenomX_PNR_three_inflection_points ( const IMRPhenomX_PNR_beta_parameters betaParams)

Compute the three roots of a depressed cubic given by Eq.

68 of arXiv:2107.08876.

Parameters
betaParamsbeta parameter struct

Definition at line 840 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_two_inflection_points()

COMPLEX16* IMRPhenomX_PNR_two_inflection_points ( const IMRPhenomX_PNR_beta_parameters betaParams)

Compute the two roots of a depressed cubic given by Eq.

68 of arXiv:2107.08876 when the cubic term vanishes.

Parameters
betaParamsbeta parameter struct

Definition at line 885 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_single_inflection_point()

REAL8 IMRPhenomX_PNR_single_inflection_point ( const IMRPhenomX_PNR_beta_parameters betaParams)

Compute the roots of a depressed cubic given by Eq.

68 of arXiv:2107.08876, then select the correct root to use for the inflection frequency based on Eq. 69 and discussion in Sec. 8D.

Parameters
betaParamsbeta parameter struct

Definition at line 920 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_beta_connection_parameters()

int IMRPhenomX_PNR_beta_connection_parameters ( IMRPhenomX_PNR_beta_parameters betaParams,
IMRPhenomXWaveformStruct pWF,
IMRPhenomXPrecessionStruct pPrec,
IMRPhenomXWaveformStruct pWF_SingleSpin,
IMRPhenomXPrecessionStruct pPrec_SingleSpin 
)

This function combines several functions together to compute the connection frequencies and the inspiral rescaling.

Parameters
betaParamsbeta parameter struct
pWFPhenomX waveform struct
pPrecPhenomX precession struct
pWF_SingleSpinPhenomX waveform struct with single-spin mapping
pPrec_SingleSpinPhenomX precession struct with single-spin mapping

Definition at line 1032 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_arctan_window()

REAL8 IMRPhenomX_PNR_arctan_window ( REAL8  beta)

Utility function to compute the arctan windowing described in Eq.

62 of arXiv:2107.08876.

Parameters
betabeta angle (rad)

Definition at line 1097 of file LALSimIMRPhenomX_PNR_beta.c.

◆ IMRPhenomX_PNR_AttachMRBeta()

UINT4 IMRPhenomX_PNR_AttachMRBeta ( const IMRPhenomX_PNR_beta_parameters betaParams)

Determine whether to attach the MR contributions to beta.

  • If the connection frequency is too low, < 0.009
  • If the connection frequency is 100.0
  • if the final Ansatz value of beta is negative at the lower connection frequency
Parameters
betaParamsbeta parameter struct

Definition at line 1128 of file LALSimIMRPhenomX_PNR_beta.c.