LALSimulation  5.4.0.1-89842e6
LALSimIMREOBHybridRingdownPrec.c File Reference

Prototypes

static REAL8 XLALCalculateRDAmplitudeCoefficient1 (UINT4 modeL, UINT4 modeM, REAL8 eta, REAL8 chi)
 
static REAL8 XLALCalculateRDAmplitudeCoefficient2 (UINT4 modeL, UINT4 modeM, REAL8 eta, REAL8 chi)
 
static REAL8 XLALCalculateRDPhaseCoefficient1 (UINT4 modeL, UINT4 modeM, REAL8 eta, REAL8 chi)
 
static REAL8 XLALCalculateRDPhaseCoefficient2 (UINT4 modeL, UINT4 modeM, REAL8 eta, REAL8 chi)
 
static INT4 XLALSimFindIndexMaxAmpli (UINT4 *indAmax, REAL8Vector *timeVec, REAL8Vector *ampWave, REAL8 *valAmax, REAL8 tofAmax)
 
static INT4 XLALSimIMREOBHybridRingdownWave (REAL8Vector *rdwave1, REAL8Vector *rdwave2, const REAL8 dt, const REAL8 mass1, const REAL8 mass2, REAL8VectorSequence *inspwave1, REAL8VectorSequence *inspwave2, COMPLEX16Vector *modefreqs, REAL8Vector *matchrange)
 Generates the ringdown wave associated with the given real and imaginary parts of the inspiral waveform. More...
 
static INT4 XLALGenerateHybridWaveDerivatives (REAL8Vector *rwave, REAL8Vector *dwave, REAL8Vector *ddwave, REAL8Vector *timeVec, REAL8Vector *wave, REAL8Vector *matchrange, REAL8 dt, REAL8 mass1, REAL8 mass2)
 Function which calculates the value of the waveform, plus its first and second derivatives, for the points which will be required in the hybrid comb attachment of the ringdown. More...
 
static INT4 get_major_approximant (Approximant approximant)
 Translates the major approximant version into an unsigned integer to minimize if and or statements throughout the function XLALSimIMREOBHybridAttachRingdownPrec. More...
 
static UNUSED INT4 XLALSimIMREOBHybridAttachRingdownPrec (REAL8Vector *signal1, REAL8Vector *signal2, const INT4 l, const INT4 m, const REAL8 dt, const REAL8 mass1, const REAL8 mass2, const REAL8 spin1x, const REAL8 spin1y, const REAL8 spin1z, const REAL8 spin2x, const REAL8 spin2y, const REAL8 spin2z, REAL8Vector *timeVec, REAL8Vector *matchrange, Approximant approximant, const REAL8 JLN)
 The main workhorse function for performing the ringdown attachment for EOB models EOBNRv2 and SEOBNRv1. More...
 
static UNUSED INT4 XLALSimIMREOBAttachFitRingdown (REAL8Vector *signal1, REAL8Vector *signal2, const INT4 l, const INT4 m, const REAL8 dt, const REAL8 mass1, const REAL8 mass2, const REAL8 spin1x, const REAL8 spin1y, const REAL8 spin1z, const REAL8 spin2x, const REAL8 spin2y, const REAL8 spin2z, const REAL8 finalM, const REAL8 finalS, REAL8Vector *timeVec, REAL8Vector *matchrange, Approximant approximant, UINT4 *indAmpMax)
 The main function for performing the ringdown attachment for SEOBNRv4 (and beyond) This is the function which gets called by the code generating the full IMR waveform once generation of the inspiral part has been completed. More...
 

Go to the source code of this file.

Macros

#define _LALSIMIMREOBHYBRIDRINGDOWNPREC_C
 Module to compute the ring-down waveform as linear combination of quasi-normal-modes decaying waveforms, which can be attached to the inspiral part of the compat binary coalescing waveform. The method is describe in Sec. II C of Pan et al. PRD 84, 124052 (2011), specifically Eqs. 30 - 32. Eqs. 30 and 31 are written in explicity linear equation systems in DCC document T1100433. This method is currently used for EOBNRv2 and SEOBNRv1 models. The only difference between the two models in ring-down waveform is the pseudo-QNM introduced in the latter (see Taracchini et al. PRD 86, 024011 (2012) for more details). More...
 
#define LMax   6
 
#define MMax   6
 

Macro Definition Documentation

◆ _LALSIMIMREOBHYBRIDRINGDOWNPREC_C

#define _LALSIMIMREOBHYBRIDRINGDOWNPREC_C

Module to compute the ring-down waveform as linear combination of quasi-normal-modes decaying waveforms, which can be attached to the inspiral part of the compat binary coalescing waveform. The method is describe in Sec. II C of Pan et al. PRD 84, 124052 (2011), specifically Eqs. 30 - 32. Eqs. 30 and 31 are written in explicity linear equation systems in DCC document T1100433. This method is currently used for EOBNRv2 and SEOBNRv1 models. The only difference between the two models in ring-down waveform is the pseudo-QNM introduced in the latter (see Taracchini et al. PRD 86, 024011 (2012) for more details).

