LALSimulation  5.4.0.1-c9a8ef6
LALSimIMRPhenomTHM_fits.h
Go to the documentation of this file.
1 #ifndef _LALSIM_IMR_PHENOMT_FITS_H
2 #define _LALSIM_IMR_PHENOMT_FITS_H
3 
4 /*
5  * Copyright (C) 2020 Hector Estelles
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with with program; see the file COPYING. If not, write to the
19  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
20  * MA 02110-1301 USA
21  */
22 
23 
24 /**
25  * \author Hector Estelles
26  *
27  */
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
33 #ifdef __GNUC__
34 #define UNUSED __attribute__((unused))
35 #else
36 #define UNUSED
37 #endif
38 
40 
41 
42 /********************************* IMRPhenomT 22 Frequency Fits *********************************/
43 
44 /*static double IMRPhenomT_MECOTime(double eta, double S, double dchi, double delta); FIXME: Promote some interesting quantities to XLAL functions*/
45 
46 static double IMRPhenomT_Inspiral_TaylorT3_t0(double eta, double S, double dchi, double delta); // theta = 0.45
47 
48 static double IMRPhenomT_Inspiral_Freq_CP1_22(double eta, double S, double dchi, double delta); // theta = 0.45
49 static double IMRPhenomT_Inspiral_Freq_CP2_22(double eta, double S, double dchi, double delta);
50 static double IMRPhenomT_Inspiral_Freq_CP3_22(double eta, double S, double dchi, double delta);
51 static double IMRPhenomT_Inspiral_Freq_CP4_22(double eta, double S, double dchi, double delta);
52 static double IMRPhenomT_Inspiral_Freq_CP5_22(double eta, double S, double dchi, double delta);
53 static double IMRPhenomT_Merger_Freq_CP1_22(double eta, double S, double dchi, double delta);
54 static double IMRPhenomT_PeakFrequency_22(double eta, double S, double dchi, double delta);
55 static double IMRPhenomT_RD_Freq_D2_22(double eta, double S, double dchi, double delta);
56 static double IMRPhenomT_RD_Freq_D3_22(double eta, double S, double dchi, double delta);
57 
58 /********************************* IMRPhenomT 22 Amplitude Fits *********************************/
59 
60 static double IMRPhenomT_Inspiral_Amp_CP1_22(double eta, double S, double dchi, double delta);
61 static double IMRPhenomT_Inspiral_Amp_CP2_22(double eta, double S, double dchi, double delta);
62 static double IMRPhenomT_Inspiral_Amp_CP3_22(double eta, double S, double dchi, double delta);
63 static double IMRPhenomT_Merger_Amp_CP1_22(double eta, double S, double dchi, double delta);
64 static double IMRPhenomT_PeakAmp_22(double eta, double S, double dchi);
65 static double IMRPhenomT_RD_Amp_C3_22(double eta, double S);
66 
67 /********************************* IMRPhenomT 22 QNM Fits *********************************/
68 
69 static double evaluate_QNMfit_fring22(double finalDimlessSpin);
70 
71 static double evaluate_QNMfit_fdamp22(double finalDimlessSpin);
72 
73 static double evaluate_QNMfit_fdamp22n2(double finalDimlessSpin);
74 
75 /********************************* IMRPhenomTHM Fits *********************************/
76 
77 static double IMRPhenomT_Merger_Freq_CP1_21(double eta, double S, double dchi, double delta);
78 static double IMRPhenomT_PeakFrequency_21(double eta, double S, double dchi, double delta);
79 static double IMRPhenomT_Inspiral_Amp_CP1_21(double eta, double S, double dchi, double delta);
80 static double IMRPhenomT_Inspiral_Amp_CP2_21(double eta, double S, double dchi, double delta);
81 static double IMRPhenomT_Inspiral_Amp_CP3_21(double eta, double S, double dchi, double delta);
82 static double IMRPhenomT_Merger_Amp_CP1_21(double eta, double S, double dchi, double delta);
83 static double IMRPhenomT_PeakAmp_21(double eta, double S, double dchi, double delta);
84 static double IMRPhenomT_RD_Amp_C3_21(double eta, double S, double dchi);
85 static double IMRPhenomT_RD_Freq_D2_21(double eta, double S, double dchi, double delta);
86 static double IMRPhenomT_RD_Freq_D3_21(double eta, double S, double dchi, double delta);
87 
88 static double IMRPhenomT_Merger_Freq_CP1_33(double eta, double S, double dchi, double delta);
89 static double IMRPhenomT_PeakFrequency_33(double eta, double S, double dchi);
90 static double IMRPhenomT_Inspiral_Amp_CP1_33(double eta, double S, double dchi, double delta);
91 static double IMRPhenomT_Inspiral_Amp_CP2_33(double eta, double S, double dchi, double delta);
92 static double IMRPhenomT_Inspiral_Amp_CP3_33(double eta, double S, double dchi, double delta);
93 static double IMRPhenomT_Merger_Amp_CP1_33(double eta, double S, double dchi, double delta);
94 static double IMRPhenomT_PeakAmp_33(double eta, double S, double dchi, double delta);
95 static double IMRPhenomT_RD_Amp_C3_33(double eta, double S);
96 static double IMRPhenomT_RD_Freq_D2_33(double eta, double S, double dchi, double delta);
97 static double IMRPhenomT_RD_Freq_D3_33(double eta, double S, double dchi, double delta);
98 
99 static double IMRPhenomT_Merger_Freq_CP1_44(double eta, double S, double dchi, double delta);
100 static double IMRPhenomT_PeakFrequency_44(double eta, double S, double dchi, double delta);
101 static double IMRPhenomT_Inspiral_Amp_CP1_44(double eta, double S, double dchi, double delta);
102 static double IMRPhenomT_Inspiral_Amp_CP2_44(double eta, double S, double dchi, double delta);
103 static double IMRPhenomT_Inspiral_Amp_CP3_44(double eta, double S, double dchi, double delta);
104 static double IMRPhenomT_Merger_Amp_CP1_44(double eta, double S, double dchi, double delta);
105 static double IMRPhenomT_PeakAmp_44(double eta, double S, double dchi), double delta;
106 static double IMRPhenomT_RD_Amp_C3_44(double eta, double S);
107 static double IMRPhenomT_RD_Freq_D2_44(double eta, double S, double dchi, double delta);
108 static double IMRPhenomT_RD_Freq_D3_44(double eta, double S, double dchi, double delta);
109 
110 static double IMRPhenomT_Merger_Freq_CP1_55(double eta, double S, double dchi, double delta);
111 static double IMRPhenomT_PeakFrequency_55(double eta, double S, double dchi, double delta);
112 static double IMRPhenomT_Inspiral_Amp_CP1_55(double eta, double S, double dchi, double delta);
113 static double IMRPhenomT_Inspiral_Amp_CP2_55(double eta, double S, double dchi, double delta);
114 static double IMRPhenomT_Inspiral_Amp_CP3_55(double eta, double S, double dchi, double delta);
115 static double IMRPhenomT_Merger_Amp_CP1_55(double eta, double S, double dchi, double delta);
116 static double IMRPhenomT_PeakAmp_55(double eta, double S, double dchi, double delta);
117 static double IMRPhenomT_RD_Amp_C3_55(double eta, double S, double dchi);
118 static double IMRPhenomT_RD_Freq_D2_55(double eta, double S, double dchi, double delta);
119 static double IMRPhenomT_RD_Freq_D3_55(double eta, double S, double dchi, double delta);
120 
121 /********************************* IMRPhenomTHM QNM Fits *********************************/
122 
123 static double evaluate_QNMfit_fring21(double finalDimlessSpin);
124 static double evaluate_QNMfit_fring33(double finalDimlessSpin);
125 static double evaluate_QNMfit_fring44(double finalDimlessSpin);
126 static double evaluate_QNMfit_fring55(double finalDimlessSpin);
127 
128 static double evaluate_QNMfit_fdamp21(double finalDimlessSpin);
129 static double evaluate_QNMfit_fdamp33(double finalDimlessSpin);
130 static double evaluate_QNMfit_fdamp44(double finalDimlessSpin);
131 static double evaluate_QNMfit_fdamp55(double finalDimlessSpin);
132 
133 static double evaluate_QNMfit_fdamp21n2(double finalDimlessSpin);
134 static double evaluate_QNMfit_fdamp33n2(double finalDimlessSpin);
135 static double evaluate_QNMfit_fdamp44n2(double finalDimlessSpin);
136 static double evaluate_QNMfit_fdamp55n2(double finalDimlessSpin);
137 
138 /***************************** IMRPhenomTHM Time Shifts ***********************/
139 
140 static double IMRPhenomT_tshift_21(double eta, double S, double dchi);
141 static double IMRPhenomT_tshift_33(double eta, double S);
142 static double IMRPhenomT_tshift_44(double eta, double S);
143 static double IMRPhenomT_tshift_55(double eta, double S);
144 
145 #ifdef __cplusplus
146 }
147 #endif
148 
149 #endif // of #ifndef _LALSIM_IMR_PHENOMT_INSPIRAL_H
static double IMRPhenomT_Inspiral_Amp_CP1_33(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Freq_CP4_22(double eta, double S, double dchi, double delta)
static double IMRPhenomT_PeakAmp_44(double eta, double S, double dchi)
static double IMRPhenomT_Inspiral_Amp_CP2_55(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Amp_CP3_33(double eta, double S, double dchi, double delta)
static double evaluate_QNMfit_fdamp55(double finalDimlessSpin)
static double IMRPhenomT_Inspiral_Amp_CP2_22(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Amp_C3_33(double eta, double S)
static double IMRPhenomT_PeakFrequency_22(double eta, double S, double dchi, double delta)
static double IMRPhenomT_tshift_21(double eta, double S, double dchi)
static double IMRPhenomT_PeakFrequency_44(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Amp_CP3_22(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Amp_C3_21(double eta, double S, double dchi)
static double IMRPhenomT_RD_Freq_D3_55(double eta, double S, double dchi, double delta)
static double IMRPhenomT_PeakFrequency_21(double eta, double S, double dchi, double delta)
static double evaluate_QNMfit_fdamp22n2(double finalDimlessSpin)
static double evaluate_QNMfit_fdamp22(double finalDimlessSpin)
static double IMRPhenomT_Inspiral_Amp_CP3_44(double eta, double S, double dchi, double delta)
static double evaluate_QNMfit_fdamp21n2(double finalDimlessSpin)
static double evaluate_QNMfit_fdamp44n2(double finalDimlessSpin)
static double IMRPhenomT_Merger_Amp_CP1_44(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Merger_Amp_CP1_22(double eta, double S, double dchi, double delta)
static double evaluate_QNMfit_fring33(double finalDimlessSpin)
static double IMRPhenomT_tshift_55(double eta, double S)
static double IMRPhenomT_Inspiral_Amp_CP1_44(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Freq_D2_21(double eta, double S, double dchi, double delta)
static double IMRPhenomT_PeakAmp_22(double eta, double S, double dchi)
static double IMRPhenomT_Inspiral_Amp_CP2_21(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Freq_D2_33(double eta, double S, double dchi, double delta)
static double evaluate_QNMfit_fdamp33(double finalDimlessSpin)
static double IMRPhenomT_Merger_Freq_CP1_55(double eta, double S, double dchi, double delta)
static double evaluate_QNMfit_fdamp33n2(double finalDimlessSpin)
static double IMRPhenomT_RD_Amp_C3_44(double eta, double S)
static double evaluate_QNMfit_fdamp44(double finalDimlessSpin)
static double IMRPhenomT_Merger_Amp_CP1_33(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Freq_D3_22(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Merger_Freq_CP1_22(double eta, double S, double dchi, double delta)
static double IMRPhenomT_PeakFrequency_33(double eta, double S, double dchi)
static double IMRPhenomT_Inspiral_Freq_CP3_22(double eta, double S, double dchi, double delta)
static double evaluate_QNMfit_fring22(double finalDimlessSpin)
static double IMRPhenomT_Inspiral_Amp_CP2_44(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Amp_CP3_55(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Freq_D2_22(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Merger_Freq_CP1_21(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Freq_CP2_22(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Freq_D3_21(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Amp_C3_55(double eta, double S, double dchi)
static double IMRPhenomT_Merger_Amp_CP1_21(double eta, double S, double dchi, double delta)
static double IMRPhenomT_PeakAmp_55(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Freq_D3_33(double eta, double S, double dchi, double delta)
static double IMRPhenomT_tshift_44(double eta, double S)
static double evaluate_QNMfit_fdamp21(double finalDimlessSpin)
static double evaluate_QNMfit_fring55(double finalDimlessSpin)
static double IMRPhenomT_PeakAmp_21(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Freq_CP5_22(double eta, double S, double dchi, double delta)
static double evaluate_QNMfit_fring21(double finalDimlessSpin)
static double IMRPhenomT_Merger_Freq_CP1_44(double eta, double S, double dchi, double delta)
static double IMRPhenomT_PeakAmp_33(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Amp_CP1_21(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Merger_Freq_CP1_33(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Freq_D2_55(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Freq_D2_44(double eta, double S, double dchi, double delta)
static double double delta
static double IMRPhenomT_PeakFrequency_55(double eta, double S, double dchi, double delta)
static double IMRPhenomT_tshift_33(double eta, double S)
static double IMRPhenomT_RD_Freq_D3_44(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Freq_CP1_22(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Amp_CP1_22(double eta, double S, double dchi, double delta)
static double IMRPhenomT_RD_Amp_C3_22(double eta, double S)
static double evaluate_QNMfit_fring44(double finalDimlessSpin)
static double evaluate_QNMfit_fdamp55n2(double finalDimlessSpin)
static double IMRPhenomT_Inspiral_Amp_CP2_33(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Merger_Amp_CP1_55(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_TaylorT3_t0(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Amp_CP3_21(double eta, double S, double dchi, double delta)
static double IMRPhenomT_Inspiral_Amp_CP1_55(double eta, double S, double dchi, double delta)