Loading [MathJax]/extensions/TeX/AMSsymbols.js
LALInspiral 5.0.3.1-da3b9d3
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Module LALPSpinInspiralRD.c

Detailed Description

Module to generate generic spinning binaries waveforms complete with ring-down.

Prototypes

LALPSpinInspiralRD()

status:
Input/Output
signalvec:
Output containing the inspiral waveform.
params:
Input containing binary chirp parameters.

LALPSpinInspiralRDTemplates()

status:
Input/Output
signalvec1:
Output containing the \(+\) inspiral waveform.
signalvec2:
Output containing the \(\times\) inspiral waveform.
params:
Input containing binary chirp parameters.

LALPSpinInspiralRDInjection()

status:
Input/Output
signalvec:
Output containing the inspiral waveform.
params:
Input containing binary chirp parameters.

LALPSpinInspiralRDFreqDom()

status:
Input/Output
signalvec:
Output containing the inspiral waveform in frequency domain.
params:
Input containing binary chirp parameters.

Description

This codes provide complete waveforms for generically spinning binary systems. In order to construct the waveforms three phases are joined together: an initial inspiral phase, a phenomenological phase encompassing the description of the merger and the ring-down of the final black hole. During the inspiral phase the system is evolved according to the standard PN formulas, valid up to 3.5PN for the orbital motion, to 3PN level for spin-orbital momentum and to 2PN for spin-spin contributions to the orbital phase. Then a phenomenological phase is added during which the frequency of the waveform has a pole-like behaviour. The stitching is performed in order to ensure continuity of the phase, the frequency and its first and second derivatives. Finally a ring-down phase is attached.

Algorithm

Uses

LALPSpinInspiralRDderivatives()
void LALInspiralSetup(LALStatus *status, expnCoeffs *ak, InspiralTemplate *params)
void LALInspiralChooseModel(LALStatus *status, expnFunc *func, expnCoeffs *ak, InspiralTemplate *params)
void LALRungeKutta4(LALStatus *, REAL8Vector *, rk4GSLIntegrator *, void *)
static int XLALSpinInspiralFillH4Modes(REAL8Vector *h4P4, REAL8Vector *h4M4, REAL8Vector *h4P3, REAL8Vector *h4M3, REAL8Vector *h4P2, REAL8Vector *h4M2, REAL8Vector *h4P1, REAL8Vector *h4M1, REAL8Vector *h40, INT4 j, REAL8 amp44, REAL8 v, REAL8 eta, REAL8 dm, REAL8 Psi, REAL8 alpha, LALSpinInspiralAngle *an)
static REAL8 fracRD(REAL8 LNhS1, REAL8 LNhS2, REAL8 S1S1, REAL8 S1S2, REAL8 S2S2)
static REAL8 OmMatch(REAL8 LNhS1, REAL8 LNhS2, REAL8 S1S1, REAL8 S1S2, REAL8 S2S2)
static int XLALPSpinInspiralRDSetParams(LALPSpinInspiralRDparams *mparams, InspiralTemplate *params, InspiralInit *paramsInit)
static int XLALSpinInspiralTest(double t, const double values[], double dvalues[], void *mparams)
static int XLALSpinInspiralFillH3Modes(REAL8Vector *h3P3, REAL8Vector *h3M3, REAL8Vector *h3P2, REAL8Vector *h3M2, REAL8Vector *h3P1, REAL8Vector *h3M1, REAL8Vector *h30, UINT4 j, REAL4 amp, REAL4 v, REAL4 eta, REAL4 dm, REAL8 Psi, REAL8 alpha, LALSpinInspiralAngle *an)
static void LALSpinInspiralDerivatives(REAL8Vector *values, REAL8Vector *dvalues, void *mparams)
static int XLALSpinInspiralDerivatives(double t, const double values[], double dvalues[], void *mparams)
Function to compute detivative of dynamical variables.
static int XLALSpinInspiralFillH2Modes(REAL8Vector *h2P2, REAL8Vector *h2M2, REAL8Vector *h2P1, REAL8Vector *h2M1, REAL8Vector *h20, UINT4 j, REAL4 amp, REAL4 v, REAL4 eta, REAL4 dm, REAL8 Psi, REAL8 alpha, LALSpinInspiralAngle *an)
Function actually computing PSIRD waveforms.

Notes

Prototypes

static REAL8 OmMatch (REAL8 LNhS1, REAL8 LNhS2, REAL8 S1S1, REAL8 S1S2, REAL8 S2S2)
 
static REAL8 fracRD (REAL8 LNhS1, REAL8 LNhS2, REAL8 S1S1, REAL8 S1S2, REAL8 S2S2)
 
static int XLALPSpinInspiralRDSetParams (LALPSpinInspiralRDparams *mparams, InspiralTemplate *params, InspiralInit *paramsInit)
 
