LALPulsar  6.1.0.1-89842e6
NormalizeSFTRngMed.h
Go to the documentation of this file.
1 /*
2 * Copyright (C) 2007 Badri Krishnan, Reinhard Prix
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 _NORMALIZESFTRNGMED_H
21 #define _NORMALIZESFTRNGMED_H
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
27 /**
28  * \defgroup NormalizeSFTRngMed_h Header NormalizeSFTRngMed.h
29  * \ingroup lalpulsar_general
30  *
31  * \author Krishnan, B.
32  * \date
33  * \brief Header file for SFT normalization routines
34  *
35  * History: Moved from Hough code 31/7/05
36  *
37  */
38 /** @{ */
39 
40 #include <stdlib.h>
41 #include <math.h>
42 #include <stdio.h>
43 #include <stdlib.h>
44 #include <string.h>
45 #include <lal/LALStdlib.h>
46 #include <lal/LALConstants.h>
47 #include <lal/AVFactories.h>
48 #include <lal/SeqFactories.h>
49 #include <lal/SFTfileIO.h>
50 #include <lal/PSDutils.h>
51 #include <lal/PulsarDataTypes.h>
52 #include <lal/RngMedBias.h>
53 #include <lal/LALRunningMedian.h>
54 #include <lal/DetectorStates.h>
55 
56 int XLALSFTtoRngmed( REAL8FrequencySeries *rngmed, const SFTtype *sft, UINT4 blockSize );
58 int XLALPeriodoToRngmed( REAL8FrequencySeries *rngmed, const REAL8FrequencySeries *periodo, UINT4 blockSize );
59 int XLALNormalizeSFT( REAL8FrequencySeries *rngmed, SFTtype *sft, UINT4 blockSize, const REAL8 assumeSqrtS );
60 int XLALNormalizeSFTVect( SFTVector *sftVect, UINT4 blockSize, const REAL8 assumeSqrtS );
61 MultiPSDVector *XLALNormalizeMultiSFTVect( MultiSFTVector *multsft, UINT4 blockSize, const MultiNoiseFloor *assumeSqrtSX );
63 
64 /** @} */
65 
66 #ifdef __cplusplus
67 } /* Close C++ protection */
68 #endif
69 
70 #endif /* Close double-include protection _NORMALIZESFTRNGMED_H */
double REAL8
uint32_t UINT4
int XLALNormalizeSFT(REAL8FrequencySeries *rngmed, SFTtype *sft, UINT4 blockSize, const REAL8 assumeSqrtS)
Normalize an sft based on RngMed estimated PSD, and returns running-median.
MultiPSDVector * XLALNormalizeMultiSFTVect(MultiSFTVector *multsft, UINT4 blockSize, const MultiNoiseFloor *assumeSqrtSX)
Function for normalizing a multi vector of SFTs in a multi IFO search and returns the running-median ...
int XLALSFTstoCrossPeriodogram(REAL8FrequencySeries *periodo, const COMPLEX8FrequencySeries *sft1, const COMPLEX8FrequencySeries *sft2)
Calculate the cross-correlation periodogram from 2 SFTs.
int XLALNormalizeSFTVect(SFTVector *sftVect, UINT4 blockSize, const REAL8 assumeSqrtS)
Function for normalizing a vector of SFTs.
int XLALPeriodoToRngmed(REAL8FrequencySeries *rngmed, const REAL8FrequencySeries *periodo, UINT4 blockSize)
Calculates running median over a single periodogram.
int XLALSFTtoPeriodogram(REAL8FrequencySeries *periodo, const COMPLEX8FrequencySeries *SFT)
Calculate the "periodogram" of an SFT, ie the modulus-squares of the SFT-data.
int XLALSFTtoRngmed(REAL8FrequencySeries *rngmed, const SFTtype *sft, UINT4 blockSize)
Calculates a smoothed (running-median) periodogram for the given SFT.
A vector of COMPLEX8FrequencySeries.
array of detector-specific 'noise floors' (ie PSD values), assumed constant over the frequency-band o...
A collection of PSD vectors – one for each IFO in a multi-IFO search.
Definition: PSDutils.h:62
A collection of SFT vectors – one for each IFO in a multi-IFO search.
Definition: SFTfileIO.h:179