LALSimulation  5.4.0.1-fe68b98
LALSimBlackHoleRingdown.c File Reference

Prototypes

static int XLALSimBlackHoleRingdownModeSphericalCoefficientsLeaver (COMPLEX16 *alp, COMPLEX16 *bet, COMPLEX16 *gam, double UNUSED a, int l, int UNUSED m, int n, int s, COMPLEX16 UNUSED A, COMPLEX16 omega)
 
static int XLALSimBlackHoleRingdownModeAngularCoefficientsLeaver (COMPLEX16 *alp, COMPLEX16 *bet, COMPLEX16 *gam, double a, int UNUSED l, int m, int n, int s, COMPLEX16 A, COMPLEX16 omega)
 
static int XLALSimBlackHoleRingdownModeRadialCoefficientsLeaver (COMPLEX16 *alp, COMPLEX16 *bet, COMPLEX16 *gam, double a, int UNUSED l, int m, int n, int s, COMPLEX16 A, COMPLEX16 omega)
 
static COMPLEX16 XLALSimBlackHoleRingdownModeEigenvalueEvaluateContinuedFractionLeaver (double a, int l, int m, int s, COMPLEX16 A, COMPLEX16 omega, int(*coef)(COMPLEX16 *, COMPLEX16 *, COMPLEX16 *, double, int, int, int, int, COMPLEX16, COMPLEX16))
 
static int XLALSimBlackHoleRingdownModeSchwarzschildEigenvalueSolveResid (const gsl_vector *x, void *params, gsl_vector *f)
 
static int XLALSimBlackHoleRingdownModeKerrEigenvalueSolveResid (const gsl_vector *x, void *params, gsl_vector *f)
 
static int XLALSimBlackHoleRingdownModeEigenvalueSolveSchwarzschild (COMPLEX16 *omega, int l, int m, int s)
 
static int XLALSimBlackHoleRingdownModeEigenvalueSolveKerr (COMPLEX16 *A, COMPLEX16 *omega, double a, int l, int m, int s)
 
static COMPLEX16 XLALSimBlackHoleRingdownSpheroidalWaveFunction1Leaver (double mu, double a, int l, int m, int s, COMPLEX16 A, COMPLEX16 omega)
 
static double XLALSimBlackHoleRingdownSpheriodalWaveFunctionNormIntegrand (double mu, void *params)
 
static COMPLEX16 XLALSimBlackHoleRingdownSpheroidalWaveFunctionNormLeaver (double a, int l, int m, int s, COMPLEX16 A, COMPLEX16 omega)
 
INT4 XLALSimIMREOBGenerateQNMFreqV5 (COMPLEX16Vector *modefreqs, const REAL8 mass1, const REAL8 mass2, const REAL8 spin1[3], const REAL8 spin2[3], UINT4 l, INT4 m, UINT4 nmodes, Approximant approximant)
 These functions generate the quasinormal mode frequencies for a black hole ringdown, as implemented in the SEOBNRv5HM model. More...
 
INT4 XLALSimIMREOBGenerateQNMFreqV5fromFinal (COMPLEX16Vector *modefreqs, const REAL8 finalMass, const REAL8 finalSpin, UINT4 l, INT4 m, UINT4 nmodes)
 
Low-Level Routines
Attention
The variables are represented in Leaver's conventions in which G = c = 2M = 1. In particular this means, |a| < 0.5.
int XLALSimBlackHoleRingdownModeEigenvaluesLeaver (COMPLEX16 *A, COMPLEX16 *omega, double a, int l, int m, int s)
 Low-level routine that computes the black hole quasinormal mode eigenefrequency, omega, and angular separation constant A for a given (l,m) mode and spin-weight s (s=-2 for gravitational perturbations). More...
 
COMPLEX16 XLALSimBlackHoleRingdownSpheroidalWaveFunctionLeaver (double mu, double a, int l, int m, int s, COMPLEX16 A, COMPLEX16 omega)
 Low-level routine that evaluates the spheroidal wave function at a specified value of mu = cos(theta) for a given (l,m) mode and spin-weight s (s=-2 for gravitational perturbations). More...
 
High-Level Routines
int XLALSimBlackHoleRingdownMode (double *frequency, double *quality, double mass, double dimensionless_spin, int l, int m, int s)
 Computes the frequency and quality factor of a specified quasinormal mode (l,m) of spin weight s perturbations (s=-2 for gravitational perturbations) of a black hole of a specified mass and spin. More...
 
