LALPulsar 7.1.1.1-eeff03c
MCInjectHoughS2.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: MCInjectHoughS2.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 _MCINJECTHOUGHS2_H
34#define _MCINJECTHOUGHS2_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#ifdef TIMING
51#include "./timer/cycle_counter/Intel/GCC/cycle_counter.h" /* proper path*/
52#endif
53
54/******************************************************
55 * Protection against C++ name mangling
56 */
57
58#ifdef __cplusplus
59extern "C" {
60#endif
61
62/* ************************************************************
63 * Usage format string.
64 */
65
66
67/* ***************************************************************
68 * Constant Declarations. Default parameters.
69 */
70
71
72/* >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< */
73
74/* ******************************************************************
75 * Structure, enum, union, etc., typdefs.
76 */
77
78
79typedef struct tagHoughInjectParams {
80 REAL8 h0;
81 REAL8 fmin; /* first_search_frequency_in_Hz */
82 REAL8 fSearchBand; /* search_band_in_Hz */
83 REAL8 deltaF; /* frequency resolution */
84 UCHAR fullSky; /* full sky 1, little patch 0 */
85 REAL8 alpha; /* patch center in equatorial coordinates (in radians) */
87 REAL8 patchSizeAlpha;
88 REAL8 patchSizeDelta;
89 UINT2 pixelFactor; /* default 2, Width of the thinnest annulus in terms of pixels*/
90 REAL8 vTotC; /* estimate value of v-total/C as VTOT */
91 REAL8 timeObs;
92 REAL8Vector spnFmax;
94
95typedef struct tagHoughTemplate {
96 REAL8 f0;
97 REAL8 latitude; /* of the source in radians */
98 REAL8 longitude; /* of the source in radians */
99 REAL8Vector spindown; /* SpinOrder and parameters */
101
102typedef struct tagHoughNearTemplates {
103 REAL8 f0[2]; /* f0 values */
104 REAL8 f1[2]; /* 1st spindown parameters */
105 REAL8UnitPolarCoor skytemp[4]; /* near sky template parameters */
107
108
109typedef struct tagPulsarData {
110 REAL8 f0;
111 REAL8 latitude; /* of the source in radians */
112 REAL8 longitude; /* of the source in radians */
113 REAL4 aPlus;
114 REAL4 aCross;
115 REAL4 psi;
116 REAL8 phi0;
117 REAL8Vector spindown; /* SpinOrder and parameters */
118} PulsarData;
119
120
121/*
122 * Functions Declarations (i.e., prototypes). Not declared in DriveHoughColor.h */
123
125 PulsarData *injectPulsar,
126 HoughTemplate *templatePulsar,
127 HoughNearTemplates *closeTemplates,
129 LineNoiseInfo *lines );
130
132 REAL8Vector *foft,
133 HoughTemplate *pulsarTemplate,
134 REAL8Vector *timeDiffV,
136 REAL8 timeBase );
137
138/* ****************************************************** */
139
140#ifdef __cplusplus
141} /* Close C++ protection */
142#endif
143
144
145#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 ComputeFoft(LALStatus *status, REAL8Vector *foft, HoughTemplate *pulsarTemplate, REAL8Vector *timeDiffV, REAL8Cart3CoorVector *velV, REAL8 timeBase)
unsigned char UCHAR
double REAL8
uint16_t UINT2
float REAL4
int deltaF
double alpha
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