Author
Yi Pan, Craig Robinson, Prayush Kumar, Stas Babak, Andrea Taracchini

Definition at line 17 of file LALSimIMREOBHybridRingdownPrec.c.

◆ LMax

#define LMax   6

Definition at line 36 of file LALSimIMREOBHybridRingdownPrec.c.

◆ MMax

#define MMax   6

Definition at line 37 of file LALSimIMREOBHybridRingdownPrec.c.

Function Documentation

◆ XLALCalculateRDAmplitudeCoefficient1()

static REAL8 XLALCalculateRDAmplitudeCoefficient1 ( UINT4  modeL,
UINT4  modeM,
REAL8  eta,
REAL8  chi 
)
static

Definition at line 49 of file LALSimIMREOBHybridRingdownPrec.c.

◆ XLALCalculateRDAmplitudeCoefficient2()

static REAL8 XLALCalculateRDAmplitudeCoefficient2 ( UINT4  modeL,
UINT4  modeM,
REAL8  eta,
REAL8  chi 
)
static

Definition at line 108 of file LALSimIMREOBHybridRingdownPrec.c.

◆ XLALCalculateRDPhaseCoefficient1()

static REAL8 XLALCalculateRDPhaseCoefficient1 ( UINT4  modeL,
UINT4  modeM,
REAL8  eta,
REAL8  chi 
)
static

Definition at line 163 of file LALSimIMREOBHybridRingdownPrec.c.

◆ XLALCalculateRDPhaseCoefficient2()

static REAL8 XLALCalculateRDPhaseCoefficient2 ( UINT4  modeL,
UINT4  modeM,
REAL8  eta,
REAL8  chi 
)
static

Definition at line 221 of file LALSimIMREOBHybridRingdownPrec.c.

◆ XLALSimFindIndexMaxAmpli()

static INT4 XLALSimFindIndexMaxAmpli ( UINT4 indAmax,
REAL8Vector timeVec,
REAL8Vector ampWave,
REAL8 valAmax,
REAL8  tofAmax 
)
static

Definition at line 1643 of file LALSimIMREOBHybridRingdownPrec.c.

◆ XLALSimIMREOBHybridRingdownWave()

static INT4 XLALSimIMREOBHybridRingdownWave ( REAL8Vector rdwave1,
REAL8Vector rdwave2,
const REAL8  dt,
const REAL8  mass1,
const REAL8  mass2,
REAL8VectorSequence inspwave1,
REAL8VectorSequence inspwave2,
COMPLEX16Vector modefreqs,
REAL8Vector matchrange 
)
static

Generates the ringdown wave associated with the given real and imaginary parts of the inspiral waveform.

The parameters of the ringdown, such as amplitude and phase offsets, are determined by solving the linear equations defined in the DCC document T1100433. In the linear equations Ax=y, A is a 16-by-16 matrix depending on QNM (complex) frequencies, x is a 16-d vector of the 8 unknown complex QNM amplitudes, y is a 16-d vector depending on inspiral-plunge waveforms and their derivatives near merger.

Print the solution:

Parameters
rdwave1< OUTPUT, Real part of ringdown waveform
rdwave2< OUTPUT, Imag part of ringdown waveform
dt< Sampling interval
mass1< First component mass (in Solar masses)
mass2< Second component mass (in Solar masses)
inspwave1< Values and derivs of real part inspiral waveform
inspwave2< Values and derivs of imag part inspiral waveform
modefreqs< Complex freqs of ringdown (scaled by total mass)
matchrange< Times which determine the comb of ringdown attachment

Definition at line 297 of file LALSimIMREOBHybridRingdownPrec.c.

◆ XLALGenerateHybridWaveDerivatives()

static INT4 XLALGenerateHybridWaveDerivatives ( REAL8Vector rwave,
REAL8Vector dwave,
REAL8Vector ddwave,
REAL8Vector timeVec,
REAL8Vector wave,
REAL8Vector matchrange,
REAL8  dt,
REAL8  mass1,
REAL8  mass2 
)
static

Function which calculates the value of the waveform, plus its first and second derivatives, for the points which will be required in the hybrid comb attachment of the ringdown.

Parameters
rwave< OUTPUT, values of the waveform at comb points
dwave< OUTPUT, 1st deriv of the waveform at comb points
ddwave< OUTPUT, 2nd deriv of the waveform at comb points
timeVec< Vector containing the time
wave< Last part of inspiral waveform
matchrange< Times which determine the size of the comb
dt< Sample time step
mass1< First component mass (in Solar masses)
mass2< Second component mass (in Solar masses)

Definition at line 513 of file LALSimIMREOBHybridRingdownPrec.c.

◆ get_major_approximant()

static INT4 get_major_approximant ( Approximant  approximant)
static

Translates the major approximant version into an unsigned integer to minimize if and or statements throughout the function XLALSimIMREOBHybridAttachRingdownPrec.

Translation into an unsigned integer prevents issues with passing the approximant parameter to other functions.