COMPLEX16 XLALSimBlackHoleRingdownSpheroidalWaveFunction (double theta, double dimensionless_spin, int l, int m, int s)
 Evaluates the value of spheroidal wave function at a given polar angle theta for a specified mode (l,m) and spin weight s (s=-2 for gravitational perturbations) and dimensionless spin parameter. More...
 
int XLALSimBlackHoleRingdown (REAL8TimeSeries **hplus, REAL8TimeSeries **hcross, const LIGOTimeGPS *t0, double phi0, double deltaT, double mass, double dimensionless_spin, double fractional_mass_loss, double distance, double inclination, int l, int m)
 Computes the waveform for the ringdown of a black hole quasinormal mode (l,m). More...
 
REAL8 XLALSimRadiusKerrISCO (REAL8 a)
 
REAL8 XLALSimEnergyKerrISCO (REAL8 rISCO)
 
REAL8 XLALSimAngMomKerrISCO (REAL8 rISCO)
 
INT4 XLALSimIMREOBFinalMassSpin (REAL8 *finalMass, REAL8 *finalSpin, const REAL8 mass1, const REAL8 mass2, const REAL8 spin1[3], const REAL8 spin2[3], Approximant approximant)
 Computes the final mass and spin of the black hole resulting from merger. More...
 
INT4 XLALSimIMREOBGenerateQNMFreqV2 (COMPLEX16Vector *modefreqs, const REAL8 mass1, const REAL8 mass2, const REAL8 spin1[3], const REAL8 spin2[3], UINT4 l, INT4 m, UINT4 nmodes, Approximant approximant)
 These functions generate the quasinormal mode frequencies for a black hole ringdown. More...
 
INT4 XLALSimIMREOBGenerateQNMFreqV2fromFinal (COMPLEX16Vector *modefreqs, const REAL8 finalMass, const REAL8 finalSpin, UINT4 l, INT4 m, UINT4 nmodes)
 

Go to the source code of this file.

Data Structures

struct  LALSimBlackHoleRingdownModeLeaver
 

Macros

#define EPS   LAL_REAL4_EPS
 
#define TINY   LAL_REAL4_MIN
 
#define MAXITER   16384
 

Macro Definition Documentation

◆ EPS

#define EPS   LAL_REAL4_EPS

Definition at line 17 of file LALSimBlackHoleRingdown.c.

◆ TINY

#define TINY   LAL_REAL4_MIN

Definition at line 18 of file LALSimBlackHoleRingdown.c.

◆ MAXITER

#define MAXITER   16384

Definition at line 19 of file LALSimBlackHoleRingdown.c.

Function Documentation

◆ XLALSimBlackHoleRingdownModeSphericalCoefficientsLeaver()

static int XLALSimBlackHoleRingdownModeSphericalCoefficientsLeaver ( COMPLEX16 alp,
COMPLEX16 bet,
COMPLEX16 gam,
double UNUSED  a,
int  l,
int UNUSED  m,
int  n,
int  s,
COMPLEX16 UNUSED  A,
COMPLEX16  omega 
)
static

Definition at line 38 of file LALSimBlackHoleRingdown.c.

◆ XLALSimBlackHoleRingdownModeAngularCoefficientsLeaver()

static int XLALSimBlackHoleRingdownModeAngularCoefficientsLeaver ( COMPLEX16 alp,
COMPLEX16 bet,
COMPLEX16 gam,
double  a,
int UNUSED  l,
int  m,
int  n,
int  s,
COMPLEX16  A,
COMPLEX16  omega 
)
static

Definition at line 50 of file LALSimBlackHoleRingdown.c.

◆ XLALSimBlackHoleRingdownModeRadialCoefficientsLeaver()

static int XLALSimBlackHoleRingdownModeRadialCoefficientsLeaver ( COMPLEX16 alp,
COMPLEX16 bet,
COMPLEX16 gam,
double  a,
int UNUSED  l,
int  m,
int  n,
int  s,
COMPLEX16  A,
COMPLEX16  omega 
)
static

Definition at line 64 of file LALSimBlackHoleRingdown.c.

◆ XLALSimBlackHoleRingdownModeEigenvalueEvaluateContinuedFractionLeaver()

