LAL  7.5.0.1-8083555
CoherentEstimation.h
Go to the documentation of this file.
1 /*
2 * Copyright (C) 2007 Jolien Creighton, Julien Sylvestre
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with with program; see the file COPYING. If not, write to the
16 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
17 * MA 02110-1301 USA
18 */
19 
20 #ifndef _COHERENTESTIMATION_H
21 #define _COHERENTESTIMATION_H
22 
23 #include <lal/LALStdlib.h>
24 #include <lal/DetectorSite.h>
25 #include <lal/SkyCoordinates.h>
26 #include <lal/IIRFilter.h>
27 
28 #if defined(__cplusplus)
29 extern "C" {
30 #elif 0
31 } /* so that editors will match preceding brace */
32 #endif
33 
34 #define COHERENTESTIMATIONH_EMEM 1
35 #define COHERENTESTIMATIONH_ENULL 2
36 #define COHERENTESTIMATIONH_E0DEC 3
37 #define COHERENTESTIMATIONH_EDST 4
38 #define COHERENTESTIMATIONH_EICE 5
39 #define COHERENTESTIMATIONH_ENUM 6
40 #define COHERENTESTIMATIONH_EUIMP 7
41 
42 #define COHERENTESTIMATIONH_MSGEMEM "Memory allocation error"
43 #define COHERENTESTIMATIONH_MSGENULL "NULL pointer"
44 #define COHERENTESTIMATIONH_MSGE0DEC "invalid DetectorsData structure"
45 #define COHERENTESTIMATIONH_MSGEDST "input time series don't all have same start time"
46 #define COHERENTESTIMATIONH_MSGEICE "invalid CoherentEstimation structure"
47 #define COHERENTESTIMATIONH_MSGENUM "Numerical erorr"
48 #define COHERENTESTIMATIONH_MSGEUIMP "Implemented only for 3 detectors"
49 
50 typedef struct tagDetectorsData {
51 
52  UINT4 Ndetectors; /* number of detectors */
53  REAL4TimeSeries *data; /* data time series from all detectors */
54 
56 
57 
58 typedef struct tagCoherentEstimation {
59 
60  UINT4 Ndetectors; /* number of detectors */
61  LALDetector *detectors; /* vector of detectors info */
62  REAL8IIRFilter **filters; /* vector of pre-processing filters */
63 
64  BOOLEAN preProcessed; /* set to 0 to for pre-processing */
65  UINT2 nPreProcessed; /* number of times to apply pre-proc filters */
66 
67  SkyPosition *position; /* position of source (equatorial celestial coordinates) */
68  REAL8 polAngle; /* polarization angle: counter-clockwise angle x-axis makes with a line per- pendicular to meridian of source in Westward direction (i.e. North of West), in decimal radians. */
69 
70  REAL8 plus2cross; /* ratio |s+|/|sx|, non-zero */
71 
72  REAL8 plusDotcross; /* s+ sx / |s+| |sx| */
73 
74  REAL8 **CMat; /* correlation matrix */
75 
77 
78 
79 
80 void
84  CoherentEstimation *params,
85  DetectorsData *in
86  );
87 
88 void
91  DetectorsData *dat
92  );
93 
94 void
98  );
99 
100 #if 0
101 { /* so that editors will match succeeding brace */
102 #elif defined(__cplusplus)
103 }
104 #endif
105 
106 #endif /* _COHERENTESTIMATION_H */
void LALClearCoherentInfo(LALStatus *status, CoherentEstimation *dat)
void LALClearCoherentData(LALStatus *status, DetectorsData *dat)
void LALDoCoherentEstimation(LALStatus *status, REAL4TimeSeries *output, CoherentEstimation *params, DetectorsData *in)
unsigned char BOOLEAN
Boolean logical type, see Headers LAL(Atomic)Datatypes.h for more details.
double REAL8
Double precision real floating-point number (8 bytes).
uint16_t UINT2
Two-byte unsigned integer.
uint32_t UINT4
Four-byte unsigned integer.
REAL8IIRFilter ** filters
LALDetector * detectors
SkyPosition * position
REAL4TimeSeries * data
Detector structure.
Definition: LALDetectors.h:278
LAL status structure, see The LALStatus structure for more details.
Definition: LALDatatypes.h:947
Time series of REAL4 data, see DATATYPE-TimeSeries types for more details.
Definition: LALDatatypes.h:570
This structure stores the direct and recursive REAL8 filter coefficients, as well as the history of t...
Definition: IIRFilter.h:168
This structure stores the two spherical coordinates of a sky position; ie a generic latitude and long...
void output(int gps_sec, int output_type)
Definition: tconvert.c:440