LALSimulation  5.4.0.1-fe68b98
LALSimIMRPhenomUtils.h File Reference

Prototypes

double XLALSimPhenomUtilsMftoHz (REAL8 Mf, REAL8 Mtot_Msun)
 Convert from geometric frequency to frequency in Hz. More...
 
double XLALSimPhenomUtilsHztoMf (REAL8 fHz, REAL8 Mtot_Msun)
 Convert from frequency in Hz to geometric frequency. More...
 
double XLALSimPhenomUtilsFDamp0 (REAL8 Mtot_Msun, REAL8 distance)
 compute the frequency domain amplitude pre-factor More...
 
REAL8 XLALSimPhenomUtilsPhenomPv2FinalSpin (const REAL8 m1, const REAL8 m2, const REAL8 chi1_l, const REAL8 chi2_l, const REAL8 chip)
 Wrapper for final-spin formula based on: More...
 
REAL8 XLALSimPhenomUtilsPhenomPv3HMFinalSpin (const REAL8 m1, const REAL8 m2, const REAL8 chi1x, const REAL8 chi1y, const REAL8 chi1z, const REAL8 chi2x, const REAL8 chi2y, const REAL8 chi2z)
 Wrapper for final-spin formula based on: More...
 
double XLALSimPhenomUtilsIMRPhenomDFinalMass (REAL8 m1, REAL8 m2, REAL8 chi1z, REAL8 chi2z)
 Helper function used in PhenomHM and PhenomPv3HM Returns the final mass from the fit used in PhenomD. More...
 
REAL8 XLALSimPhenomUtilsChiP (const REAL8 m1, const REAL8 m2, const REAL8 s1x, const REAL8 s1y, const REAL8 s2x, const REAL8 s2y)
 Function to compute the effective precession parameter chi_p (1408.1810) More...
 
int XLALSimPhenomUtilsPhenomPv3HMWignerdElement (REAL8 *wig_d, UINT4 ell, INT4 mprime, INT4 mm, REAL8 b)
 Hard coded expressions for relevant Wignerd matrix elements. More...
 
int XLALSimIMRPhenomPv3HMComputeWignerdElements (IMRPhenomPv3HMWignderStruct **p, UNUSED UINT4 ell, UNUSED INT4 mprime, UNUSED REAL8 b)
 computes the wigner-d elements for -beta in batches. More...
 
int XLALSimIMRPhenomPv3HMComputeAlphaElements (IMRPhenomPv3HMAlphaStruct **p, UINT4 ell, REAL8 alpha)
 
IMRPhenomPv3HMYlmStructXLALSimIMRPhenomPv3HMComputeYlmElements (REAL8 theta, REAL8 phi, INT4 ell)
 

Go to the source code of this file.

Data Structures

struct  IMRPhenomPv3HMWignderStruct
 a strcut to keep the wigner-d matrix elements More...
 
struct  IMRPhenomPv3HMAlphaStruct
 a strcut to keep the complex exponential terms of the alpha precession angle More...
 
struct  IMRPhenomPv3HMYlmStruct
 a strcut to keep the spherical harmonic terms More...
 

Macros

#define FIVE_OVER_16   0.3125
 
#define THREE_OVER_EIGHT   0.375
 
#define ONE_OVER_TWO   0.5
 
#define ONE_OVER_EIGHT   0.125
 
#define ONE_OVER_FOUR   0.25
 
#define SQRT_6   2.44948974278317788
 
#define FIFTEEN_OVER_32   0.46875
 
#define THREE_OVER_16   0.1875
 
#define ONE_OVER_32   0.03125
 
#define mSQRT_6_OVER_32   -0.07654655446197431
 
#define SQRT_15_OVER_32   0.12103072956898178
 
#define mSQRT_15_OVER_32   -0.12103072956898178
 
#define SQRT_5_OVER_16   0.13975424859373686
 
#define SQRT_6_OVER_32   0.07654655446197431
 
#define SQRT_10_OVER_32   0.09882117688026186
 
#define mSQRT_10_OVER_32   -0.09882117688026186
 
#define SQRT_30_OVER_16   0.3423265984407288
 
#define SEVEN_OVER_16   0.4375
 
