ComputeFStatisticBinary_v2.c File Reference

#include <lal/UserInput.h>
#include <lal/LALDemod.h>
#include <lal/RngMedBias.h>
#include <lal/PulsarDataTypes.h>
#include <lal/DopplerScan.h>
#include <lalapps.h>
#include "ComputeFStatisticBinary_v2.h"
#include "GenerateBinaryMesh_v1.h"
#include "ReadSourceFile_v1.h"
#include "clusters.h"

Include dependency graph for ComputeFStatisticBinary_v2.c:

Go to the source code of this file.

Defines

#define USE_BOINC   0
#define FILE_FSTATS
#define FILE_FMAX
#define COMPUTEFSTATC_ENULL   1
#define COMPUTEFSTATC_ESYS   2
#define COMPUTEFSTATC_EINPUT   3
#define COMPUTEFSTATC_MSGENULL   "Arguments contained an unexpected null pointer"
#define COMPUTEFSTATC_MSGESYS   "System call failed (probably file IO)"
#define COMPUTEFSTATC_MSGEINPUT   "Invalid input"
#define EPHEM_YEARS   "00-04"
#define SFT_BNAME   ""
#define TRUE   (1==1)
#define FALSE   (1==0)
#define DEFAULT_EPHEMDIR   "env LAL_DATA_PATH"

Functions

 RCSID ("$Id: ComputeFStatisticBinary_v2.c,v 1.20 2007/10/26 16:04:12 reinhard Exp $")
void CreateDemodParams (LALStatus *status)
void CreateBinaryDemodParams (LALStatus *status)
void AllocateMem (LALStatus *status)
void SetGlobalVariables (LALStatus *status, ConfigVariables *cfg)
void CreateNautilusDetector (LALStatus *status, LALDetector *Detector)
 Set up the LALDetector struct representing the NAUTILUS detector.
void Freemem (LALStatus *status)
 Free all globally allocated memory.
INT4 EstimatePSDLines (LALStatus *status)
INT4 EstimateFLines (LALStatus *status)
 Find outliers and then clusters in the F-statistic array over frequency.
INT4 NormaliseSFTDataRngMdn (LALStatus *status)
INT4 NormaliseSFTData (void)
INT4 ReadSFTData (void)
 Reads in data from SFT-files.
INT4 EstimateSignalParameters (INT4 *maxIndex)
INT4 writeFLines (INT4 *maxIndex)
INT4 PrintTopValues (REAL8 TwoFthr, INT4 ReturnMaxN)
INT4 EstimateFloor (REAL8Vector *Sp, INT2 windowSize, REAL8Vector *SpFloor)
int compare (const void *ip, const void *jp)
INT4 writeFaFb (INT4 *maxIndex)
void initUserVars (LALStatus *Stat)
 Register all our "user-variables" that can be specified from cmd-line and/or config-file.
INT4 ReadBinaryTemplateBank (void)
int main (int argc, char *argv[])
 MAIN function of SideBandMCMC code Compute the posterior pdfs of the orbital and nuisance parameters of a binary signal in Fstat form.

Variables

INT4 uvar_dterms
CHARuvar_IFO
BOOLEAN uvar_SignalOnly
BOOLEAN uvar_EstimSigParam
BOOLEAN uvar_binary
REAL8 uvar_dopplermax
CHARuvar_binarytemplatefile
INT4 uvar_windowsize
REAL8 uvar_Freq
REAL8 uvar_dFreq
REAL8 uvar_FreqBand
REAL8 uvar_Alpha
REAL8 uvar_dAlpha
REAL8 uvar_AlphaBand
REAL8 uvar_Delta
REAL8 uvar_dDelta
REAL8 uvar_DeltaBand
REAL8 uvar_f1dot
REAL8 uvar_df1dot
REAL8 uvar_f1dotBand
REAL8 uvar_Fthreshold
CHARuvar_EphemDir
CHARuvar_EphemYear
INT4 uvar_gridType
INT4 uvar_metricType
REAL8 uvar_metricMismatch
CHARuvar_skyRegion
CHARuvar_DataDir
CHARuvar_mergedSFTFile
CHARuvar_BaseName
BOOLEAN uvar_help
CHARuvar_outputLabel
CHARuvar_outputFstat
CHARuvar_skyGridFile
CHARuvar_outputSkyGrid
CHARuvar_workingDir
CHARuvar_sourcefile
CHARuvar_source
REAL8 uvar_overres
BOOLEAN uvar_openDX
FFT ** SFTData = NULL
DemodParDemodParams = NULL
LIGOTimeGPStimestamps = NULL
LALFstat Fstat
AMCoeffs amc
REAL8 MeanOneOverSh = 0.0
REAL8 Alpha
REAL8 Delta
BinaryTemplateBankBinaryBank = NULL
BinaryTemplate thisBinaryTemplate
REAL8 bin_SMaxis
REAL8 bin_Period
REAL8 bin_Eccentricity
REAL8 bin_ArgPeri
LIGOTimeGPS bin_TperiSSB
Clusters HFLines
Clusters HPLines
ClustershighSpLines = &HPLines
ClustershighFLines = &HFLines
FILE * fpmax
FILE * fpstat
REAL8 medianbias = 1.0
FILE * fp_mergedSFT = NULL
DopplerSkyScanState thisScan
ConfigVariables GV
int vrbflg


