LALSimulation  5.4.0.1-fe68b98
LALSimBlackHoleRingdownPrec.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2011 J. Creighton
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with with program; see the file COPYING. If not, write to the
16  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
17  * MA 02110-1301 USA
18  */
19 
20 #ifndef _LALSIMBLACKHOLERINGDOWNPREC_H
21 #define _LALSIMBLACKHOLERINGDOWNPREC_H
22 
23 #include <lal/LALDatatypes.h>
24 #include <lal/LALSimInspiral.h>
25 #include <gsl/gsl_linalg.h>
26 #include <gsl/gsl_interp.h>
27 #include <gsl/gsl_spline.h>
28 
29 #if defined(__cplusplus)
30 extern "C" {
31 #elif 0
32 } /* so that editors will match preceding brace */
33 #endif
34 
35 /**
36  * Computes the final mass and spin of the black hole resulting from merger.
37  * They are given by fittings of NR simulations results. Specifically,
38  * for EOBNR, Table I of Buonanno et al. PRD76, 104049;
39  * for EOBNRv2 and EOBNRv2HM, Eqs. 29a and 29b of Pan et al. PRD84, 124052;
40  * for SEOBNRv1, Eq. 8 of Tichy and Marronetti PRD78, 081501 and
41  * Eqs. 1 and 3 of Barausse and Rezzolla ApJ704, L40.
42  */
44  REAL8 *finalMass, /**<< OUTPUT, the final mass (scaled by original total mass) */
45  REAL8 *finalSpin, /**<< OUTPUT, the final spin (scaled by final mass) */
46  const REAL8 mass1, /**<< The mass of the 1st component of the system */
47  const REAL8 mass2, /**<< The mass of the 2nd component of the system */
48  const REAL8 spin1[3], /**<< The spin of the 1st object; only needed for spin waveforms */
49  const REAL8 spin2[3], /**<< The spin of the 2nd object; only needed for spin waveforms */
50  Approximant approximant /**<< The waveform approximant being used */
51 );
52 
53 /**
54  * This function generates the quasinormal mode frequencies for a black
55  * hole ringdown. At present, this function works for the 22, 21, 33, 44
56  * and 55 modes, and includes 8 overtones. The final frequencies are
57  * computed by interpolating the data found on the webpage of
58  * Vitor Cardoso, http://centra.ist.utl.pt/~vitor/?page=ringdown
59  * In this page, frequecy data are given for positive final spins only.
60  * For a negative final spin chi<0 case, the (l,m) mode frequency is given by
61  * the (l,-m) mode frequency of the positive final spin -chi case.
62  */
64  COMPLEX16Vector *modefreqs, /**<< OUTPUT, complex freqs of overtones (scaled by total mass) */
65  const REAL8 mass1, /**<< The mass of the 1st component (in Solar masses) */
66  const REAL8 mass2, /**<< The mass of the 2nd component (in Solar masses) */
67  const REAL8 spin1[3], /**<< The spin of the 1st object; only needed for spin waveforms */
68  const REAL8 spin2[3], /**<< The spin of the 2nd object; only needed for spin waveforms */
69  UINT4 l, /**<< The l value of the mode in question */
70  INT4 m, /**<< The m value of the mode in question */
71  UINT4 nmodes, /**<< The number of overtones that should be included (max 8) */
72  Approximant approximant/**<< The waveform approximant being used */
73  );
74 
75 
77  COMPLEX16Vector *modefreqs, /**<< OUTPUT, complex freqs of overtones in unit of Hz */
78  const REAL8 mass1, /**<< The mass of the 1st component (in Solar masses) */
79  const REAL8 mass2, /**<< The mass of the 2nd component (in Solar masses) */
80  const REAL8 finalMass, /**<< The mass of a final BH (scaled by original total mass)*/
81  const REAL8 finalSpin, /**<< The dimensionaless spin of the final BH */
82  UINT4 l, /**<< The l value of the mode in question */
83  INT4 m, /**<< The m value of the mode in question */
84  UINT4 nmodes /**<< The number of overtones that should be included (max 8) */
85 );
86 
87 #if 0
88 { /* so that editors will match succeeding brace */
89 #elif defined(__cplusplus)
90 }
91 #endif
92 
93 #endif /* _LALSIMBLACKHOLERINGDOWNPREC_H */
INT4 XLALSimIMREOBFinalMassSpinPrec(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.
INT4 XLALSimIMREOBGenerateQNMFreqV2FromFinalPrec(COMPLEX16Vector *modefreqs, const REAL8 mass1, const REAL8 mass2, const REAL8 finalMass, const REAL8 finalSpin, UINT4 l, INT4 m, UINT4 nmodes)
This function generates the quasinormal mode frequencies for a black hole ringdown.
INT4 XLALSimIMREOBGenerateQNMFreqV2Prec(COMPLEX16Vector *modefreqs, const REAL8 mass1, const REAL8 mass2, const REAL8 spin1[3], const REAL8 spin2[3], UINT4 l, INT4 m, UINT4 nmodes, Approximant approximant)
This function generates the quasinormal mode frequencies for a black hole ringdown.
int l
Definition: bh_qnmode.c:135
double REAL8
uint32_t UINT4
int32_t INT4
Approximant
Enum that specifies the PN approximant to be used in computing the waveform.
static const INT4 m