Loading [MathJax]/extensions/TeX/AMSsymbols.js
LAL 7.7.0.1-00ddc7f
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
LALNoiseModels.h
Go to the documentation of this file.
1/*
2* Copyright (C) 2007 Stas Babak, David Churches, Duncan Brown, Jolien Creighton, B.S. Sathyaprakash, Anand Sengupta, Thomas Cokelaer
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 _LALNOISEMODELS_H
21#define _LALNOISEMODELS_H
22
23#include <math.h>
24#include <stdio.h>
25#include <stdlib.h>
26#include <lal/LALStdlib.h>
27#include <lal/LALConstants.h>
28#include <lal/RealFFT.h>
29
30#ifdef __cplusplus
31extern "C" {
32#endif
33
34/**
35 * \defgroup LALNoiseModels_h Header LALNoiseModels.h
36 * \ingroup lal_noisemodels
37 * \author Sathyaprakash, B.S.
38 *
39 * \brief Header file for model noise generation codes.
40 *
41 * ### Synopsis ###
42 *
43 * \code
44 * #include <lal/LALNoiseModels.h>
45 * \endcode
46 *
47 * This header file covers routines that are used in
48 * synthetic background noise expected in various
49 * detectors and signals with random parameters in background noise.
50 *
51 */
52/** @{ */
53/**\name Error Codes */ /** @{ */
54#define LALNOISEMODELSH_ENULL 1 /**< Arguments contained an unexpected null pointer */
55#define LALNOISEMODELSH_EMEM 2 /**< Memory allocation error */
56#define LALNOISEMODELSH_ECHOICE 4 /**< Invalid choice for an input parameter */
57#define LALNOISEMODELSH_EDIV0 8 /**< Division by zero */
58#define LALNOISEMODELSH_ESIZE 16 /**< Invalid input size */
59/** @} */
60
61/** \cond DONT_DOXYGEN */
62#define LALNOISEMODELSH_MSGENULL "Arguments contained an unexpected null pointer"
63#define LALNOISEMODELSH_MSGEMEM "Memory allocation error"
64#define LALNOISEMODELSH_MSGECHOICE "Invalid choice for an input parameter"
65#define LALNOISEMODELSH_MSGEDIV0 "Division by zero"
66#define LALNOISEMODELSH_MSGESIZE "Invalid input size"
67/** \endcond */
68
70 {
74 virgo
75 };
76
77 typedef struct
78 tagAddVectorsIn
79 {
84 }
86
87
88 typedef struct
89 tagStatsREAL4VectorOut
90 {
96 }
98
99
100
101 /* Function prototypes */
102
103 void
105 (
107 REAL8Vector *psd,
108 void (*NoisePsd)(LALStatus *status, REAL8 *shf, REAL8 f),
109 REAL8 f
110 );
111
112 void
114 (
116 REAL8 *shf,
117 REAL8 x
118 );
119
120
121 void
123 (
125 REAL8 *shf,
126 REAL8 x
127 );
128
129 void
131 (
133 REAL8 *shf,
134 REAL8 x
135 );
136
137 REAL8
139 (
140 REAL8 f
141 );
142
143 void
145 (
147 REAL8 *shf,
148 REAL8 x
149 );
150
151 void
153 (
155 REAL8 *shf,
156 REAL8 x
157 );
158
159 void
161 (
163 REAL8 *shf,
164 REAL8 x
165 );
166
167
168 void
170 (
172 REAL4Vector *noisy,
173 REAL8Vector psd
174 );
175
176 void
178 (
180 REAL4Vector *vector,
181 AddVectorsIn in);
182
183
184 void
186 (
189 REAL4Vector *vector
190 );
191
192
194
195/** @} */
196
197#ifdef __cplusplus
198}
199#endif
200
201#endif /* _LALNOISEMODELS_H */
static double f(double theta, double y, double xi)
Definition: XLALMarcumQ.c:258
double REAL8
Double precision real floating-point number (8 bytes).
void LALTAMAPsd(LALStatus *status, REAL8 *shf, REAL8 x)
void LALEGOPsd(LALStatus *status, REAL8 *shf, REAL8 x)
void LALColoredNoise(LALStatus *status, REAL4Vector *noisy, REAL8Vector psd)
This function colors a given white noise input into a colored noise of power spectral density psd.
void LALLIGOIPsd(LALStatus *status, REAL8 *shf, REAL8 x)
REAL8 XLALETBPsd(REAL8 f)
Function to calculate the noise power spectral density of the projected ET-B detector.
Definition: LALETBPsd.c:30
void LALStatsREAL4Vector(LALStatus *status, StatsREAL4VectorOut *out, REAL4Vector *vector)
Module to compute the mean, rms, minimum and maximum of a REAL4Vector.
enumDetector
void LALNoiseSpectralDensity(LALStatus *status, REAL8Vector *psd, void(*NoisePsd)(LALStatus *status, REAL8 *shf, REAL8 f), REAL8 f)
This function generates an array of size specified in the vector psd, that is psd....
void LALAdvLIGOPsd(LALStatus *status, REAL8 *shf, REAL8 x)
void LALAddVectors(LALStatus *status, REAL4Vector *vector, AddVectorsIn in)
Function to add two vectors with weights.
Definition: LALAddVectors.c:49
void LALVIRGOPsd(LALStatus *status, REAL8 *shf, REAL8 x)
REAL8 XLALLIGOIPsd(REAL8 f)
Calculate the Initial LIGO SRD noise spectral density at given a frequency.
Definition: LALLIGOIPsd.c:50
void LALGEOPsd(LALStatus *status, REAL8 *shf, REAL8 x)
@ geo
@ tama
@ virgo
@ ligo
REAL4Vector * v1
REAL4Vector * v2
LAL status structure, see The LALStatus structure for more details.
Definition: LALDatatypes.h:947
Vector of type REAL4, see DATATYPE-Vector types for more details.
Definition: LALDatatypes.h:145
Vector of type REAL8, see DATATYPE-Vector types for more details.
Definition: LALDatatypes.h:154