LALInspiral 5.0.3.1-eeff03c
LALEOBWaveform.c File Reference

Module to generate effective-one-body waveforms. More...

Prototypes

static REAL8 XLALOmegaOfR2PN (REAL8 r, REAL8 eta)
 
static REAL8 XLALOmegaOfR3PN (REAL8 r, void *params)
 
static REAL8 XLALOmegaOfRP4PN (REAL8 r, void *params)
 
static void LALHCapDerivatives (REAL8Vector *values, REAL8Vector *dvalues, void *funcParams)
 
static REAL8 XLALprInit (REAL8 r, InspiralDerivativesIn *ak)
 
static REAL8 XLALpphiInit (REAL8 r, REAL8 eta)
 
static REAL8 XLALlightRingRadius (REAL8 r, void *params)
 
static REAL8 XLALrOfOmega (REAL8 r, void *params)
 
static void LALHCapDerivatives3PN (REAL8Vector *values, REAL8Vector *dvalues, void *funcParams)
 
static REAL8 XLALprInit3PN (REAL8, void *params)
 
static REAL8 XLALpphiInit3PN (REAL8 r, REAL8 eta, REAL8 omegaS)
 
static REAL8 XLALlightRingRadius3PN (REAL8 r, void *params)
 
static REAL8 XLALrOfOmega3PN (REAL8 r, void *params)
 
static REAL8 XLALvr3PN (void *params)
 
static void LALHCapDerivativesP4PN (REAL8Vector *values, REAL8Vector *dvalues, void *funcParams)
 
static REAL8 XLALprInitP4PN (REAL8, void *params)
 
static REAL8 XLALpphiInitP4PN (REAL8 r, REAL8 eta, REAL8 omegaS)
 
static REAL8 XLALlightRingRadiusP4PN (REAL8 r, void *params)
 
static REAL8 XLALrOfOmegaP4PN (REAL8 r, void *params)
 
static REAL8 XLALvrP4PN (void *params)
 
static int XLALEOBWaveformEngine (REAL4Vector *signalvec1, REAL4Vector *signalvec2, REAL4Vector *h, REAL4Vector *a, REAL4Vector *ff, REAL8Vector *phi, UINT4 *countback, InspiralTemplate *params, InspiralInit *paramsInit)
 
int XLALEOBWaveform (REAL4Vector *signalvec, InspiralTemplate *params)
 
int XLALEOBWaveformTemplates (REAL4Vector *signalvec1, REAL4Vector *signalvec2, InspiralTemplate *params)
 
int XLALEOBWaveformForInjection (CoherentGW *waveform, InspiralTemplate *params, PPNParamStruc *ppnParams)
 

Detailed Description

Module to generate effective-one-body waveforms.

Author
Sathyaprakash, B. S., Cokelaer T.

Prototypes

LALEOBWaveform()

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

LALEOBWaveformTemplates()

  • signalvec1: Output containing the 0-phase inspiral waveform.
  • signalvec2: Output containing the \(\pi/2\)-phase inspiral waveform.
  • params: Input containing binary chirp parameters.

LALEOBWaveformForInjection()

  • inject_hc: Output containing the 0-phase inspiral waveform.
  • inject_hp: Output containing the \(\pi/2\)-phase inspiral waveform.
  • inject_phase: Output containing the phase of inspiral waveform.
  • inject_freq: Output containing the frequency of inspiral waveform.
  • params: Input containing binary chirp parameters.

Description

By solving four coupled ordinary differential equations in Eq. \eqref{eq_3_28}– Eq. \eqref{eq_3_31} this module computes the waveform in Eq. \eqref{eq_4_1} (see discussion in sec_EOB for details on how the initial conditions are chosen, when the waveform is terminated and so on). No quasi-normal mode oscillations are added to the plunge signal so the waveform is terminated around \(2.8\,M\).

3PN vs 2PN

At 3PN, two additional parameters exist namely OmegaS and Zeta2. The first parameters should be set to zero. If the second parameter is also set to zero then the waveform correponds to the standard waveforms.

Algorithm

A fourth order Runge-Kutta is used to solve the differential equations.

Uses

LALInspiralVelocity
LALInspiralPhasing1
LALlightRingRadius
LALlightRingRadius3PN
LALlightRingRadiusP4PN
LALpphiInit
LALpphiInit3PN
LALpphiInitP4PN
LALprInit
LALprInit3PN
LALprInitP4PN
LALrOfOmega
LALrOfOmega3PN
LALrOfOmegaP4PN
int LALHCapDerivativesP4PN(double UNUSED t, const REAL8 values[], REAL8 dvalues[], void *funcParams)
static void LALHCapDerivatives(REAL8Vector *values, REAL8Vector *dvalues, void *funcParams)
static void LALHCapDerivatives3PN(REAL8Vector *values, REAL8Vector *dvalues, void *funcParams)
void LALInspiralSetup(LALStatus *status, expnCoeffs *ak, InspiralTemplate *params)
void LALInspiralChooseModel(LALStatus *status, expnFunc *func, expnCoeffs *ak, InspiralTemplate *params)
void LALRungeKutta4(LALStatus *, REAL8Vector *, rk4GSLIntegrator *, void *)
void LALDBisectionFindRoot(LALStatus *status, REAL8 *root, DFindRootIn *input, void *params)

Notes

The length of the waveform returned by LALInspiralWaveLength is occassionally smaller than what is required to hold an EOB waveform. This is because EOB goes beyond the last stable orbit up to the light ring while LALInspiralWaveLength assumes that the waveform terminates at the last stable orbit. It is recommended that a rather generous params->nEndPad be used to prevent the code from crashing.