Parameters
approximant<The waveform approximant being used

Definition at line 630 of file LALSimIMREOBHybridRingdownPrec.c.

◆ XLALSimIMREOBHybridAttachRingdownPrec()

static UNUSED INT4 XLALSimIMREOBHybridAttachRingdownPrec ( REAL8Vector signal1,
REAL8Vector signal2,
const INT4  l,
const INT4  m,
const REAL8  dt,
const REAL8  mass1,
const REAL8  mass2,
const REAL8  spin1x,
const REAL8  spin1y,
const REAL8  spin1z,
const REAL8  spin2x,
const REAL8  spin2y,
const REAL8  spin2z,
REAL8Vector timeVec,
REAL8Vector matchrange,
Approximant  approximant,
const REAL8  JLN 
)
static

The main workhorse function for performing the ringdown attachment for EOB models EOBNRv2 and SEOBNRv1.

This is the function which gets called by the code generating the full IMR waveform once generation of the inspiral part has been completed. The ringdown is attached using the hybrid comb matching detailed in The method is describe in Sec. II C of Pan et al. PRD 84, 124052 (2011), specifically Eqs. 30 - 32.. Further details of the implementation of the found in the DCC document T1100433. In SEOBNRv1, the last physical overtone is replace by a pseudoQNM. See Taracchini et al. PRD 86, 024011 (2012) for details. STEP 1) Get mass and spin of the final black hole and the complex ringdown frequencies STEP 2) Based on least-damped-mode decay time, allocate memory for rigndown waveform STEP 3) Get values and derivatives of inspiral waveforms at matching comb points STEP 4) Solve QNM coefficients and generate ringdown waveforms STEP 5) Stitch inspiral and ringdown waveoforms SEOBNRv2 prescriptions can be found in https://dcc.ligo.org/T1400476 SEONBRv3 prescriptions can be found in XXX

Parameters
signal1< OUTPUT, Real of inspiral waveform to which we attach ringdown
signal2< OUTPUT, Imag of inspiral waveform to which we attach ringdown
l< Current mode l
m< Current mode m
dt< Sample time step (in seconds)
mass1< First component mass (in Solar masses)
mass2< Second component mass (in Solar masses)
spin1x<The spin of the first object; only needed for spin waveforms
spin1y<The spin of the first object; only needed for spin waveforms
spin1z<The spin of the first object; only needed for spin waveforms
spin2x<The spin of the second object; only needed for spin waveforms
spin2y<The spin of the second object; only needed for spin waveforms
spin2z<The spin of the second object; only needed for spin waveforms
timeVec< Vector containing the time values
matchrange< Time values chosen as points for performing comb matching
approximant<The waveform approximant being used
JLN< cosine of the angle between J and LN at the light ring

Definition at line 663 of file LALSimIMREOBHybridRingdownPrec.c.

◆ XLALSimIMREOBAttachFitRingdown()

static UNUSED INT4 XLALSimIMREOBAttachFitRingdown ( REAL8Vector signal1,
REAL8Vector signal2,
const INT4  l,
const INT4  m,
const REAL8  dt,
const REAL8  mass1,
const REAL8  mass2,
const REAL8  spin1x,
const REAL8  spin1y,
const REAL8  spin1z,
const REAL8  spin2x,
const REAL8  spin2y,
const REAL8  spin2z,
const REAL8  finalM,
const REAL8  finalS,
REAL8Vector timeVec,
REAL8Vector matchrange,
Approximant  approximant,
UINT4 indAmpMax 
)
static

The main function for performing the ringdown attachment for SEOBNRv4 (and beyond) This is the function which gets called by the code generating the full IMR waveform once generation of the inspiral part has been completed.

The ringdown is attached by factoring the less damped harmonics and apply tanh fit to the rest. STEP 1) Get mass and spin of the final black hole and the complex ringdown frequencies STEP 2) Apply the fit function from the attachment time STEP 3) Construct the full RD by applying (factor) of less damped 220 mode STEP 4) Constructing the RD stitched to the inspiral-merger See Section 5.2 of https://dcc.ligo.org/T1600383

Parameters
signal1< OUTPUT, Real of inspiral waveform to which we attach ringdown
signal2< OUTPUT, Imag of inspiral waveform to which we attach ringdown
l< Current mode l
m< Current mode m
dt< Sample time step (in seconds)
mass1< First component mass (in Solar masses)
mass2< Second component mass (in Solar masses)
spin1x<The spin of the first object;
spin1y<The spin of the first object;
spin1z<The spin of the first object;
spin2x<The spin of the second object;
spin2y<The spin of the second object;
spin2z<The spin of the second object;
finalM<The spin of the final BH;
finalS< The magnitude of the final spin
timeVec< Vector containing the time values
matchrange< Time values chosen as points for performing comb matching
approximant<The waveform approximant being used
indAmpMax<This is used only for SEOBNRv4HM, it is needed to remember the attaching point of the 22 mode

Definition at line 1678 of file LALSimIMREOBHybridRingdownPrec.c.