Loading [MathJax]/extensions/TeX/AMSsymbols.js
LALInspiral 5.0.3.1-ea7c608
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
LALInspiralPhasing2.c
Go to the documentation of this file.
1/*
2* Copyright (C) 2007 David Churches, B.S. Sathyaprakash, Drew Keppel
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/**
21 * \author Sathyaprakash, B. S.
22 * \file
23 * \ingroup LALInspiral_h
24 *
25 * \brief The code \ref LALInspiralPhasing2.c calculates the phase of an inspiral
26 * waveform as a function of the
27 * instantaneous frequency of the wave, up to \f$2^{nd}\f$ post--Newtonian order.
28 *
29 * ### Prototypes ###
30 *
31 * <tt>LALInspiralPhasing2()</tt>
32 * <ul>
33 * <li> \c phase: Output, the phase of the wave at the current epoch.</li>
34 * <li> \c v: Input, the PN expansion parameter at the current epoch.</li>
35 * <li> \c ak: Input containing PN expansion coefficients.</li>
36 * </ul>
37 *
38 * ### Description ###
39 *
40 * The phase of the inspiral wave corresponding to the \c Approximant #TaylorT2
41 * as in \eqref{eq_InspiralWavePhase2} (<tt>correct equation?</tt>)
42 *
43 * ### Algorithm ###
44 *
45 * None.
46 *
47 * ### Uses ###
48 *
49 * None.
50 *
51 * ### Notes ###
52 *
53 * None.
54 *
55 */
56
57#include <math.h>
58#include <lal/LALAtomicDatatypes.h>
59#include <lal/LALInspiral.h>
60#include <lal/XLALError.h>
61
62
65 REAL8 v,
66 expnCoeffs *ak
67 )
68{
69 REAL8 v5;
70 REAL8 phase;
71
72 if (ak == NULL)
74
75 v5 = pow(v,5.);
76 phase = ak->phiC
77 + ak->pvaN / v5;
78
79 return phase;
80}
81
82
83
86 REAL8 v,
87 expnCoeffs *ak
88 )
89{
90 REAL8 v2,v5;
91 REAL8 phase;
92
93 if (ak == NULL)
95
96 v2 = v*v;
97 v5 = v2*v2*v;
98 phase = ak->phiC
99 + ak->pvaN / v5 * ( 1. +
100 + ak->pva2 * v2);
101
102 return phase;
103}
104
105
106
107REAL8
109 REAL8 v,
110 expnCoeffs *ak
111 )
112{
113 REAL8 v2,v3,v5;
114 REAL8 phase;
115
116 if (ak == NULL)
118
119 v2 = v*v;
120 v3 = v2*v;
121 v5 = v3*v2;
122 phase = ak->phiC
123 + ak->pvaN / v5 * ( 1. +
124 + ak->pva2 * v2
125 + ak->pva3 * v3);
126
127 return phase;
128}
129
130
131
132REAL8
134 REAL8 v,
135 expnCoeffs *ak
136 )
137{
138 REAL8 v2,v3,v4,v5;
139 REAL8 phase;
140
141 if (ak == NULL)
143
144 v2 = v*v;
145 v3 = v2*v;
146 v4 = v3*v;
147 v5 = v4*v;
148 phase = ak->phiC
149 + ak->pvaN / v5 * ( 1. +
150 + ak->pva2 * v2
151 + ak->pva3 * v3
152 + ak->pva4 * v4);
153
154 return phase;
155}
156
157
158
159REAL8
161 REAL8 v,
162 expnCoeffs *ak
163 )
164{
165 REAL8 v2,v3,v4,v5;
166 REAL8 phase;
167
168 if (ak == NULL)
170
171 v2 = v*v;
172 v3 = v2*v;
173 v4 = v3*v;
174 v5 = v4*v;
175 phase = ak->phiC
176 + ak->pvaN / v5 * ( 1. +
177 + ak->pva2 * v2
178 + ak->pva3 * v3
179 + ak->pva4 * v4
180 + ak->pva5 * log(v/ak->vlso) * v5);
181
182 return phase;
183}
184
185
186
187REAL8
189 REAL8 v,
190 expnCoeffs *ak
191 )
192{
193 REAL8 v2,v3,v4,v5,v6;
194 REAL8 phase;
195
196 if (ak == NULL)
198
199 v2 = v*v;
200 v3 = v2*v;
201 v4 = v3*v;
202 v5 = v4*v;
203 v6 = v5*v;
204 phase = ak->phiC
205 + ak->pvaN / v5 * ( 1. +
206 + ak->pva2 * v2
207 + ak->pva3 * v3
208 + ak->pva4 * v4
209 + ak->pva5 * log(v/ak->vlso) * v5
210 + (ak->pva6 + ak->pvl6*log(4*v)) * v6);
211
212 return phase;
213}
214
215
216
217REAL8
219 REAL8 v,
220 expnCoeffs *ak
221 )
222{
223 REAL8 v2,v3,v4,v5,v6,v7;
224 REAL8 phase;
225
226 if (ak == NULL)
228
229 v2 = v*v;
230 v3 = v2*v;
231 v4 = v3*v;
232 v5 = v4*v;
233 v6 = v5*v;
234 v7 = v6*v;
235 phase = ak->phiC
236 + ak->pvaN / v5 * ( 1. +
237 + ak->pva2 * v2
238 + ak->pva3 * v3
239 + ak->pva4 * v4
240 + ak->pva5 * log(v/ak->vlso) * v5
241 + (ak->pva6 + ak->pvl6*log(4*v)) * v6
242 + ak->pva7 * v7);
243
244 return phase;
245}
REAL8 XLALInspiralPhasing2_5PN(REAL8 v, expnCoeffs *ak)
REAL8 XLALInspiralPhasing2_7PN(REAL8 v, expnCoeffs *ak)
REAL8 XLALInspiralPhasing2_0PN(REAL8 v, expnCoeffs *ak)
REAL8 XLALInspiralPhasing2_4PN(REAL8 v, expnCoeffs *ak)
REAL8 XLALInspiralPhasing2_2PN(REAL8 v, expnCoeffs *ak)
REAL8 XLALInspiralPhasing2_3PN(REAL8 v, expnCoeffs *ak)
REAL8 XLALInspiralPhasing2_6PN(REAL8 v, expnCoeffs *ak)
double REAL8
#define XLAL_ERROR_REAL8(...)
XLAL_EFAULT
This structure contains various post-Newtonian and P-approximant expansion coefficients; the meanings...
Definition: LALInspiral.h:399
REAL8 pva2
Definition: LALInspiral.h:444
REAL8 pva3
Definition: LALInspiral.h:444
REAL8 pva5
Definition: LALInspiral.h:444
REAL8 pva6
Definition: LALInspiral.h:444
REAL8 pva7
Definition: LALInspiral.h:444
REAL8 pvl6
Definition: LALInspiral.h:444
REAL8 pva4
Definition: LALInspiral.h:444
REAL8 vlso
Definition: LALInspiral.h:487
REAL8 phiC
Definition: LALInspiral.h:487
REAL8 pvaN
Definition: LALInspiral.h:444