Loading [MathJax]/extensions/TeX/AMSsymbols.js
LALPulsar 7.1.1.1-8a6b96f
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
MCInjectComputeHough.h
Go to the documentation of this file.
1/*
2* Copyright (C) 2007 Badri Krishnan, Alicia Sintes Olives
3*
4* This program is free software; you can redistribute it and/or modify
5* it under the terms of the GNU General Public License as published by
6* the Free Software Foundation; either version 2 of the License, or
7* (at your option) any later version.
8*
9* This program is distributed in the hope that it will be useful,
10* but WITHOUT ANY WARRANTY; without even the implied warranty of
11* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12* GNU General Public License for more details.
13*
14* You should have received a copy of the GNU General Public License
15* along with with program; see the file COPYING. If not, write to the
16* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
17* MA 02110-1301 USA
18*/
19
20/*-----------------------------------------------------------------------
21 *
22 * File Name: MCInjectComputeHough.h
23 *
24 * Authors: Sintes, A.M., Krishnan, B.
25 *
26*-----------------------------------------------------------------------
27 */
28/*
29 * Protection against double inclusion (include-loop protection)
30 * Note the naming convention!
31 */
32
33#ifndef _MCINJECTCOMPUTEHOUGH_H
34#define _MCINJECTCOMPUTEHOUGH_H
35
36#include <time.h>
37#include <math.h>
38
39#include <lal/Random.h>
40#include <lal/AVFactories.h>
41#include <lal/LALStdlib.h>
42#include <lal/PulsarDataTypes.h>
43#include <lal/SFTfileIO.h>
44#include <lal/UserInput.h>
45#include <lal/GeneratePulsarSignal.h>
46#include <lal/LALComputeAM.h>
47#include <lal/ComputeSky.h>
48
49#include "DriveHoughColor.h"
50
51#ifdef TIMING
52#include "./timer/cycle_counter/Intel/GCC/cycle_counter.h" /* proper path*/
53#endif
54
55/******************************************************
56 * Protection against C++ name mangling
57 */
58
59#ifdef __cplusplus
60extern "C" {
61#endif
62
63/* ************************************************************
64 * Usage format string. (Similar to DriveHoughColor_velo.c)
65 */
66
67
68
69
70
71/* ***************************************************************
72 * Constant Declarations. Default parameters.
73 */
74
75
76#define EARTHEPHEMERIS "./earth00-04.dat"
77#define SUNEPHEMERIS "./sun00-04.dat"
78
79#define ACCURACY 0.00000001 /* of the velocity calculation */
80#define MAXFILES 3000 /* maximum number of files to read in a directory */
81#define MAXFILENAMELENGTH 256 /* maximum # of characters of a SFT filename */
82
83#define IFO 2 /* detector, 1:GEO, 2:LLO, 3:LHO */
84#define THRESHOLD 1.6 /* thresold for peak selection, with respect to the
85 the averaged power in the search band */
86#define F0 250.0 /* frequency to build the LUT and start search */
87#define FBAND 2.0 /* search frequency band (in Hz) */
88#define ALPHA 0.0 /* center of the sky patch (in radians) */
89#define DELTA (-LAL_PI_2)
90#define PATCHSIZEX (LAL_PI*0.99) /* patch size */
91#define PATCHSIZEY (LAL_PI*0.99)
92#define NFSIZE 21 /* n-freq. span of the cylinder, to account for spin-down
93 search */
94#define BLOCKSRNGMED 101 /* Running median window size */
95#define NH0 1 /* number of h0 values to be anlyzed */
96#define H0MIN 1.0e-23
97#define NMCLOOP 10 /* number of Monte-Carlos */
99/* #define SFTDIRECTORY "/nfs/morbo/geo600/hannover/sft/S2-LIGO/S2_L1_Funky-v3Calv5DQ30MinSFTs/" */
100#define SFTDIRECTORY "/home/badkri/L1sfts/"
101#define FILEOUT "./HoughMC" /* prefix file output */
103/* to be removed ? */
104#define FILEVELOCITY "./velocity.data" /* name: file with time-velocity info */
105#define FILETIME "./Ts" /* name: file with timestamps */
106/* >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< */
107
108/* ******************************************************************
109 * Structure, enum, union, etc., typdefs.
110 */
113typedef struct tagHoughInjectParams {
115 REAL8 fmin; /* first_search_frequency_in_Hz */
116 REAL8 fSearchBand; /* search_band_in_Hz */
117 REAL8 deltaF; /* frequency resolution */
118 UCHAR fullSky; /* full sky 1, little patch 0 */
119 REAL8 alpha; /* patch center in equatorial coordinates (in radians) */
121 REAL8 patchSizeAlpha;
122 REAL8 patchSizeDelta;
123 REAL8 pixelFactor; /* default 2, Width of the thinnest annulus in terms of pixels*/
124 REAL8 vTotC; /* estimate value of v-total/C as VTOT */
125 REAL8 timeObs;
126 REAL8Vector spnFmax;
127 REAL8Vector spnFmin;
130typedef struct tagHoughPulsarTemplate {
132 REAL8 latitude; /* of the source in radians */
133 REAL8 longitude; /* of the source in radians */
134 REAL8Vector spindown; /* SpinOrder and parameters */
137typedef struct tagPulsarData {
139 REAL8 latitude; /* of the source in radians */
140 REAL8 longitude; /* of the source in radians */
141 REAL4 aPlus;
142 REAL4 aCross;
143 REAL4 psi;
144 REAL8 phi0;
145 REAL8Vector spindown; /* SpinOrder and parameters */
146} PulsarData;
147
148
149/*
150 * Functions Declarations (i.e., prototypes). Not declared in DriveHoughColor.h */
151
153 PulsarData *injectPulsar,
154 HoughPulsarTemplate *templatePulsar,
156
157/* ****************************************************** */
158
159#ifdef __cplusplus
160} /* Close C++ protection */
161#endif
162
163
164#endif /* Close double-include protection */
Header file for non-demodulated Hough search.
static double double delta
void GenerateInjectTemplateParams(LALStatus *status, PulsarData *injectPulsar, HoughPulsarTemplate *templatePulsar, HoughInjectParams *params)
unsigned char UCHAR
double REAL8
float REAL4
int deltaF
double alpha