static int XLALSpinInspiralTest (double t, const double values[], double dvalues[], void *mparams)
 
static int XLALSpinInspiralDerivatives (double t, const double values[], double dvalues[], void *mparams)
 Function to compute detivative of dynamical variables. More...
 
static void LALSpinInspiralDerivatives (REAL8Vector *values, REAL8Vector *dvalues, void *mparams)
 
static int XLALPSpinInspiralRDEngine (REAL8Vector *signalvec1, REAL8Vector *signalvec2, REAL8Vector *hh, REAL8Vector *ff, REAL8Vector *phi, InspiralTemplate *params, InspiralInit *paramsInit)
 Main function to produce waveforms. More...
 
int XLALPSpinInspiralRD (REAL4Vector *signalvec, InspiralTemplate *params)
 
int XLALPSpinInspiralRDTemplates (REAL4Vector *signalvec1, REAL4Vector *signalvec2, InspiralTemplate *params)
 Function to produce waveform templates. More...
 
int XLALPSpinInspiralRDForInjection (CoherentGW *waveform, InspiralTemplate *params, PPNParamStruc *ppnParams)
 Function Module to produce injection waveforms. More...
 
int XLALPSpinInspiralRDFreqDom (REAL4Vector *signalvec, InspiralTemplate *params)
 
static int XLALSpinInspiralFillH2Modes (REAL8Vector *h2P2, REAL8Vector *h2M2, REAL8Vector *h2P1, REAL8Vector *h2M1, REAL8Vector *h20, UINT4 j, REAL4 amp, REAL4 v, REAL4 eta, REAL4 dm, REAL8 Psi, REAL8 alpha, LALSpinInspiralAngle *an)
 Function actually computing PSIRD waveforms. More...
 
static int XLALSpinInspiralFillH3Modes (REAL8Vector *h3P3, REAL8Vector *h3M3, REAL8Vector *h3P2, REAL8Vector *h3M2, REAL8Vector *h3P1, REAL8Vector *h3M1, REAL8Vector *h30, UINT4 j, REAL4 amp, REAL4 v, REAL4 eta, REAL4 dm, REAL8 Psi, REAL8 alpha, LALSpinInspiralAngle *an)
 
static int XLALSpinInspiralFillH4Modes (REAL8Vector *h4P4, REAL8Vector *h4M4, REAL8Vector *h4P3, REAL8Vector *h4M3, REAL8Vector *h4P2, REAL8Vector *h4M2, REAL8Vector *h4P1, REAL8Vector *h4M1, REAL8Vector *h40, INT4 j, REAL8 amp44, REAL8 v, REAL8 eta, REAL8 dm, REAL8 Psi, REAL8 alpha, LALSpinInspiralAngle *an)
 
static int XLALSpinInspiralEngine (UINT4 neqs, const REAL8 yinit[], REAL8 amp22ini, LALPSpinInspiralRDparams *mparams, REAL8Vector *h2P2, REAL8Vector *h2M2, REAL8Vector *h2P1, REAL8Vector *h2M1, REAL8Vector *h20, REAL8Vector *h3P3, REAL8Vector *h3M3, REAL8Vector *h3P2, REAL8Vector *h3M2, REAL8Vector *h3P1, REAL8Vector *h3M1, REAL8Vector *h30, REAL8Vector *h4P4, REAL8Vector *h4M4, REAL8Vector *h4P3, REAL8Vector *h4M3, REAL8Vector *h4P2, REAL8Vector *h4M2, REAL8Vector *h4P1, REAL8Vector *h4M1, REAL8Vector *h40, REAL8Vector *freq, REAL8Vector *phase, LALPSpinInspiralPhenPars *phenPars)
 
static int XLALSpinInspiralAdaptiveEngine (const UINT4 neqs, const REAL8 yinit[], REAL8 amp22ini, LALPSpinInspiralRDparams *mparams, REAL8Vector *h2P2, REAL8Vector *h2M2, REAL8Vector *h2P1, REAL8Vector *h2M1, REAL8Vector *h20, REAL8Vector *h3P3, REAL8Vector *h3M3, REAL8Vector *h3P2, REAL8Vector *h3M2, REAL8Vector *h3P1, REAL8Vector *h3M1, REAL8Vector *h30, REAL8Vector *h4P4, REAL8Vector *h4M4, REAL8Vector *h4P3, REAL8Vector *h4M3, REAL8Vector *h4P2, REAL8Vector *h4M2, REAL8Vector *h4P1, REAL8Vector *h4M1, REAL8Vector *h40, REAL8Vector *freq, REAL8Vector *phase, LALPSpinInspiralPhenPars *phenPars)
 

Data Structures

struct  LALPSpinInspiralRDparams
 
struct  LALPSpinInspiralPhenPars
 
