00001 /* 00002 * Copyright (C) 2007 David Churches, B.S. Sathyaprakash 00003 * 00004 * This program is free software; you can redistribute it and/or modify 00005 * it under the terms of the GNU General Public License as published by 00006 * the Free Software Foundation; either version 2 of the License, or 00007 * (at your option) any later version. 00008 * 00009 * This program is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU General Public License 00015 * along with with program; see the file COPYING. If not, write to the 00016 * Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, 00017 * MA 02111-1307 USA 00018 */ 00019 00020 /* <lalVerbatim file="LALInspiralTofVIntegrandCV"> 00021 Author: Sathyaprakash, B. S. 00022 $Id: LALInspiralTofVIntegrand.c,v 1.4 2007/06/08 14:41:49 bema Exp $ 00023 </lalVerbatim> */ 00024 00025 /* <lalLaTeX> 00026 00027 \subsection{Module \texttt{LALInspiralTofVIntegrand.c}} 00028 00029 The function \texttt{LALInspiralTofVIntegrand} calculates the quantity $E^{\prime}(v)/\mathcal{F}(v)$. 00030 These are the energy and flux functions which are used in the gravitational wave phasing formula. 00031 00032 \subsubsection*{Prototypes} 00033 \vspace{0.1in} 00034 \input{LALInspiralTofVIntegrandCP} 00035 \index{\verb&LALInspiralTofVIntegrand()&} 00036 00037 \subsubsection*{Description} 00038 00039 The function \texttt{LALInspiralTofVIntegrand} calculates the quantity $E^{\prime}(v)/\mathcal{F}(v)$. 00040 These are the energy and flux functions which are used in the gravitational wave phasing formula, which is 00041 defined as 00042 00043 \begin{eqnarray} 00044 t(v) & = & t_{\rm ref} + m \int_v^{v_{\rm ref}} \, 00045 \frac{E'(v)}{{\cal F}(v)} \, dv, \nonumber \\ 00046 \phi (v) & = & \phi_{\rm ref} + 2 \int_v^{v_{\rm ref}} v^3 \, 00047 \frac{E'(v)}{{\cal F}(v)} \, dv, 00048 \label{phasing formula} 00049 \end{eqnarray} 00050 00051 where $v=(\pi m F)^{1/3}$ is an invariantly defined velocity, $F$ is the instantaneous GW frequency, and 00052 $m$ is the total mass of the binary. 00053 00054 \subsubsection*{Algorithm} 00055 00056 00057 \subsubsection*{Uses} 00058 00059 This function calls the function which represents $E^{\prime}(v)$ and $\mathcal{F}(v)$. The pointer to each 00060 of these functions is set by a call to the function \texttt{LALInspiralChooseModel}. 00061 00062 \subsubsection*{Notes} 00063 00064 \vfill{\footnotesize\input{LALInspiralTofVIntegrandCV}} 00065 00066 </lalLaTeX> */ 00067 00068 #include <math.h> 00069 #include <lal/LALStdlib.h> 00070 #include <lal/LALInspiral.h> 00071 00072 NRCSID (LALINSPIRALTOFVINTEGRANDC, "$Id: LALInspiralTofVIntegrand.c,v 1.4 2007/06/08 14:41:49 bema Exp $"); 00073 00074 /* <lalVerbatim file="LALInspiralTofVIntegrandCP"> */ 00075 void 00076 LALInspiralTofVIntegrand ( 00077 LALStatus *status, 00078 REAL8 *integrand, 00079 REAL8 v, 00080 void *params 00081 ) 00082 { /* </lalVerbatim> */ 00083 00084 TofVIntegrandIn *ak; 00085 00086 INITSTATUS (status, "LALInspiralTofVIntegrand", LALINSPIRALTOFVINTEGRANDC); 00087 ATTATCHSTATUSPTR(status); 00088 ASSERT (integrand, status, LALINSPIRALH_ENULL, LALINSPIRALH_MSGENULL); 00089 ASSERT (params, status, LALINSPIRALH_ENULL, LALINSPIRALH_MSGENULL); 00090 ASSERT(v > 0., status, LALINSPIRALH_ESIZE, LALINSPIRALH_MSGESIZE); 00091 ASSERT(v < 1., status, LALINSPIRALH_ESIZE, LALINSPIRALH_MSGESIZE); 00092 00093 ak = (TofVIntegrandIn *) params; 00094 *integrand = ak->dEnergy(v, ak->coeffs)/ak->flux(v, ak->coeffs); 00095 00096 DETATCHSTATUSPTR(status); 00097 RETURN (status); 00098 }
1.5.2