#define SEVEN_OVER_32   0.21875
 
#define ONE_OVER_128   0.0078125
 
#define THIRTYFIVE_OVER_128   0.2734375
 
#define ONE_OVER_16   0.0625
 
#define SQRT_2_OVER_64   0.02209708691207961
 
#define mSQRT_2_OVER_64   -0.02209708691207961
 
#define SQRT_7_OVER_16   0.16535945694153692
 
#define SQRT_14_OVER_32   0.11692679333668567
 
#define SQRT_70_16   0.5229125165837972
 
#define NINE_OVER_32   0.28125
 
#define SQRT_7_OVER_32   0.08267972847076846
 
#define SQRT_35_OVER_4   1.479019945774904
 

Macro Definition Documentation

◆ FIVE_OVER_16

#define FIVE_OVER_16   0.3125

Definition at line 19 of file LALSimIMRPhenomUtils.h.

◆ THREE_OVER_EIGHT

#define THREE_OVER_EIGHT   0.375

Definition at line 20 of file LALSimIMRPhenomUtils.h.

◆ ONE_OVER_TWO

#define ONE_OVER_TWO   0.5

Definition at line 21 of file LALSimIMRPhenomUtils.h.

◆ ONE_OVER_EIGHT

#define ONE_OVER_EIGHT   0.125

Definition at line 22 of file LALSimIMRPhenomUtils.h.

◆ ONE_OVER_FOUR

#define ONE_OVER_FOUR   0.25

Definition at line 23 of file LALSimIMRPhenomUtils.h.

◆ SQRT_6

#define SQRT_6   2.44948974278317788

Definition at line 24 of file LALSimIMRPhenomUtils.h.

◆ FIFTEEN_OVER_32

#define FIFTEEN_OVER_32   0.46875

Definition at line 25 of file LALSimIMRPhenomUtils.h.

◆ THREE_OVER_16

#define THREE_OVER_16   0.1875

Definition at line 26 of file LALSimIMRPhenomUtils.h.

◆ ONE_OVER_32

#define ONE_OVER_32   0.03125

Definition at line 27 of file LALSimIMRPhenomUtils.h.

◆ mSQRT_6_OVER_32

#define mSQRT_6_OVER_32   -0.07654655446197431

Definition at line 28 of file LALSimIMRPhenomUtils.h.

◆ SQRT_15_OVER_32

#define SQRT_15_OVER_32   0.12103072956898178

Definition at line 29 of file LALSimIMRPhenomUtils.h.

◆ mSQRT_15_OVER_32

#define mSQRT_15_OVER_32   -0.12103072956898178

Definition at line 30 of file LALSimIMRPhenomUtils.h.

◆ SQRT_5_OVER_16

#define SQRT_5_OVER_16   0.13975424859373686

Definition at line 31 of file LALSimIMRPhenomUtils.h.

◆ SQRT_6_OVER_32

#define SQRT_6_OVER_32   0.07654655446197431

Definition at line 32 of file LALSimIMRPhenomUtils.h.

◆ SQRT_10_OVER_32

#define SQRT_10_OVER_32   0.09882117688026186

Definition at line 33 of file LALSimIMRPhenomUtils.h.

◆ mSQRT_10_OVER_32

#define mSQRT_10_OVER_32   -0.09882117688026186

Definition at line 34 of file LALSimIMRPhenomUtils.h.

◆ SQRT_30_OVER_16

#define SQRT_30_OVER_16   0.3423265984407288

Definition at line 35 of file LALSimIMRPhenomUtils.h.

◆ SEVEN_OVER_16

#define SEVEN_OVER_16   0.4375

Definition at line 37 of file LALSimIMRPhenomUtils.h.

◆ SEVEN_OVER_32

#define SEVEN_OVER_32   0.21875

Definition at line 38 of file LALSimIMRPhenomUtils.h.

◆ ONE_OVER_128

#define ONE_OVER_128   0.0078125

Definition at line 39 of file LALSimIMRPhenomUtils.h.

◆ THIRTYFIVE_OVER_128

#define THIRTYFIVE_OVER_128   0.2734375

Definition at line 40 of file LALSimIMRPhenomUtils.h.

