Prototypes | |
IMRPhenomXMultiBandingGridStruct | XLALSimIMRPhenomXGridComp (REAL8 fSTART, REAL8 fEND, REAL8 mydf) |
INT4 | XLALSimIMRPhenomXMultibandingGrid (REAL8 fstartIn, REAL8 fend, REAL8 MfLorentzianEnd, REAL8 Mfmax, REAL8 evaldMf, REAL8 dfpower, REAL8 dfcoefficient, IMRPhenomXMultiBandingGridStruct *allGrids, REAL8 dfmerger, REAL8 dfringdown) |
INT4 | deltaF_MergerRingdown (REAL8 *dfmerger, REAL8 *dfringdown, REAL8 resTest, IMRPhenomXHMWaveformStruct *pWFHM, IMRPhenomXHMAmpCoefficients *pAmp, IMRPhenomXHMPhaseCoefficients *pPhase) |
int | IMRPhenomXHMMultiBandOneMode (COMPLEX16FrequencySeries **htildelm, IMRPhenomXWaveformStruct *pWF, UINT4 ell, UINT4 emm, LALDict *lalParams) |
int | IMRPhenomXHMMultiBandOneModeMixing (COMPLEX16FrequencySeries **htildelm, COMPLEX16FrequencySeries *htilde22, IMRPhenomXWaveformStruct *pWF, UINT4 ell, UINT4 emm, LALDict *lalParams) |
static int | interpolateAmplitude (double *fineAmp, double coarsefreqs[], double coarseAmp[], double finefreqs[], int lengthCoarse, int lengthFine, int ampinterpolorder) |
static int | interpolateAmplitudeMixing (double *fineAmp, double *fineAmpSS, double coarsefreqs[], double coarsefreqsSS[], double coarseAmp[], double coarseAmpSS[], double finefreqs[], int lengthCoarse, int lengthCoarseSS, int lengthFine, int sphericalfinecount, int sphericalfinecountMax, int ampinterpolorder) |
static int | SetupWFArraysReal (REAL8Sequence **freqs, REAL8FrequencySeries **amphase, const REAL8Sequence *freqs_In, IMRPhenomXWaveformStruct *pWF, LIGOTimeGPS ligotimegps_zero) |
static int | IMRPhenomXHM_Amplitude (REAL8FrequencySeries **amplm, const REAL8Sequence *freqs_In, IMRPhenomXWaveformStruct *pWF, IMRPhenomXAmpCoefficients *pAmp22, IMRPhenomXPhaseCoefficients *pPhase22, IMRPhenomXHMWaveformStruct *pWFHM, IMRPhenomXHMAmpCoefficients *pAmp, IMRPhenomXHMPhaseCoefficients *pPhase) |
Functions to compute coarse amplitude and phase. More... | |
static int | IMRPhenomXHM_AmplitudeMixing (REAL8FrequencySeries **amplm, const REAL8Sequence *freqs_In, IMRPhenomXWaveformStruct *pWF, IMRPhenomXHMWaveformStruct *pWFHM, IMRPhenomXHMAmpCoefficients *pAmp, UNUSED IMRPhenomXHMPhaseCoefficients *pPhase) |
static int | IMRPhenomXHM_Phase (REAL8FrequencySeries **phaselm, const REAL8Sequence *freqs_In, IMRPhenomXWaveformStruct *pWF, IMRPhenomXAmpCoefficients *pAmp22, IMRPhenomXPhaseCoefficients *pPhase22, IMRPhenomXHMWaveformStruct *pWFHM, IMRPhenomXHMAmpCoefficients *pAmp, IMRPhenomXHMPhaseCoefficients *pPhase) |
static int | IMRPhenomXHM_PhaseMixing (REAL8FrequencySeries **phaselm, const REAL8Sequence *freqs_In, IMRPhenomXWaveformStruct *pWF, IMRPhenomXHMWaveformStruct *pWFHM, IMRPhenomXHMPhaseCoefficients *pPhase) |
static double | logbase (double base, double x) |
static double | deltaF_mergerBin (REAL8 fdamp, REAL8 alpha4, REAL8 abserror) |
static double | deltaF_ringdownBin (REAL8 fdamp, REAL8 alpha4, REAL8 LAMBDA, REAL8 abserror) |
Routines for IMRPhenomXHM Multibanding | |
C code for applying Multibanding to IMRPhenomXHM_Multimode This is a technique to make the evaluation of waveform models faster by evaluating the model in a coarser non-uniform grid and interpolate this to the final fine uniform grid. We apply this technique to the fourier domain model IMRPhenomXHM as described in this paper: https://arxiv.org/abs/2001.10897 Multibanding flags: ThresholdMband: Determines the strength of the Multibanding algorithm. The lower this value is, the slower is the evaluation but more accurate is the final waveform compared to the one without multibanding.
AmpInterpol: Determines the gsl interpolation order for the amplitude.
| |
int | XLALSimIMRPhenomXHMMultiBandOneMode (COMPLEX16FrequencySeries **htildelm, REAL8 m1_SI, REAL8 m2_SI, REAL8 chi1L, REAL8 chi2L, UINT4 ell, INT4 emmIn, REAL8 distance, REAL8 f_min, REAL8 f_max, REAL8 deltaF, REAL8 phiRef, REAL8 fRef_In, LALDict *lalParams) |
Return htildelm, the waveform of one mode without mode-mixing. More... | |
int | XLALSimIMRPhenomXHMMultiBandOneModeMixing (COMPLEX16FrequencySeries **htildelm, COMPLEX16FrequencySeries *htilde22, REAL8 m1_SI, REAL8 m2_SI, REAL8 chi1L, REAL8 chi2L, UINT4 ell, INT4 emmIn, REAL8 distance, REAL8 f_min, REAL8 f_max, REAL8 deltaF, REAL8 phiRef, REAL8 fRef_In, LALDict *lalParams) |
Returns htildelm the waveform of one mode that present mode-mixing. More... | |
Go to the source code of this file.
IMRPhenomXMultiBandingGridStruct XLALSimIMRPhenomXGridComp | ( | REAL8 | fSTART, |
REAL8 | fEND, | ||
REAL8 | mydf | ||
) |
fSTART | Starting frequency of the uniform bin * |
fEND | Ending frequency of the uniform bin * |
mydf | Frequency spacing of the bin * |
Definition at line 38 of file LALSimIMRPhenomXHM_multiband.c.
INT4 XLALSimIMRPhenomXMultibandingGrid | ( | REAL8 | fstartIn, |
REAL8 | fend, | ||
REAL8 | MfLorentzianEnd, | ||
REAL8 | Mfmax, | ||
REAL8 | evaldMf, | ||
REAL8 | dfpower, | ||
REAL8 | dfcoefficient, | ||
IMRPhenomXMultiBandingGridStruct * | allGrids, | ||
REAL8 | dfmerger, | ||
REAL8 | dfringdown | ||
) |
fstartIn | Minimun frequency in NR unit s* | |
fend | End of inspiral frequency bins * | |
MfLorentzianEnd | Determines the last frequency bin * | |
Mfmax | Maximun frequency in NR units * | |
evaldMf | Spacing of the uniform frequency grid (NR units) * | |
dfpower | decaying frequency power to estimate frequency spacing * | |
dfcoefficient | multiplying factor to the estimate of the frequency spacing * | |
[out] | allGrids | list of non-uniform frequency bins* |
[out] | dfmerger | Spacing merger bin* |
[out] | dfringdown | Spacing ringdown bin* |
Definition at line 74 of file LALSimIMRPhenomXHM_multiband.c.
INT4 deltaF_MergerRingdown | ( | REAL8 * | dfmerger, |
REAL8 * | dfringdown, | ||
REAL8 | resTest, | ||
IMRPhenomXHMWaveformStruct * | pWFHM, | ||
IMRPhenomXHMAmpCoefficients * | pAmp, | ||
IMRPhenomXHMPhaseCoefficients * | pPhase | ||
) |
Definition at line 407 of file LALSimIMRPhenomXHM_multiband.c.
int IMRPhenomXHMMultiBandOneMode | ( | COMPLEX16FrequencySeries ** | htildelm, |
IMRPhenomXWaveformStruct * | pWF, | ||
UINT4 | ell, | ||
UINT4 | emm, | ||
LALDict * | lalParams | ||
) |
Mode non-zero
Compute 22 using PhenomX functions
Higher modes
[out] | htildelm | FD waveform * |
pWF | Waveform structure 22 mode * | |
ell | First index (l,m) mode * | |
emm | Second incex (l,m) mode * | |
lalParams | LAL dictionary * |
Definition at line 578 of file LALSimIMRPhenomXHM_multiband.c.
int IMRPhenomXHMMultiBandOneModeMixing | ( | COMPLEX16FrequencySeries ** | htildelm, |
COMPLEX16FrequencySeries * | htilde22, | ||
IMRPhenomXWaveformStruct * | pWF, | ||
UINT4 | ell, | ||
UINT4 | emm, | ||
LALDict * | lalParams | ||
) |
[out] | htildelm | FD waveform |
htilde22 | Recycle the 22 mode if previously computed * | |
pWF | Structure of 22 mode * | |
ell | First index (l,m) mode * | |
emm | Second incex (l,m) mode * | |
lalParams | LAL dictionary * |
Definition at line 1381 of file LALSimIMRPhenomXHM_multiband.c.
|
static |
[out] | fineAmp | amplitude in the fine uniform grid * |
coarsefreqs | non-uniform frequency array* | |
coarseAmp | amplitude in the non-uniform frequency array * | |
finefreqs | uniform fine frequency grid* | |
lengthCoarse | length of non-uniform freq array * | |
lengthFine | length of uniform fine freq array * | |
ampinterpolorder | order of the gsl interpolation * |
Definition at line 2190 of file LALSimIMRPhenomXHM_multiband.c.
|
static |
[out] | fineAmp | spherical amplitude in the fine uniform grid * |
[out] | fineAmpSS | spheroidal amplitude in the fine uniform grid * |
coarsefreqs | non-uniform frequency array* | |
coarsefreqsSS | non-uniform frequency array spheroidal * | |
coarseAmp | amplitude in the non-uniform frequency array * | |
coarseAmpSS | spheroidal amplitude in the non-uniform frequency array * | |
finefreqs | uniform fine frequency grid* | |
lengthCoarse | length of non-uniform freq array * | |
lengthCoarseSS | length of non-uniform freq array Sphroidal * | |
lengthFine | length of uniform fine freq array * | |
sphericalfinecount | length of spherical fine grid * | |
sphericalfinecountMax | length of spherical fine grid * | |
ampinterpolorder | order of interpolation * |
Definition at line 2247 of file LALSimIMRPhenomXHM_multiband.c.
|
static |
[out] | freqs | Frequency array to evaluate model * |
[out] | amphase | Initialize amplitude or phase with the length of freqs * |
freqs_In | Input frequency array or fmin, fmax * | |
pWF | Structure of the 22 mode * | |
ligotimegps_zero | Needed to initialize amphase * |
Definition at line 2310 of file LALSimIMRPhenomXHM_multiband.c.
|
static |
Functions to compute coarse amplitude and phase.
[out] | amplm | amplitude of hlm mode * |
freqs_In | Frequency array to evaluate model or fmin, fmax * | |
pWF | Structure of the 22 mode * | |
pAmp22 | Amplitude coefficients 22 | |
pPhase22 | Phase coefficients 22 | |
pWFHM | waveform parameters lm mode | |
pAmp | Amplitude coefficients lm | |
pPhase | Phase coefficients 22 |
Definition at line 2426 of file LALSimIMRPhenomXHM_multiband.c.
|
static |
[out] | amplm | amplitude of hlm mode * |
freqs_In | Frequency array to evaluate model or fmin, fmax * | |
pWF | Structure of the 22 mode * | |
pWFHM | waveform parameters lm mode | |
pAmp | Amplitude coefficients lm | |
pPhase | Phase coefficients 22 |
Definition at line 2509 of file LALSimIMRPhenomXHM_multiband.c.
|
static |
[out] | phaselm | phase of hlm mode * |
freqs_In | Frequency array to evaluate model or fmin, fmax * | |
pWF | Structure of the 22 mode * | |
pAmp22 | Amplitude coefficients 22 | |
pPhase22 | Phase coefficients 22 | |
pWFHM | waveform parameters lm mode | |
pAmp | Amplitude coefficients lm | |
pPhase | Phase coefficients 22 |
Definition at line 2570 of file LALSimIMRPhenomXHM_multiband.c.
|
static |
[out] | phaselm | phase of hlm mode * |
freqs_In | Frequency array to evaluate model or fmin, fmax * | |
pWF | Structure of the 22 mode * | |
pWFHM | waveform parameters lm mode | |
pPhase | Phase coefficients 22 |
Definition at line 2675 of file LALSimIMRPhenomXHM_multiband.c.
|
static |
Definition at line 2731 of file LALSimIMRPhenomXHM_multiband.c.
Definition at line 2736 of file LALSimIMRPhenomXHM_multiband.c.