Define Documentation

#define USE_BOINC   0

Definition at line 53 of file ComputeFStatisticBinary_v2.c.

#define FILE_FSTATS

Definition at line 82 of file ComputeFStatisticBinary_v2.c.

#define FILE_FMAX

Definition at line 83 of file ComputeFStatisticBinary_v2.c.

#define COMPUTEFSTATC_ENULL   1

Definition at line 95 of file ComputeFStatisticBinary_v2.c.

#define COMPUTEFSTATC_ESYS   2

Definition at line 96 of file ComputeFStatisticBinary_v2.c.

#define COMPUTEFSTATC_EINPUT   3

Definition at line 97 of file ComputeFStatisticBinary_v2.c.

#define COMPUTEFSTATC_MSGENULL   "Arguments contained an unexpected null pointer"

Definition at line 99 of file ComputeFStatisticBinary_v2.c.

#define COMPUTEFSTATC_MSGESYS   "System call failed (probably file IO)"

Definition at line 100 of file ComputeFStatisticBinary_v2.c.

#define COMPUTEFSTATC_MSGEINPUT   "Invalid input"

Definition at line 101 of file ComputeFStatisticBinary_v2.c.

#define EPHEM_YEARS   "00-04"

Definition at line 208 of file ComputeFStatisticBinary_v2.c.

#define SFT_BNAME   ""

Definition at line 209 of file ComputeFStatisticBinary_v2.c.

#define TRUE   (1==1)

Definition at line 211 of file ComputeFStatisticBinary_v2.c.

#define FALSE   (1==0)

Definition at line 212 of file ComputeFStatisticBinary_v2.c.

#define DEFAULT_EPHEMDIR   "env LAL_DATA_PATH"


Function Documentation

RCSID ( "$Id: ComputeFStatisticBinary_v2.  c,
v 1.20 2007/10/26 16:04:12 reinhard Exp $"   
)

void CreateDemodParams ( LALStatus status  ) 

Definition at line 1044 of file ComputeFStatisticBinary_v2.c.

void CreateBinaryDemodParams ( LALStatus status  ) 

Definition at line 1145 of file ComputeFStatisticBinary_v2.c.

void AllocateMem ( LALStatus status  ) 

Definition at line 1250 of file ComputeFStatisticBinary_v2.c.

void SetGlobalVariables ( LALStatus status,
ConfigVariables cfg 
)

Definition at line 1513 of file ComputeFStatisticBinary_v2.c.

void CreateNautilusDetector ( LALStatus status,
LALDetector Detector 
)

Set up the LALDetector struct representing the NAUTILUS detector.

Definition at line 1923 of file ComputeFStatisticBinary_v2.c.

void Freemem ( LALStatus status  ) 

Free all globally allocated memory.

Definition at line 1954 of file ComputeFStatisticBinary_v2.c.

INT4 EstimatePSDLines ( LALStatus status  ) 

Definition at line 2212 of file ComputeFStatisticBinary_v2.c.

INT4 EstimateFLines ( LALStatus stat  ) 

Find outliers and then clusters in the F-statistic array over frequency.

These clusters get written in the global highFLines.

Definition at line 2422 of file ComputeFStatisticBinary_v2.c.

INT4 NormaliseSFTDataRngMdn ( LALStatus status  ) 

Definition at line 2708 of file ComputeFStatisticBinary_v2.c.

int NormaliseSFTData ( void   ) 

Definition at line 1355 of file ComputeFStatisticBinary_v2.c.

int ReadSFTData ( void   ) 

Reads in data from SFT-files.

This function reads in the SFTs from the list of files in ConfigVariables GV.filelist or from merged SFTs in uvar_mergedSFTFile. If user has specified --startTime or --endTime The read SFT-data is stored in the global array SFTData and the timestamps of the SFTs are stored in the global array timestamps (both are allocated here).