static COMPLEX16 XLALSimBlackHoleRingdownModeEigenvalueEvaluateContinuedFractionLeaver ( double  a,
int  l,
int  m,
int  s,
COMPLEX16  A,
COMPLEX16  omega,
int(*)(COMPLEX16 *, COMPLEX16 *, COMPLEX16 *, double, int, int, int, int, COMPLEX16, COMPLEX16 coef 
)
static

Definition at line 86 of file LALSimBlackHoleRingdown.c.

◆ XLALSimBlackHoleRingdownModeSchwarzschildEigenvalueSolveResid()

static int XLALSimBlackHoleRingdownModeSchwarzschildEigenvalueSolveResid ( const gsl_vector *  x,
void *  params,
gsl_vector *  f 
)
static

Definition at line 129 of file LALSimBlackHoleRingdown.c.

◆ XLALSimBlackHoleRingdownModeKerrEigenvalueSolveResid()

static int XLALSimBlackHoleRingdownModeKerrEigenvalueSolveResid ( const gsl_vector *  x,
void *  params,
gsl_vector *  f 
)
static

Definition at line 148 of file LALSimBlackHoleRingdown.c.

◆ XLALSimBlackHoleRingdownModeEigenvalueSolveSchwarzschild()

static int XLALSimBlackHoleRingdownModeEigenvalueSolveSchwarzschild ( COMPLEX16 omega,
int  l,
int  m,
int  s 
)
static

Definition at line 173 of file LALSimBlackHoleRingdown.c.

◆ XLALSimBlackHoleRingdownModeEigenvalueSolveKerr()

static int XLALSimBlackHoleRingdownModeEigenvalueSolveKerr ( COMPLEX16 A,
COMPLEX16 omega,
double  a,
int  l,
int  m,
int  s 
)
static

Definition at line 238 of file LALSimBlackHoleRingdown.c.

◆ XLALSimBlackHoleRingdownSpheroidalWaveFunction1Leaver()

static COMPLEX16 XLALSimBlackHoleRingdownSpheroidalWaveFunction1Leaver ( double  mu,
double  a,
int  l,
int  m,
int  s,
COMPLEX16  A,
COMPLEX16  omega 
)
static

Definition at line 306 of file LALSimBlackHoleRingdown.c.

◆ XLALSimBlackHoleRingdownSpheriodalWaveFunctionNormIntegrand()

static double XLALSimBlackHoleRingdownSpheriodalWaveFunctionNormIntegrand ( double  mu,
void *  params 
)
static

Definition at line 344 of file LALSimBlackHoleRingdown.c.

◆ XLALSimBlackHoleRingdownSpheroidalWaveFunctionNormLeaver()

static COMPLEX16 XLALSimBlackHoleRingdownSpheroidalWaveFunctionNormLeaver ( double  a,
int  l,
int  m,
int  s,
COMPLEX16  A,
COMPLEX16  omega 
)
static

Definition at line 360 of file LALSimBlackHoleRingdown.c.

◆ XLALSimIMREOBGenerateQNMFreqV5()

INT4 XLALSimIMREOBGenerateQNMFreqV5 ( COMPLEX16Vector modefreqs,
const REAL8  mass1,
const REAL8  mass2,
const REAL8  spin1[3],
const REAL8  spin2[3],
UINT4  l,
INT4  m,
UINT4  nmodes,
Approximant  approximant 
)

These functions generate the quasinormal mode frequencies for a black hole ringdown, as implemented in the SEOBNRv5HM model.

At present, this function works for the 22, 21, 33, 44, 55, 32 and 43 modes, and includes only the n=0 overtone. The final frequencies are computed using the qnm python package https://arxiv.org/abs/1908.10377, as also done in SEOBNRv5HM.

Parameters
modefreqs< OUTPUT, complex freqs of overtones in unit of Hz
mass1< The mass of the 1st component (in Solar masses)
mass2< The mass of the 2nd component (in Solar masses)
spin1< The spin of the 1st object; only needed for spin waveforms
spin2< The spin of the 2nd object; only needed for spin waveforms
l< The l value of the mode in question
m< The m value of the mode in question
nmodes< The number of overtones that should be included (max 8)
approximant< The waveform approximant being used

Definition at line 2654 of file LALSimBlackHoleRingdown.c.

◆ XLALSimIMREOBGenerateQNMFreqV5fromFinal()

INT4 XLALSimIMREOBGenerateQNMFreqV5fromFinal ( COMPLEX16Vector modefreqs,
const REAL8  finalMass,
const REAL8  finalSpin,
UINT4  l,
INT4  m,
UINT4  nmodes 
)
Parameters
modefreqs< OUTPUT, complex freqs of overtones in unit of Hz
finalMass< The mass of the final black hole (in Solar masses)
finalSpin< The spin of the final object; only needed for spin waveforms
l< The l value of the mode in question
m< The m value of the mode in question
nmodes< The number of overtones that should be included (max 8)

Definition at line 2691 of file LALSimBlackHoleRingdown.c.