struct  LALSpinInspiralAngle
 

Macros

#define LALPSIRDPN_TEST_ENERGY   1025
 
#define LALPSIRDPN_TEST_OMEGADOT   1026
 
#define LALPSIRDPN_TEST_OMEGANAN   1028
 
#define LALPSIRDPN_TEST_OMEGAMATCH   1029
 
#define LALPSIRDPN_TEST_OMEGANONPOS   1031
 
#define LALPSIRDPN_TEST_OMEGACUT   1032
 
#define sqrtOnePointFive   1.22474
 
#define sqrtPoint15   0.387298
 
#define sqrtFiveOver2   1.1183
 
#define minIntLen   8
 

Function Documentation

◆ OmMatch()

static REAL8 OmMatch ( REAL8  LNhS1,
REAL8  LNhS2,
REAL8  S1S1,
REAL8  S1S2,
REAL8  S2S2 
)
static

Definition at line 121 of file LALPSpinInspiralRD.c.

◆ fracRD()

static REAL8 fracRD ( REAL8  LNhS1,
REAL8  LNhS2,
REAL8  S1S1,
REAL8  S1S2,
REAL8  S2S2 
)
static

Definition at line 146 of file LALPSpinInspiralRD.c.

◆ XLALPSpinInspiralRDSetParams()

static int XLALPSpinInspiralRDSetParams ( LALPSpinInspiralRDparams mparams,
InspiralTemplate params,
InspiralInit paramsInit 
)
static

Definition at line 255 of file LALPSpinInspiralRD.c.

◆ XLALSpinInspiralTest()

static int XLALSpinInspiralTest ( double  t,
const double  values[],
double  dvalues[],
void *  mparams 
)
static

Definition at line 451 of file LALPSpinInspiralRD.c.

◆ XLALSpinInspiralDerivatives()

static int XLALSpinInspiralDerivatives ( double  t,
const double  values[],
double  dvalues[],
void *  mparams 
)
static

Function to compute detivative of dynamical variables.

Definition at line 505 of file LALPSpinInspiralRD.c.

◆ LALSpinInspiralDerivatives()

static void LALSpinInspiralDerivatives ( REAL8Vector values,
REAL8Vector dvalues,
void *  mparams 
)
static

Definition at line 694 of file LALPSpinInspiralRD.c.

◆ XLALPSpinInspiralRDEngine()

static int XLALPSpinInspiralRDEngine ( REAL8Vector signalvec1,
REAL8Vector signalvec2,
REAL8Vector hh,
REAL8Vector ff,
REAL8Vector phi,
InspiralTemplate params,
InspiralInit paramsInit 
)
static

Main function to produce waveforms.

Definition at line 2126 of file LALPSpinInspiralRD.c.

◆ XLALPSpinInspiralRD()

int XLALPSpinInspiralRD ( REAL4Vector signalvec,
InspiralTemplate params 
)

Definition at line 712 of file LALPSpinInspiralRD.c.

◆ XLALPSpinInspiralRDTemplates()

int XLALPSpinInspiralRDTemplates ( REAL4Vector signalvec1,
REAL4Vector signalvec2,
InspiralTemplate params 
)

Function to produce waveform templates.

Definition at line 751 of file LALPSpinInspiralRD.c.

◆ XLALPSpinInspiralRDForInjection()

int XLALPSpinInspiralRDForInjection ( CoherentGW waveform,
InspiralTemplate params,
PPNParamStruc ppnParams 
)

Function Module to produce injection waveforms.

Definition at line 804 of file LALPSpinInspiralRD.c.

◆ XLALPSpinInspiralRDFreqDom()

int XLALPSpinInspiralRDFreqDom ( REAL4Vector signalvec,
InspiralTemplate params 
)

Definition at line 928 of file LALPSpinInspiralRD.c.

◆ XLALSpinInspiralFillH2Modes()

static int XLALSpinInspiralFillH2Modes ( REAL8Vector h2P2,
REAL8Vector h2M2,
REAL8Vector h2P1,
REAL8Vector h2M1,
REAL8Vector h20,
UINT4  j,
REAL4  amp,
REAL4  v,
REAL4  eta,
REAL4  dm,
REAL8  Psi,
REAL8  alpha,
LALSpinInspiralAngle an 
)
static

Function actually computing PSIRD waveforms.

Definition at line 1046 of file LALPSpinInspiralRD.c.

◆ XLALSpinInspiralFillH3Modes()

static int XLALSpinInspiralFillH3Modes ( REAL8Vector h3P3,
REAL8Vector h3M3,
REAL8Vector h3P2,
REAL8Vector h3M2,
REAL8Vector h3P1,
REAL8Vector h3M1,
REAL8Vector h30,
UINT4  j,
REAL4  amp,
REAL4  v,
REAL4  eta,
REAL4  dm,
REAL8  Psi,
REAL8  alpha,
LALSpinInspiralAngle an 
)
static