NOTE: this function is obsolete and should be replaced by the use of the SFT-IO lib in LAL.

Definition at line 1403 of file ComputeFStatisticBinary_v2.c.

int EstimateSignalParameters ( INT4 maxIndex  ) 

Definition at line 705 of file ComputeFStatisticBinary_v2.c.

int writeFLines ( INT4 maxIndex  ) 

Definition at line 1284 of file ComputeFStatisticBinary_v2.c.

INT4 PrintTopValues ( REAL8  TwoFthr,
INT4  ReturnMaxN 
)

Definition at line 2066 of file ComputeFStatisticBinary_v2.c.

INT4 EstimateFloor ( REAL8Vector Sp,
INT2  windowSize,
REAL8Vector SpFloor 
)

Definition at line 35 of file FDS_binary/clusters.c.

int compare ( const void *  ip,
const void *  jp 
)

int writeFaFb ( INT4 maxIndex  ) 

Definition at line 930 of file ComputeFStatisticBinary_v2.c.

void initUserVars ( LALStatus status  ) 

Register all our "user-variables" that can be specified from cmd-line and/or config-file.

Here we set defaults for some user-variables and register them with the UserInput module.

Definition at line 581 of file ComputeFStatisticBinary_v2.c.

int ReadBinaryTemplateBank ( void   ) 

Definition at line 2866 of file ComputeFStatisticBinary_v2.c.

int main ( int  argc,
char *  argv[] 
)

MAIN function of SideBandMCMC code Compute the posterior pdfs of the orbital and nuisance parameters of a binary signal in Fstat form.

..

variable declarations

the status must be initially blank; this can be done by making it static:

static LALStatus status;

other variables:

ExampleOutput output; ExampleInput input; ExampleParams params;

parse arguments, if desired

for example:

program = *argv; while ( --argc > 0 ) { ++argv; if ( ! strcmp( *argv, "-d" ) ) { --argc; ++argv; lalDebugLevel = atoi( *argv ); continue; } if ( ! strcmp( *argv, "-v" ) ) { verbose = 1; continue; } if ( ! strcmp( *argv, "-h" ) ) { fprintf( stderr, usage, program ); return 0; } fprintf( stderr, "no such option %s\n", *argv ); fprintf( stderr, usage, program ); return FAIL_ARGS; }

