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="LALInspiralPhiofVIntegrandCV"> 00021 Author: Sathyaprakash, B. S. 00022 $Id: LALInspiralPhiofVIntegrand.c,v 1.4 2007/06/08 14:41:49 bema Exp $ 00023 </lalVerbatim> */ 00024 00025 /* <lalLaTeX> 00026 00027 \subsection{Module \texttt{LALInspiralPhiofVIntegrand.c}} 00028 00029 The function \texttt{LALInspiralPhiofVIntegrandIn} calculates the quantity $v^{3} E^{\prime}(v)/\mathcal{F}(v)$. 00030 00031 \subsubsection*{Prototypes} 00032 \vspace{0.1in} 00033 \input{LALInspiralPhiofVIntegrandCP} 00034 \index{\verb&LALInspiralPhiofVIntegrand()&} 00035 00036 \subsubsection*{Description} 00037 00038 The function \texttt{LALInspiralPhiofVIntegrandIn} calculates the quantity $v^{3} E^{\prime}(v)/\mathcal{F}(v)$. 00039 00040 \subsubsection*{Algorithm} 00041 00042 00043 \subsubsection*{Uses} 00044 00045 This function calls {\tt dEnergy} and {\tt flux} functions that are defined in the 00046 {\tt expnFunc} structure and represent $E^{\prime}(v)$ and $\mathcal{F}(v)$, respectively, 00047 and pointed to the appropriate PN functions with a call to \texttt{LALInspiralChooseModel.} 00048 00049 \subsubsection*{Notes} 00050 00051 \vfill{\footnotesize\input{LALInspiralPhiofVIntegrandCV}} 00052 00053 </lalLaTeX> */ 00054 00055 00056 00057 00058 00059 00060 00061 00062 00063 00064 00065 00066 #include <math.h> 00067 #include <lal/LALStdlib.h> 00068 #include <lal/LALInspiral.h> 00069 00070 NRCSID (LALINSPIRALPHIOFVINTEGRANDC, "$Id: LALInspiralPhiofVIntegrand.c,v 1.4 2007/06/08 14:41:49 bema Exp $"); 00071 00072 /* <lalVerbatim file="LALInspiralPhiofVIntegrandCP"> */ 00073 void 00074 LALInspiralPhiofVIntegrand ( 00075 LALStatus *status, 00076 REAL8 *integrand, 00077 REAL8 v, 00078 void *params 00079 ) 00080 { /* </lalVerbatim> */ 00081 00082 PhiofVIntegrandIn *in; 00083 00084 INITSTATUS (status, "LALInspiralPhiofVIntegrand", LALINSPIRALPHIOFVINTEGRANDC); 00085 ATTATCHSTATUSPTR(status); 00086 00087 ASSERT (integrand, status, LALINSPIRALH_ENULL, LALINSPIRALH_MSGENULL); 00088 ASSERT (params, status, LALINSPIRALH_ENULL, LALINSPIRALH_MSGENULL); 00089 ASSERT (v>0, status, LALINSPIRALH_ESIZE, LALINSPIRALH_MSGESIZE); 00090 ASSERT (v<1, status, LALINSPIRALH_ESIZE, LALINSPIRALH_MSGESIZE); 00091 00092 in = (PhiofVIntegrandIn *) params; 00093 00094 *integrand = pow (v, 3.) * in->dEnergy(v,in->coeffs)/in->flux(v,in->coeffs); 00095 00096 DETATCHSTATUSPTR(status); 00097 RETURN(status); 00098 00099 00100 } 00101
1.5.2