◆ ONE_OVER_16

#define ONE_OVER_16   0.0625

Definition at line 41 of file LALSimIMRPhenomUtils.h.

◆ SQRT_2_OVER_64

#define SQRT_2_OVER_64   0.02209708691207961

Definition at line 42 of file LALSimIMRPhenomUtils.h.

◆ mSQRT_2_OVER_64

#define mSQRT_2_OVER_64   -0.02209708691207961

Definition at line 43 of file LALSimIMRPhenomUtils.h.

◆ SQRT_7_OVER_16

#define SQRT_7_OVER_16   0.16535945694153692

Definition at line 44 of file LALSimIMRPhenomUtils.h.

◆ SQRT_14_OVER_32

#define SQRT_14_OVER_32   0.11692679333668567

Definition at line 45 of file LALSimIMRPhenomUtils.h.

◆ SQRT_70_16

#define SQRT_70_16   0.5229125165837972

Definition at line 46 of file LALSimIMRPhenomUtils.h.

◆ NINE_OVER_32

#define NINE_OVER_32   0.28125

Definition at line 47 of file LALSimIMRPhenomUtils.h.

◆ SQRT_7_OVER_32

#define SQRT_7_OVER_32   0.08267972847076846

Definition at line 48 of file LALSimIMRPhenomUtils.h.

◆ SQRT_35_OVER_4

#define SQRT_35_OVER_4   1.479019945774904

Definition at line 49 of file LALSimIMRPhenomUtils.h.

Function Documentation

◆ XLALSimPhenomUtilsMftoHz()

double XLALSimPhenomUtilsMftoHz ( REAL8  Mf,
REAL8  Mtot_Msun 
)

Convert from geometric frequency to frequency in Hz.

Parameters
MfGeometric frequency
Mtot_MsunTotal mass in solar masses

Definition at line 48 of file LALSimIMRPhenomUtils.c.

◆ XLALSimPhenomUtilsHztoMf()

double XLALSimPhenomUtilsHztoMf ( REAL8  fHz,
REAL8  Mtot_Msun 
)

Convert from frequency in Hz to geometric frequency.

Parameters
fHzFrequency in Hz
Mtot_MsunTotal mass in solar masses

Definition at line 59 of file LALSimIMRPhenomUtils.c.

◆ XLALSimPhenomUtilsFDamp0()

double XLALSimPhenomUtilsFDamp0 ( REAL8  Mtot_Msun,
REAL8  distance 
)

compute the frequency domain amplitude pre-factor

Parameters
Mtot_Msuntotal mass in solar masses
distancedistance (m)

Definition at line 70 of file LALSimIMRPhenomUtils.c.

◆ XLALSimPhenomUtilsPhenomPv2FinalSpin()

REAL8 XLALSimPhenomUtilsPhenomPv2FinalSpin ( const REAL8  m1,
const REAL8  m2,
const REAL8  chi1_l,
const REAL8  chi2_l,
const REAL8  chip 
)

Wrapper for final-spin formula based on:

We use their convention m1>m2 and put all in-plane spin on the larger BH.

In the aligned limit return the FinalSpin0815 value.

Function should reproduce the function FinalSpinIMRPhenomD_all_in_plane_spin_on_larger_BH

Parameters
m1Mass of companion 1 (solar masses)
m2Mass of companion 2 (solar masses)
chi1_lAligned spin of BH 1
chi2_lAligned spin of BH 2
chipDimensionless spin in the orbital plane

Definition at line 90 of file LALSimIMRPhenomUtils.c.

◆ XLALSimPhenomUtilsPhenomPv3HMFinalSpin()

REAL8 XLALSimPhenomUtilsPhenomPv3HMFinalSpin ( const REAL8  m1,
const REAL8  m2,
const REAL8  chi1x,
const REAL8  chi1y,
const REAL8  chi1z,
const REAL8  chi2x,
const REAL8  chi2y,
const REAL8  chi2z 
)

Wrapper for final-spin formula based on:

We use their convention m1>m2 and use all in-plane spin components to determine the final spin magnitude.

In the aligned limit return the FinalSpin0815 value.