/** test response to invalid data

these tests must be wrapped so they are not done when debugging is disabled:

ifndef LAL_NDEBUG if ( ! lalNoDebug ) { LALExample( &status, NULL, &input, &params ); if ( status.statusCode != EXAMPLEH_ENULL || strcmp( status.statusDescription, EXAMPLEH_MSGENULL ) ) { fprintf( stderr, "incorrect error code %d and message %s\n", status.statusCode, status.statusDescription ); fprintf( stderr, "expecting error code %d and message %s\n", EXAMPLEH_ENULL, EXAMPLEH_MSGENULL ); return FAIL_CODE; }

fputs( "PASS: Test response to invalid data\n", stderr ); } endif

test response to valid data

for example:

LALExample( &status, &output, &input, &param ); if ( status.statusCode ) { fprintf( stderr, "received error code %d and message %s\n", status.statusCode, status.statusDescription ); return FAIL_ESUB; }

(perform checks on the contents of output too!)

during default operation, output to the screen should be minimal:

for ( i = 0; i < 1048576; ++i ) printf( "%d\n", i ); !!! BAD !!!

but it is OK to indicate that tests have passed:

fputs( "PASS: Test response to valid data\n", stderr );

check for memory leaks and return success:

LALCheckMemoryLeaks(); fputs( "PASS: All tests\n" );

Definition at line 220 of file ComputeFStatisticBinary_v2.c.


Variable Documentation

INT4 uvar_dterms

Definition at line 107 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_IFO

Definition at line 108 of file ComputeFStatisticBinary_v2.c.

BOOLEAN uvar_SignalOnly

Definition at line 109 of file ComputeFStatisticBinary_v2.c.

BOOLEAN uvar_EstimSigParam

Definition at line 110 of file ComputeFStatisticBinary_v2.c.

BOOLEAN uvar_binary

Definition at line 111 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_dopplermax

Definition at line 112 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_binarytemplatefile

Definition at line 113 of file ComputeFStatisticBinary_v2.c.

INT4 uvar_windowsize

Definition at line 114 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_Freq

Definition at line 115 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_dFreq

Definition at line 116 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_FreqBand

Definition at line 117 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_Alpha

Definition at line 118 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_dAlpha

Definition at line 119 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_AlphaBand

Definition at line 120 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_Delta

Definition at line 121 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_dDelta

Definition at line 122 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_DeltaBand

Definition at line 123 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_f1dot

Definition at line 124 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_df1dot

Definition at line 125 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_f1dotBand

Definition at line 126 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_Fthreshold

Definition at line 127 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_EphemDir

Definition at line 128 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_EphemYear

Definition at line 129 of file ComputeFStatisticBinary_v2.c.

INT4 uvar_gridType

Definition at line 130 of file ComputeFStatisticBinary_v2.c.

INT4 uvar_metricType

Definition at line 131 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_metricMismatch

Definition at line 132 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_skyRegion

Definition at line 133 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_DataDir

Definition at line 134 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_mergedSFTFile

Definition at line 135 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_BaseName

Definition at line 136 of file ComputeFStatisticBinary_v2.c.

BOOLEAN uvar_help

Definition at line 137 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_outputLabel

Definition at line 138 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_outputFstat

Definition at line 139 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_skyGridFile

Definition at line 140 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_outputSkyGrid

Definition at line 141 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_workingDir

Definition at line 142 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_sourcefile

Definition at line 143 of file ComputeFStatisticBinary_v2.c.

CHAR* uvar_source

Definition at line 144 of file ComputeFStatisticBinary_v2.c.

REAL8 uvar_overres

Definition at line 145 of file ComputeFStatisticBinary_v2.c.

BOOLEAN uvar_openDX

Definition at line 148 of file ComputeFStatisticBinary_v2.c.

FFT** SFTData = NULL

Definition at line 151 of file ComputeFStatisticBinary_v2.c.

DemodPar* DemodParams = NULL

Definition at line 152 of file ComputeFStatisticBinary_v2.c.

LIGOTimeGPS* timestamps = NULL

Definition at line 153 of file ComputeFStatisticBinary_v2.c.

LALFstat Fstat

Definition at line 154 of file ComputeFStatisticBinary_v2.c.

AMCoeffs amc

Definition at line 155 of file ComputeFStatisticBinary_v2.c.

REAL8 MeanOneOverSh = 0.0

Definition at line 156 of file ComputeFStatisticBinary_v2.c.

REAL8 Alpha

Definition at line 157 of file ComputeFStatisticBinary_v2.c.

REAL8 Delta

Definition at line 157 of file ComputeFStatisticBinary_v2.c.

BinaryTemplateBank* BinaryBank = NULL

Definition at line 158 of file ComputeFStatisticBinary_v2.c.

BinaryTemplate thisBinaryTemplate

Definition at line 159 of file ComputeFStatisticBinary_v2.c.

REAL8 bin_SMaxis

Definition at line 160 of file ComputeFStatisticBinary_v2.c.

REAL8 bin_Period

Definition at line 161 of file ComputeFStatisticBinary_v2.c.

REAL8 bin_Eccentricity

Definition at line 162 of file ComputeFStatisticBinary_v2.c.

REAL8 bin_ArgPeri

Definition at line 163 of file ComputeFStatisticBinary_v2.c.

LIGOTimeGPS bin_TperiSSB

Definition at line 164 of file ComputeFStatisticBinary_v2.c.

Clusters HFLines

Definition at line 165 of file ComputeFStatisticBinary_v2.c.

Clusters HPLines

Definition at line 165 of file ComputeFStatisticBinary_v2.c.

Clusters* highSpLines = &HPLines

Definition at line 166 of file ComputeFStatisticBinary_v2.c.

Clusters * highFLines = &HFLines

Definition at line 166 of file ComputeFStatisticBinary_v2.c.

FILE* fpmax

Definition at line 168 of file ComputeFStatisticBinary_v2.c.

FILE* fpstat

Definition at line 171 of file ComputeFStatisticBinary_v2.c.

REAL8 medianbias = 1.0

Definition at line 173 of file ComputeFStatisticBinary_v2.c.

FILE* fp_mergedSFT = NULL

Definition at line 176 of file ComputeFStatisticBinary_v2.c.

DopplerSkyScanState thisScan

Definition at line 178 of file ComputeFStatisticBinary_v2.c.

ConfigVariables GV

Definition at line 179 of file ComputeFStatisticBinary_v2.c.

int vrbflg

Definition at line 45 of file lalapps.c.


Generated on Sun Sep 7 03:07:36 2008 for LAL by  doxygen 1.5.2