| Date.h | | Date.h | |
| /* <lalVerbatim file="DateHV"> | | /* <lalVerbatim file="DateHV"> | |
| | | | |
| Author: David Chin <dwchin@umich.edu> +1-734-730-1274 | | Author: David Chin <dwchin@umich.edu> +1-734-730-1274 | |
|
| $Id: Date.h,v 1.31 2001/12/08 21:28:38 dwchin Exp $ | | $Id: Date.h,v 1.35 2002/01/25 02:51:35 dwchin Exp $ | |
| | | | |
| </lalVerbatim> */ | | </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| | | | |
| \section{Header \texttt{Date.h}} | | \section{Header \texttt{Date.h}} | |
| \label{s:Date.h} | | \label{s:Date.h} | |
| | | | |
| Provides routines for manipulating date and time information. | | Provides routines for manipulating date and time information. | |
| | | | |
| | | | |
| skipping to change at line 67 | | skipping to change at line 67 | |
| #include <lal/LALStatusMacros.h> | | #include <lal/LALStatusMacros.h> | |
| #include <lal/LALStdlib.h> | | #include <lal/LALStdlib.h> | |
| | | | |
| #include <lal/DetectorSite.h> | | #include <lal/DetectorSite.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" | | extern "C" | |
| { | | { | |
| #endif | | #endif | |
| | | | |
|
| NRCSID (DATEH, "$Id: Date.h,v 1.31 2001/12/08 21:28:38 dwchin Exp $"); | | NRCSID (DATEH, "$Id: Date.h,v 1.35 2002/01/25 02:51:35 dwchin Exp $"); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \subsection*{Error conditions} | | \subsection*{Error conditions} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalErrTable> */ | | /* <lalErrTable> */ | |
| #define DATEH_ENULLINPUT 1 | | #define DATEH_ENULLINPUT 1 | |
| #define DATEH_ENULLOUTPUT 2 | | #define DATEH_ENULLOUTPUT 2 | |
| #define DATEH_EDATETOOEARLY 3 | | #define DATEH_EDATETOOEARLY 3 | |
| #define DATEH_ERANGEGPSABS 4 | | #define DATEH_ERANGEGPSABS 4 | |
| #define DATEH_EBUFFTOOSMALL 5 | | #define DATEH_EBUFFTOOSMALL 5 | |
| #define DATEH_EASCTIMEFAIL 6 | | #define DATEH_EASCTIMEFAIL 6 | |
| #define DATEH_EGPSDATETOOEARLY 7 | | #define DATEH_EGPSDATETOOEARLY 7 | |
|
| | | #define DATEH_EFORMATPARAMOUTOFRANGE 8 | |
| | | #define DATEH_EACCPARAMOUTOFRANGE 9 | |
| | | | |
| #define DATEH_MSGENULLINPUT "Input is NULL" | | #define DATEH_MSGENULLINPUT "Input is NULL" | |
| #define DATEH_MSGENULLOUTPUT "Output is NULL" | | #define DATEH_MSGENULLOUTPUT "Output is NULL" | |
| #define DATEH_MSGEDATETOOEARLY "Date too early: Julian Day can only be comp
uted for dates >= 1900-03-01" | | #define DATEH_MSGEDATETOOEARLY "Date too early: Julian Day can only be comp
uted for dates >= 1900-03-01" | |
| #define DATEH_MSGERANGEGPSABS "Input time out of range: only able to accura
tely convert times between 1980-Jan-06 00:00:00 UTC (GPS 0) and 2002-Mar-31
23:59:00 UTC (GPS 701654353)" | | #define DATEH_MSGERANGEGPSABS "Input time out of range: only able to accura
tely convert times between 1980-Jan-06 00:00:00 UTC (GPS 0) and 2002-Mar-31
23:59:00 UTC (GPS 701654353)" | |
| #define DATEH_MSGEBUFFTOOSMALL "Output timestamp string too small: min. siz
e = 26" | | #define DATEH_MSGEBUFFTOOSMALL "Output timestamp string too small: min. siz
e = 26" | |
| #define DATEH_MSGEASCTIMEFAIL "asctimeUNDERSCOREr() failed" | | #define DATEH_MSGEASCTIMEFAIL "asctimeUNDERSCOREr() failed" | |
| #define DATEH_MSGEGPSDATETOOEARLY "Date too early: GPS time only defined fo
r times on or after 1980-Jan-06 00:00:00 UTC" | | #define DATEH_MSGEGPSDATETOOEARLY "Date too early: GPS time only defined fo
r times on or after 1980-Jan-06 00:00:00 UTC" | |
|
| | | #define DATEH_MSGEFORMATPARAMOUTOFRANGE "Format parameter out of range: mus | |
| | | t be one of LALLEAPSECunderscoreTAIUTC or LALLEAPSECunderscoreGPSUTC" | |
| | | #define DATEH_MSGEACCPARAMOUTOFRANGE "Accuracy parameter out of range: must | |
| | | be one of LALLEAPSECunderscoreSTRICT or LALLEAPSECunderscoreLOOSE" | |
| | | | |
| /* </lalErrTable> | | /* </lalErrTable> | |
| | | | |
| <lalLaTeX> | | <lalLaTeX> | |
| | | | |
| \subsection*{Structures} | | \subsection*{Structures} | |
| | | | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| | | | |
| skipping to change at line 138 | | skipping to change at line 142 | |
| MST_SEC, /* arc seconds */ | | MST_SEC, /* arc seconds */ | |
| MST_HRS, /* arc hours (i.e. units of Right Ascension) */ | | MST_HRS, /* arc hours (i.e. units of Right Ascension) */ | |
| MST_DEG, /* degrees */ | | MST_DEG, /* degrees */ | |
| MST_RAD /* radians */ | | MST_RAD /* radians */ | |
| } LALMSTUnits; | | } LALMSTUnits; | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \subsubsection*{Enumeration \texttt{LALLeapSecAccuracy}} | | \subsubsection*{Enumeration \texttt{LALLeapSecAccuracy}} | |
| \idx[Type]{LALLeapSecAccuracy} | | \idx[Type]{LALLeapSecAccuracy} | |
| | | | |
|
| This enumerated type is used as a parameter for \texttt{LALGPStoUTC()} and | | This enumerated type is used as a parameter for \texttt{LALGPStoUTC()}, | |
| \texttt{LALUTCtoGPS()} to specify if complete accuracy is required in use | | \texttt{LALUTCtoGPS()}, and \texttt{LALLeapSecs()} to specify if complete | |
| of leap seconds. The allowed values are: | | accuracy is required in use of leap seconds. The allowed values are: | |
| | | | |
| \medskip\noindent | | \medskip\noindent | |
| \begin{tabular}{ll} | | \begin{tabular}{ll} | |
| \verb+LALLEAPSEC_LOOSE+ & may miss leap seconds \\ | | \verb+LALLEAPSEC_LOOSE+ & may miss leap seconds \\ | |
| \verb+LALLEAPSEC_STRICT+ & require all leap seconds | | \verb+LALLEAPSEC_STRICT+ & require all leap seconds | |
| \end{tabular} | | \end{tabular} | |
| \bigskip | | \bigskip | |
| | | | |
| If strict accuracy is selected, the code will \texttt{ABORT} if leap second | | If strict accuracy is selected, the code will \texttt{ABORT} if leap second | |
| data is not current. Otherwise, a warning will be printed, and the code | | data is not current. Otherwise, a warning will be printed, and the code | |
| | | | |
| skipping to change at line 162 | | skipping to change at line 166 | |
| | | | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| typedef enum | | typedef enum | |
| { | | { | |
| LALLEAPSEC_LOOSE, | | LALLEAPSEC_LOOSE, | |
| LALLEAPSEC_STRICT | | LALLEAPSEC_STRICT | |
| } LALLeapSecAccuracy; | | } LALLeapSecAccuracy; | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| | | | |
|
| | | \subsubsection*{Enumeration \texttt{LALLeapSecFormat}} | |
| | | \idx[Type]{LALLeapSecFormat} | |
| | | | |
| | | This enumerated type is used as a parameter for \texttt{LALLeapSecs()} to | |
| | | specify whether TAI-UTC or GPS-UTC should be returned. TAI-UTC is the | |
| | | total number of leap seconds added to UTC since the TAI epoch. GPS-UTC is | |
| | | the total number of leap seconds added since the GPS epoch. These two | |
| | | quantities are related by: TAI-UTC = GPS-UTC + 19. | |
| | | | |
| | | \medskip\noindent | |
| | | \begin{tabular}{ll} | |
| | | \verb+LALLEAPSEC_TAIUTC+ & return TAI-UTC \\ | |
| | | \verb+LALLEAPSEC_GPSUTC+ & return GPS-UTC | |
| | | \end{tabular} | |
| | | \bigskip | |
| | | | |
| | | </lalLaTeX> */ | |
| | | | |
| | | typedef enum | |
| | | { | |
| | | LALLEAPSEC_TAIUTC, | |
| | | LALLEAPSEC_GPSUTC | |
| | | } LALLeapSecFormat; | |
| | | | |
| | | /* <lalLaTeX> | |
| | | | |
| \subsubsection*{Structure \texttt{LALUnixDate}} | | \subsubsection*{Structure \texttt{LALUnixDate}} | |
| \idx[Type]{LALUnixDate} | | \idx[Type]{LALUnixDate} | |
| | | | |
| This structure is just the standard Unix \texttt{tm} structure. We shall | | This structure is just the standard Unix \texttt{tm} structure. We shall | |
| {\em always} ignore the daylight savings time field, \verb+tm_isdst+. | | {\em always} ignore the daylight savings time field, \verb+tm_isdst+. | |
| | | | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* | | /* | |
| * The standard Unix tm structure | | * The standard Unix tm structure | |
| | | | |
| skipping to change at line 283 | | skipping to change at line 313 | |
| | | | |
| /* Second, with Date-Time */ | | /* Second, with Date-Time */ | |
| typedef struct | | typedef struct | |
| tagLALPlaceAndDate | | tagLALPlaceAndDate | |
| { | | { | |
| LALDetector *p_detector; /* pointer to a detector */ | | LALDetector *p_detector; /* pointer to a detector */ | |
| LALDate *p_date; /* pointer to a date */ | | LALDate *p_date; /* pointer to a date */ | |
| } | | } | |
| LALPlaceAndDate; | | LALPlaceAndDate; | |
| | | | |
|
| | | /* <lalLaTeX> | |
| | | | |
| | | \subsubsection{Structure \texttt{LALLeapSecFormatAndAcc}} | |
| | | \idx[Type]{LALLeapSecFormatAndAcc} | |
| | | | |
| | | This structure aggregates the \texttt{LALLeapSecFormat} and | |
| | | \texttt{LALLeapSecAccuracy} parameters for passing to | |
| | | \texttt{LALLeapSecs()}. | |
| | | | |
| | | The \texttt{format} field specifies whether \texttt{LALLeapSecs()} returns | |
| | | TAI-UTC or GPS-UTC. The \texttt{accuracy} field specifies whether a | |
| | | warning/error should be produced if the function is given an input GPS time | |
| | | that may result in a leap second not being accounted for. | |
| | | | |
| | | </lalLaTeX> */ | |
| | | | |
| | | typedef struct | |
| | | tagLALLeapSecFormatAndAcc | |
| | | { | |
| | | LALLeapSecFormat format; | |
| | | LALLeapSecAccuracy accuracy; | |
| | | } | |
| | | LALLeapSecFormatAndAcc; | |
| | | | |
| /* | | /* | |
| * Function prototypes | | * Function prototypes | |
| */ | | */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{JulianC} | | \newpage\input{JulianC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| void LALJulianDay(LALStatus *status, | | void LALJulianDay(LALStatus *status, | |
| INT4 *jDay, | | INT4 *jDay, | |
| | | | |
| skipping to change at line 316 | | skipping to change at line 370 | |
| | | | |
| void LALDateString (LALStatus *status, | | void LALDateString (LALStatus *status, | |
| CHARVector *timestamp, | | CHARVector *timestamp, | |
| const LALDate *date); | | const LALDate *date); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LMST1C} | | \newpage\input{LMST1C} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| void LALGMST1 (LALStatus *status, | | void LALGMST1 (LALStatus *status, | |
|
| REAL8 *gmst, /* output - GMST1 */ | | REAL8 *gmst, /* output - GMST1 */ | |
| const LALDate *date, /* input - date and time */ | | const LALDate *date, /* input - date and time */ | |
| LALMSTUnits outunits); /* GMST1 units */ | | LALMSTUnits outunits); /* GMST1 units */ | |
| | | | |
| void LALGPStoGMST1( LALStatus *status, | | void LALGPStoGMST1( LALStatus *status, | |
|
| REAL8 *gmst, /* output - GMST1 */ | | REAL8 *gmst, /* output - GMST1 */ | |
| const LIGOTimeGPS *gps, /* input - GPS time */ | | const LIGOTimeGPS *gps, /* input - GPS time */ | |
| LALMSTUnits outunits); /* GMST1 units */ | | LALMSTUnits outunits); /* GMST1 units */ | |
| | | | |
| void LALLMST1 (LALStatus *status, | | void LALLMST1 (LALStatus *status, | |
|
| REAL8 *lmst, /* output - LMST1 */ | | REAL8 *lmst, /* output - LMST1 */ | |
| const LALPlaceAndDate *placeAndDate, /* input - | | const LALPlaceAndDate *placeAndDate, /* input - location | |
| location | | and date */ | |
| and date */ | | LALMSTUnits outunits); /* LMST1 units */ | |
| LALMSTUnits outunits); /* LMST1 units */ | | | |
| | | | |
| void LALGPStoLMST1( LALStatus *status, | | void LALGPStoLMST1( LALStatus *status, | |
|
| REAL8 *lmst, /* output - LMST1 */ | | REAL8 *lmst, /* output - LMST1 * | |
| const LALPlaceAndGPS *placeAndGps, /* input - | | / | |
| location and | | const LALPlaceAndGPS *placeAndGps, /* input - location | |
| GPS */ | | and | |
| LALMSTUnits outunits); /* LMST1 units | | GPS */ | |
| */ | | LALMSTUnits outunits); /* LMST1 units */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{SecsToLALDateC} | | \newpage\input{SecsToLALDateC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALSecsToLALDate(LALStatus*, | | void LALSecsToLALDate(LALStatus *status, | |
| LALDate*, | | LALDate *date, | |
| REAL8); | | REAL8 ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{GPStoUTCC} | | \newpage\input{GPStoUTCC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| void | | void | |
| LALGPStoUTC (LALStatus *status, | | LALGPStoUTC (LALStatus *status, | |
| LALDate *pUtcDate, | | LALDate *pUtcDate, | |
| const LIGOTimeGPS *pGpsTime, | | const LIGOTimeGPS *pGpsTime, | |
| const LALLeapSecAccuracy *pAccuracy); | | const LALLeapSecAccuracy *pAccuracy); | |
| | | | |
| void | | void | |
| LALUTCtoGPS (LALStatus *status, | | LALUTCtoGPS (LALStatus *status, | |
| LIGOTimeGPS *pGpsTime, | | LIGOTimeGPS *pGpsTime, | |
| const LALDate *pUtcDate, | | const LALDate *pUtcDate, | |
| const LALLeapSecAccuracy *pAccuracy); | | const LALLeapSecAccuracy *pAccuracy); | |
| | | | |
|
| /* The following is from S.J. Berukoff, included at his request */ | | void | |
| | | LALLeapSecs (LALStatus *status, | |
| | | INT4 *p_leapSecs, | |
| | | const LIGOTimeGPS *p_gpsTime, | |
| | | const LALLeapSecFormatAndAcc *p_formatAndAcc); | |
| | | | |
| | | /* The following 2 functions are from S.J. Berukoff, included at his reques | |
| | | t */ | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{GPStoFloatC} | | \newpage\input{GPStoFloatC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
|
| void LALGPStoFloat (LALStatus *, | | void LALGPStoFloat (LALStatus *status, | |
| REAL8 *, | | REAL8 *output, | |
| LIGOTimeGPS *); | | const LIGOTimeGPS *input); | |
| | | | |
| void LALFloatToGPS(LALStatus *, | | void LALFloatToGPS(LALStatus *status, | |
| LIGOTimeGPS *, | | LIGOTimeGPS *output, | |
| REAL8 *); | | const REAL8 *input); | |
| | | | |
| | | /* <lalLaTeX> | |
| | | \newpage\input{GPStoINT8C} | |
| | | </lalLaTeX> */ | |
| | | void | |
| | | LALINT8toGPS ( | |
| | | LALStatus *status, | |
| | | LIGOTimeGPS *output, | |
| | | const INT8 *input | |
| | | ); | |
| | | | |
| | | void | |
| | | LALGPStoINT8 ( | |
| | | LALStatus *status, | |
| | | INT8 *output, | |
| | | const LIGOTimeGPS *input | |
| | | ); | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| } | | } | |
| #endif | | #endif | |
| | | | |
| #endif /* _DATE_H */ | | #endif /* _DATE_H */ | |
| | | | |
End of changes. 14 change blocks. |
| 31 lines changed or deleted | | 110 lines changed or added | |
|
| FindChirp.h | | FindChirp.h | |
| /*----------------------------------------------------------------------- | | /*----------------------------------------------------------------------- | |
| * | | * | |
| * File Name: FindChirp.h | | * File Name: FindChirp.h | |
| * | | * | |
| * Author: Allen, B., Brown, D. A. and Creighton, J. D. E. | | * Author: Allen, B., Brown, D. A. and Creighton, J. D. E. | |
| * | | * | |
|
| * Revision: $Id: FindChirp.h,v 1.13 2001/12/06 12:53:39 duncan Exp $ | | * Revision: $Id: FindChirp.h,v 1.19 2002/03/02 00:39:59 duncan Exp $ | |
| * | | * | |
| *----------------------------------------------------------------------- | | *----------------------------------------------------------------------- | |
| */ | | */ | |
| | | | |
| #if 0 | | #if 0 | |
| <lalVerbatim file="FindChirpHV"> | | <lalVerbatim file="FindChirpHV"> | |
| Author: Allen, B., Brown, D. A. and Creighton, J. D. E. | | Author: Allen, B., Brown, D. A. and Creighton, J. D. E. | |
|
| $Id: FindChirp.h,v 1.13 2001/12/06 12:53:39 duncan Exp $ | | $Id: FindChirp.h,v 1.19 2002/03/02 00:39:59 duncan Exp $ | |
| </lalVerbatim> | | </lalVerbatim> | |
| | | | |
| <lalLaTeX> | | <lalLaTeX> | |
|
| | | | |
| \section{Header \texttt{FindChirp.h}} | | \section{Header \texttt{FindChirp.h}} | |
| \label{s:FindChirp.h} | | \label{s:FindChirp.h} | |
| | | | |
|
| Provides routines to filter IFO data for binary inspiral chirps. | | Provides core protypes, structures and functions to filter interferometer d | |
| | | ata | |
| | | for binary inspiral chirps. | |
| | | | |
| | | \subsection*{Synopsis} | |
| | | | |
| | | \begin{verbatim} | |
| | | #include <lal/FindChirp.h> | |
| | | \end{verbatim} | |
| | | | |
|
| | | \input{FindChirpHDoc} | |
| </lalLaTeX> | | </lalLaTeX> | |
| #endif | | #endif | |
| | | | |
| #ifndef _FINDCHIRPH_H | | #ifndef _FINDCHIRPH_H | |
| #define _FINDCHIRPH_H | | #define _FINDCHIRPH_H | |
| | | | |
| #include <lal/LALDatatypes.h> | | #include <lal/LALDatatypes.h> | |
| #include <lal/ComplexFFT.h> | | #include <lal/ComplexFFT.h> | |
| #include <lal/DataBuffer.h> | | #include <lal/DataBuffer.h> | |
| #ifdef LAL_ENABLE_MPI | | #ifdef LAL_ENABLE_MPI | |
| #include <lal/Comm.h> | | #include <lal/Comm.h> | |
| #endif | | #endif | |
| #include <lal/LALInspiral.h> | | #include <lal/LALInspiral.h> | |
| #include <lal/FindChirpChisq.h> | | #include <lal/FindChirpChisq.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
|
| | | #pragma } | |
| #endif | | #endif | |
| | | | |
|
| NRCSID (FINDCHIRPH, "$Id: FindChirp.h,v 1.13 2001/12/06 12:53:39 duncan Exp
$"); | | NRCSID (FINDCHIRPH, "$Id: FindChirp.h,v 1.19 2002/03/02 00:39:59 duncan Exp
$"); | |
| | | | |
| #if 0 | | #if 0 | |
| <lalLaTeX> | | <lalLaTeX> | |
| \subsection*{Error codes} | | \subsection*{Error codes} | |
| </lalLaTeX> | | </lalLaTeX> | |
| #endif | | #endif | |
| /* <lalErrTable> */ | | /* <lalErrTable> */ | |
| #define FINDCHIRPH_ENULL 1 | | #define FINDCHIRPH_ENULL 1 | |
| #define FINDCHIRPH_ENNUL 2 | | #define FINDCHIRPH_ENNUL 2 | |
| #define FINDCHIRPH_EALOC 3 | | #define FINDCHIRPH_EALOC 3 | |
| | | | |
| skipping to change at line 74 | | skipping to change at line 82 | |
| #define FINDCHIRPH_ECRUP 17 | | #define FINDCHIRPH_ECRUP 17 | |
| #define FINDCHIRPH_MSGENULL "Null pointer" | | #define FINDCHIRPH_MSGENULL "Null pointer" | |
| #define FINDCHIRPH_MSGENNUL "Non-null pointer" | | #define FINDCHIRPH_MSGENNUL "Non-null pointer" | |
| #define FINDCHIRPH_MSGEALOC "Memory allocation error" | | #define FINDCHIRPH_MSGEALOC "Memory allocation error" | |
| #define FINDCHIRPH_MSGENUMZ "Invalid number of points in segment" | | #define FINDCHIRPH_MSGENUMZ "Invalid number of points in segment" | |
| #define FINDCHIRPH_MSGESEGZ "Invalid number of segments" | | #define FINDCHIRPH_MSGESEGZ "Invalid number of segments" | |
| #define FINDCHIRPH_MSGECHIZ "Invalid number of chi squared bins" | | #define FINDCHIRPH_MSGECHIZ "Invalid number of chi squared bins" | |
| #define FINDCHIRPH_MSGEDTZO "deltaT is zero or negative" | | #define FINDCHIRPH_MSGEDTZO "deltaT is zero or negative" | |
| #define FINDCHIRPH_MSGETRNC "Duration of inverse spectrum in time domain is
negative" | | #define FINDCHIRPH_MSGETRNC "Duration of inverse spectrum in time domain is
negative" | |
| #define FINDCHIRPH_MSGEFLOW "Inverse spectrum low frequency cutoff is negat
ive" | | #define FINDCHIRPH_MSGEFLOW "Inverse spectrum low frequency cutoff is negat
ive" | |
|
| #define FINDCHIRPH_MSGEFREE "Memory free error" | | #define FINDCHIRPH_MSGEFREE "Error freeing memory" | |
| #define FINDCHIRPH_MSGERHOT "Rhosq threshold is zero or negative" | | #define FINDCHIRPH_MSGERHOT "Rhosq threshold is zero or negative" | |
| #define FINDCHIRPH_MSGECHIT "Chisq threshold is zero or negative" | | #define FINDCHIRPH_MSGECHIT "Chisq threshold is zero or negative" | |
|
| #define FINDCHIRPH_MSGECRUP "Attempting to filter corrupted data" | | #define FINDCHIRPH_MSGECRUP "Chirp length or invSpecTrunc too long for leng
th of data segment" | |
| /* </lalErrTable> */ | | /* </lalErrTable> */ | |
| | | | |
|
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsection*{Types} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- enumeraion type for simulations ----------------------------------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpHWaveformGenerator"> | |
| | | typedef enum | |
| | | { | |
| | | findchirpSP, | |
| | | injectGenPPN | |
| | | } | |
| | | WaveformGenerator; | |
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Enumeration Type \texttt{WaveformGenerator}} | |
| | | \idx[Type]{WaveformGenerator} | |
| | | | |
| | | \input{FindChirpHWaveformGenerator} | |
| | | | |
| | | \noindent This enumaration type lists the possible methods of generating | |
| | | inspiral waveforms. The types in the enum should be of the form | |
| | | \texttt{packagenameGenType}, where \texttt{packagename} is the name of the | |
| | | LAL package that the particular waveform generator resides and \texttt{GenT | |
| | | ype} | |
| | | is a unique identifier for that waveform generator. The choices are: | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{findchirpSP}] The \texttt{findchirp} built in stationary phas | |
| | | e | |
| | | waveform generator. | |
| | | | |
| | | \item[\texttt{injectGenPPN}] The \texttt{LALGeneratePPNInspiral()} function | |
| | | from the \texttt{inject} package. | |
| | | | |
| | | \item[\texttt{fctFCT}] The \texttt{fct} algorithm was used to find the chir | |
| | | p. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| /* | | /* | |
| * | | * | |
|
| * typedefs of structures used by the findchip functions | | * typedefs of structures used by the findchirp functions | |
| * | | * | |
| */ | | */ | |
| | | | |
|
| /* structure for describing a binary insipral event */ | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Input and output data structures} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- structure for describing a binary insipral event ------------------ | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpHInspiralEvent"> | |
| typedef struct | | typedef struct | |
| tagInspiralEvent | | tagInspiralEvent | |
| { | | { | |
| UINT4 id; | | UINT4 id; | |
| UINT4 segmentNumber; | | UINT4 segmentNumber; | |
| LIGOTimeGPS time; | | LIGOTimeGPS time; | |
| UINT4 timeIndex; | | UINT4 timeIndex; | |
| InspiralTemplate tmplt; | | InspiralTemplate tmplt; | |
| REAL4 snrsq; | | REAL4 snrsq; | |
| REAL4 chisq; | | REAL4 chisq; | |
| REAL4 sigma; | | REAL4 sigma; | |
| REAL4 effDist; | | REAL4 effDist; | |
|
| | | REAL4 coaPhase; | |
| | | CHAR ifoName[2]; | |
| | | WaveformGenerator wavGen; | |
| struct tagInspiralEvent *next; | | struct tagInspiralEvent *next; | |
| } | | } | |
| InspiralEvent; | | InspiralEvent; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{InspiralEvent}} | |
| | | \idx[Type]{InspiralEvent} | |
| | | | |
| | | \input{FindChirpHInspiralEvent} | |
| | | | |
| | | \noindent This structure describes inspiral events found by \texttt{findchi | |
| | | rp}. | |
| | | The fields are: | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{UINT4 id}] A unique number assigned by the filter routine to | |
| | | each event it finds. | |
| | | | |
| | | \item[\texttt{UINT4 segmentNumber}] The id number of the | |
| | | \texttt{FindChirpDataSegment} in which the event was found. | |
| | | | |
| | | \item[\texttt{LIGOTimeGPS time}] The GPS time at which the event occoured. | |
| | | | |
| | | \item[\texttt{UINT4 timeIndex}] The index at which the event occoured in | |
| | | the array containing the filter output. | |
| | | | |
| | | \item[\texttt{InspiralTemplate tmplt}] The parameters of the inspiral templ | |
| | | ate | |
| | | for the event. | |
| | | | |
| | | \item[\texttt{REAL4 snrsq}] The value of $\rho^2$ for the event. | |
| | | | |
| | | \item[\texttt{REAL4 chisq}] The value of the $\chi^2$ veto for the event, i | |
| | | f | |
| | | it has been computed. | |
| | | | |
|
| /* vector of DataSegment, as defined the framedata package */ | | \item[\texttt{REAL4 sigma}] The value of the normalisation constant $\sigma | |
| | | $ | |
| | | for the event. | |
| | | | |
| | | \item[\texttt{REAL4 effDist}] The effective distance in megaparsecs to the | |
| | | event. | |
| | | | |
| | | \item[\texttt{REAL4 coaPhase}] The coalescence phase of the chirp. | |
| | | | |
| | | \item[\texttt{WaveformGenerator wavGen}] The particular waveform generator | |
| | | that was used in the matched filter for this chirp. | |
| | | | |
| | | \item[\texttt{CHAR ifoName[2]}] Array for storing the two character | |
| | | interferometer name (e.g. L1, H2, etc.) | |
| | | | |
| | | \item[\texttt{struct tagInspiralEvent *next}] A pointer to a structure of t | |
| | | ype | |
| | | \texttt{InspiralEvent} to allow the construction of a linked list of events | |
| | | . | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- vector of DataSegment, as defined the framedata package ----------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpHDataSegmentVector"> | |
| typedef struct | | typedef struct | |
| tagDataSegmentVector | | tagDataSegmentVector | |
| { | | { | |
| UINT4 length; | | UINT4 length; | |
| DataSegment *data; | | DataSegment *data; | |
| } | | } | |
| DataSegmentVector; | | DataSegmentVector; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{DataSegmentVector}} | |
| | | \idx[Type]{DataSegmentVector} | |
| | | | |
| | | \input{FindChirpHDataSegmentVector} | |
| | | | |
| | | \noindent This structure provides a LAL like vector structure for the | |
| | | \texttt{DataSegment} structure defined in the package \texttt{framedata} | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{UINT4 length}] Number of \texttt{DataSegment} structres in th | |
| | | e | |
| | | vector | |
| | | | |
|
| /* processed data segment used by FindChirp filter routine */ | | \item[\texttt{DataSegment *data}] Pointer to the data. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- processed data segment used by FindChirp filter routine ----------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpHFindChirpSegment"> | |
| typedef struct | | typedef struct | |
| tagFindChirpSegment | | tagFindChirpSegment | |
| { | | { | |
| COMPLEX8FrequencySeries *data; | | COMPLEX8FrequencySeries *data; | |
| UINT4Vector *chisqBinVec; | | UINT4Vector *chisqBinVec; | |
| REAL8 deltaT; | | REAL8 deltaT; | |
| REAL4 segNorm; | | REAL4 segNorm; | |
| REAL4 fLow; | | REAL4 fLow; | |
| UINT4 invSpecTrunc; | | UINT4 invSpecTrunc; | |
| UINT4 number; | | UINT4 number; | |
| } | | } | |
| FindChirpSegment; | | FindChirpSegment; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{FindChirpSegment}} | |
| | | \idx[Type]{FindChirpSegment} | |
| | | | |
| | | \input{FindChirpHFindChirpSegment} | |
| | | | |
| | | \noindent This structure contains the conditioned input data and its | |
| | | parameters for the \texttt{FindChirpFilter()} function. | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{COMPLEX8FrequencySeries *data}] The conditioned input data. | |
| | | The conditioneing performed is as described in the documentation for the | |
| | | module \texttt{FindChirpSPData.c} | |
| | | | |
| | | \item[\texttt{UINT4Vector *chisqBinVec}] A vector containing the indices of | |
| | | the boundaries of the bins of equal power for the $\chi^2$ veto created by | |
| | | \texttt{FindChirpSPData()} | |
| | | | |
|
| /* vector of FindChirpSegment defined above */ | | \item[\texttt{REAL8 deltaT}] The time step $\Delta$ of the time series | |
| | | input data. | |
| | | | |
| | | \item[\texttt{REAL4 segNorm}] The template independent part of the | |
| | | normalisation constant $\sigma$. | |
| | | | |
| | | \item[\texttt{UINT4 invSpecTrunc}] The number of points to which the invers | |
| | | e | |
| | | power spectrum \ospsd is truncated to in the time domain in order to smooth | |
| | | out high $Q$ features in the power spectrum. | |
| | | | |
| | | \item[\texttt{UINT4 number}] A unique identification number for the | |
| | | \texttt{FindChirpDataSegment}. This will generally correspond to the number | |
| | | in | |
| | | the \texttt{DataSegment} from which the conditioned data was computed. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- vector of FindChirpSegment defined above -------------------------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpHFindChirpSegmentVector"> | |
| typedef struct | | typedef struct | |
| tagFindChirpSegmentVector | | tagFindChirpSegmentVector | |
| { | | { | |
| UINT4 length; | | UINT4 length; | |
| FindChirpSegment *data; | | FindChirpSegment *data; | |
| } | | } | |
| FindChirpSegmentVector; | | FindChirpSegmentVector; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{FindChirpSegmentVector}} | |
| | | \idx[Type]{FindChirpSegmentVector} | |
| | | | |
| | | \input{FindChirpHFindChirpSegmentVector} | |
| | | | |
| | | \noindent This structure provides a LAL like vector structure for the | |
| | | \texttt{FindChirpSegment} structure defined above. | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{UINT4 length}] Number of \texttt{FindChirpSegment} structres | |
| | | in | |
| | | the vector | |
| | | | |
| | | \item[\texttt{DataSegment *data}] Pointer to the data. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
|
| /* structure to contain an inspiral template */ | | /* --- structure to contain an inspiral template ------------------------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpHFindChirpTemplate"> | |
| typedef struct | | typedef struct | |
| tagFindChirpTemplate | | tagFindChirpTemplate | |
| { | | { | |
| COMPLEX8Vector *data; | | COMPLEX8Vector *data; | |
| REAL4 tmpltNorm; | | REAL4 tmpltNorm; | |
| } | | } | |
| FindChirpTemplate; | | FindChirpTemplate; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{FindChirpTemplate}} | |
| | | \idx[Type]{FindChirpTemplate} | |
| | | | |
| | | \input{FindChirpHFindChirpTemplate} | |
| | | | |
| | | \noindent This structure provides contains the frequency domain representat | |
| | | ion | |
| | | of the cosine phase inspiral template $\tilde{h_c}(f)$. | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{COMPLEX8Vector *data}] A vector containing $\tilde{h_c}(f)$. | |
| | | Note | |
| | | that in the future, this will be changed to a \texttt{COMPLEX8FrequencySeri | |
| | | es}. | |
| | | | |
| | | \item[\texttt{REAL4 tmpltNorm}] The template dependent part of the | |
| | | normalisation constant $\sigma$. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| /* | | /* | |
| * | | * | |
| * typedefs of parameter structures used by functions in findchirp | | * typedefs of parameter structures used by functions in findchirp | |
| * | | * | |
| */ | | */ | |
| | | | |
|
| /* parameter structure for all init funtions */ | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Initalisation and parameter structures} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- parameter structure for all init funtions ------------------------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpHFindChirpInitParams"> | |
| typedef struct | | typedef struct | |
| tagFindChirpInitParams | | tagFindChirpInitParams | |
| { | | { | |
| UINT4 numSegments; | | UINT4 numSegments; | |
| UINT4 numPoints; | | UINT4 numPoints; | |
| UINT4 numChisqBins; | | UINT4 numChisqBins; | |
| BOOLEAN createRhosqVec; | | BOOLEAN createRhosqVec; | |
| } | | } | |
| FindChirpInitParams; | | FindChirpInitParams; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{FindChirpInitParams}} | |
| | | \idx[Type]{FindChirpInitParams} | |
| | | | |
| | | \input{FindChirpHFindChirpInitParams} | |
| | | | |
|
| /* parameter structure for the filtering function */ | | \noindent This structure provides the essential information for the | |
| | | filter initialisation and memory allocation functions used in the | |
| | | \texttt{FindChirp} package. | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{UINT4 numSegments}] The number of data segments to allocate | |
| | | storage for. | |
| | | | |
| | | \item[\texttt{UINT4 numPoints}] The number of discrete data points in each | |
| | | data segment. | |
| | | | |
| | | \item[\texttt{UINT4 numChisqBins}] The number of bins used to contruct the | |
| | | $\chi^2$ veto. | |
| | | | |
| | | \item[\texttt{BOOLEAN createRhosqVec}] Debugging flag that controls whether | |
| | | or not the function \texttt{FindChirpFilterSegment()} should store the outp | |
| | | ut | |
| | | of the filter, $\rho^2(t)$, as well as the events. Memory is only allocated | |
| | | for this vector if the flag is set to 1. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- parameter structure for the filtering function -------------------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpHFindChirpFilterParams"> | |
| typedef struct | | typedef struct | |
| tagFindChirpFilterParams | | tagFindChirpFilterParams | |
| { | | { | |
| REAL4 deltaT; | | REAL4 deltaT; | |
| REAL4 rhosqThresh; | | REAL4 rhosqThresh; | |
| REAL4 chisqThresh; | | REAL4 chisqThresh; | |
| REAL4 norm; | | REAL4 norm; | |
|
| | | UINT4 maximiseOverChirp; | |
| BOOLEAN computeNegFreq; | | BOOLEAN computeNegFreq; | |
| COMPLEX8Vector *qVec; | | COMPLEX8Vector *qVec; | |
| COMPLEX8Vector *qtildeVec; | | COMPLEX8Vector *qtildeVec; | |
| ComplexFFTPlan *invPlan; | | ComplexFFTPlan *invPlan; | |
| REAL4Vector *rhosqVec; | | REAL4Vector *rhosqVec; | |
| REAL4Vector *chisqVec; | | REAL4Vector *chisqVec; | |
| FindChirpChisqParams *chisqParams; | | FindChirpChisqParams *chisqParams; | |
| FindChirpChisqInput *chisqInput; | | FindChirpChisqInput *chisqInput; | |
| } | | } | |
| FindChirpFilterParams; | | FindChirpFilterParams; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{FindChirpFilterParams}} | |
| | | \idx[Type]{FindChirpFilterParams} | |
| | | | |
| | | \input{FindChirpHFindChirpFilterParams} | |
| | | | |
| | | \noindent This structure provides the parameters used by the | |
| | | \texttt{FindChirpFilterSegment()} function. | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{REAL4 deltaT}] The timestep for the sampled data. Must be | |
| | | set on entry. {FIXME: This should be a \texttt{REAL8}} | |
| | | | |
| | | \item[\texttt{REAL4 rhosqThresh}] The value to threshold signal to noise | |
| | | ratio square, $\rho^2$, on. If the signal to noise exceeds this value, then | |
| | | a | |
| | | candidate event is generated. A $\chi^2$ veto is performed, if requested, | |
| | | otherwise an \texttt{InspiralEvent} is generated. Must be $\ge 0$ on entry. | |
| | | | |
| | | \item[\texttt{REAL4 chisqThresh}] The value to threshold the $\chi^2$ veto | |
| | | on. | |
| | | If the $chi^2$ veto is below this threshold the candidate event an | |
| | | \texttt{InspiralEvent} is generated. Must be $\ge 0$ on entry. | |
| | | | |
| | | \item[\texttt{REAL4 norm}] On exit this contains the normalisation constant | |
| | | that relates the quantity $q_j$ with the signal to noise squared, | |
| | | $\rho^2(t_j)$ by | |
| | | \begin{equation} | |
| | | \rho^2(t_j) = \textrm{norm} \times \left|q_j\right|^2. | |
| | | \end{equation} | |
| | | | |
| | | \item[\texttt{UINT4 maximiseOverChirp}] If not zero, use algorithm that | |
| | | maximised over chirp lengths. Otherwise record all points that pass | |
| | | the $\rho^2$ threshold as events. | |
| | | | |
| | | \item[\texttt{BOOLEAN computeNegFreq}] Currently unused. Must be set to | |
| | | $0$ on entry. | |
| | | | |
| | | \item[\texttt{COMPLEX8Vector *qVec}] Pointer to vector allocated by | |
| | | \texttt{FindChirpFilterInit()} to store the quantity $q_j$. Set to the | |
| | | value of $q_j$ on exit. Must not be NULL. | |
| | | | |
| | | \item[\texttt{COMPLEX8Vector *qtildeVec}] Pointer to vector allocated by | |
| | | \texttt{FindChirpFilterInit()} to store the quantity $\tilde{q}_k$. Set to | |
| | | the | |
| | | value of $\tilde{q}_k$ on exit. Must not be NULL | |
| | | | |
| | | \item[\texttt{ComplexFFTPlan *invPlan}] Pointer to FFTW plan created by | |
| | | \texttt{FindChirpFilterInit()} to transform the quantity $\tilde{q}_k$ to | |
| | | ${q}_j$ usimg the inverse DFT. Must not be NULL. | |
| | | | |
| | | \item[\texttt{REAL4Vector *rhosqVec}] Pointer to a vector that is set to | |
| | | $\rho^2(t_j)$ on exit. If NULL $\rho^2(t_j)$ is not stored. | |
| | | | |
| | | \item[\texttt{REAL4Vector *chisqVec}] Workspace vector used to compute and | |
| | | store $\chi^2(t_j)$. Must not be NULL if \texttt{numChisqBins} is greater t | |
| | | han | |
| | | zero. Contains $\chi^2(t_j)$ on exit. | |
| | | | |
| | | \item[\texttt{FindChirpChisqParams *chisqParams}] Pointer to parameter | |
| | | structure for \texttt{FindChirpChisqVeto()} function. Must not be NULL if | |
| | | \texttt{numChisqBins} is greater than zero. | |
| | | | |
| | | \item[\texttt{FindChirpChisqInput *chisqInput}] Pointer to input data | |
| | | structure for \texttt{FindChirpChisqVeto()} function. Must not be NULL if | |
| | | \texttt{numChisqBins} is greater than zero. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| /* | | /* | |
| * | | * | |
| * typedefs of input structures used by functions in findchirp | | * typedefs of input structures used by functions in findchirp | |
| * | | * | |
| */ | | */ | |
| | | | |
|
| /* input to the filtering functions */ | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Filter function input structures} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- input to the filtering functions --------------------------------- * | |
| | | / | |
| | | #pragma <lalVerbatim file="FindChirpHFindChirpFilterInput"> | |
| typedef struct | | typedef struct | |
| tagFindChirpFilterInput | | tagFindChirpFilterInput | |
| { | | { | |
| InspiralTemplate *tmplt; | | InspiralTemplate *tmplt; | |
| FindChirpTemplate *fcTmplt; | | FindChirpTemplate *fcTmplt; | |
| FindChirpSegment *segment; | | FindChirpSegment *segment; | |
| } | | } | |
| FindChirpFilterInput; | | FindChirpFilterInput; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{FindChirpFilterInput}} | |
| | | \idx[Type]{FindChirpSegmentVector} | |
| | | | |
| | | \input{FindChirpHFindChirpFilterInput} | |
| | | | |
| | | \noindent This structure groups the input data required for the | |
| | | \texttt{FindChirpFilterSegment()} function into a single structure. | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{InspiralTemplate *tmplt}] Pointer the structure that contains | |
| | | the parameters of the template chirp. | |
| | | | |
| | | \item[\texttt{FindChirpTemplate *fcTmplt}] Pointer to the input template | |
| | | in a form that can be used by \texttt{FindChirpFilterSegment()} | |
| | | | |
| | | \item[\texttt{FindChirpSegment *segment}] Pointer to the input data segment | |
| | | in a form that can be used by \texttt{FindChirpFilterSegment()} | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \vfill{\footnotesize\input{FindChirpHV}} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| /* | | /* | |
| * | | * | |
| * function prototypes for memory management functions | | * function prototypes for memory management functions | |
| * | | * | |
| */ | | */ | |
| | | | |
|
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \newpage\input{FindChirpMemoryC} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| void | | void | |
| LALCreateDataSegmentVector ( | | LALCreateDataSegmentVector ( | |
| LALStatus *status, | | LALStatus *status, | |
| DataSegmentVector **vector, | | DataSegmentVector **vector, | |
| FindChirpInitParams *params | | FindChirpInitParams *params | |
| ); | | ); | |
| | | | |
| void | | void | |
| LALDestroyDataSegmentVector ( | | LALDestroyDataSegmentVector ( | |
| LALStatus *status, | | LALStatus *status, | |
| | | | |
| skipping to change at line 230 | | skipping to change at line 582 | |
| ); | | ); | |
| | | | |
| void | | void | |
| LALDestroyFindChirpSegmentVector ( | | LALDestroyFindChirpSegmentVector ( | |
| LALStatus *status, | | LALStatus *status, | |
| FindChirpSegmentVector **vector | | FindChirpSegmentVector **vector | |
| ); | | ); | |
| | | | |
| /* | | /* | |
| * | | * | |
|
| * function prototypes for initialization and finalization functions | | * function prototypes for initialization, finalization and filter function
s | |
| * | | * | |
| */ | | */ | |
| | | | |
|
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \newpage\input{FindChirpFilterC} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| void | | void | |
| LALFindChirpFilterInit ( | | LALFindChirpFilterInit ( | |
| LALStatus *status, | | LALStatus *status, | |
| FindChirpFilterParams **output, | | FindChirpFilterParams **output, | |
| FindChirpInitParams *params | | FindChirpInitParams *params | |
| ); | | ); | |
| | | | |
| void | | void | |
| LALFindChirpFilterFinalize ( | | LALFindChirpFilterFinalize ( | |
| LALStatus *status, | | LALStatus *status, | |
| | | | |
| skipping to change at line 260 | | skipping to change at line 618 | |
| FindChirpFilterInput **output, | | FindChirpFilterInput **output, | |
| FindChirpInitParams *params | | FindChirpInitParams *params | |
| ); | | ); | |
| | | | |
| void | | void | |
| LALDestroyFindChirpInput ( | | LALDestroyFindChirpInput ( | |
| LALStatus *status, | | LALStatus *status, | |
| FindChirpFilterInput **output | | FindChirpFilterInput **output | |
| ); | | ); | |
| | | | |
|
| /* | | | |
| * | | | |
| * function prototype for the filtering function | | | |
| * | | | |
| */ | | | |
| | | | |
| void | | void | |
| LALFindChirpFilterSegment ( | | LALFindChirpFilterSegment ( | |
| LALStatus *status, | | LALStatus *status, | |
| InspiralEvent **eventList, | | InspiralEvent **eventList, | |
| FindChirpFilterInput *input, | | FindChirpFilterInput *input, | |
| FindChirpFilterParams *params | | FindChirpFilterParams *params | |
| ); | | ); | |
| | | | |
|
| #if 0 | | | |
| <lalLaTeX> | | | |
| \vfill{\footnotesize\input{FindChirpHV}} | | | |
| </lalLaTeX> | | | |
| #endif | | | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
|
| | | #pragma { | |
| } | | } | |
| #endif | | #endif | |
| | | | |
| #endif /* _FINDCHIRPH_H */ | | #endif /* _FINDCHIRPH_H */ | |
| | | | |
End of changes. 35 change blocks. |
| 29 lines changed or deleted | | 408 lines changed or added | |
|
| FindChirpChisq.h | | FindChirpChisq.h | |
| /*----------------------------------------------------------------------- | | /*----------------------------------------------------------------------- | |
| * | | * | |
| * File Name: FindChirpChisq.h | | * File Name: FindChirpChisq.h | |
| * | | * | |
| * Author: Anderson, W. G., and Brown, D. A. | | * Author: Anderson, W. G., and Brown, D. A. | |
| * | | * | |
|
| * Revision: $Id: FindChirpChisq.h,v 1.4 2001/05/15 22:25:53 duncan Exp $ | | * Revision: $Id: FindChirpChisq.h,v 1.5 2002/01/18 01:47:31 duncan Exp $ | |
| * | | * | |
| *----------------------------------------------------------------------- | | *----------------------------------------------------------------------- | |
| */ | | */ | |
| | | | |
| #if 0 | | #if 0 | |
| <lalVerbatim file="FindChirpChisqHV"> | | <lalVerbatim file="FindChirpChisqHV"> | |
|
| Author: Allen, B., Brown, D. A. and Creighton, J. D. E. | | Author: Anderson, W. G., and Brown, D. A. | |
| $Id: FindChirpChisq.h,v 1.4 2001/05/15 22:25:53 duncan Exp $ | | $Id: FindChirpChisq.h,v 1.5 2002/01/18 01:47:31 duncan Exp $ | |
| </lalVerbatim> | | </lalVerbatim> | |
| | | | |
| <lalLaTeX> | | <lalLaTeX> | |
|
| | | | |
| \section{Header \texttt{FindChirpChisq.h}} | | \section{Header \texttt{FindChirpChisq.h}} | |
|
| \label{s:FindChirp.h} | | \label{s:FindChirpChisq.h} | |
| | | | |
| | | Provides prototypes and functions to perform a $\chi^2$ veto on binary | |
| | | inspiral chirps using data generated by the \texttt{FindChirpFilter()} | |
| | | function. | |
| | | | |
| | | \subsection*{Synopsis} | |
| | | | |
|
| Provides routines to perform chisq veton on binary inspiral chirps. | | \begin{verbatim} | |
| | | #include <lal/FindChirpChisq.h> | |
| | | \end{verbatim} | |
| | | | |
|
| | | \input{FindChirpChisqHDoc} | |
| </lalLaTeX> | | </lalLaTeX> | |
| #endif | | #endif | |
| | | | |
| #ifndef _FINDCHIRPCHISQH_H | | #ifndef _FINDCHIRPCHISQH_H | |
| #define _FINDCHIRPCHISQH_H | | #define _FINDCHIRPCHISQH_H | |
| | | | |
| #include <lal/LALDatatypes.h> | | #include <lal/LALDatatypes.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
|
| | | #pragma } | |
| #endif | | #endif | |
| | | | |
|
| NRCSID (SPFINDCHIRPCHISQH, "$Id: FindChirpChisq.h,v 1.4 2001/05/15 22:25:53
duncan Exp $"); | | NRCSID (SPFINDCHIRPCHISQH, "$Id: FindChirpChisq.h,v 1.5 2002/01/18 01:47:31
duncan Exp $"); | |
| | | | |
| #if 0 | | #if 0 | |
| <lalLaTeX> | | <lalLaTeX> | |
| \subsection*{Error codes} | | \subsection*{Error codes} | |
| </lalLaTeX> | | </lalLaTeX> | |
| #endif | | #endif | |
| /* <lalErrTable> */ | | /* <lalErrTable> */ | |
| #define FINDCHIRPCHISQH_ENULL 1 | | #define FINDCHIRPCHISQH_ENULL 1 | |
| #define FINDCHIRPCHISQH_ENNUL 2 | | #define FINDCHIRPCHISQH_ENNUL 2 | |
| #define FINDCHIRPCHISQH_ENUMZ 3 | | #define FINDCHIRPCHISQH_ENUMZ 3 | |
| #define FINDCHIRPCHISQH_ECHIZ 4 | | #define FINDCHIRPCHISQH_ECHIZ 4 | |
| #define FINDCHIRPCHISQH_EALOC 5 | | #define FINDCHIRPCHISQH_EALOC 5 | |
| #define FINDCHIRPCHISQH_MSGENULL "Null pointer" | | #define FINDCHIRPCHISQH_MSGENULL "Null pointer" | |
| #define FINDCHIRPCHISQH_MSGENNUL "Non-null pointer" | | #define FINDCHIRPCHISQH_MSGENNUL "Non-null pointer" | |
| #define FINDCHIRPCHISQH_MSGENUMZ "Number of points is zero or negative" | | #define FINDCHIRPCHISQH_MSGENUMZ "Number of points is zero or negative" | |
| #define FINDCHIRPCHISQH_MSGECHIZ "Number of chisq bins is zero or negative" | | #define FINDCHIRPCHISQH_MSGECHIZ "Number of chisq bins is zero or negative" | |
| #define FINDCHIRPCHISQH_MSGEALOC "Memory allocation error" | | #define FINDCHIRPCHISQH_MSGEALOC "Memory allocation error" | |
| /* </lalErrTable> */ | | /* </lalErrTable> */ | |
| | | | |
|
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsection*{Types} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- structure for storing input to the chisq veto --------------------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpChisqHFindChirpChisqInput"> | |
| typedef struct | | typedef struct | |
| tagFindChirpChisqInput | | tagFindChirpChisqInput | |
| { | | { | |
| COMPLEX8Vector *qtildeVec; | | COMPLEX8Vector *qtildeVec; | |
| COMPLEX8Vector *qVec; | | COMPLEX8Vector *qVec; | |
| } | | } | |
| FindChirpChisqInput; | | FindChirpChisqInput; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{FindChirpChisqInput}} | |
| | | \idx[Type]{FindChirpChisqInput} | |
| | | | |
| | | \input{FindChirpChisqHFindChirpChisqInput} | |
| | | | |
| | | \noindent This structure contains the input to the $\chi^2$ veto function. | |
| | | The quantities should be populated by \texttt{FindChirpFilter()} on entry. | |
| | | The fields are: | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{COMPLEX8Vector *qtildeVec}] A vector containing the frequncy | |
| | | domain quantity $\tilde{q}_k$ as defined in \texttt{FindChirpFilter()}. | |
| | | | |
| | | \item[\texttt{COMPLEX8Vector *qVec}] A vector containing the time | |
| | | domain quantity $q_j$ as defined in \texttt{FindChirpFilter()}. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
|
| | | /* --- parameter structure for the chisq veto ---------------------------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpChisqHFindChirpChisqParams"> | |
| typedef struct | | typedef struct | |
| tagFindChirpChisqParams | | tagFindChirpChisqParams | |
| { | | { | |
| REAL4 chisqNorm; | | REAL4 chisqNorm; | |
| UINT4Vector *chisqBinVec; | | UINT4Vector *chisqBinVec; | |
| ComplexFFTPlan *plan; | | ComplexFFTPlan *plan; | |
| COMPLEX8Vector *qtildeBinVec; | | COMPLEX8Vector *qtildeBinVec; | |
| COMPLEX8Vector **qBinVecPtr; | | COMPLEX8Vector **qBinVecPtr; | |
| } | | } | |
| FindChirpChisqParams; | | FindChirpChisqParams; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{FindChirpChisqParams}} | |
| | | \idx[Type]{FindChirpChisqParams} | |
| | | | |
| | | \input{FindChirpChisqHFindChirpChisqParams} | |
| | | | |
| | | \noindent This structure contains the parameters used by the $\chi^2$ veto | |
| | | function \texttt{FindChirpChisqVeto()}. It is created and destroyed by the | |
| | | \texttt{FindChirpChisqVetoInit()} and \texttt{FindChirpChisqVetoFinalize()} | |
| | | functions. The fields are: | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{REAL4 chisqNorm}] The normalization... | |
| | | | |
| | | \item[\texttt{UINT4Vector *chisqBinVec}] A vector containing the... | |
| | | | |
| | | \item[\texttt{ComplexFFTPlan *plan}] The FFTW plan used by the inverse DFT. | |
| | | | |
| | | \item[\texttt{COMPLEX8Vector *qtildeBinVec}] ... | |
| | | | |
| | | \item[\texttt{COMPLEX8Vector **qBinVecPtr}] ... | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \vfill{\footnotesize\input{FindChirpChisqHV}} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \newpage\input{FindChirpChisqC} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| void | | void | |
| LALFindChirpChisqVetoInit ( | | LALFindChirpChisqVetoInit ( | |
| LALStatus *status, | | LALStatus *status, | |
| FindChirpChisqParams *params, | | FindChirpChisqParams *params, | |
| UINT4 numChisqBins, | | UINT4 numChisqBins, | |
| UINT4 numPoints | | UINT4 numPoints | |
| ); | | ); | |
| | | | |
| void | | void | |
| | | | |
| skipping to change at line 100 | | skipping to change at line 178 | |
| | | | |
| void | | void | |
| LALFindChirpChisqVeto ( | | LALFindChirpChisqVeto ( | |
| LALStatus *status, | | LALStatus *status, | |
| REAL4Vector *chisqVec, | | REAL4Vector *chisqVec, | |
| FindChirpChisqInput *input, | | FindChirpChisqInput *input, | |
| FindChirpChisqParams *params | | FindChirpChisqParams *params | |
| ); | | ); | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
|
| | | #pragma { | |
| } | | } | |
| #endif | | #endif | |
| | | | |
| #endif /* _FINDCHIRPCHISQH_H */ | | #endif /* _FINDCHIRPCHISQH_H */ | |
| | | | |
End of changes. 13 change blocks. |
| 7 lines changed or deleted | | 88 lines changed or added | |
|
| FindChirpEngine.h | | FindChirpEngine.h | |
| /*----------------------------------------------------------------------- | | /*----------------------------------------------------------------------- | |
| * | | * | |
| * File Name: FindChirpEngine.h | | * File Name: FindChirpEngine.h | |
| * | | * | |
| * Author: Brown, D. A. | | * Author: Brown, D. A. | |
| * | | * | |
|
| * Revision: $Id: FindChirpEngine.h,v 1.14 2001/11/26 17:45:58 duncan Exp $ | | * Revision: $Id: FindChirpEngine.h,v 1.21 2002/04/04 21:46:41 duncan Exp $ | |
| * | | * | |
| *----------------------------------------------------------------------- | | *----------------------------------------------------------------------- | |
| */ | | */ | |
| | | | |
| #if 0 | | #if 0 | |
| <lalVerbatim file="FindChirpEngineHV"> | | <lalVerbatim file="FindChirpEngineHV"> | |
| Author: Brown, D. A. | | Author: Brown, D. A. | |
|
| $Id: FindChirpEngine.h,v 1.14 2001/11/26 17:45:58 duncan Exp $ | | $Id: FindChirpEngine.h,v 1.21 2002/04/04 21:46:41 duncan Exp $ | |
| </lalVerbatim> | | </lalVerbatim> | |
| | | | |
| <lalLaTeX> | | <lalLaTeX> | |
|
| | | | |
| \section{Header \texttt{FindChirpEngine.h}} | | \section{Header \texttt{FindChirpEngine.h}} | |
|
| \label{s:FindChirp.h} | | \label{s:FindChirpEngine.h} | |
| | | | |
| | | Provides functions to drive the filtering functions in the package | |
| | | \texttt{findchirp}. Contains the functions necessary to execute a flat | |
| | | or heirarchical inspiral search using the LDAS \texttt{wrapperAPI} or | |
| | | the LALapps program \texttt{findchirp}. | |
| | | | |
| | | \subsection*{Synopsis} | |
| | | | |
|
| Provides routines to filter IFO data for binary inspiral chirps. | | \begin{verbatim} | |
| | | #include <lal/FindChirpEngine.h> | |
| | | \end{verbatim} | |
| | | | |
| | | \input{FindChirpEngineHDoc} | |
| | | | |
| </lalLaTeX> | | </lalLaTeX> | |
| #endif | | #endif | |
| | | | |
| #ifndef _FINDCHIRPENGINEH_H | | #ifndef _FINDCHIRPENGINEH_H | |
| #define _FINDCHIRPENGINEH_H | | #define _FINDCHIRPENGINEH_H | |
| | | | |
| #include <stdio.h> | | #include <stdio.h> | |
| #include <stdlib.h> | | #include <stdlib.h> | |
| #include <strings.h> | | #include <strings.h> | |
| #include <lal/LALStdlib.h> | | #include <lal/LALStdlib.h> | |
| #include <lal/Random.h> | | #include <lal/Random.h> | |
| #include <lal/DataBuffer.h> | | #include <lal/DataBuffer.h> | |
| #include <lal/LALInspiral.h> | | #include <lal/LALInspiral.h> | |
| #include <lal/LALInspiralBank.h> | | #include <lal/LALInspiralBank.h> | |
| #include <lal/FindChirp.h> | | #include <lal/FindChirp.h> | |
| #include <lal/FindChirpSP.h> | | #include <lal/FindChirpSP.h> | |
| #include <lal/GeneratePPNInspiral.h> | | #include <lal/GeneratePPNInspiral.h> | |
| #include <lal/SimulateCoherentGW.h> | | #include <lal/SimulateCoherentGW.h> | |
|
| | | #include <lal/Units.h> | |
| #include <lal/Inject.h> | | #include <lal/Inject.h> | |
| #ifdef LAL_MPI_ENABLED | | #ifdef LAL_MPI_ENABLED | |
| #include <lal/Comm.h> | | #include <lal/Comm.h> | |
| #include <lal/FindChirpExch.h> | | #include <lal/FindChirpExch.h> | |
| #endif /* LAL_MPI_ENABLED */ | | #endif /* LAL_MPI_ENABLED */ | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
|
| | | #pragma } | |
| #endif | | #endif | |
| | | | |
|
| NRCSID (FINDCHIRPENGINEHH, "$Id: FindChirpEngine.h,v 1.14 2001/11/26 17:45:
58 duncan Exp $"); | | NRCSID (FINDCHIRPENGINEHH, "$Id: FindChirpEngine.h,v 1.21 2002/04/04 21:46:
41 duncan Exp $"); | |
| | | | |
| #if 0 | | #if 0 | |
| <lalLaTeX> | | <lalLaTeX> | |
| \subsection*{Error codes} | | \subsection*{Error codes} | |
| </lalLaTeX> | | </lalLaTeX> | |
| #endif | | #endif | |
| /* <lalErrTable> */ | | /* <lalErrTable> */ | |
| #define FINDCHIRPENGINEH_ENULL 1 | | #define FINDCHIRPENGINEH_ENULL 1 | |
| #define FINDCHIRPENGINEH_ENNUL 2 | | #define FINDCHIRPENGINEH_ENNUL 2 | |
| #define FINDCHIRPENGINEH_ENUMZ 3 | | #define FINDCHIRPENGINEH_ENUMZ 3 | |
| | | | |
| skipping to change at line 91 | | skipping to change at line 103 | |
| #define FINDCHIRPENGINEH_MSGETMPL "linked list of templates to filter in nu
ll" | | #define FINDCHIRPENGINEH_MSGETMPL "linked list of templates to filter in nu
ll" | |
| #define FINDCHIRPENGINEH_MSGEALOC "Memory allocation error" | | #define FINDCHIRPENGINEH_MSGEALOC "Memory allocation error" | |
| #define FINDCHIRPENGINEH_MSGERANK "Search node has incorrect rank" | | #define FINDCHIRPENGINEH_MSGERANK "Search node has incorrect rank" | |
| #define FINDCHIRPENGINEH_MSGEUEXT "Unrecognised exchange type" | | #define FINDCHIRPENGINEH_MSGEUEXT "Unrecognised exchange type" | |
| #define FINDCHIRPENGINEH_MSGELVEL "Invalid heriarchical template bank level
" | | #define FINDCHIRPENGINEH_MSGELVEL "Invalid heriarchical template bank level
" | |
| #define FINDCHIRPENGINEH_MSGESEGZ "Number of data segments is zero" | | #define FINDCHIRPENGINEH_MSGESEGZ "Number of data segments is zero" | |
| #define FINDCHIRPENGINEH_MSGEUSIM "Unkown simulation type requested" | | #define FINDCHIRPENGINEH_MSGEUSIM "Unkown simulation type requested" | |
| #define FINDCHIRPENGINEH_MSGEWAVL "Simulated waveform is longer than datase
g" | | #define FINDCHIRPENGINEH_MSGEWAVL "Simulated waveform is longer than datase
g" | |
| /* </lalErrTable> */ | | /* </lalErrTable> */ | |
| | | | |
|
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsection*{Types} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- enumeraion type for simulations ----------------------------------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpEngineHFindChirpSimulationType"> | |
| | | typedef enum | |
| | | { | |
| | | fcNoSim, | |
| | | fcCreateRhosqVec, | |
| | | fcGaussianNoise, | |
| | | fcGaussianNoiseInject, | |
| | | fcRealDataInject, | |
| | | fcBankMinimalMatch | |
| | | } | |
| | | FindChirpSimulationType; | |
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Enumeration Type \texttt{FindChirpSimulationType}} | |
| | | \idx[Type]{FindChirpSimulationType} | |
| | | | |
| | | \input{FindChirpEngineHFindChirpSimulationType} | |
| | | | |
| | | \noindent This enumaration type lists the possible types of simulation | |
| | | that can be performed by the \texttt{FindChirpEngine} functions. The choic | |
| | | es | |
| | | are: | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{fcNoSim}] A regular data analysis run; no simulation performe | |
| | | d. | |
| | | | |
| | | \item[\texttt{fcCreateRhosqVec}] Create a vector contain the statistic | |
| | | $\rho^2(t_j)$ when filtering. | |
| | | | |
| | | \item[\texttt{fcGaussianNoise}] Replace the input data in the | |
| | | \texttt{DataSegmentVector} with Gaussian noise and a simulated LIGO I respo | |
| | | nse | |
| | | function. | |
| | | | |
| | | \item[\texttt{fcGaussianNoiseInject}] Replace the input data in the | |
| | | \texttt{DataSegmentVector} with Gaussian noise and a simulated LIGO I respo | |
| | | nse | |
| | | function. Inject random signals into the data as descibed by the | |
| | | \texttt{FindChirpSimulationParams}. | |
| | | | |
| | | \item[\texttt{fcGaussianNoiseInject}] Inject random signals into the input | |
| | | data as descibed by the \texttt{FindChirpSimulationParams}. | |
| | | | |
| | | \item[\texttt{fcBankMinimalMatch}] Perform a bank minimal match simulation | |
| | | using the parameters in the \texttt{FindChirpSimulationParams} structure. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- structure for managing a list of inspiral templates --------------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpEngineHInspiralTemplateNode"> | |
| typedef struct | | typedef struct | |
| tagInspiralTemplateNode | | tagInspiralTemplateNode | |
| { | | { | |
| struct tagInspiralTemplateNode *next; | | struct tagInspiralTemplateNode *next; | |
| struct tagInspiralTemplateNode *prev; | | struct tagInspiralTemplateNode *prev; | |
| InspiralTemplate *tmpltPtr; | | InspiralTemplate *tmpltPtr; | |
| } | | } | |
| InspiralTemplateNode; | | InspiralTemplateNode; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{InspiralTemplateNode}} | |
| | | \idx[Type]{InspiralTemplateNode} | |
| | | | |
|
| typedef enum | | \input{FindChirpEngineHInspiralTemplateNode} | |
| | | | |
| | | \noindent This structure provides a method of constucting doubly linked | |
| | | lists of \texttt{InspiralTemplate} structures. The fields are: | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{struct tagInspiralTemplateNode *next}] The next structure in | |
| | | the linked list. | |
| | | | |
| | | \item[\texttt{struct tagInspiralTemplateNode *prev}] The previous structure | |
| | | in | |
| | | the linked list. | |
| | | | |
| | | \item[\texttt{InspiralTemplate *tmpltPtr}] A pointer to an \texttt{Inspiral | |
| | | Template} structure. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | typedef struct | |
| | | tagInspiralInjection | |
| { | | { | |
|
| gaussianNoise, | | INT8 coaTime; | |
| bankMinimalMatch, | | REAL4 totalMass; | |
| gaussianNoiseInject, | | REAL4 eta; | |
| realDataInject, | | REAL4 dist; | |
| egregious | | REAL4 inclination; | |
| | | REAL4 coaPhase; | |
| | | REAL4 longitude; | |
| | | REAL4 latitude; | |
| | | REAL4 polarization; | |
| | | struct tagInspiralInjection *next; | |
| } | | } | |
|
| FindChirpSimulationType; | | InspiralInjection; | |
| | | | |
| typedef struct | | typedef struct | |
| tagFindChirpSimulationParams | | tagFindChirpSimulationParams | |
| { | | { | |
| FindChirpSimulationType simType; /* type of simulation
*/ | | FindChirpSimulationType simType; /* type of simulation
*/ | |
| UINT4 simCount; /* number of simulations
*/ | | UINT4 simCount; /* number of simulations
*/ | |
|
| | | UINT4 injectStartIdx; /* index of the first inj | |
| | | */ | |
| | | InspiralInjection *injectEvent; /* events to inject | |
| | | */ | |
| InspiralEvent *loudestEvent; /* array of loudest events
*/ | | InspiralEvent *loudestEvent; /* array of loudest events
*/ | |
| REAL4 *signalNorm; /* (s|s) for each dataSeg
*/ | | REAL4 *signalNorm; /* (s|s) for each dataSeg
*/ | |
| REAL4 mMin; /* minimum mass for binary
*/ | | REAL4 mMin; /* minimum mass for binary
*/ | |
| REAL4 mMax; /* maximum mass for binary
*/ | | REAL4 mMax; /* maximum mass for binary
*/ | |
|
| | | REAL4 fLowInject; /* waveform low freq cutoff
*/ | |
| REAL4 gaussianVarsq; /* variance squared of nois
e */ | | REAL4 gaussianVarsq; /* variance squared of nois
e */ | |
| RandomParams *randomParams; /* random seed container
*/ | | RandomParams *randomParams; /* random seed container
*/ | |
|
| | | REAL4TimeSeries *chan; /* pointer to the data chun
k */ | |
| } | | } | |
| FindChirpSimulationParams; | | FindChirpSimulationParams; | |
| | | | |
| typedef struct | | typedef struct | |
| tagFindChirpSlaveParams | | tagFindChirpSlaveParams | |
| { | | { | |
| UINT4 dataConditioned; | | UINT4 dataConditioned; | |
| UINT4 *inspiralDebugFlagPtr; | | UINT4 *inspiralDebugFlagPtr; | |
|
| REAL4 *chisqThreshVec; | | | |
| REAL4 *rhosqThreshVec; | | REAL4 *rhosqThreshVec; | |
|
| | | REAL4 *chisqThreshVec; | |
| FILE *tmpltBankFilePtr; | | FILE *tmpltBankFilePtr; | |
| FILE *eventFilePtr; | | FILE *eventFilePtr; | |
| FindChirpSegmentVector *fcSegVec; | | FindChirpSegmentVector *fcSegVec; | |
| FindChirpSPDataParams *dataParams; | | FindChirpSPDataParams *dataParams; | |
| FindChirpSPTmpltParams *tmpltParams; | | FindChirpSPTmpltParams *tmpltParams; | |
| FindChirpFilterParams *filterParams; | | FindChirpFilterParams *filterParams; | |
| FindChirpFilterInput *filterInput; | | FindChirpFilterInput *filterInput; | |
| FindChirpSimulationParams *simParams; | | FindChirpSimulationParams *simParams; | |
|
| | | BOOLEAN *notFinished; | |
| BOOLEAN useMPI; | | BOOLEAN useMPI; | |
| void *mpiComm; | | void *mpiComm; | |
| } | | } | |
| FindChirpSlaveParams; | | FindChirpSlaveParams; | |
| | | | |
| typedef struct | | typedef struct | |
| tagFindChirpCreateBankParams | | tagFindChirpCreateBankParams | |
| { | | { | |
| INT4 numCoarse; | | INT4 numCoarse; | |
| UINT4 numSegments; | | UINT4 numSegments; | |
| | | | |
| skipping to change at line 169 | | skipping to change at line 270 | |
| ExchInspiralTemplate, | | ExchInspiralTemplate, | |
| ExchInspiralEvent, | | ExchInspiralEvent, | |
| ExchNumTmpltsFiltered, | | ExchNumTmpltsFiltered, | |
| ExchFinished | | ExchFinished | |
| }; | | }; | |
| | | | |
| typedef struct | | typedef struct | |
| tagFindChirpMasterParams | | tagFindChirpMasterParams | |
| { | | { | |
| UINT4 numTmpltExch; | | UINT4 numTmpltExch; | |
|
| | | UINT4 numTmpltsTotal; | |
| UINT4 numTmpltsToFilter; | | UINT4 numTmpltsToFilter; | |
| UINT4 numTmpltsFiltered; | | UINT4 numTmpltsFiltered; | |
| UINT4 *inspiralDebugFlagPtr; | | UINT4 *inspiralDebugFlagPtr; | |
|
| | | UINT4Vector *bankSentVec; | |
| MPI_Comm *mpiComm; | | MPI_Comm *mpiComm; | |
| UINT4 *numSlaves; | | UINT4 *numSlaves; | |
|
| | | InspiralTemplate *tmpltBankHead; | |
| InspiralTemplateNode *currentTmpltNode; | | InspiralTemplateNode *currentTmpltNode; | |
| InspiralTemplateNode *tmpltNodeHead; | | InspiralTemplateNode *tmpltNodeHead; | |
| } | | } | |
| FindChirpMasterParams; | | FindChirpMasterParams; | |
| | | | |
| void | | void | |
| LALFindChirpMaster ( | | LALFindChirpMaster ( | |
| LALStatus *status, | | LALStatus *status, | |
| InspiralEvent **eventList, | | InspiralEvent **eventList, | |
|
| FindChirpMasterParams *params | | FindChirpMasterParams *params | |
| ); | | ); | |
| #endif /* LAL_MPI_ENABLED */ | | #endif /* LAL_MPI_ENABLED */ | |
| | | | |
| void | | void | |
| LALFindChirpSlave ( | | LALFindChirpSlave ( | |
| LALStatus *status, | | LALStatus *status, | |
|
| BOOLEAN *notFinished, | | InspiralEvent **outputEventHandle, | |
| DataSegmentVector *dataSegVec, | | DataSegmentVector *dataSegVec, | |
| FindChirpSlaveParams *params | | FindChirpSlaveParams *params | |
| ); | | ); | |
| | | | |
| void | | void | |
| LALFindChirpCreateInspiralBank ( | | LALFindChirpCreateInspiralBank ( | |
| LALStatus *status, | | LALStatus *status, | |
| InspiralCoarseBankIn *bankIn, | | InspiralCoarseBankIn *bankIn, | |
| InspiralTemplate **bankHead, | | InspiralTemplate **bankHead, | |
| FindChirpCreateBankParams *params | | FindChirpCreateBankParams *params | |
| | | | |
| skipping to change at line 222 | | skipping to change at line 326 | |
| InspiralTemplate *tmplt, | | InspiralTemplate *tmplt, | |
| InspiralTemplateNode **tmpltNode | | InspiralTemplateNode **tmpltNode | |
| ); | | ); | |
| | | | |
| void | | void | |
| LALFindChirpDestroyTmpltNode ( | | LALFindChirpDestroyTmpltNode ( | |
| LALStatus *status, | | LALStatus *status, | |
| InspiralTemplateNode **tmpltNode | | InspiralTemplateNode **tmpltNode | |
| ); | | ); | |
| | | | |
|
| | | void | |
| | | LALFindChirpInjectSignals ( | |
| | | LALStatus *status, | |
| | | REAL4TimeSeries *chan, | |
| | | InspiralInjection *events, | |
| | | COMPLEX8FrequencySeries *resp | |
| | | ); | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| } | | } | |
| #endif | | #endif | |
| | | | |
| #endif /* _FINDCHIRPENGINEH_H */ | | #endif /* _FINDCHIRPENGINEH_H */ | |
| | | | |
End of changes. 25 change blocks. |
| 16 lines changed or deleted | | 138 lines changed or added | |
|
| FindChirpSP.h | | FindChirpSP.h | |
| /*----------------------------------------------------------------------- | | /*----------------------------------------------------------------------- | |
| * | | * | |
| * File Name: FindChirpSP.h | | * File Name: FindChirpSP.h | |
| * | | * | |
| * Author: Brown, D. A. | | * Author: Brown, D. A. | |
| * | | * | |
|
| * Revision: $Id: FindChirpSP.h,v 1.5 2001/09/18 15:47:34 duncan Exp $ | | * Revision: $Id: FindChirpSP.h,v 1.6 2002/01/18 01:47:31 duncan Exp $ | |
| * | | * | |
| *----------------------------------------------------------------------- | | *----------------------------------------------------------------------- | |
| */ | | */ | |
| | | | |
| #if 0 | | #if 0 | |
| <lalVerbatim file="FindChirpSPHV"> | | <lalVerbatim file="FindChirpSPHV"> | |
| Author: Brown, D. A. | | Author: Brown, D. A. | |
|
| $Id: FindChirpSP.h,v 1.5 2001/09/18 15:47:34 duncan Exp $ | | $Id: FindChirpSP.h,v 1.6 2002/01/18 01:47:31 duncan Exp $ | |
| </lalVerbatim> | | </lalVerbatim> | |
| | | | |
| <lalLaTeX> | | <lalLaTeX> | |
|
| | | | |
| \section{Header \texttt{FindChirpSP.h}} | | \section{Header \texttt{FindChirpSP.h}} | |
| \label{s:FindChirpSP.h} | | \label{s:FindChirpSP.h} | |
| | | | |
|
| Provides routines to filter IFO data for binary inspiral chirps generated | | Provides structures and functions to condition interferometer data | |
| using the stationary phase approximation. | | and generate binary inspiral chirps using the stationary phase approximatio | |
| | | n. | |
| | | | |
| \subsection*{Synopsis} | | \subsection*{Synopsis} | |
|
| | | | |
| \begin{verbatim} | | \begin{verbatim} | |
|
| #include "FindChirpSP.h" | | #include <lal/FindChirpSP.h> | |
| \end{verbatim} | | \end{verbatim} | |
| | | | |
|
| \noindent This header provides routines necessary to filter IFO | | | |
| data contained in a \verb|DataSegment| structure for binary inspiral | | | |
| chirps generated using the stationary phase approximation. | | | |
| | | | |
| In order to increase efficency, the filtering algorithm is divided | | | |
| into three parts: | | | |
| \begin{itemize} | | | |
| \item Those that are independent of the template and need to be calculated | | | |
| once per data segment. | | | |
| | | | |
| \item Those that need to be done once per template. | | | |
| | | | |
| \item Those that need to be done once for each data segment for each | | | |
| template. | | | |
| \end{itemize} | | | |
| The template independent functions are contained in the module | | | |
| \verb|FindChirpSPData.c| and template dependent functions are in | | | |
| the module \verb|FindChirpSPTemplate.c|. | | | |
| | | | |
| \input{FindChirpSPHDoc} | | \input{FindChirpSPHDoc} | |
|
| | | | |
| </lalLaTeX> | | </lalLaTeX> | |
| #endif | | #endif | |
| | | | |
| #ifndef _FINDCHIRPSPH_H | | #ifndef _FINDCHIRPSPH_H | |
| #define _FINDCHIRPSPH_H | | #define _FINDCHIRPSPH_H | |
| | | | |
| #include <lal/LALDatatypes.h> | | #include <lal/LALDatatypes.h> | |
| #include <lal/RealFFT.h> | | #include <lal/RealFFT.h> | |
| #include <lal/DataBuffer.h> | | #include <lal/DataBuffer.h> | |
| #include <lal/LALInspiral.h> | | #include <lal/LALInspiral.h> | |
| #include <lal/FindChirp.h> | | #include <lal/FindChirp.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
|
| | | #pragma } | |
| #endif | | #endif | |
| | | | |
|
| | | NRCSID (FINDCHIRPSPH, "$Id: FindChirpSP.h,v 1.6 2002/01/18 01:47:31 duncan | |
| | | Exp $"); | |
| | | | |
| #if 0 | | #if 0 | |
| <lalLaTeX> | | <lalLaTeX> | |
| \subsection*{Error codes} | | \subsection*{Error codes} | |
| </lalLaTeX> | | </lalLaTeX> | |
| #endif | | #endif | |
| /* <lalErrTable> */ | | /* <lalErrTable> */ | |
| #define FINDCHIRPSPH_ENULL 1 | | #define FINDCHIRPSPH_ENULL 1 | |
| #define FINDCHIRPSPH_ENNUL 2 | | #define FINDCHIRPSPH_ENNUL 2 | |
| #define FINDCHIRPSPH_EALOC 3 | | #define FINDCHIRPSPH_EALOC 3 | |
| #define FINDCHIRPSPH_ENUMZ 4 | | #define FINDCHIRPSPH_ENUMZ 4 | |
| | | | |
| skipping to change at line 95 | | skipping to change at line 79 | |
| #define FINDCHIRPSPH_MSGEALOC "Memory allocation error" | | #define FINDCHIRPSPH_MSGEALOC "Memory allocation error" | |
| #define FINDCHIRPSPH_MSGENUMZ "Invalid number of segments" | | #define FINDCHIRPSPH_MSGENUMZ "Invalid number of segments" | |
| #define FINDCHIRPSPH_MSGESEGZ "Invalid number of points in segments" | | #define FINDCHIRPSPH_MSGESEGZ "Invalid number of points in segments" | |
| #define FINDCHIRPSPH_MSGEMISM "Mismatch between number of points in segment
s" | | #define FINDCHIRPSPH_MSGEMISM "Mismatch between number of points in segment
s" | |
| #define FINDCHIRPSPH_MSGEDELT "deltaT is zero or negative" | | #define FINDCHIRPSPH_MSGEDELT "deltaT is zero or negative" | |
| #define FINDCHIRPSPH_MSGEFLOW "Low frequency cutoff is negative" | | #define FINDCHIRPSPH_MSGEFLOW "Low frequency cutoff is negative" | |
| #define FINDCHIRPSPH_MSGEDYNR "Dynamic range scaling is zero or negative" | | #define FINDCHIRPSPH_MSGEDYNR "Dynamic range scaling is zero or negative" | |
| #define FINDCHIRPSPH_MSGEISTN "Truncation of inverse power spectrum is nega
tive" | | #define FINDCHIRPSPH_MSGEISTN "Truncation of inverse power spectrum is nega
tive" | |
| /* </lalErrTable> */ | | /* </lalErrTable> */ | |
| | | | |
|
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsection*{Types} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | /* --- the parameter structure for the data conditioning function -------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpSPHFindChirpSPDataParams"> | |
| typedef struct | | typedef struct | |
| tagFindChirpSPDataParams | | tagFindChirpSPDataParams | |
| { | | { | |
| REAL4Vector *ampVec; | | REAL4Vector *ampVec; | |
| RealFFTPlan *fwdPlan; | | RealFFTPlan *fwdPlan; | |
| RealFFTPlan *invPlan; | | RealFFTPlan *invPlan; | |
| REAL4Vector *vVec; | | REAL4Vector *vVec; | |
| REAL4Vector *wVec; | | REAL4Vector *wVec; | |
| COMPLEX8Vector *wtildeVec; | | COMPLEX8Vector *wtildeVec; | |
| REAL4Vector *tmpltPowerVec; | | REAL4Vector *tmpltPowerVec; | |
| REAL4 deltaT; | | REAL4 deltaT; | |
| REAL4 fLow; | | REAL4 fLow; | |
| REAL4 dynRange; | | REAL4 dynRange; | |
| UINT4 invSpecTrunc; | | UINT4 invSpecTrunc; | |
| } | | } | |
| FindChirpSPDataParams; | | FindChirpSPDataParams; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{FindChirpSPDataParams}} | |
| | | \idx[Type]{FindChirpSPDataParams} | |
| | | | |
| | | \input{FindChirpSPHFindChirpSPDataParams} | |
| | | | |
| | | \noindent This structure contains the parameters needed to call the | |
| | | \texttt{FindChirpSPData()} function. It should be initialized by | |
| | | \texttt{FindChirpSPDataInit()} and destroyed by | |
| | | \texttt{FindChirpSPDataFinalize()}. The fields are: | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{REAL4Vector *ampVec}] A vector containing the frequency domai | |
| | | n | |
| | | quantity $k/N$, where $k$ is the frequency series index and $N$ is the numb | |
| | | er | |
| | | of points in a data segment. | |
| | | | |
| | | \item[\texttt{REAL4Vector *fwdPlan}] An FFTW plan used to transform the | |
| | | time domain interferometer data $v(t_j)$ into its DFT $\tilde{v}_k$. | |
| | | | |
| | | \item[\texttt{REAL4Vector *fwdPlan}] An FFTW plan used to transform the | |
| | | dimensionless frequency domain interferometer strain $\tilde{w}_k$ into | |
| | | the quantity $N w(t_j)$ to allow time domain trunction of the inverse | |
| | | power spectrum. | |
| | | | |
| | | \item[\texttt{REAL4Vector *vVec}] {\color{red} FIXME} A vector to contain | |
| | | the time domain interferometer output $v(t_j)$. This is obsolete since LIGO | |
| | | gives us $v(t_j)$ as floats. The 40m prototype gave integers which needed t | |
| | | o | |
| | | be cast to floats. | |
| | | | |
| | | \item[\texttt{REAL4Vector *wVec}] A vector used as workspace when truncatin | |
| | | g | |
| | | the imverse power spectrum in the time domain. | |
| | | | |
| | | \item[\texttt{COMPLEX8Vector *wtildeVec}] A which on exit from | |
| | | \texttt{FindChirpSPData()} contains the inverse of the strain one sided pow | |
| | | er | |
| | | spectral density, after trunction in the time domain, that is | |
| | | $ \tilde{w}_k = {1}/{\ospsd}$. | |
| | | | |
| | | \item[\texttt{REAL4Vector *tmpltPowerVec}] A vector which on exit from | |
| | | \texttt{FindChirpSPData()} contains the quantity | |
| | | \begin{equation} | |
| | | \mathtt{tmpltPower[k]} = \frac{f^{-7/3}}{\ospsd} | |
| | | \end{equation} | |
| | | | |
| | | \item[\texttt{REAL4 deltaT}] {\color{red} FIXME} The sampling interval | |
| | | $\Delta t$. Should be a \texttt{REAL8} or derived from the input time serie | |
| | | s | |
| | | \texttt{chan}. | |
| | | | |
| | | \item[\texttt{REAL4 fLow}] The low frequency cutoff for the algorithm. All | |
| | | data is zero below this frequency. | |
| | | | |
| | | \item[\texttt{REAL4 dynRange}] A dynamic range factor which cancells from | |
| | | the filter output (if set correctly in \texttt{FindChirpSPTmplt()} as well) | |
| | | . | |
| | | This allows quantities to be stored in the range of \texttt{REAL4} rather | |
| | | than \texttt{REAL8}. | |
| | | | |
| | | \item[\texttt{UINT4 invSpecTrunc}] The length to which to truncate the inve | |
| | | rse | |
| | | power spectral density of the data in the time domain. If set to zero, no | |
| | | truncation is performed. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
|
| | | /* --- vector of DataSegment, as defined the framedata package ----------- | |
| | | */ | |
| | | #pragma <lalVerbatim file="FindChirpSPHFindChirpSPTmpltParams"> | |
| typedef struct | | typedef struct | |
| tagFindChirpSPTmpltParams | | tagFindChirpSPTmpltParams | |
| { | | { | |
| REAL4 deltaT; | | REAL4 deltaT; | |
| REAL4 fLow; | | REAL4 fLow; | |
| REAL4 dynRange; | | REAL4 dynRange; | |
| REAL4Vector *xfacVec; | | REAL4Vector *xfacVec; | |
| } | | } | |
| FindChirpSPTmpltParams; | | FindChirpSPTmpltParams; | |
|
| | | #pragma </lalVerbatim> | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \subsubsection*{Structure \texttt{FindChirpSPTmpltParams}} | |
| | | \idx[Type]{FindChirpSPTmpltParams} | |
| | | | |
| | | \input{FindChirpSPHFindChirpSPTmpltParams} | |
| | | | |
| | | \noindent This structure contains the parameters for generation of | |
| | | stationary phase templates by the function \texttt{FindChirpSPTmplt()} | |
| | | It should be initialized by \texttt{FindChirpSPTmpltInit()} and destroyed b | |
| | | y | |
| | | \texttt{FindChirpSPTmpltFinalize()}. The fields are: | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{REAL4 *deltaT}] {\color{red} FIXME} The sampling interval | |
| | | $\Delta t$. Should be a \texttt{REAL8}. | |
| | | | |
| | | \item[\texttt{REAL4 fLow}] The low frequency cutoff for the algorithm. All | |
| | | data is zero below this frequency. | |
| | | | |
| | | \item[\texttt{REAL4 dynRange}] A dynamic range factor which cancells from | |
| | | the filter output (if set correctly in \texttt{FindChirpSPData()} as well). | |
| | | This allows quantities to be stored in the range of \texttt{REAL4} rather | |
| | | than \texttt{REAL8}. | |
| | | | |
| | | \item[\texttt{REAL4Vector *xfacVec}] A vector containing the frequency | |
| | | domain quantity $k^{-7/6}$. | |
| | | \end{description} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \vfill{\footnotesize\input{FindChirpSPHV}} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \newpage\input{FindChirpSPDataC} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| void | | void | |
| LALFindChirpSPDataInit ( | | LALFindChirpSPDataInit ( | |
| LALStatus *status, | | LALStatus *status, | |
| FindChirpSPDataParams **output, | | FindChirpSPDataParams **output, | |
| FindChirpInitParams *params | | FindChirpInitParams *params | |
| ); | | ); | |
| | | | |
| void | | void | |
| LALFindChirpSPData ( | | LALFindChirpSPData ( | |
| | | | |
| skipping to change at line 143 | | skipping to change at line 242 | |
| DataSegmentVector *dataSegVec, | | DataSegmentVector *dataSegVec, | |
| FindChirpSPDataParams *params | | FindChirpSPDataParams *params | |
| ); | | ); | |
| | | | |
| void | | void | |
| LALFindChirpSPDataFinalize ( | | LALFindChirpSPDataFinalize ( | |
| LALStatus *status, | | LALStatus *status, | |
| FindChirpSPDataParams **output | | FindChirpSPDataParams **output | |
| ); | | ); | |
| | | | |
|
| | | #if 0 | |
| | | <lalLaTeX> | |
| | | \newpage\input{FindChirpSPTemplateC} | |
| | | </lalLaTeX> | |
| | | #endif | |
| | | | |
| void | | void | |
| LALFindChirpSPTemplateInit ( | | LALFindChirpSPTemplateInit ( | |
| LALStatus *status, | | LALStatus *status, | |
| FindChirpSPTmpltParams **output, | | FindChirpSPTmpltParams **output, | |
| FindChirpInitParams *params | | FindChirpInitParams *params | |
| ); | | ); | |
| | | | |
| void | | void | |
| LALFindChirpSPTemplate ( | | LALFindChirpSPTemplate ( | |
| LALStatus *status, | | LALStatus *status, | |
| | | | |
| skipping to change at line 165 | | skipping to change at line 270 | |
| FindChirpSPTmpltParams *params | | FindChirpSPTmpltParams *params | |
| ); | | ); | |
| | | | |
| void | | void | |
| LALFindChirpSPTemplateFinalize ( | | LALFindChirpSPTemplateFinalize ( | |
| LALStatus *status, | | LALStatus *status, | |
| FindChirpSPTmpltParams **output | | FindChirpSPTmpltParams **output | |
| ); | | ); | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
|
| | | #pragma { | |
| } | | } | |
| #endif | | #endif | |
| | | | |
|
| /* | | | |
| <lalLaTeX> | | | |
| \vfill{\footnotesize\input{FindChirpSPHV}} | | | |
| \newpage\input{FindChirpSPDataC} | | | |
| </lalLaTeX> | | | |
| */ | | | |
| | | | |
| #endif /* _FINDCHIRPSPH_H */ | | #endif /* _FINDCHIRPSPH_H */ | |
| | | | |
End of changes. 17 change blocks. |
| 33 lines changed or deleted | | 145 lines changed or added | |
|
| GeneratePPNInspiral.h | | GeneratePPNInspiral.h | |
| /************************** <lalVerbatim file="GeneratePPNInspiralHV"> | | /************************** <lalVerbatim file="GeneratePPNInspiralHV"> | |
| Author: Creighton, T. D. | | Author: Creighton, T. D. | |
|
| $Id: GeneratePPNInspiral.h,v 1.9 2001/12/05 21:10:49 jolien Exp $ | | $Id: GeneratePPNInspiral.h,v 1.11 2002/04/10 17:15:03 teviet Exp $ | |
| **************************************************** </lalVerbatim> */ | | **************************************************** </lalVerbatim> */ | |
| | | | |
| /********************************************************** <lalLaTeX> | | /********************************************************** <lalLaTeX> | |
| | | | |
| \section{Header \texttt{GeneratePPNInspiral.h}} | | \section{Header \texttt{GeneratePPNInspiral.h}} | |
| \label{s:GeneratePPNInspiral.h} | | \label{s:GeneratePPNInspiral.h} | |
| | | | |
| Provides routines to generate restricted parametrized | | Provides routines to generate restricted parametrized | |
| post${}^{5/2}$-Newtonian inspiral waveforms. | | post${}^{5/2}$-Newtonian inspiral waveforms. | |
| | | | |
| | | | |
| skipping to change at line 32 | | skipping to change at line 32 | |
| post${}^{5/2}$-Newtonian order (including corrections up to order | | post${}^{5/2}$-Newtonian order (including corrections up to order | |
| $v^5/c^5$, where $v$ is the orbital speed), but the wave amplitudes | | $v^5/c^5$, where $v$ is the orbital speed), but the wave amplitudes | |
| are accurate only to leading (post${}^0$-Newtonian) order. | | are accurate only to leading (post${}^0$-Newtonian) order. | |
| Furthermore, at each order the post${}^{n/2}$-Newtonian correction can | | Furthermore, at each order the post${}^{n/2}$-Newtonian correction can | |
| be turned on, off, or set to an unphysical value, by adjusting a | | be turned on, off, or set to an unphysical value, by adjusting a | |
| parameter $p_n$. | | parameter $p_n$. | |
| | | | |
| The post-Newtonian expansion implicitly assumes an \emph{adiabatic} | | The post-Newtonian expansion implicitly assumes an \emph{adiabatic} | |
| inspiral, where one can represent the waveform by an ``instantaneous'' | | inspiral, where one can represent the waveform by an ``instantaneous'' | |
| amplitude and frequency that vary over timescales longer than one wave | | amplitude and frequency that vary over timescales longer than one wave | |
|
| period. The orbital frequency of the \emph{system} to | | period. The \emph{orbital} frequency of the system to | |
| post${}^{5/2}$-Newtonian order is given in Eqs.~6.4.1 and~6.9.1 | | post${}^{5/2}$-Newtonian order is given in Eqs.~6.4.1 and~6.9.1 | |
|
| of~\cite{GRASP_1.9.8:2000} as: | | of~\cite{GRASP_1.9.8:2000}; here we work entirely in terms of the | |
| | | \emph{gravitational-wave} frequency, which is twice the orbital | |
| | | frequency: | |
| \begin{eqnarray} | | \begin{eqnarray} | |
| f(t) & = & \frac{M_\odot}{8\pi T_\odot m_\mathrm{tot}}\left\{ | | f(t) & = & \frac{M_\odot}{8\pi T_\odot m_\mathrm{tot}}\left\{ | |
| p_0\Theta^{-3/8}+ | | p_0\Theta^{-3/8}+ | |
| p_1\Theta^{-1/2}+ | | p_1\Theta^{-1/2}+ | |
| p_2\left(\frac{743}{2688}+\frac{11}{32}\eta\right)\Theta^{-5/8}- | | p_2\left(\frac{743}{2688}+\frac{11}{32}\eta\right)\Theta^{-5/8}- | |
| p_3\frac{3\pi}{10}\Theta^{-3/4} \right. \nonumber \\ | | p_3\frac{3\pi}{10}\Theta^{-3/4} \right. \nonumber \\ | |
| \label{eq:ppn-freq} | | \label{eq:ppn-freq} | |
| & & \left.+ p_4\left(\frac{1855099}{14450688}+\frac{56975}{258048}\eta+ | | & & \left.+ p_4\left(\frac{1855099}{14450688}+\frac{56975}{258048}\eta+ | |
| \frac{371}{2048}\eta^2\right)\Theta^{-7/8}- | | \frac{371}{2048}\eta^2\right)\Theta^{-7/8}- | |
| p_5\left(\frac{7729}{21504}+\frac{3}{256}\eta\right)\pi\Theta^{-1} | | p_5\left(\frac{7729}{21504}+\frac{3}{256}\eta\right)\pi\Theta^{-1} | |
| | | | |
| skipping to change at line 67 | | skipping to change at line 69 | |
| point-mass approximation. The post-Newtonian parameters $p_k$ are | | point-mass approximation. The post-Newtonian parameters $p_k$ are | |
| defined such that in a normal (physical) post${}^{n/2}$-Newtonian | | defined such that in a normal (physical) post${}^{n/2}$-Newtonian | |
| expansion, one sets $p_1=0$ and $p_{k>n}=0$, and $p_k=1$ for all other | | expansion, one sets $p_1=0$ and $p_{k>n}=0$, and $p_k=1$ for all other | |
| $k$. However, changing this convention can be used to model in an | | $k$. However, changing this convention can be used to model in an | |
| approximate way things such as spin, eccentricity, or non-GR theories | | approximate way things such as spin, eccentricity, or non-GR theories | |
| of gravity. We also note that while most terms are normalized to | | of gravity. We also note that while most terms are normalized to | |
| their normal post-Newtonian values, the normalization on the $p_1$ | | their normal post-Newtonian values, the normalization on the $p_1$ | |
| term is completely arbitrary, since it is zero in a normal | | term is completely arbitrary, since it is zero in a normal | |
| post-Newtonian expansion. | | post-Newtonian expansion. | |
| | | | |
|
| The orbital phase as a function of time can be computed analytically | | The wave phase as a function of time can be computed analytically from | |
| from Eq.~\ref{eq:ppn-freq} as $\phi_\mathrm{orb}=2\pi\int f\,dt$. | | Eq.~\ref{eq:ppn-freq} as $\phi_\mathrm{orb}=2\pi\int f\,dt$: | |
| However, the phase of the \emph{waveform} is twice this, giving: | | | |
| \begin{eqnarray} | | \begin{eqnarray} | |
| \phi(t) & = & \phi_c - \frac{2}{\eta}\left\{ | | \phi(t) & = & \phi_c - \frac{2}{\eta}\left\{ | |
| p_0\Theta^{5/8}+ | | p_0\Theta^{5/8}+ | |
| p_1\frac{5}{4}\Theta^{1/2}+ | | p_1\frac{5}{4}\Theta^{1/2}+ | |
| p_2\left(\frac{3715}{8064}+\frac{55}{96}\eta\right)\Theta^{3/8}- | | p_2\left(\frac{3715}{8064}+\frac{55}{96}\eta\right)\Theta^{3/8}- | |
| p_3\frac{3\pi}{4}\Theta^{1/4} \right. \nonumber \\ | | p_3\frac{3\pi}{4}\Theta^{1/4} \right. \nonumber \\ | |
| \label{eq:ppn-phi} | | \label{eq:ppn-phi} | |
| & & \left.+ p_4\left(\frac{9275495}{14450688}+\frac{284875}{258048}\eta+ | | & & \left.+ p_4\left(\frac{9275495}{14450688}+\frac{284875}{258048}\eta+ | |
| \frac{1855}{2048}\eta^2\right)\Theta^{1/8}- | | \frac{1855}{2048}\eta^2\right)\Theta^{1/8}- | |
| p_5\left(\frac{38645}{172032}+\frac{15}{2048}\eta\right)\pi | | p_5\left(\frac{38645}{172032}+\frac{15}{2048}\eta\right)\pi | |
| | | | |
| skipping to change at line 145 | | skipping to change at line 146 | |
| #include <lal/LALStdlib.h> | | #include <lal/LALStdlib.h> | |
| #include <lal/SimulateCoherentGW.h> | | #include <lal/SimulateCoherentGW.h> | |
| #include <lal/SkyCoordinates.h> | | #include <lal/SkyCoordinates.h> | |
| #include <lal/Random.h> | | #include <lal/Random.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
| #pragma } | | #pragma } | |
| #endif | | #endif | |
| | | | |
|
| NRCSID( GENERATEPPNINSPIRALH, "$Id: GeneratePPNInspiral.h,v 1.9 2001/12/05
21:10:49 jolien Exp $" ); | | NRCSID( GENERATEPPNINSPIRALH, "$Id: GeneratePPNInspiral.h,v 1.11 2002/04/10
17:15:03 teviet Exp $" ); | |
| | | | |
| /********************************************************** <lalLaTeX> | | /********************************************************** <lalLaTeX> | |
| \subsection*{Error conditions} | | \subsection*{Error conditions} | |
| ****************************************** </lalLaTeX><lalErrTable> */ | | ****************************************** </lalLaTeX><lalErrTable> */ | |
| #define GENERATEPPNINSPIRALH_ENUL 1 | | #define GENERATEPPNINSPIRALH_ENUL 1 | |
| #define GENERATEPPNINSPIRALH_EOUT 2 | | #define GENERATEPPNINSPIRALH_EOUT 2 | |
| #define GENERATEPPNINSPIRALH_ETBAD 3 | | #define GENERATEPPNINSPIRALH_ETBAD 3 | |
| #define GENERATEPPNINSPIRALH_EFBAD 4 | | #define GENERATEPPNINSPIRALH_EFBAD 4 | |
| #define GENERATEPPNINSPIRALH_EPBAD 5 | | #define GENERATEPPNINSPIRALH_EPBAD 5 | |
| #define GENERATEPPNINSPIRALH_EMBAD 6 | | #define GENERATEPPNINSPIRALH_EMBAD 6 | |
| | | | |
| skipping to change at line 242 | | skipping to change at line 243 | |
| arbitrary reference phase for a post${}^{5/2}$-Newtonian | | arbitrary reference phase for a post${}^{5/2}$-Newtonian | |
| approximation), in radians. | | approximation), in radians. | |
| | | | |
| \item[\texttt{REAL8 deltaT}] The requested sampling interval of the | | \item[\texttt{REAL8 deltaT}] The requested sampling interval of the | |
| waveform, in s. | | waveform, in s. | |
| | | | |
| \item[\texttt{REAL4 fStartIn}] The requested starting frequency of the | | \item[\texttt{REAL4 fStartIn}] The requested starting frequency of the | |
| waveform, in Hz. | | waveform, in Hz. | |
| | | | |
| \item[\texttt{REAL4 fStopIn}] The requested termination frequency of | | \item[\texttt{REAL4 fStopIn}] The requested termination frequency of | |
|
| the waveform, in Hz. If set to $\leq0$, the waveform will be | | the waveform, in Hz. If set to 0, the waveform will be generated | |
| generated until a termination condition (above) is met. | | until a termination condition (above) is met. If set to a negative | |
| | | number, the generator will use its absolute value as the terminating | |
| | | frequency, but will ignore post-Newtonian breakdown; it will terminate | |
| | | only at the requested frequency $-\mathtt{fStopIn}$, a local maximum | |
| | | frequency, or the central singularity. | |
| | | | |
| \item[\texttt{UINT4 lengthIn}] The maximum number of samples in the | | \item[\texttt{UINT4 lengthIn}] The maximum number of samples in the | |
| generated waveform. If zero, the waveforms can be arbitrarily long. | | generated waveform. If zero, the waveforms can be arbitrarily long. | |
| | | | |
| \item[\texttt{REAL4Vector *ppn}] The parameters $p_n$ selecting the | | \item[\texttt{REAL4Vector *ppn}] The parameters $p_n$ selecting the | |
| type of post-Newtonian expansion. If \verb@ppn@=\verb@NULL@, a | | type of post-Newtonian expansion. If \verb@ppn@=\verb@NULL@, a | |
| ``normal'' (physical) expansion is assumed. | | ``normal'' (physical) expansion is assumed. | |
| \end{description} | | \end{description} | |
| | | | |
| \medskip\noindent\textit{Output fields:} | | \medskip\noindent\textit{Output fields:} | |
| | | | |
End of changes. 6 change blocks. |
| 9 lines changed or deleted | | 14 lines changed or added | |
|
| LALInspiral.h | | LALInspiral.h | |
| /* <lalVerbatim file="LALInspiralHV"> | | /* <lalVerbatim file="LALInspiralHV"> | |
| | | | |
| Author: Churches, D. K and B. S. Sathyaprakash. | | Author: Churches, D. K and B. S. Sathyaprakash. | |
|
| $Id: LALInspiral.h,v 1.13 2001/12/06 15:15:00 dchurches Exp $ | | $Id: LALInspiral.h,v 1.15 2002/04/11 17:03:53 dchurches Exp $ | |
| | | | |
| </lalVerbatim> */ | | </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| | | | |
| \section{Header \texttt{LALInspiral.h}} | | \section{Header \texttt{LALInspiral.h}} | |
| \label{s:LALInspiral.h} | | \label{s:LALInspiral.h} | |
| | | | |
| Header file for the template generation codes. | | Header file for the template generation codes. | |
| | | | |
| | | | |
| skipping to change at line 37 | | skipping to change at line 37 | |
| # include <math.h> | | # include <math.h> | |
| # include <stdio.h> | | # include <stdio.h> | |
| # include <stdlib.h> | | # include <stdlib.h> | |
| # include <lal/LALStdlib.h> | | # include <lal/LALStdlib.h> | |
| # include <lal/LALConstants.h> | | # include <lal/LALConstants.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
| #endif | | #endif | |
| | | | |
|
| NRCSID( LALINSPIRALH, "$Id: LALInspiral.h,v 1.13 2001/12/06 15:15:00 dchurc
hes Exp $" ); | | NRCSID( LALINSPIRALH, "$Id: LALInspiral.h,v 1.15 2002/04/11 17:03:53 dchurc
hes Exp $" ); | |
| | | | |
| # define oneby3 0.333333333333333333333333333 | | # define oneby3 0.333333333333333333333333333 | |
| # define twoby3 0.666666666666666666666666667 | | # define twoby3 0.666666666666666666666666667 | |
| # define fourby3 1.333333333333333333333333333 | | # define fourby3 1.333333333333333333333333333 | |
| # define fiveby3 1.666666666666666666666666667 | | # define fiveby3 1.666666666666666666666666667 | |
| # define sevenby3 2.333333333333333333333333333 | | # define sevenby3 2.333333333333333333333333333 | |
| # define eightby3 2.666666666666666666666666667 | | # define eightby3 2.666666666666666666666666667 | |
| # define tenby3 3.333333333333333333333333333 | | # define tenby3 3.333333333333333333333333333 | |
| # define elevenby3 3.666666666666666666666666666 | | # define elevenby3 3.666666666666666666666666666 | |
| # define threeby8 0.375 | | # define threeby8 0.375 | |
| | | | |
| skipping to change at line 246 | | skipping to change at line 246 | |
| double ETaN, ETa1, ETa2, ETa3; | | double ETaN, ETa1, ETa2, ETa3; | |
| double dETaN, dETa1, dETa2, dETa3; | | double dETaN, dETa1, dETa2, dETa3; | |
| | | | |
| double fTaN, fTa1, fTa2, fTa3, fTa4, fTa5, fTa6, fTa7; | | double fTaN, fTa1, fTa2, fTa3, fTa4, fTa5, fTa6, fTa7; | |
| double fPaN, fPa1, fPa2, fPa3, fPa4, fPa5, fPa6, fPa7; | | double fPaN, fPa1, fPa2, fPa3, fPa4, fPa5, fPa6, fPa7; | |
| double FTaN, FTa1, FTa2, FTa3, FTa4, FTa5, FTa6, FTa7, FTl6; | | double FTaN, FTa1, FTa2, FTa3, FTa4, FTa5, FTa6, FTa7, FTl6; | |
| | | | |
| double tvaN, tva2, tva3, tva4, tva5, tva6, tva7, tvl6; | | double tvaN, tva2, tva3, tva4, tva5, tva6, tva7, tvl6; | |
| double pvaN, pva2, pva3, pva4, pva5, pva6, pva7, pvl6; | | double pvaN, pva2, pva3, pva4, pva5, pva6, pva7, pvl6; | |
| double ptaN, pta2, pta3, pta4, pta5, pta6, pta7, ptl6; | | double ptaN, pta2, pta3, pta4, pta5, pta6, pta7, ptl6; | |
|
| double ftaN, fta2, fta3, fta4, fta5, fta6, fta7; | | double ftaN, fta2, fta3, fta4, fta5, fta6, fta7, ftl6; | |
| | | | |
| double samplingrate, samplinginterval; | | double samplingrate, samplinginterval; | |
| double eta, totalmass, m1, m2; | | double eta, totalmass, m1, m2; | |
| double lambda, theta, EulerC, omegaS; | | double lambda, theta, EulerC, omegaS; | |
| double f0, fn, t0, tn, v0, vn, vf, vlso, flso, phiC; | | double f0, fn, t0, tn, v0, vn, vf, vlso, flso, phiC; | |
| double vlsoT0, vlsoT2, vlsoT4, vlsoT6; | | double vlsoT0, vlsoT2, vlsoT4, vlsoT6; | |
| double vlsoP0, vlsoP2, vlsoP4, vlsoP6; | | double vlsoP0, vlsoP2, vlsoP4, vlsoP6; | |
| double vpoleP4, vpoleP6; | | double vpoleP4, vpoleP6; | |
| } expnCoeffs; | | } expnCoeffs; | |
| | | | |
| | | | |
| skipping to change at line 848 | | skipping to change at line 848 | |
| REAL8 *phase, | | REAL8 *phase, | |
| REAL8 td, | | REAL8 td, | |
| expnCoeffs *ak); | | expnCoeffs *ak); | |
| | | | |
| void LALRungeKutta4( | | void LALRungeKutta4( | |
| LALStatus *, | | LALStatus *, | |
| REAL8Vector *, | | REAL8Vector *, | |
| rk4In *, | | rk4In *, | |
| void *); | | void *); | |
| | | | |
|
| | | void LALUSPA ( | |
| | | LALStatus *status, | |
| | | REAL4Vector *signal, | |
| | | InspiralTemplate *params); | |
| | | | |
| void LALEOBWaveform( | | void LALEOBWaveform( | |
| LALStatus *status, | | LALStatus *status, | |
| REAL4Vector *signal, | | REAL4Vector *signal, | |
| InspiralTemplate *params); | | InspiralTemplate *params); | |
| | | | |
| void LALEOBWaveformTemplates( | | void LALEOBWaveformTemplates( | |
| LALStatus *status, | | LALStatus *status, | |
| REAL4Vector *signal1, | | REAL4Vector *signal1, | |
| REAL4Vector *signal2, | | REAL4Vector *signal2, | |
| InspiralTemplate *params); | | InspiralTemplate *params); | |
| | | | |
End of changes. 4 change blocks. |
| 3 lines changed or deleted | | 8 lines changed or added | |
|
| LALInspiralBank.h | | LALInspiralBank.h | |
| /* <lalVerbatim file="LALInspiralBankHV"> | | /* <lalVerbatim file="LALInspiralBankHV"> | |
| | | | |
| Author: Churches, D.K. and Sathyaprakash, B.S. | | Author: Churches, D.K. and Sathyaprakash, B.S. | |
|
| $Id: LALInspiralBank.h,v 1.10 2001/12/06 15:16:05 dchurches Exp $ | | $Id: LALInspiralBank.h,v 1.12 2002/03/27 20:27:29 duncan Exp $ | |
| | | | |
| </lalVerbatim> */ | | </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| | | | |
| \section{Header \texttt{LALInspiralBank.h}} | | \section{Header \texttt{LALInspiralBank.h}} | |
| \label{s:LALInspiralBank.h} | | \label{s:LALInspiralBank.h} | |
| | | | |
| Header file for the template placement codes. | | Header file for the template placement codes. | |
| | | | |
| | | | |
| skipping to change at line 40 | | skipping to change at line 40 | |
| #include <lal/LALStdlib.h> | | #include <lal/LALStdlib.h> | |
| #include <lal/LALConstants.h> | | #include <lal/LALConstants.h> | |
| #include <lal/LALInspiral.h> | | #include <lal/LALInspiral.h> | |
| #include <lal/RealFFT.h> | | #include <lal/RealFFT.h> | |
| #include <lal/LALNoiseModels.h> | | #include <lal/LALNoiseModels.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
| #endif | | #endif | |
| | | | |
|
| NRCSID( LALINSPIRALBANKH, "$Id: LALInspiralBank.h,v 1.10 2001/12/06 15:16:0
5 dchurches Exp $" ); | | NRCSID( LALINSPIRALBANKH, "$Id: LALInspiralBank.h,v 1.12 2002/03/27 20:27:2
9 duncan Exp $" ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| | | | |
| \subsection*{Error codes} | | \subsection*{Error codes} | |
| | | | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalErrTable> */ | | /* <lalErrTable> */ | |
| | | | |
| #define LALINSPIRALBANKH_ENULL 1 | | #define LALINSPIRALBANKH_ENULL 1 | |
| | | | |
| skipping to change at line 100 | | skipping to change at line 100 | |
| | | | |
| /* <lalVerbatim file="LALInspiralBankHS"> */ | | /* <lalVerbatim file="LALInspiralBankHS"> */ | |
| typedef struct | | typedef struct | |
| tagInspiralMetric | | tagInspiralMetric | |
| { | | { | |
| REAL8 g00; /* 00-component of the diagonalised metric. */ | | REAL8 g00; /* 00-component of the diagonalised metric. */ | |
| REAL8 g11; /* 11-component of the diagonalised metric. */ | | REAL8 g11; /* 11-component of the diagonalised metric. */ | |
| REAL8 theta; /* Angle from t0 to x0 */ | | REAL8 theta; /* Angle from t0 to x0 */ | |
| CoordinateSpace space; /* Coordinate space in which metric is compute
d */ | | CoordinateSpace space; /* Coordinate space in which metric is compute
d */ | |
| INT4 iflso; | | INT4 iflso; | |
|
| void (*NoisePsd)(LALStatus *status, REAL8 *shf, REAL8 f); | | REAL8FrequencySeries *shf; /* one sided strain power spectral density */ | |
| } | | } | |
| InspiralMetric; | | InspiralMetric; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \idx[Type]{InspiralMetric} | | \idx[Type]{InspiralMetric} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALInspiralBankHS"> */ | | /* <lalVerbatim file="LALInspiralBankHS"> */ | |
| /* a grid of inspiral templates (i.e., a template list) */ | | /* a grid of inspiral templates (i.e., a template list) */ | |
| | | | |
| skipping to change at line 163 | | skipping to change at line 163 | |
| typedef struct | | typedef struct | |
| tagInspiralCoarseBankIn | | tagInspiralCoarseBankIn | |
| { | | { | |
| REAL8 mMin; /* minimum mass of components to search f
or */ | | REAL8 mMin; /* minimum mass of components to search f
or */ | |
| REAL8 MMax; /* maximum total mass of binary to search
for */ | | REAL8 MMax; /* maximum total mass of binary to search
for */ | |
| REAL8 mmCoarse; /* Coarse grid minimal match */ | | REAL8 mmCoarse; /* Coarse grid minimal match */ | |
| REAL8 mmFine; /* Fine grid minimal match */ | | REAL8 mmFine; /* Fine grid minimal match */ | |
| REAL8 fLower; /* Lower frequency cutoff */ | | REAL8 fLower; /* Lower frequency cutoff */ | |
| REAL8 fUpper; /* Upper frequency cutoff */ | | REAL8 fUpper; /* Upper frequency cutoff */ | |
| REAL8 tSampling; /* Sampling rate */ | | REAL8 tSampling; /* Sampling rate */ | |
|
| void (*NoisePsd)(LALStatus *status, REAL8 *shf, REAL8 f); | | REAL8FrequencySeries shf; | |
| Order order; /* Post-Newtonian order of the waveform
*/ | | Order order; /* Post-Newtonian order of the waveform
*/ | |
| Approximant approximant; /* Approximant of the waveform */ | | Approximant approximant; /* Approximant of the waveform */ | |
| CoordinateSpace space; /* which of t0-t2 or t0-t3 coordinates */ | | CoordinateSpace space; /* which of t0-t2 or t0-t3 coordinates */ | |
| REAL8 etamin; /* minimum value of eta in our search */ | | REAL8 etamin; /* minimum value of eta in our search */ | |
| INT4 iflso; /* flso will be used as an upper limit in | | INT4 iflso; /* flso will be used as an upper limit in | |
| moments integrals if iflso!=0; else | | moments integrals if iflso!=0; else | |
| fUpper will be used */ | | fUpper will be used */ | |
| } | | } | |
| InspiralCoarseBankIn; | | InspiralCoarseBankIn; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \idx[Type]{InspiralCoarseBankIn} | | \idx[Type]{InspiralCoarseBankIn} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALInspiralBankHS"> */ | | /* <lalVerbatim file="LALInspiralBankHS"> */ | |
| typedef struct { | | typedef struct { | |
| REAL8 xmin, xmax, ndx, norm; | | REAL8 xmin, xmax, ndx, norm; | |
|
| void (*NoisePsd)(LALStatus *status, REAL8 *shf, REAL8 f); | | REAL8FrequencySeries *shf; | |
| } InspiralMomentsIn; | | } InspiralMomentsIn; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \idx[Type]{InspiralMomentsIn} | | \idx[Type]{InspiralMomentsIn} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALInspiralBankHS"> */ | | /* <lalVerbatim file="LALInspiralBankHS"> */ | |
|
| typedef struct { | | | |
| REAL8 ndx; | | | |
| void (*NoisePsd)(LALStatus *status, REAL8 *shf, REAL8 f); | | | |
| } InspiralMomentsIntegrandIn; | | | |
| | | | |
| /* </lalVerbatim> */ | | | |
| | | | |
| /* <lalLaTeX> | | | |
| \idx[Type]{InspiralMomentsIntegrandIn} | | | |
| </lalLaTeX> */ | | | |
| | | | |
| /* <lalVerbatim file="LALInspiralBankHS"> */ | | | |
| typedef struct | | typedef struct | |
| tagInspiralFineBankIn | | tagInspiralFineBankIn | |
| { | | { | |
| InspiralTemplateList templateList; | | InspiralTemplateList templateList; | |
| InspiralCoarseBankIn coarseIn; | | InspiralCoarseBankIn coarseIn; | |
| } InspiralFineBankIn; | | } InspiralFineBankIn; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \idx[Type]{InspiralFineBankIn} | | \idx[Type]{InspiralFineBankIn} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| skipping to change at line 429 | | skipping to change at line 417 | |
| LALRectangleVertices( | | LALRectangleVertices( | |
| LALStatus *status, | | LALStatus *status, | |
| RectangleOut *out, | | RectangleOut *out, | |
| RectangleIn *in | | RectangleIn *in | |
| ); | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{CoarseTestC} | | \newpage\input{CoarseTestC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| | | /* <lalLaTeX> | |
| | | \newpage\input{CoarseTest2C} | |
| | | </lalLaTeX> */ | |
| | | | |
| | | /* <lalLaTeX> | |
| | | \newpage\input{ChirpSpaceC} | |
| | | </lalLaTeX> */ | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| } | | } | |
| #endif | | #endif | |
| | | | |
| #endif /* _LALINSPIRALBANK_H */ | | #endif /* _LALINSPIRALBANK_H */ | |
| | | | |
End of changes. 7 change blocks. |
| 17 lines changed or deleted | | 13 lines changed or added | |
|
| LALNoiseModels.h | | LALNoiseModels.h | |
| /* <lalVerbatim file="LALNoiseModelsHV"> | | /* <lalVerbatim file="LALNoiseModelsHV"> | |
| | | | |
| Author: Sathyaprakash, B.S. | | Author: Sathyaprakash, B.S. | |
|
| $Id: LALNoiseModels.h,v 1.7 2001/11/30 13:23:18 dchurches Exp $ | | $Id: LALNoiseModels.h,v 1.8 2002/01/28 12:29:11 dchurches Exp $ | |
| | | | |
| </lalVerbatim> */ | | </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| | | | |
| \section{Header \texttt{LALNoiseModels.h}} | | \section{Header \texttt{LALNoiseModels.h}} | |
| \label{s:LALNoiseModels.h} | | \label{s:LALNoiseModels.h} | |
| | | | |
| Header file for model noise generation codes. | | Header file for model noise generation codes. | |
| | | | |
| | | | |
| skipping to change at line 41 | | skipping to change at line 41 | |
| #include <stdlib.h> | | #include <stdlib.h> | |
| #include <lal/LALStdlib.h> | | #include <lal/LALStdlib.h> | |
| #include <lal/LALConstants.h> | | #include <lal/LALConstants.h> | |
| #include <lal/LALInspiral.h> | | #include <lal/LALInspiral.h> | |
| #include <lal/RealFFT.h> | | #include <lal/RealFFT.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
| #endif | | #endif | |
| | | | |
|
| NRCSID( LALNOISEMODELSH, "$Id: LALNoiseModels.h,v 1.7 2001/11/30 13:23:18 d
churches Exp $" ); | | NRCSID( LALNOISEMODELSH, "$Id: LALNoiseModels.h,v 1.8 2002/01/28 12:29:11 d
churches Exp $" ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| | | | |
| \subsection*{Error codes} | | \subsection*{Error codes} | |
| | | | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalErrTable> */ | | /* <lalErrTable> */ | |
| | | | |
| #define LALNOISEMODELSH_ENULL 1 | | #define LALNOISEMODELSH_ENULL 1 | |
| #define LALNOISEMODELSH_EMEM 2 | | #define LALNOISEMODELSH_EMEM 2 | |
|
| #define LALNOISEMODELSH_ECHOICE 3 | | #define LALNOISEMODELSH_ECHOICE 4 | |
| #define LALNOISEMODELSH_EDIV0 4 | | #define LALNOISEMODELSH_EDIV0 8 | |
| #define LALNOISEMODELSH_ESIZE 8 | | #define LALNOISEMODELSH_ESIZE 16 | |
| #define LALNOISEMODELSH_MSGENULL "Arguments contained an unexpected null po
inter" | | #define LALNOISEMODELSH_MSGENULL "Arguments contained an unexpected null po
inter" | |
| #define LALNOISEMODELSH_MSGEMEM "Memory allocation error" | | #define LALNOISEMODELSH_MSGEMEM "Memory allocation error" | |
| #define LALNOISEMODELSH_MSGECHOICE "Invalid choice for an input parameter" | | #define LALNOISEMODELSH_MSGECHOICE "Invalid choice for an input parameter" | |
| #define LALNOISEMODELSH_MSGEDIV0 "Division by zero" | | #define LALNOISEMODELSH_MSGEDIV0 "Division by zero" | |
|
| #define LALNOISEMODELSH_MSGESIZE "Invalid input range" | | #define LALNOISEMODELSH_MSGESIZE "Invalid input size" | |
| | | | |
| /* </lalErrTable> */ | | /* </lalErrTable> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| | | | |
| \section*{Structures} | | \section*{Structures} | |
| \input{LALNoiseModelsHS} | | \input{LALNoiseModelsHS} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALNoiseModelsHS"> */ | | /* <lalVerbatim file="LALNoiseModelsHS"> */ | |
| | | | |
| typedef enum | | typedef enum | |
| { | | { | |
|
| geo, ligo, tama, virgo | | geo, | |
| | | ligo, | |
| | | tama, | |
| | | virgo | |
| } | | } | |
| Detector; | | Detector; | |
| | | | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \idx[Type]{Detector} | | \idx[Type]{Detector} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALNoiseModelsHS"> */ | | /* <lalVerbatim file="LALNoiseModelsHS"> */ | |
| typedef struct | | typedef struct | |
|
| tagInspiralWaveCorrelateIn { | | tagInspiralWaveCorrelateIn | |
| REAL4Vector signal1, signal2; | | { | |
| | | REAL4Vector signal1; | |
| | | REAL4Vector signal2; | |
| REAL8Vector psd; | | REAL8Vector psd; | |
| RealFFTPlan *revp; | | RealFFTPlan *revp; | |
| } | | } | |
| InspiralWaveCorrelateIn; | | InspiralWaveCorrelateIn; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \idx[Type]{InspiralWaveCorrelateIn} | | \idx[Type]{InspiralWaveCorrelateIn} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALNoiseModelsHS"> */ | | /* <lalVerbatim file="LALNoiseModelsHS"> */ | |
| typedef struct | | typedef struct | |
| tagAddVectorsIn | | tagAddVectorsIn | |
| { | | { | |
|
| REAL4Vector *v1, *v2; | | REAL4Vector *v1; | |
| REAL8 a1, a2; | | REAL4Vector *v2; | |
| | | REAL8 a1; | |
| | | REAL8 a2; | |
| } | | } | |
| AddVectorsIn; | | AddVectorsIn; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \idx[Type]{AddVectorsIn} | | \idx[Type]{AddVectorsIn} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALNoiseModelsHS"> */ | | /* <lalVerbatim file="LALNoiseModelsHS"> */ | |
| typedef struct | | typedef struct | |
| tagRandomInspiralSignalIn | | tagRandomInspiralSignalIn | |
| { | | { | |
|
| InspiralTemplate param; | | INT4 useed; /* Seed for the random number generator */ | |
| INT4 useed; | | INT4 type; /* Type of signal required to be generated */ | |
| REAL8 mMin, MMax, SignalAmp, NoiseAmp, etaMin; | | | |
| INT4 type; | | REAL8 mMin; /* smallest component mass allowed */ | |
| REAL8Vector psd; | | REAL8 MMax; /* largest total mass allowed */ | |
| RealFFTPlan *fwdp; | | REAL8 SignalAmp; /* amplitude of the signal (relevant only when type=2) | |
| REAL8 t0Min, t0Max, tnMin, tnMax; | | */ | |
| | | REAL8 NoiseAmp; /* amplitude of noise (relevant only when type=2) */ | |
| | | REAL8 etaMin; /* smallest value of the symmetric mass ratio */ | |
| | | InspiralTemplate | |
| | | param; /* parameter stuct; user to specify certain params. */ | |
| | | | |
| | | REAL8Vector psd; /* power spectral density used for coloring the noise | |
| | | */ | |
| | | RealFFTPlan *fwdp;/* pre-computed fftw plan for forward fftw */ | |
| | | | |
| | | /* Chirp times are needed only if param.massChoice is t02 or t03 */ | |
| | | REAL8 t0Min; /* smallest Newtonian chirp time */ | |
| | | REAL8 t0Max; /* largest Newtonian chirp time */ | |
| | | REAL8 tnMin; /* smallest 1, 1.5 PN chirp time */ | |
| | | REAL8 tnMax; /* largest 1, 1.5 PN chirp time */ | |
| | | | |
| } | | } | |
| RandomInspiralSignalIn; | | RandomInspiralSignalIn; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \idx[Type]{RandomInspiralSignalIn} | | \idx[Type]{RandomInspiralSignalIn} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALNoiseModelsHS"> */ | | /* <lalVerbatim file="LALNoiseModelsHS"> */ | |
| typedef struct | | typedef struct | |
|
| tagInspiralWaveOverlapIn { | | tagInspiralWaveOverlapIn | |
| INT4 nBegin, nEnd; | | { | |
| REAL4Vector signal; | | INT4 nBegin; | |
| REAL8Vector psd; | | INT4 nEnd; | |
| | | REAL4Vector signal; | |
| | | REAL8Vector psd; | |
| InspiralTemplate param; | | InspiralTemplate param; | |
|
| RealFFTPlan *fwdp, *revp; | | RealFFTPlan *fwdp; | |
| | | RealFFTPlan *revp; | |
| } | | } | |
| InspiralWaveOverlapIn; | | InspiralWaveOverlapIn; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \idx[Type]{InspiralwaveOverlapIn} | | \idx[Type]{InspiralwaveOverlapIn} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALNoiseModelsHS"> */ | | /* <lalVerbatim file="LALNoiseModelsHS"> */ | |
| typedef struct | | typedef struct | |
|
| tagInspiralWaveOverlapOut { | | tagInspiralWaveOverlapOut | |
| | | { | |
| REAL8 max, phase; | | REAL8 max, phase; | |
| INT4 bin; | | INT4 bin; | |
| } | | } | |
| InspiralWaveOverlapOut; | | InspiralWaveOverlapOut; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \idx[Type]{InspiralWaveOverlapOut} | | \idx[Type]{InspiralWaveOverlapOut} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALNoiseModelsHS"> */ | | /* <lalVerbatim file="LALNoiseModelsHS"> */ | |
| typedef struct | | typedef struct | |
|
| tagInspiralFindEventsIn { | | tagInspiralFindEventsIn | |
| INT4 nBegin, nEnd; | | { | |
| REAL8 Threshold; | | INT4 nBegin; | |
| REAL4Vector signal; | | INT4 nEnd; | |
| REAL8Vector psd; | | REAL8 Threshold; | |
| | | REAL4Vector signal; | |
| | | REAL8Vector psd; | |
| InspiralTemplate param; | | InspiralTemplate param; | |
|
| RealFFTPlan *fwdp, *revp; | | RealFFTPlan *fwdp; | |
| | | RealFFTPlan *revp; | |
| | | UINT2 displayTemplates; | |
| | | UINT2 displayCorrelation; | |
| | | UINT2 displayCorrelationStats; | |
| } | | } | |
| InspiralFindEventsIn; | | InspiralFindEventsIn; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \index{\texttt{InspiralFindEventsIn}} | | \index{\texttt{InspiralFindEventsIn}} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALNoiseModelsHS"> */ | | /* <lalVerbatim file="LALNoiseModelsHS"> */ | |
| typedef struct | | typedef struct | |
|
| tagInspiralFindEventsOut { | | tagInspiralEventsList | |
| REAL8 max, phase; | | { | |
| INT4 bin; | | REAL8 max; | |
| | | REAL8 phase; | |
| | | REAL8 eventTime; | |
| | | | |
| | | UINT4 bin; | |
| | | | |
| | | InspiralTemplate param; | |
| } | | } | |
|
| InspiralFindEventsOut; | | InspiralEventsList; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
|
| \index{\texttt{InspiralFindEventsOut}} | | \index{\texttt{InspiralEventsList}} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalVerbatim file="LALNoiseModelsHS"> */ | | /* <lalVerbatim file="LALNoiseModelsHS"> */ | |
| typedef struct | | typedef struct | |
| tagStatsREAL4VectorOut | | tagStatsREAL4VectorOut | |
| { | | { | |
|
| REAL8 mean, var, stddev; | | REAL8 mean; | |
| } StatsREAL4VectorOut; | | REAL8 var; | |
| | | REAL8 stddev; | |
| | | REAL8 min; | |
| | | REAL8 max; | |
| | | } | |
| | | StatsREAL4VectorOut; | |
| /* </lalVerbatim> */ | | /* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \index{\texttt{StatsREAL4VectorOut}} | | \index{\texttt{StatsREAL4VectorOut}} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \vfill{\footnotesize\input{LALNoiseModelsHV}} | | \vfill{\footnotesize\input{LALNoiseModelsHV}} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
| /* Function prototypes */ | | /* Function prototypes */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALNoiseSpectralDensityC} | | \newpage\input{LALNoiseSpectralDensityC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALNoiseSpectralDensity (LALStatus *status, | | void | |
| REAL8Vector *psd, | | LALNoiseSpectralDensity | |
| void (*NoisePsd)(LALStatus *status, REAL8 *sh | | ( | |
| f, REAL8 f), | | LALStatus *status, | |
| REAL8 f); | | REAL8Vector *psd, | |
| | | void (*NoisePsd)(LALStatus *status, REAL8 *shf, REAL8 f), | |
| | | REAL8 f | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALInspiralWaveCorrelateC} | | \newpage\input{LALInspiralWaveCorrelateC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALInspiralWaveCorrelate (LALStatus *status, | | void | |
| REAL4Vector *output, | | LALInspiralWaveCorrelate | |
| InspiralWaveCorrelateIn in); | | ( | |
| | | LALStatus *status, | |
| | | REAL4Vector *output, | |
| | | InspiralWaveCorrelateIn in | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALInspiralWaveNormaliseC} | | \newpage\input{LALInspiralWaveNormaliseC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALInspiralWaveNormalise (LALStatus *status, | | void | |
| REAL4Vector *dh, | | LALInspiralWaveNormalise | |
| REAL8 *norm, | | ( | |
| REAL8Vector psd); | | LALStatus *status, | |
| | | REAL4Vector *dh, | |
| | | REAL8 *norm, | |
| | | REAL8Vector psd | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALGEOPsdC} | | \newpage\input{LALGEOPsdC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALGEOPsd (LALStatus *status, REAL8 *shf, REAL8 x); | | void | |
| | | LALGEOPsd | |
| | | ( | |
| | | LALStatus *status, | |
| | | REAL8 *shf, | |
| | | REAL8 x | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALLIGOIPsdC} | | \newpage\input{LALLIGOIPsdC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALLIGOIPsd (LALStatus *status, REAL8 *shf, REAL8 x); | | void | |
| | | LALLIGOIPsd | |
| | | ( | |
| | | LALStatus *status, | |
| | | REAL8 *shf, | |
| | | REAL8 x | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALTAMAPsdC} | | \newpage\input{LALTAMAPsdC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALTAMAPsd (LALStatus *status, REAL8 *shf, REAL8 x); | | void | |
| | | LALTAMAPsd | |
| | | ( | |
| | | LALStatus *status, | |
| | | REAL8 *shf, | |
| | | REAL8 x | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALVIRGOPsdC} | | \newpage\input{LALVIRGOPsdC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALVIRGOPsd (LALStatus *status, REAL8 *shf, REAL8 x); | | void | |
| | | LALVIRGOPsd | |
| | | ( | |
| | | LALStatus *status, | |
| | | REAL8 *shf, | |
| | | REAL8 x | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALRandomInspiralSignalC} | | \newpage\input{LALRandomInspiralSignalC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALRandomInspiralSignal(LALStatus *status, | | void | |
| REAL4Vector *signal, | | LALRandomInspiralSignal | |
| RandomInspiralSignalIn *randIn); | | ( | |
| | | LALStatus *status, | |
| | | REAL4Vector *signal, | |
| | | RandomInspiralSignalIn *randIn | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALColoredNoiseC} | | \newpage\input{LALColoredNoiseC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALColoredNoise (LALStatus *status, | | void | |
| REAL4Vector *noisy, | | LALColoredNoise | |
| REAL8Vector psd); | | ( | |
| | | LALStatus *status, | |
| | | REAL4Vector *noisy, | |
| | | REAL8Vector psd | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALAddVectorsC} | | \newpage\input{LALAddVectorsC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALAddVectors(LALStatus *status, | | void | |
| REAL4Vector *vector, | | LALAddVectors | |
| AddVectorsIn in); | | ( | |
| | | LALStatus *status, | |
| | | REAL4Vector *vector, | |
| | | AddVectorsIn in); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALInspiralWaveOverlapC} | | \newpage\input{LALInspiralWaveOverlapC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALInspiralWaveOverlap (LALStatus *status, | | void | |
| REAL4Vector *output, | | LALInspiralWaveOverlap | |
| InspiralWaveOverlapOut *overlapout, | | ( | |
| InspiralWaveOverlapIn *overlapin); | | LALStatus *status, | |
| | | REAL4Vector *output, | |
| | | InspiralWaveOverlapOut *overlapout, | |
| | | InspiralWaveOverlapIn *overlapin | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALInspiralFindEventsC} | | \newpage\input{LALInspiralFindEventsC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALInspiralFindEvents (LALStatus *status, | | void | |
| INT4 *nEvents, | | LALInspiralFindEvents | |
| InspiralFindEventsOut **findeventsout, | | ( | |
| InspiralFindEventsIn *findeventsin); | | LALStatus *status, | |
| | | INT4 *nEvents, | |
| | | InspiralEventsList **findeventsout, | |
| | | InspiralFindEventsIn *findeventsin | |
| | | ); | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| \newpage\input{LALStatsREAL4VectorC} | | \newpage\input{LALStatsREAL4VectorC} | |
| </lalLaTeX> */ | | </lalLaTeX> */ | |
| | | | |
|
| void LALStatsREAL4Vector(LALStatus *status, | | void | |
| StatsREAL4VectorOut *out, | | LALStatsREAL4Vector | |
| REAL4Vector *vector); | | ( | |
| | | LALStatus *status, | |
| | | StatsREAL4VectorOut *out, | |
| | | REAL4Vector *vector | |
| | | ); | |
| | | | |
| | | /* <lalLaTeX> | |
| | | \newpage\input{FilterTestC} | |
| | | </lalLaTeX> */ | |
| | | | |
| | | /* <lalLaTeX> | |
| | | \newpage\input{RandomInspiralSignalTestC} | |
| | | </lalLaTeX> */ | |
| | | | |
| | | /* <lalLaTeX> | |
| | | \newpage\input{NoisePSDTestC} | |
| | | </lalLaTeX> */ | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| } | | } | |
| #endif | | #endif | |
| | | | |
| #endif /* _LALNOISEMODELS_H */ | | #endif /* _LALNOISEMODELS_H */ | |
| | | | |
End of changes. 30 change blocks. |
| 73 lines changed or deleted | | 186 lines changed or added | |
|
| LALStatusMacros.h | | LALStatusMacros.h | |
| /****************************** <lalVerbatim file="LALStatusMacrosHV"> | | /****************************** <lalVerbatim file="LALStatusMacrosHV"> | |
| Author: Creighton, J. D. E. and Creighton, T. D. | | Author: Creighton, J. D. E. and Creighton, T. D. | |
|
| $Id: LALStatusMacros.h,v 1.22 2001/11/27 01:55:24 jolien Exp $ | | $Id: LALStatusMacros.h,v 1.23 2002/04/12 16:26:25 jolien Exp $ | |
| ******************************* </lalVerbatim> */ | | ******************************* </lalVerbatim> */ | |
| | | | |
| /* <lalLaTeX> | | /* <lalLaTeX> | |
| | | | |
| \section{Header \texttt{LALStatusMacros.h}} | | \section{Header \texttt{LALStatusMacros.h}} | |
| \label{s:LALStatusMacros.h} | | \label{s:LALStatusMacros.h} | |
| | | | |
| Provides macros for handling the LAL status structure. | | Provides macros for handling the LAL status structure. | |
| | | | |
| \subsection*{Synopsis} | | \subsection*{Synopsis} | |
| | | | |
| skipping to change at line 762 | | skipping to change at line 762 | |
| | | | |
| #include <lal/LALMalloc.h> | | #include <lal/LALMalloc.h> | |
| #include <lal/LALDatatypes.h> | | #include <lal/LALDatatypes.h> | |
| #include <lal/LALError.h> | | #include <lal/LALError.h> | |
| #include <lal/LALRCSID.h> | | #include <lal/LALRCSID.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
| #endif | | #endif | |
| | | | |
|
| NRCSID (LALSTATUSMACROSH, "$Id: LALStatusMacros.h,v 1.22 2001/11/27 01:55:2
4 jolien Exp $"); | | NRCSID (LALSTATUSMACROSH, "$Id: LALStatusMacros.h,v 1.23 2002/04/12 16:26:2
5 jolien Exp $"); | |
| | | | |
| extern int lalDebugLevel; | | extern int lalDebugLevel; | |
| extern const int lalNoDebug; | | extern const int lalNoDebug; | |
| | | | |
| #ifndef NOLALMACROS | | #ifndef NOLALMACROS | |
| | | | |
| #define INITSTATUS( statusptr, funcname, id )
\ | | #define INITSTATUS( statusptr, funcname, id )
\ | |
| if ( (statusptr) )
\ | | if ( (statusptr) )
\ | |
| {
\ | | {
\ | |
|
| INT4 level = (statusptr)->level ; | | INT4 level_ = (statusptr)->level ; | |
| \ | | \ | |
| INT4 statp = (statusptr)->statusPtr ? 1 : 0 ; | | INT4 statp_ = (statusptr)->statusPtr ? 1 : 0 ; | |
| \ | | \ | |
| memset( (statusptr), 0, sizeof( LALStatus ) ); /* possible memory leak
*/ \ | | memset( (statusptr), 0, sizeof( LALStatus ) ); /* possible memory leak
*/ \ | |
|
| (statusptr)->level = level > 0 ? level : 1 ;
\ | | (statusptr)->level = level_ > 0 ? level_ : 1 ;
\ | |
| (statusptr)->Id = (id);
\ | | (statusptr)->Id = (id);
\ | |
| (statusptr)->function = (funcname);
\ | | (statusptr)->function = (funcname);
\ | |
| SETSTATUSFILELINE( statusptr );
\ | | SETSTATUSFILELINE( statusptr );
\ | |
| (void) LALTrace( statusptr, 0 );
\ | | (void) LALTrace( statusptr, 0 );
\ | |
|
| if ( statp )
\ | | if ( statp_ )
\ | |
| {
\ | | {
\ | |
| ABORT( statusptr, -2, "INITSTATUS: non-null status pointer" );
\ | | ABORT( statusptr, -2, "INITSTATUS: non-null status pointer" );
\ | |
| }
\ | | }
\ | |
| }
\ | | }
\ | |
| else
\ | | else
\ | |
| lalAbortHook( "Abort: function %s, file %s, line %d, %s\n"
\ | | lalAbortHook( "Abort: function %s, file %s, line %d, %s\n"
\ | |
| " Null status pointer passed to function\n",
\ | | " Null status pointer passed to function\n",
\ | |
| (funcname), __FILE__, __LINE__, (id) ) | | (funcname), __FILE__, __LINE__, (id) ) | |
| | | | |
| #define RETURN( statusptr )
\ | | #define RETURN( statusptr )
\ | |
| | | | |
| skipping to change at line 875 | | skipping to change at line 875 | |
| SETSTATUS( statusptr, -1, "Recursive error" );
\ | | SETSTATUS( statusptr, -1, "Recursive error" );
\ | |
| (void) LALError( statusptr, "CHECKSTATUSPTR:" );
\ | | (void) LALError( statusptr, "CHECKSTATUSPTR:" );
\ | |
| (void) LALTrace( statusptr, 1 );
\ | | (void) LALTrace( statusptr, 1 );
\ | |
| return;
\ | | return;
\ | |
| }
\ | | }
\ | |
| else (void)(0) | | else (void)(0) | |
| | | | |
| #define FREESTATUSPTR( statusptr )
\ | | #define FREESTATUSPTR( statusptr )
\ | |
| do
\ | | do
\ | |
| {
\ | | {
\ | |
|
| LALStatus *next = (statusptr)->statusPtr->statusPtr;
\ | | LALStatus *next_ = (statusptr)->statusPtr->statusPtr;
\ | |
| LALFree( (statusptr)->statusPtr );
\ | | LALFree( (statusptr)->statusPtr );
\ | |
|
| (statusptr)->statusPtr = next;
\ | | (statusptr)->statusPtr = next_;
\ | |
| }
\ | | }
\ | |
| while ( (statusptr)->statusPtr ) | | while ( (statusptr)->statusPtr ) | |
| | | | |
| #define REPORTSTATUS( statusptr )
\ | | #define REPORTSTATUS( statusptr )
\ | |
| do
\ | | do
\ | |
| {
\ | | {
\ | |
|
| LALStatus *ptr; | | LALStatus *ptr_; | |
| \ | | \ | |
| for ( ptr = (statusptr); ptr; ptr = ptr->statusPtr ) | | for ( ptr_ = (statusptr); ptr_; ptr_ = ptr_->statusPtr ) | |
| \ | | \ | |
| {
\ | | {
\ | |
|
| LALPrintError( "\nLevel %i: %s\n", ptr->level, ptr->Id ); | | LALPrintError( "\nLevel %i: %s\n", ptr_->level, ptr_->Id ); | |
| \ | | \ | |
| if ( ptr->statusCode ) | | if ( ptr_->statusCode ) | |
| \ | | \ | |
| {
\ | | {
\ | |
|
| LALPrintError( "\tStatus code %i: %s\n", ptr->statusCode, | | LALPrintError( "\tStatus code %i: %s\n", ptr_->statusCode, | |
| \ | | \ | |
| ptr->statusDescription ); | | ptr_->statusDescription ); | |
| \ | | \ | |
| }
\ | | }
\ | |
| else
\ | | else
\ | |
| {
\ | | {
\ | |
| LALPrintError( "\tStatus code 0: Nominal\n" );
\ | | LALPrintError( "\tStatus code 0: Nominal\n" );
\ | |
| }
\ | | }
\ | |
| LALPrintError( "\tfunction %s, file %s, line %i\n",
\ | | LALPrintError( "\tfunction %s, file %s, line %i\n",
\ | |
|
| ptr->function, ptr->file, ptr->line );
\ | | ptr_->function, ptr_->file, ptr_->line );
\ | |
| }
\ | | }
\ | |
| } while ( 0 ) | | } while ( 0 ) | |
| | | | |
| #else /* NOLALMACROS */ | | #else /* NOLALMACROS */ | |
| | | | |
| #define INITSTATUS( statusptr, funcname, id ) \ | | #define INITSTATUS( statusptr, funcname, id ) \ | |
| if ( LALInitStatus( statusptr, funcname, id, __FILE__, __LINE__ ) ) retur
n | | if ( LALInitStatus( statusptr, funcname, id, __FILE__, __LINE__ ) ) retur
n | |
| | | | |
| #define RETURN( statusptr ) \ | | #define RETURN( statusptr ) \ | |
| if ( LALPrepareReturn( statusptr, __FILE__, __LINE__ ), 1 ) return | | if ( LALPrepareReturn( statusptr, __FILE__, __LINE__ ), 1 ) return | |
| | | | |
| skipping to change at line 960 | | skipping to change at line 960 | |
| | | | |
| #define BEGINFAIL( statusptr )
\ | | #define BEGINFAIL( statusptr )
\ | |
| do {
\ | | do {
\ | |
| if ( !(statusptr) ) {
\ | | if ( !(statusptr) ) {
\ | |
| ABORT( statusptr, -8, "BEGINFAIL: null status pointer" );
\ | | ABORT( statusptr, -8, "BEGINFAIL: null status pointer" );
\ | |
| }
\ | | }
\ | |
| if ( !( (statusptr)->statusPtr ) ) {
\ | | if ( !( (statusptr)->statusPtr ) ) {
\ | |
| ABORT( statusptr, -8, "BEGINFAIL: null status pointer pointer" );
\ | | ABORT( statusptr, -8, "BEGINFAIL: null status pointer pointer" );
\ | |
| }
\ | | }
\ | |
| if ( (statusptr)->statusPtr->statusCode ) {
\ | | if ( (statusptr)->statusPtr->statusCode ) {
\ | |
|
| LALStatus *statusPtrSave = (statusptr)->statusPtr;
\ | | LALStatus *statusPtrSave_ = (statusptr)->statusPtr;
\ | |
| (statusptr)->statusPtr = NULL;
\ | | (statusptr)->statusPtr = NULL;
\ | |
| ATTATCHSTATUSPTR( statusptr );
\ | | ATTATCHSTATUSPTR( statusptr );
\ | |
| do | | do | |
| | | | |
| #define ENDFAIL( statusptr )
\ | | #define ENDFAIL( statusptr )
\ | |
| while ( 0 );
\ | | while ( 0 );
\ | |
| DETATCHSTATUSPTR( statusptr );
\ | | DETATCHSTATUSPTR( statusptr );
\ | |
|
| (statusptr)->statusPtr = statusPtrSave;
\ | | (statusptr)->statusPtr = statusPtrSave_;
\ | |
| SETSTATUS( statusptr, -1, "Recursive error" );
\ | | SETSTATUS( statusptr, -1, "Recursive error" );
\ | |
| (void) LALError( statusptr, "ENDFAIL:" );
\ | | (void) LALError( statusptr, "ENDFAIL:" );
\ | |
| (void) LALTrace( statusptr, 1 );
\ | | (void) LALTrace( statusptr, 1 );
\ | |
| return;
\ | | return;
\ | |
| }
\ | | }
\ | |
| } while ( 0 ) | | } while ( 0 ) | |
| | | | |
| #define SETSTATUSFILELINE( statusptr ) \ | | #define SETSTATUSFILELINE( statusptr ) \ | |
| ( ( void ) ( (statusptr)->file = __FILE__, (statusptr)->line = __LINE__ )
) | | ( ( void ) ( (statusptr)->file = __FILE__, (statusptr)->line = __LINE__ )
) | |
| | | | |
| | | | |
End of changes. 13 change blocks. |
| 25 lines changed or deleted | | 25 lines changed or added | |
|
| LALVersion.h | | LALVersion.h | |
| #if 0 /* autodoc block */ | | #if 0 /* autodoc block */ | |
| | | | |
| <lalVerbatim file="LALVersionHV"> | | <lalVerbatim file="LALVersionHV"> | |
|
| $Id: LALVersion.h,v 1.4 2001/03/12 22:33:40 jolien Exp $ | | $Id: LALVersion.h,v 1.5 2002/04/22 20:34:23 jolien Exp $ | |
| </lalVerbatim> | | </lalVerbatim> | |
| | | | |
| <lalLaTeX> | | <lalLaTeX> | |
| | | | |
| \section{Header \texttt{LALVersion.h}} | | \section{Header \texttt{LALVersion.h}} | |
| \label{s:LALVersion.h} | | \label{s:LALVersion.h} | |
| | | | |
| Provides routines for reporting the LAL version. | | Provides routines for reporting the LAL version. | |
| | | | |
| \subsection*{Synopsis} | | \subsection*{Synopsis} | |
| \begin{verbatim} | | \begin{verbatim} | |
| #include <lal/LALVersion.h> | | #include <lal/LALVersion.h> | |
| \end{verbatim} | | \end{verbatim} | |
| | | | |
| \noindent This header covers the routines for reporting the LAL version. | | \noindent This header covers the routines for reporting the LAL version. | |
| | | | |
| \subsection*{Global variables} | | \subsection*{Global variables} | |
|
| | | \idx[Constant]{lalVersion} | |
| | | \idx[Constant]{lalVersionMajor} | |
| | | \idx[Constant]{lalVersionMinor} | |
| | | \idx[Constant]{lalConfigureArgs} | |
| | | \idx[Constant]{lalConfigureDate} | |
| | | \idx[Constant]{lalCVSTag} | |
| \begin{verbatim} | | \begin{verbatim} | |
| extern const char *lalVersion; | | extern const char *lalVersion; | |
| extern const int lalVersionMajor; | | extern const int lalVersionMajor; | |
| extern const int lalVersionMinor; | | extern const int lalVersionMinor; | |
| extern const char *lalConfigureArgs; | | extern const char *lalConfigureArgs; | |
| extern const char *lalConfigureDate; | | extern const char *lalConfigureDate; | |
|
| | | extern const char *lalCVSTag; | |
| \end{verbatim} | | \end{verbatim} | |
| | | | |
| These constant variables are set at compile time and included into the LAL | | These constant variables are set at compile time and included into the LAL | |
| library. They contain the information about the version of LAL and the | | library. They contain the information about the version of LAL and the | |
| configuration information. | | configuration information. | |
| | | | |
| \subsection*{Macros} | | \subsection*{Macros} | |
| \begin{verbatim} | | \begin{verbatim} | |
| #define LALVersionRequired( major, minor ) \ | | #define LALVersionRequired( major, minor ) \ | |
| ( LAL_VERSION_MAJOR > ( major ) || \ | | ( LAL_VERSION_MAJOR > ( major ) || \ | |
| | | | |
| skipping to change at line 62 | | skipping to change at line 69 | |
| | | | |
| #ifndef _LALVERSION_H | | #ifndef _LALVERSION_H | |
| #define _LALVERSION_H | | #define _LALVERSION_H | |
| | | | |
| #include <lal/LALDatatypes.h> | | #include <lal/LALDatatypes.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
| #endif | | #endif | |
| | | | |
|
| NRCSID( LALVERSIONH, "$Id: LALVersion.h,v 1.4 2001/03/12 22:33:40 jolien Ex
p $" ); | | NRCSID( LALVERSIONH, "$Id: LALVersion.h,v 1.5 2002/04/22 20:34:23 jolien Ex
p $" ); | |
| | | | |
| /* <lalErrTable file="LALVersionHErrTab"> */ | | /* <lalErrTable file="LALVersionHErrTab"> */ | |
| | | | |
| #define LALVERSIONH_ENULL 1 | | #define LALVERSIONH_ENULL 1 | |
| #define LALVERSIONH_ESIZE 2 | | #define LALVERSIONH_ESIZE 2 | |
| #define LALVERSIONH_ESPRN 4 | | #define LALVERSIONH_ESPRN 4 | |
| #define LALVERSIONH_ESHRT 8 | | #define LALVERSIONH_ESHRT 8 | |
| | | | |
| #define LALVERSIONH_MSGENULL "Null string pointer." | | #define LALVERSIONH_MSGENULL "Null string pointer." | |
| #define LALVERSIONH_MSGESIZE "Zero string size." | | #define LALVERSIONH_MSGESIZE "Zero string size." | |
| #define LALVERSIONH_MSGESPRN "Error in snprintf." | | #define LALVERSIONH_MSGESPRN "Error in snprintf." | |
| #define LALVERSIONH_MSGESHRT "String too short." | | #define LALVERSIONH_MSGESHRT "String too short." | |
| | | | |
| /* </lalErrTable> */ | | /* </lalErrTable> */ | |
| | | | |
| extern const char *lalVersion; | | extern const char *lalVersion; | |
| extern const int lalVersionMajor; | | extern const int lalVersionMajor; | |
| extern const int lalVersionMinor; | | extern const int lalVersionMinor; | |
| extern const char *lalConfigureArgs; | | extern const char *lalConfigureArgs; | |
| extern const char *lalConfigureDate; | | extern const char *lalConfigureDate; | |
|
| | | extern const char *lalCVSTag; | |
| | | | |
| #define LALVersionRequired( major, minor ) \ | | #define LALVersionRequired( major, minor ) \ | |
| ( LAL_VERSION_MAJOR > ( major ) || \ | | ( LAL_VERSION_MAJOR > ( major ) || \ | |
| ( LAL_VERSION_MAJOR == ( major ) && LAL_VERSION_MINOR >= ( minor ) ) ) | | ( LAL_VERSION_MAJOR == ( major ) && LAL_VERSION_MINOR >= ( minor ) ) ) | |
| | | | |
| void | | void | |
| LALVersion( LALStatus *status, CHAR *message, UINT4 size, INT4 verbose ); | | LALVersion( LALStatus *status, CHAR *message, UINT4 size, INT4 verbose ); | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| } | | } | |
| | | | |
End of changes. 5 change blocks. |
| 2 lines changed or deleted | | 10 lines changed or added | |
|
| StochasticCrossCorrelation.h | | StochasticCrossCorrelation.h | |
| /*********************** <lalVerbatim file="StochasticCrossCorrelationHV"> | | /*********************** <lalVerbatim file="StochasticCrossCorrelationHV"> | |
|
| Author: UTB Relativity Group; contact whelan@oates.utb.edu (original by S. | | Author: UTB Relativity Group; contact whelan@phys.utb.edu (original by S. D | |
| Drasco) | | rasco) | |
| $Id: StochasticCrossCorrelation.h,v 1.17 2001/12/09 04:24:18 whelan Exp $ | | $Id: StochasticCrossCorrelation.h,v 1.22 2002/02/26 20:32:27 whelan Exp $ | |
| *********************************************************** </lalVerbatim>
*/ | | *********************************************************** </lalVerbatim>
*/ | |
| | | | |
| /********************************************************** <lalLaTeX> | | /********************************************************** <lalLaTeX> | |
| \section{Header \texttt{StochasticCrossCorrelation.h}} | | \section{Header \texttt{StochasticCrossCorrelation.h}} | |
| \label{stochastic:s:StochasticCrossCorrelation.h} | | \label{stochastic:s:StochasticCrossCorrelation.h} | |
| | | | |
| Provides prototype and error code information for the modules needed | | Provides prototype and error code information for the modules needed | |
| to calculate the standard optimally-filtered cross-correlation | | to calculate the standard optimally-filtered cross-correlation | |
| statistic for stochastic background searches, given a pair of data | | statistic for stochastic background searches, given a pair of data | |
| segments, along with appropriate representations of the detector | | segments, along with appropriate representations of the detector | |
| transfer function and the (whitened) power spectral density of the | | transfer function and the (whitened) power spectral density of the | |
| noise in each detector. The relationship among these modules is | | noise in each detector. The relationship among these modules is | |
| illustrated in Fig.~\ref{stochastic:f:CrossCorrFlowchart}. | | illustrated in Fig.~\ref{stochastic:f:CrossCorrFlowchart}. | |
| | | | |
| \begin{figure}[htb!] | | \begin{figure}[htb!] | |
| \begin{center} | | \begin{center} | |
|
| \begin{picture}(382,150)(-32,0) | | \begin{picture}(410,250)(-32,-110) | |
| \put(168,123){\vector(1,0){15}} | | \put(168,123){\vector(1,0){15}} | |
| \put(168,123){\line(1,0){25}} | | \put(168,123){\line(1,0){25}} | |
| \put(195,120){$Y$} | | \put(195,120){$Y$} | |
| \put(65,110) | | \put(65,110) | |
| { | | { | |
| \framebox(100,30) | | \framebox(100,30) | |
| { | | { | |
| \texttt{CrossCorr} | | \texttt{CrossCorr} | |
| } | | } | |
| } | | } | |
| | | | |
| skipping to change at line 54 | | skipping to change at line 54 | |
| \put(150,85){\vector(0,1){15}} | | \put(150,85){\vector(0,1){15}} | |
| \put(150,85){\line(0,1){25}} | | \put(150,85){\line(0,1){25}} | |
| \put(152,95){$\widetilde{Q}^{\scriptstyle{\rm W}}$} | | \put(152,95){$\widetilde{Q}^{\scriptstyle{\rm W}}$} | |
| \put(100,55) | | \put(100,55) | |
| { | | { | |
| \framebox(190,30) | | \framebox(190,30) | |
| { | | { | |
| \texttt{OptimalFilter} | | \texttt{OptimalFilter} | |
| } | | } | |
| } | | } | |
|
| \put(110,30){\vector(0,1){15}} | | \put(260,30){\vector(0,1){15}} | |
| \put(110,30){\line(0,1){25}} | | \put(260,30){\line(0,1){25}} | |
| %\put(107,40){$({P^{\scriptstyle{\rm HW}}_{1,2}})^{-1}$} | | \put(262,40){$\lambda$} | |
| \put(112,40){$\frac{1}{P^{\scriptstyle{\rm HW}}_{1,2}}$} | | \put(343,13){\vector(1,0){15}} | |
| %\put(117,40){$\frac{\tilde{R}_{1,2}}{P_{1,2}}$} | | \put(343,13){\line(1,0){25}} | |
| \put(140,30){\vector(0,1){15}} | | \put(370,10){$\sigma^2/T$} | |
| \put(140,30){\line(0,1){25}} | | \put(190,0) | |
| % \put(142,40){${P_{1,2}}^{-1}$} | | | |
| \put(142,40){$\frac{1}{P_{1,2}}$} | | | |
| %\put(142,40){$\frac{|\tilde{R}_{1,2}|^2}{P_{1,2}}$} | | | |
| \put(40,0) | | | |
| { | | { | |
|
| \framebox(115,30) | | \framebox(150,30) | |
| { | | { | |
|
| \texttt{InverseNoise} | | \texttt{Normalization} | |
| } | | } | |
| } | | } | |
|
| \put(210,30){\vector(0,1){15}} | | \put(200,-30){\vector(0,1){25}} | |
| \put(210,30){\line(0,1){25}} | | \put(200,-30){\line(0,1){30}} | |
| \put(212,40){$\Omega_{\scriptstyle{\rm GW}}$} | | \put(202,-10){$\Omega_{\scriptstyle{\rm GW}}$} | |
| \put(-2,2){$\tilde{R}_{1,2}$} | | \put(200,-10){\line(-1,0){35}} | |
| \put(18,5){\vector(1,0){15}} | | \put(165,-10){\line(0,1){65}} | |
| \put(18,5){\line(1,0){25}} | | \put(165,-10){\vector(0,1){55}} | |
| \put(-2,20){$P^{\scriptstyle{\rm W}}_{1,2}$} | | \put(167,40){$\Omega_{\scriptstyle{\rm GW}}$} | |
| \put(18,23){\vector(1,0){15}} | | \put(170,-60) | |
| \put(18,23){\line(1,0){25}} | | | |
| \put(165,0) | | | |
| { | | { | |
|
| \framebox(75,30) | | \framebox(70,30) | |
| { | | { | |
| \texttt{OmegaGW} | | \texttt{OmegaGW} | |
| } | | } | |
| } | | } | |
|
| \put(280,30){\vector(0,1){15}} | | \put(280,-30){\vector(0,1){20}} | |
| \put(280,30){\line(0,1){25}} | | \put(280,-30){\line(0,1){30}} | |
| \put(282,40){$\gamma$} | | \put(282,-15){$\gamma$} | |
| \put(250,0) | | \put(280,-20){\line(-1,0){130}} | |
| | | \put(150,-20){\line(0,1){75}} | |
| | | \put(150,-20){\vector(0,1){55}} | |
| | | \put(152,30){$\gamma$} | |
| | | \put(250,-60) | |
| { | | { | |
|
| \framebox(100,30) | | \framebox(70,30) | |
| { | | { | |
| \texttt{Overlap} | | \texttt{Overlap} | |
| } | | } | |
| } | | } | |
|
| | | \put(125,-80){\line(0,1){135}} | |
| | | \put(125,-80){\vector(0,1){100}} | |
| | | %\put(107,40){$({P^{\scriptstyle{\rm HW}}_{1,2}})^{-1}$} | |
| | | \put(127,20){$\frac{1}{P^{\scriptstyle{\rm HW}}_{1,2}}$} | |
| | | %\put(117,40){$\frac{\tilde{R}_{1,2}}{P_{1,2}}$} | |
| | | \put(330,-80){\line(0,1){80}} | |
| | | \put(330,-80){\vector(0,1){45}} | |
| | | % \put(142,40){${P_{1,2}}^{-1}$} | |
| | | \put(332,-35){$\frac{1}{P_{1,2}}$} | |
| | | %\put(142,40){$\frac{|\tilde{R}_{1,2}|^2}{P_{1,2}}$} | |
| | | \put(115,-110) | |
| | | { | |
| | | \framebox(225,30) | |
| | | { | |
| | | \texttt{InverseNoise} | |
| | | } | |
| | | } | |
| | | \put(73,-108){$\tilde{R}_{1,2}$} | |
| | | \put(93,-105){\vector(1,0){15}} | |
| | | \put(93,-105){\line(1,0){25}} | |
| | | \put(73,-90){$P^{\scriptstyle{\rm W}}_{1,2}$} | |
| | | \put(93,-87){\vector(1,0){15}} | |
| | | \put(93,-87){\line(1,0){25}} | |
| \end{picture} | | \end{picture} | |
| \end{center} | | \end{center} | |
| \caption{\label{stochastic:f:CrossCorrFlowchart} Relationship among | | \caption{\label{stochastic:f:CrossCorrFlowchart} Relationship among | |
| the modules dependent on \texttt{StochasticCrossCorrelation.h}, | | the modules dependent on \texttt{StochasticCrossCorrelation.h}, | |
|
| which are used to calculate the cross-correlation statistic $Y$ from | | which are used to calculate the cross-correlation statistic $Y$ | |
| | | and its theoretical variance per unit time $\sigma^2/T$ from | |
| (whitened) stretches of data $h^{\scriptstyle{\rm W}}_1(t)$, | | (whitened) stretches of data $h^{\scriptstyle{\rm W}}_1(t)$, | |
| $h^{\scriptstyle{\rm W}}_2(t)$, from two detectors, using metadata | | $h^{\scriptstyle{\rm W}}_2(t)$, from two detectors, using metadata | |
| on the power spectral densities $P^{\scriptstyle{\rm W}}_1(f)$, | | on the power spectral densities $P^{\scriptstyle{\rm W}}_1(f)$, | |
| $P^{\scriptstyle{\rm W}}_2(f)$ and transfer functions (whitening | | $P^{\scriptstyle{\rm W}}_2(f)$ and transfer functions (whitening | |
| filters) $\tilde{R}_1(f)$, $\tilde{R}_2(f)$ for each detector. | | filters) $\tilde{R}_1(f)$, $\tilde{R}_2(f)$ for each detector. | |
| \texttt{CrossCorr} represents the module | | \texttt{CrossCorr} represents the module | |
| \texttt{StochasticCrossCorrelation.c} | | \texttt{StochasticCrossCorrelation.c} | |
| (Sec.~\ref{stochastic:ss:StochasticCrossCorrelation.c}) | | (Sec.~\ref{stochastic:ss:StochasticCrossCorrelation.c}) | |
| containing the functions | | containing the functions | |
| \texttt{LALStochasticCrossCorrelationStatistic()}, | | \texttt{LALStochasticCrossCorrelationStatistic()}, | |
| | | | |
| skipping to change at line 123 | | skipping to change at line 145 | |
| and \texttt{LALStochasticCrossCorrelationSpectrum()}, | | and \texttt{LALStochasticCrossCorrelationSpectrum()}, | |
| \texttt{ZeroPadAndFFT} represents the module | | \texttt{ZeroPadAndFFT} represents the module | |
| \texttt{ZeroPadAndFFT.c} (Sec.~\ref{stochastic:ss:ZeroPadAndFFT.c}) | | \texttt{ZeroPadAndFFT.c} (Sec.~\ref{stochastic:ss:ZeroPadAndFFT.c}) | |
| containing the functions | | containing the functions | |
| \texttt{LALSZeroPadAndFFT()} and \texttt{LALCZeroPadAndFFT()}; | | \texttt{LALSZeroPadAndFFT()} and \texttt{LALCZeroPadAndFFT()}; | |
| \texttt{OptimalFilter} represents the module | | \texttt{OptimalFilter} represents the module | |
| \texttt{StochasticOptimalFilter.c} | | \texttt{StochasticOptimalFilter.c} | |
| (Sec.~\ref{stochastic:ss:StochasticOptimalFilter.c}) | | (Sec.~\ref{stochastic:ss:StochasticOptimalFilter.c}) | |
| containing the function | | containing the function | |
| \texttt{LALStochasticOptimalFilter()}; | | \texttt{LALStochasticOptimalFilter()}; | |
|
| | | \texttt{Normalization} represents the module | |
| | | \texttt{StochasticOptimalFilterNormalization.c} | |
| | | (Sec.~\ref{stochastic:ss:StochasticOptimalFilterNormalization.c}) | |
| | | containing the function | |
| | | \texttt{LALStochasticOptimalFilterNormalization()}; | |
| \texttt{InverseNoise} represents the module | | \texttt{InverseNoise} represents the module | |
| \texttt{StochasticInverseNoise.c} | | \texttt{StochasticInverseNoise.c} | |
| (Sec.~\ref{stochastic:ss:StochasticInverseNoise.c}) | | (Sec.~\ref{stochastic:ss:StochasticInverseNoise.c}) | |
| containing the function | | containing the function | |
| \texttt{LALStochasticInverseNoise()}; | | \texttt{LALStochasticInverseNoise()}; | |
| \texttt{OmegaGW} represents the module | | \texttt{OmegaGW} represents the module | |
| \texttt{StochasticOmegaGW.c} | | \texttt{StochasticOmegaGW.c} | |
| (Sec.~\ref{stochastic:ss:StochasticOmegaGW.c}) | | (Sec.~\ref{stochastic:ss:StochasticOmegaGW.c}) | |
| containing the function | | containing the function | |
| \texttt{LALStochasticOmegaGW()}; | | \texttt{LALStochasticOmegaGW()}; | |
| | | | |
| skipping to change at line 168 | | skipping to change at line 195 | |
| #include <lal/LALStdlib.h> | | #include <lal/LALStdlib.h> | |
| #include <lal/DetectorSite.h> | | #include <lal/DetectorSite.h> | |
| #include <lal/Units.h> | | #include <lal/Units.h> | |
| #include <lal/TimeFreqFFT.h> | | #include <lal/TimeFreqFFT.h> | |
| | | | |
| #ifdef __cplusplus | | #ifdef __cplusplus | |
| extern "C" { | | extern "C" { | |
| #endif | | #endif | |
| | | | |
| NRCSID( STOCHASTICCROSSCORRELATIONH, | | NRCSID( STOCHASTICCROSSCORRELATIONH, | |
|
| "$Id: StochasticCrossCorrelation.h,v 1.17 2001/12/09 04:24:18 whela
n Exp $" ); | | "$Id: StochasticCrossCorrelation.h,v 1.22 2002/02/26 20:32:27 whela
n Exp $" ); | |
| | | | |
| /****************** <lalErrTable file="StochasticCrossCorrelationHE"> */ | | /****************** <lalErrTable file="StochasticCrossCorrelationHE"> */ | |
| | | | |
| #define STOCHASTICCROSSCORRELATIONH_ENULLPTR 1 | | #define STOCHASTICCROSSCORRELATIONH_ENULLPTR 1 | |
| #define STOCHASTICCROSSCORRELATIONH_ESAMEPTR 2 | | #define STOCHASTICCROSSCORRELATIONH_ESAMEPTR 2 | |
| #define STOCHASTICCROSSCORRELATIONH_EZEROLEN 3 | | #define STOCHASTICCROSSCORRELATIONH_EZEROLEN 3 | |
| #define STOCHASTICCROSSCORRELATIONH_ENONPOSDELTAF 4 | | #define STOCHASTICCROSSCORRELATIONH_ENONPOSDELTAF 4 | |
| #define STOCHASTICCROSSCORRELATIONH_ENONPOSDELTAT 5 | | #define STOCHASTICCROSSCORRELATIONH_ENONPOSDELTAT 5 | |
| #define STOCHASTICCROSSCORRELATIONH_ENEGFMIN 6 | | #define STOCHASTICCROSSCORRELATIONH_ENEGFMIN 6 | |
| #define STOCHASTICCROSSCORRELATIONH_EMMTIME 7 | | #define STOCHASTICCROSSCORRELATIONH_EMMTIME 7 | |
| | | | |
| skipping to change at line 411 | | skipping to change at line 438 | |
| $1/P_1^{\scriptstyle{\rm HW}}(f) | | $1/P_1^{\scriptstyle{\rm HW}}(f) | |
| =1/(\tilde{R_1}(f)P_1(f)) | | =1/(\tilde{R_1}(f)P_1(f)) | |
| =\tilde{R_1}(f)^* / P_1^{\scriptstyle{\rm W}}(f)$ of the | | =\tilde{R_1}(f)^* / P_1^{\scriptstyle{\rm W}}(f)$ of the | |
| half-whitened noise power spectral density for the first detector. | | half-whitened noise power spectral density for the first detector. | |
| \item[\texttt{COMPLEX8FrequencySeries *halfWhitenedInverseNoisePSD2}] | | \item[\texttt{COMPLEX8FrequencySeries *halfWhitenedInverseNoisePSD2}] | |
| The reciprocal | | The reciprocal | |
| $1/P_2^{\scriptstyle{\rm HW}}(f) | | $1/P_2^{\scriptstyle{\rm HW}}(f) | |
| =1/(\tilde{R_2}(f)P_2(f)) | | =1/(\tilde{R_2}(f)P_2(f)) | |
| =\tilde{R_2}(f)^* / P_2^{\scriptstyle{\rm W}}(f)$ of the | | =\tilde{R_2}(f)^* / P_2^{\scriptstyle{\rm W}}(f)$ of the | |
| half-whitened noise power spectral density for the second detector. | | half-whitened noise power spectral density for the second detector. | |
|
| \item[\texttt{REAL4FrequencySeries *unWhitenedInverseNoisePSD1}] | | \end{description} | |
| | | | |
| | | *********************************************************** </lalLaTeX> */ | |
| | | | |
| | | typedef struct tagStochasticOptimalFilterInput { | |
| | | REAL4FrequencySeries *overlapReductionFunction; | |
| | | REAL4FrequencySeries *omegaGW; | |
| | | COMPLEX8FrequencySeries *halfWhitenedInverseNoisePSD1; | |
| | | COMPLEX8FrequencySeries *halfWhitenedInverseNoisePSD2; | |
| | | } StochasticOptimalFilterInput; | |
| | | | |
| | | /********** <lalVerbatim file="StochasticCrossCorrelationHPOF"> *********/ | |
| | | | |
| | | void | |
| | | LALStochasticOptimalFilter( | |
| | | LALStatus *status, | |
| | | COMPLEX8FrequencySeries *optimalFilter, | |
| | | const StochasticOptimalFilterInput *input, | |
| | | const REAL4WithUnits *lambda); | |
| | | | |
| | | /********** </lalVerbatim> *********/ | |
| | | | |
| | | /************************************************************* | |
| | | * * | |
| | | * Structures and prototypes associated with * | |
| | | * StochasticOptimalFilterNormalization.c * | |
| | | * * | |
| | | *************************************************************/ | |
| | | | |
| | | /********************************************************** <lalLaTeX> | |
| | | | |
| | | \subsubsection*{Structures and protoypes associated with | |
| | | \texttt{StochasticOptimalFilterNormalization.c} | |
| | | (Sec.~\ref{stochastic:ss:StochasticOptimalFilterNormalization.c})} | |
| | | | |
| | | \subsubsection*{Prototypes} | |
| | | | |
| | | \idx{LALStochasticOptimalFilterNormalization()} | |
| | | \input{StochasticCrossCorrelationHPON} | |
| | | | |
| | | \subsubsection*{\texttt{struct StochasticOptimalFilterNormalizationOutput}} | |
| | | \idx[Type]{StochasticOptimalFilterNormalizationOutput} | |
| | | | |
| | | \noindent | |
| | | Contains the outputs of \texttt{LALStochasticOptimalFilterNormalization()}. | |
| | | The fields are: | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{REAL4WithUnits *normalization}] | |
| | | The normalization parameter $\lambda$. | |
| | | \item[\texttt{REAL4WithUnits *variance}] | |
| | | The variance per unit time $\sigma^2/T$ of the cross-correlation statistic. | |
| | | \end{description} | |
| | | | |
| | | *********************************************************** </lalLaTeX> */ | |
| | | | |
| | | typedef struct tagStochasticOptimalFilterNormalizationOutput { | |
| | | REAL4WithUnits *normalization; | |
| | | REAL4WithUnits *variance; | |
| | | } StochasticOptimalFilterNormalizationOutput; | |
| | | | |
| | | /********************************************************** <lalLaTeX> | |
| | | | |
| | | \subsubsection*{\texttt{struct StochasticOptimalFilterNormalizationInput}} | |
| | | \idx[Type]{StochasticOptimalFilterNormalizationInput} | |
| | | | |
| | | \noindent | |
| | | Contains the inputs of \texttt{LALStochasticOptimalFilterNormalization()}. | |
| | | The fields are: | |
| | | | |
| | | \begin{description} | |
| | | \item[\texttt{REAL4FrequencySeries *overlapReductionFunction}] | |
| | | The overlap reduction function $\gamma(f)$ describing the pair of detector | |
| | | sites. | |
| | | \item[\texttt{REAL4FrequencySeries *omegaGW}] The spectrum | |
| | | $\Omega_{\scriptstyle{\rm GW}}(f)$ of the stochastic gravitational-wave | |
| | | background. | |
| | | \item[\texttt{REAL4FrequencySeries *inverseNoisePSD1}] | |
| The reciprocal | | The reciprocal | |
| $1/P_1(f)=|\tilde{R_1}(f)|^2/P_1^{\scriptstyle{\rm W}}(f)$ of the | | $1/P_1(f)=|\tilde{R_1}(f)|^2/P_1^{\scriptstyle{\rm W}}(f)$ of the | |
| unwhitened noise power spectral density for the first detector. | | unwhitened noise power spectral density for the first detector. | |
|
| \item[\texttt{REAL4FrequencySeries *unWhitenedInverseNoisePSD2}] | | \item[\texttt{REAL4FrequencySeries *inverseNoisePSD2}] | |
| The reciprocal | | The reciprocal | |
| $1/P_2(f)=|\tilde{R_2}(f)|^2/P_2^{\scriptstyle{\rm W}}(f)$ of the | | $1/P_2(f)=|\tilde{R_2}(f)|^2/P_2^{\scriptstyle{\rm W}}(f)$ of the | |
| unwhitened noise power spectral density for the second detector. | | unwhitened noise power spectral density for the second detector. | |
| \end{description} | | \end{description} | |
| | | | |
| *********************************************************** </lalLaTeX> */ | | *********************************************************** </lalLaTeX> */ | |
| | | | |
|
| typedef struct tagStochasticOptimalFilterInput { | | typedef struct tagStochasticOptimalFilterNormalizationInput { | |
| REAL4FrequencySeries *overlapReductionFunction; | | REAL4FrequencySeries *overlapReductionFunction; | |
| REAL4FrequencySeries *omegaGW; | | REAL4FrequencySeries *omegaGW; | |
|
| COMPLEX8FrequencySeries *halfWhitenedInverseNoisePSD1; | | REAL4FrequencySeries *inverseNoisePSD1; | |
| COMPLEX8FrequencySeries *halfWhitenedInverseNoisePSD2; | | REAL4FrequencySeries *inverseNoisePSD2; | |
| REAL4FrequencySeries *unWhitenedInverseNoisePSD1; | | } StochasticOptimalFilterNormalizationInput; | |
| REAL4FrequencySeries *unWhitenedInverseNoisePSD2; | | | |
| } StochasticOptimalFilterInput; | | | |
| | | | |
| /********************************************************** <lalLaTeX> | | /********************************************************** <lalLaTeX> | |
| | | | |
|
| \subsubsection*{\texttt{struct StochasticOptimalFilterParameters}} | | \subsubsection*{\texttt{struct StochasticOptimalFilterNormalizationParamete | |
| \idx[Type]{StochasticOptimalFilterParameters} | | rs}} | |
| | | \idx[Type]{StochasticOptimalFilterNormalizationParameters} | |
| | | | |
| \noindent | | \noindent | |
|
| Contains the parameters of \texttt{LALStochasticOptimalFilter()}. | | Contains the parameters of \texttt{LALStochasticOptimalFilterNormalization(
)}. | |
| The fields are: | | The fields are: | |
| | | | |
| \begin{description} | | \begin{description} | |
| \item[\texttt{REAL8 fRef}] | | \item[\texttt{REAL8 fRef}] | |
| The reference frequency used in defining the normalization. | | The reference frequency used in defining the normalization. | |
| \item[\texttt{BOOLEAN heterodyned}] | | \item[\texttt{BOOLEAN heterodyned}] | |
| Indicates whether the filter is to be used on heterodyned data or not. | | Indicates whether the filter is to be used on heterodyned data or not. | |
| \end{description} | | \end{description} | |
| | | | |
| *********************************************************** </lalLaTeX> */ | | *********************************************************** </lalLaTeX> */ | |
| | | | |
|
| typedef struct tagStochasticOptimalFilterParameters { | | typedef struct tagStochasticOptimalFilterNormalizationParameters { | |
| REAL8 fRef; | | REAL8 fRef; | |
| BOOLEAN heterodyned; | | BOOLEAN heterodyned; | |
|
| } StochasticOptimalFilterParameters; | | } StochasticOptimalFilterNormalizationParameters; | |
| | | | |
|
| /********** <lalVerbatim file="StochasticCrossCorrelationHPOF"> *********/ | | /********** <lalVerbatim file="StochasticCrossCorrelationHPON"> *********/ | |
| | | | |
| void | | void | |
|
| LALStochasticOptimalFilter( | | LALStochasticOptimalFilterNormalization( | |
| LALStatus *status, | | LALStatus *status, | |
| COMPLEX8FrequencySeries *optimalFilter, | | StochasticOptimalFilterNormalizationOutput *output, | |
| const StochasticOptimalFilterInput *input, | | const StochasticOptimalFilterNormalizationInput *input, | |
| const StochasticOptimalFilterParameters *parameters); | | const StochasticOptimalFilterNormalizationParameters *parameter | |
| | | s); | |
| | | | |
| /********** </lalVerbatim> *********/ | | /********** </lalVerbatim> *********/ | |
| | | | |
| /************************************************************* | | /************************************************************* | |
| * * | | * * | |
| * Structures and prototypes associated with StochasticInverseNoise.c * | | * Structures and prototypes associated with StochasticInverseNoise.c * | |
| * * | | * * | |
| *************************************************************/ | | *************************************************************/ | |
| | | | |
| /********************************************************** <lalLaTeX> | | /********************************************************** <lalLaTeX> | |
| | | | |
| skipping to change at line 712 | | skipping to change at line 814 | |
| | | | |
| \newpage\input{StochasticCrossCorrelationC} | | \newpage\input{StochasticCrossCorrelationC} | |
| \newpage\input{StochasticCrossCorrelationStatisticTestC} | | \newpage\input{StochasticCrossCorrelationStatisticTestC} | |
| \newpage\input{StochasticHeterodynedCrossCorrelationStatisticTestC} | | \newpage\input{StochasticHeterodynedCrossCorrelationStatisticTestC} | |
| \newpage\input{StochasticCrossCorrelationSpectrumTestC} | | \newpage\input{StochasticCrossCorrelationSpectrumTestC} | |
| \newpage\input{ZeroPadAndFFTC} | | \newpage\input{ZeroPadAndFFTC} | |
| \newpage\input{SZeroPadAndFFTTestC} | | \newpage\input{SZeroPadAndFFTTestC} | |
| \newpage\input{CZeroPadAndFFTTestC} | | \newpage\input{CZeroPadAndFFTTestC} | |
| \newpage\input{StochasticOptimalFilterC} | | \newpage\input{StochasticOptimalFilterC} | |
| \newpage\input{StochasticOptimalFilterTestC} | | \newpage\input{StochasticOptimalFilterTestC} | |
|
| | | \newpage\input{StochasticOptimalFilterNormalizationC} | |
| | | \newpage\input{StochasticOptimalFilterNormalizationTestC} | |
| \newpage\input{StochasticInverseNoiseC} | | \newpage\input{StochasticInverseNoiseC} | |
| \newpage\input{StochasticInverseNoiseTestC} | | \newpage\input{StochasticInverseNoiseTestC} | |
| \newpage\input{StochasticOmegaGWC} | | \newpage\input{StochasticOmegaGWC} | |
| \newpage\input{StochasticOmegaGWTestC} | | \newpage\input{StochasticOmegaGWTestC} | |
| \newpage\input{OverlapReductionFunctionC} | | \newpage\input{OverlapReductionFunctionC} | |
| \newpage\input{OverlapReductionFunctionTestC} | | \newpage\input{OverlapReductionFunctionTestC} | |
| | | | |
| *********************************************************** </lalLaTeX> */ | | *********************************************************** </lalLaTeX> */ | |
| | | | |
End of changes. 24 change blocks. |
| 54 lines changed or deleted | | 160 lines changed or added | |
|