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
MCInjectHoughMulti.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: MCInjectHoughMULTI.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 _MCINJECTHOUGHMULTI_H
34#define _MCINJECTHOUGHMULTI_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/SFTClean.h>
47
48#include "DriveHoughColor.h"
49
50
51/******************************************************
52 * Protection against C++ name mangling
53 */
54
55#ifdef __cplusplus
56extern "C" {
57#endif
58
59/* ************************************************************
60 * Usage format string.
61 */
62
63
64/* ***************************************************************
65 * Constant Declarations. Default parameters.
66 */
67
68
69/* >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< */
70
71/* ******************************************************************
72 * Structure, enum, union, etc., typdefs.
73 */
74
75
76typedef struct tagHoughInjectParams {
77 REAL8 h0;
78 REAL8 fmin; /* first_search_frequency_in_Hz */
79 REAL8 fSearchBand; /* search_band_in_Hz */
80 REAL8 deltaF; /* frequency resolution */
81 UCHAR fullSky; /* full sky 1, little patch 0 */
82 REAL8 alpha; /* patch center in equatorial coordinates (in radians) */
84 REAL8 patchSizeAlpha;
85 REAL8 patchSizeDelta;
86 REAL8 pixelFactor; /* default 2, Width of the thinnest annulus in terms of pixels*/
87 REAL8 vTotC; /* estimate value of v-total/C as VTOT */
88 REAL8 timeObs;
89 REAL8Vector spnFmax;
90 REAL8Vector spnFmin;
92
93typedef struct tagHoughTemplate {
95 REAL8 latitude; /* of the source in radians */
96 REAL8 longitude; /* of the source in radians */
97 REAL8Vector spindown; /* SpinOrder and parameters */
99
100typedef struct tagHoughNearTemplates {
101 REAL8 f0[2]; /* f0 values */
102 REAL8 f1[2]; /* 1st spindown parameters */
103 REAL8UnitPolarCoor skytemp[4]; /* near sky template parameters */
105
106
107typedef struct tagPulsarData {
108 REAL8 f0;
109 REAL8 latitude; /* of the source in radians */
110 REAL8 longitude; /* of the source in radians */
111 REAL4 aPlus;
112 REAL4 aCross;
113 REAL4 psi;
114 REAL8 phi0;
115 REAL8Vector spindown; /* SpinOrder and parameters */
116} PulsarData;
117
118
119/*
120 * Functions Declarations (i.e., prototypes). Not declared in DriveHoughColor.h */
121
123 PulsarData *injectPulsar,
124 HoughTemplate *templatePulsar,
125 HoughNearTemplates *closeTemplates,
127 LineNoiseInfo *lines );
128
130 PulsarData *injectPulsar,
131 HoughTemplate *templatePulsar,
132 HoughNearTemplates *closeTemplates,
134
136 REAL8Vector *foft,
137 HoughTemplate *pulsarTemplate,
138 REAL8Vector *timeDiffV,
140 REAL8 timeBase );
141
142
144 CHAR *dir,
145 CHAR *basename,
146 CHAR *skyfile,
147 LALStringVector *linefiles,
148 CHAR *executable );
149
150
152 REAL8 latitude,
153 REAL8 longitude,
154 REAL8Cart3CoorVector *skyPatchCenterV,
155 INT4 *skyIndex );
156/* ****************************************************** */
157
158#ifdef __cplusplus
159} /* Close C++ protection */
160#endif
161
162
163#endif /* Close double-include protection */
Header file for non-demodulated Hough search.
static double double delta
void GenerateInjectParams(LALStatus *status, PulsarData *injectPulsar, HoughTemplate *templatePulsar, HoughNearTemplates *closeTemplates, HoughInjectParams *params, LineNoiseInfo *lines)
void FindNearestPatch(LALStatus *status, REAL8 latitude, REAL8 longitude, REAL8Cart3CoorVector *skyPatchCenterV, INT4 *skyIndex)
void ComputeFoft(LALStatus *status, REAL8Vector *foft, HoughTemplate *pulsarTemplate, REAL8Vector *timeDiffV, REAL8Cart3CoorVector *velV, REAL8 timeBase)
void PrintLogFile(LALStatus *status, CHAR *dir, CHAR *basename, CHAR *skyfile, LALStringVector *linefiles, CHAR *executable)
void GenerateInjectParamsNoVeto(LALStatus *status, PulsarData *injectPulsar, HoughTemplate *templatePulsar, HoughNearTemplates *closeTemplates, HoughInjectParams *params)
unsigned char UCHAR
double REAL8
char CHAR
int32_t INT4
float REAL4
int deltaF
double alpha
REAL8Vector spindown
structure for storing list of spectral lines – constructed by expanding list of harmonics
Definition: SFTClean.h:132
Polar coordinates of a unitary vector on the sphere.
Definition: LUT.h:327