Definition in file LALEOBWaveform.c.

Go to the source code of this file.

Data Structures

struct  rOfOmegaIn
 
struct  pr3In
 

Macros

#define ninty4by3etc   18.687902694437592603 /* (94/3 -41/31*pi*pi) */
 

Macro Definition Documentation

◆ ninty4by3etc

#define ninty4by3etc   18.687902694437592603 /* (94/3 -41/31*pi*pi) */

Definition at line 122 of file LALEOBWaveform.c.

Function Documentation

◆ XLALOmegaOfR2PN()

static REAL8 XLALOmegaOfR2PN ( REAL8  r,
REAL8  eta 
)
static

Definition at line 288 of file LALEOBWaveform.c.

◆ XLALOmegaOfR3PN()

static REAL8 XLALOmegaOfR3PN ( REAL8  r,
void *  params 
)
static

Definition at line 475 of file LALEOBWaveform.c.

◆ XLALOmegaOfRP4PN()

static REAL8 XLALOmegaOfRP4PN ( REAL8  r,
void *  params 
)
static

Definition at line 756 of file LALEOBWaveform.c.

◆ LALHCapDerivatives()

static void LALHCapDerivatives ( REAL8Vector values,
REAL8Vector dvalues,
void *  funcParams 
)
static

Definition at line 352 of file LALEOBWaveform.c.

◆ XLALprInit()

static REAL8 XLALprInit ( REAL8  r,
InspiralDerivativesIn ak 
)
static

Definition at line 224 of file LALEOBWaveform.c.

◆ XLALpphiInit()

static REAL8 XLALpphiInit ( REAL8  r,
REAL8  eta 
)
static

Definition at line 274 of file LALEOBWaveform.c.

◆ XLALlightRingRadius()

static REAL8 XLALlightRingRadius ( REAL8  r,
void *  params 
)
static

Definition at line 335 of file LALEOBWaveform.c.

◆ XLALrOfOmega()

static REAL8 XLALrOfOmega ( REAL8  r,
void *  params 
)
static

Definition at line 310 of file LALEOBWaveform.c.

◆ LALHCapDerivatives3PN()

static void LALHCapDerivatives3PN ( REAL8Vector values,
REAL8Vector dvalues,
void *  funcParams 
)
static

Definition at line 551 of file LALEOBWaveform.c.

◆ XLALprInit3PN()

static REAL8 XLALprInit3PN ( REAL8  p,
void *  params 
)
static

Definition at line 428 of file LALEOBWaveform.c.

◆ XLALpphiInit3PN()

static REAL8 XLALpphiInit3PN ( REAL8  r,
REAL8  eta,
REAL8  omegaS 
)
static

Definition at line 400 of file LALEOBWaveform.c.

◆ XLALlightRingRadius3PN()

static REAL8 XLALlightRingRadius3PN ( REAL8  r,
void *  params 
)
static

Definition at line 523 of file LALEOBWaveform.c.

◆ XLALrOfOmega3PN()

static REAL8 XLALrOfOmega3PN ( REAL8  r,
void *  params 
)
static

Definition at line 506 of file LALEOBWaveform.c.

◆ XLALvr3PN()

static REAL8 XLALvr3PN ( void *  params)
static

Definition at line 627 of file LALEOBWaveform.c.

◆ LALHCapDerivativesP4PN()

static void LALHCapDerivativesP4PN ( REAL8Vector values,
REAL8Vector dvalues,
void *  funcParams 
)
static

Definition at line 844 of file LALEOBWaveform.c.

◆ XLALprInitP4PN()

static REAL8 XLALprInitP4PN ( REAL8  p,
void *  params 
)
static

Definition at line 705 of file LALEOBWaveform.c.

◆ XLALpphiInitP4PN()

static REAL8 XLALpphiInitP4PN ( REAL8  r,
REAL8  eta,
REAL8  omegaS 
)
static

Definition at line 674 of file LALEOBWaveform.c.

◆ XLALlightRingRadiusP4PN()

static REAL8 XLALlightRingRadiusP4PN ( REAL8  r,
void *  params 
)
static

Definition at line 810 of file LALEOBWaveform.c.

◆ XLALrOfOmegaP4PN()

static REAL8 XLALrOfOmegaP4PN ( REAL8  r,
void *  params 
)
static

Definition at line 791 of file LALEOBWaveform.c.

◆ XLALvrP4PN()

static REAL8 XLALvrP4PN ( void *  params)
static

Definition at line 917 of file LALEOBWaveform.c.

◆ XLALEOBWaveformEngine()

static int XLALEOBWaveformEngine ( REAL4Vector signalvec1,
REAL4Vector signalvec2,
REAL4Vector h,
REAL4Vector a,
REAL4Vector ff,
REAL8Vector phi,
UINT4 countback,
InspiralTemplate params,
InspiralInit paramsInit 
)
static

Definition at line 1432 of file LALEOBWaveform.c.

◆ XLALEOBWaveform()

int XLALEOBWaveform ( REAL4Vector signalvec,
InspiralTemplate params 
)

Definition at line 972 of file LALEOBWaveform.c.

◆ XLALEOBWaveformTemplates()

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

Definition at line 1037 of file LALEOBWaveform.c.

◆ XLALEOBWaveformForInjection()

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

Definition at line 1117 of file LALEOBWaveform.c.