Definition at line 1121 of file LALPSpinInspiralRD.c.

◆ XLALSpinInspiralFillH4Modes()

static int XLALSpinInspiralFillH4Modes ( REAL8Vector h4P4,
REAL8Vector h4M4,
REAL8Vector h4P3,
REAL8Vector h4M3,
REAL8Vector h4P2,
REAL8Vector h4M2,
REAL8Vector h4P1,
REAL8Vector h4M1,
REAL8Vector h40,
INT4  j,
REAL8  amp44,
REAL8  v,
REAL8  eta,
REAL8  dm,
REAL8  Psi,
REAL8  alpha,
LALSpinInspiralAngle an 
)
static

Definition at line 1263 of file LALPSpinInspiralRD.c.

◆ XLALSpinInspiralEngine()

static int XLALSpinInspiralEngine ( UINT4  neqs,
const REAL8  yinit[],
REAL8  amp22ini,
LALPSpinInspiralRDparams mparams,
REAL8Vector h2P2,
REAL8Vector h2M2,
REAL8Vector h2P1,
REAL8Vector h2M1,
REAL8Vector h20,
REAL8Vector h3P3,
REAL8Vector h3M3,
REAL8Vector h3P2,
REAL8Vector h3M2,
REAL8Vector h3P1,
REAL8Vector h3M1,
REAL8Vector h30,
REAL8Vector h4P4,
REAL8Vector h4M4,
REAL8Vector h4P3,
REAL8Vector h4M3,
REAL8Vector h4P2,
REAL8Vector h4M2,
REAL8Vector h4P1,
REAL8Vector h4M1,
REAL8Vector h40,
REAL8Vector freq,
REAL8Vector phase,
LALPSpinInspiralPhenPars phenPars 
)
static

Definition at line 1366 of file LALPSpinInspiralRD.c.

◆ XLALSpinInspiralAdaptiveEngine()

static int XLALSpinInspiralAdaptiveEngine ( const UINT4  neqs,
const REAL8  yinit[],
REAL8  amp22ini,
LALPSpinInspiralRDparams mparams,
REAL8Vector h2P2,
REAL8Vector h2M2,
REAL8Vector h2P1,
REAL8Vector h2M1,
REAL8Vector h20,
REAL8Vector h3P3,
REAL8Vector h3M3,
REAL8Vector h3P2,
REAL8Vector h3M2,
REAL8Vector h3P1,
REAL8Vector h3M1,
REAL8Vector h30,
REAL8Vector h4P4,
REAL8Vector h4M4,
REAL8Vector h4P3,
REAL8Vector h4M3,
REAL8Vector h4P2,
REAL8Vector h4M2,
REAL8Vector h4P1,
REAL8Vector h4M1,
REAL8Vector h40,
REAL8Vector freq,
REAL8Vector phase,
LALPSpinInspiralPhenPars phenPars 
)
static

Definition at line 1729 of file LALPSpinInspiralRD.c.

Macro Definition Documentation

◆ LALPSIRDPN_TEST_ENERGY

#define LALPSIRDPN_TEST_ENERGY   1025

Definition at line 107 of file LALPSpinInspiralRD.c.

◆ LALPSIRDPN_TEST_OMEGADOT

#define LALPSIRDPN_TEST_OMEGADOT   1026

Definition at line 108 of file LALPSpinInspiralRD.c.

◆ LALPSIRDPN_TEST_OMEGANAN

#define LALPSIRDPN_TEST_OMEGANAN   1028

Definition at line 109 of file LALPSpinInspiralRD.c.

◆ LALPSIRDPN_TEST_OMEGAMATCH

#define LALPSIRDPN_TEST_OMEGAMATCH   1029

Definition at line 110 of file LALPSpinInspiralRD.c.

◆ LALPSIRDPN_TEST_OMEGANONPOS

#define LALPSIRDPN_TEST_OMEGANONPOS   1031

Definition at line 111 of file LALPSpinInspiralRD.c.

◆ LALPSIRDPN_TEST_OMEGACUT

#define LALPSIRDPN_TEST_OMEGACUT   1032

Definition at line 112 of file LALPSpinInspiralRD.c.

◆ sqrtOnePointFive

#define sqrtOnePointFive   1.22474

Definition at line 114 of file LALPSpinInspiralRD.c.

◆ sqrtPoint15

#define sqrtPoint15   0.387298

Definition at line 115 of file LALPSpinInspiralRD.c.

◆ sqrtFiveOver2

#define sqrtFiveOver2   1.1183

Definition at line 116 of file LALPSpinInspiralRD.c.

◆ minIntLen

#define minIntLen   8

Definition at line 117 of file LALPSpinInspiralRD.c.