Parameters
m1Mass of companion 1 (solar masses)
m2Mass of companion 2 (solar masses)
chi1xx-component of the dimensionless spin of object 1 w.r.t. Lhat = (0,0,1)
chi1yy-component of the dimensionless spin of object 1 w.r.t. Lhat = (0,0,1)
chi1zz-component of the dimensionless spin of object 1 w.r.t. Lhat = (0,0,1)
chi2xx-component of the dimensionless spin of object 2 w.r.t. Lhat = (0,0,1)
chi2yy-component of the dimensionless spin of object 2 w.r.t. Lhat = (0,0,1)
chi2zz-component of the dimensionless spin of object 2 w.r.t. Lhat = (0,0,1)

Definition at line 152 of file LALSimIMRPhenomUtils.c.

◆ XLALSimPhenomUtilsIMRPhenomDFinalMass()

double XLALSimPhenomUtilsIMRPhenomDFinalMass ( REAL8  m1,
REAL8  m2,
REAL8  chi1z,
REAL8  chi2z 
)

Helper function used in PhenomHM and PhenomPv3HM Returns the final mass from the fit used in PhenomD.

Parameters
m1mass of primary in solar masses
m2mass of secondary in solar masses
chi1zaligned-spin component on primary
chi2zaligned-spin component on secondary

Definition at line 121 of file LALSimIMRPhenomUtils.c.

◆ XLALSimPhenomUtilsChiP()

REAL8 XLALSimPhenomUtilsChiP ( const REAL8  m1,
const REAL8  m2,
const REAL8  s1x,
const REAL8  s1y,
const REAL8  s2x,
const REAL8  s2y 
)

Function to compute the effective precession parameter chi_p (1408.1810)

Parameters
m1Mass of companion 1 (solar masses)
m2Mass of companion 2 (solar masses)
s1xx-component of the dimensionless spin of object 1 w.r.t. Lhat = (0,0,1)
s1yy-component of the dimensionless spin of object 1 w.r.t. Lhat = (0,0,1)
s2xx-component of the dimensionless spin of object 2 w.r.t. Lhat = (0,0,1)
s2yy-component of the dimensionless spin of object 2 w.r.t. Lhat = (0,0,1)

Definition at line 190 of file LALSimIMRPhenomUtils.c.

◆ XLALSimPhenomUtilsPhenomPv3HMWignerdElement()

int XLALSimPhenomUtilsPhenomPv3HMWignerdElement ( REAL8 wig_d,
UINT4  ell,
INT4  mprime,
INT4  mm,
REAL8  b 
)

Hard coded expressions for relevant Wignerd matrix elements.

Only certain elements are coded up. These were obtained using sympy and cross checked numerically against the LAL XLALWignerdMatrix function

Parameters
[out]wig_delement of Wignerd Matrix
ellspherical harmonics ell mode
mprimespherical harmonics m prime mode
mmspherical harmonics m mode
bbeta angle (rad)

Definition at line 635 of file LALSimIMRPhenomUtils.c.

◆ XLALSimIMRPhenomPv3HMComputeWignerdElements()

int XLALSimIMRPhenomPv3HMComputeWignerdElements ( IMRPhenomPv3HMWignderStruct **  p,
UNUSED UINT4  ell,
UNUSED INT4  mprime,
UNUSED REAL8  b 
)

computes the wigner-d elements for -beta in batches.

mprime - only takes positive values as the negative values are added automatically according to the symmetry d^{ell}_{-m',-m} = (-1)^{m'+m} d^{ell}_{m',m}.

Definition at line 355 of file LALSimIMRPhenomUtils.c.

◆ XLALSimIMRPhenomPv3HMComputeAlphaElements()

int XLALSimIMRPhenomPv3HMComputeAlphaElements ( IMRPhenomPv3HMAlphaStruct **  p,
UINT4  ell,
REAL8  alpha 
)

Definition at line 275 of file LALSimIMRPhenomUtils.c.

◆ XLALSimIMRPhenomPv3HMComputeYlmElements()

IMRPhenomPv3HMYlmStruct* XLALSimIMRPhenomPv3HMComputeYlmElements ( REAL8  theta,
REAL8  phi,
INT4  ell 
)

Definition at line 222 of file LALSimIMRPhenomUtils.c.