Driver code for performing Hough transform search on non-demodulated data using SFTs from possible multiple IFOs. More...
Driver code for performing Hough transform search on non-demodulated data using SFTs from possible multiple IFOs.
History: Created by Sintes and Krishnan July 04, 2003 Modifications for S4 January 2006 Modifications for S5 November 2007
This is the main driver for the Hough transform routines. It takes as input a set of SFTs from possibly more than one IFO and outputs the number counts using the Hough transform. For a single IFO, this should be essentially equivalent to DriveHough_v3. validatehoughmultichi2
This code just does spin-downs values.
The user inputs the following parameters:
/par Output
The output is written in several sub-directories of the specified output directory. The first two items are default while the rest are written according to the user input:
Definition in file DriveHoughMulti.c.
Go to the source code of this file.
Data Structures | |
| struct | HoughParamsTest |
| struct | UCHARPeakGramVector |
Macros | |
| #define | EARTHEPHEMERIS "/home/badkri/lscsoft/share/lal/earth05-09.dat" |
| #define | SUNEPHEMERIS "/home/badkri/lscsoft/share/lal/sun05-09.dat" |
| #define | HOUGHMAXFILENAMELENGTH 512 /* maximum # of characters of a filename */ |
| #define | DIROUT "./outMulti" /* output directory */ |
| #define | BASENAMEOUT "HM" /* prefix file output */ |
| #define | THRESHOLD |
| #define | SKYFILE "./skypatchfile" |
| #define | F0 310.0 /* frequency to build the LUT and start search */ |
| #define | FBAND 0.05 /* search frequency band */ |
| #define | NFSIZE 21 /* n-freq. span of the cylinder, to account for spin-down search */ |
| #define | NSPINUP 0 /* n-bins for spin-up search */ |
| #define | BLOCKSRNGMED 101 /* Running median window size */ |
| #define | SKYREGION "allsky" |
| default sky region to search over – just a single point More... | |
| #define | TRUE (1==1) |
| #define | FALSE (1==0) |
| #define | NBLOCKSTEST 8 /* number of data blocks to do Chi2 test */ |
| #define | SPINDOWNJUMP 1 /* "Jump" to the next spin-down being analyzed (to avoid doing them all) */ |
Variables | |
| BOOLEAN | uvar_EnableExtraInfo |
| BOOLEAN | uvar_EnableChi2 |
| BOOLEAN | uvar_EnableToplistPatch |
| #define EARTHEPHEMERIS "/home/badkri/lscsoft/share/lal/earth05-09.dat" |
Definition at line 107 of file DriveHoughMulti.c.
| #define SUNEPHEMERIS "/home/badkri/lscsoft/share/lal/sun05-09.dat" |
Definition at line 108 of file DriveHoughMulti.c.
Definition at line 110 of file DriveHoughMulti.c.
| #define DIROUT "./outMulti" /* output directory */ |
Definition at line 112 of file DriveHoughMulti.c.
Definition at line 113 of file DriveHoughMulti.c.
| #define THRESHOLD |
Definition at line 115 of file DriveHoughMulti.c.
| #define SKYFILE "./skypatchfile" |
Definition at line 116 of file DriveHoughMulti.c.
| #define F0 310.0 /* frequency to build the LUT and start search */ |
Definition at line 117 of file DriveHoughMulti.c.
| #define FBAND 0.05 /* search frequency band */ |
Definition at line 118 of file DriveHoughMulti.c.
Definition at line 119 of file DriveHoughMulti.c.
Definition at line 120 of file DriveHoughMulti.c.
| #define BLOCKSRNGMED 101 /* Running median window size */ |
Definition at line 121 of file DriveHoughMulti.c.
| #define SKYREGION "allsky" |
default sky region to search over – just a single point
Definition at line 123 of file DriveHoughMulti.c.
| #define TRUE (1==1) |
Definition at line 125 of file DriveHoughMulti.c.
| #define FALSE (1==0) |
Definition at line 126 of file DriveHoughMulti.c.
Definition at line 128 of file DriveHoughMulti.c.
| #define SPINDOWNJUMP 1 /* "Jump" to the next spin-down being analyzed (to avoid doing them all) */ |
Definition at line 130 of file DriveHoughMulti.c.
| void SplitSFTs | ( | LALStatus * | status, |
| REAL8Vector * | weightsV, | ||
| HoughParamsTest * | chi2Params | ||
| ) |
Definition at line 2597 of file DriveHoughMulti.c.
| void ComputeFoft_NM | ( | LALStatus * | status, |
| REAL8Vector * | foft, | ||
| HoughTemplate * | pulsarTemplate, | ||
| REAL8Vector * | timeDiffV, | ||
| REAL8Cart3CoorVector * | velV | ||
| ) |
Definition at line 2530 of file DriveHoughMulti.c.
| void ComputeandPrintChi2 | ( | LALStatus * | status, |
| toplist_t * | tl, | ||
| REAL8Vector * | timeDiffV, | ||
| REAL8Cart3CoorVector * | velV, | ||
| INT4 | skyCounter, | ||
| INT4 | nSkyPatches, | ||
| INT4 | p, | ||
| REAL8 | alphaPeak, | ||
| MultiDetectorStateSeries * | mdetStates, | ||
| REAL8Vector * | weightsNoise, | ||
| UCHARPeakGramVector * | upgV | ||
| ) |
Definition at line 2666 of file DriveHoughMulti.c.
| void GetPeakGramFromMultSFTVector_NondestroyPg1 | ( | LALStatus * | status, |
| HOUGHPeakGramVector * | out, | ||
| UCHARPeakGramVector * | upgV, | ||
| MultiSFTVector * | in, | ||
| REAL8 | thr | ||
| ) |
Loop over SFTs and set a threshold to get peakgrams.
SFTs must be normalized.
This function will create a vector with the uncompressed PeakGrams in it
(this is necesary if we want to compute the chi2 later )
| status | pointer to LALStatus structure |
| out | Output compressed peakgrams |
| upgV | Output uncompressed peakgrams |
| in | Input SFTs |
| thr | Threshold on SFT power |
Definition at line 2875 of file DriveHoughMulti.c.
| void PrintLogFile | ( | LALStatus * | status, |
| CHAR * | dir, | ||
| CHAR * | basename, | ||
| CHAR * | skyfile, | ||
| LALStringVector * | linefiles, | ||
| CHAR * | executable | ||
| ) |
Definition at line 1349 of file DriveHoughMulti.c.
Definition at line 1197 of file DriveHoughMulti.c.
| int PrintHistogram | ( | UINT8Vector * | hist, |
| CHAR * | fnameOut, | ||
| REAL8 | minSignificance, | ||
| REAL8 | maxSignificance | ||
| ) |
Definition at line 1227 of file DriveHoughMulti.c.
| int PrintHmap2m_file | ( | HOUGHMapTotal * | ht, |
| CHAR * | fnameOut, | ||
| INT4 | iHmap | ||
| ) |
Definition at line 1300 of file DriveHoughMulti.c.
| int PrintHmap2file | ( | HOUGHMapTotal * | ht, |
| CHAR * | fnameOut, | ||
| INT4 | iHmap | ||
| ) |
Definition at line 1262 of file DriveHoughMulti.c.
| int OpenExtraInfoFiles | ( | CHAR * | fileMaps, |
| FILE ** | fp1_ptr, | ||
| CHAR * | filehisto, | ||
| CHAR * | dirname, | ||
| CHAR * | basename, | ||
| INT4 | ind | ||
| ) |
Definition at line 2455 of file DriveHoughMulti.c.
| int PrintExtraInfo | ( | CHAR * | fileMaps, |
| FILE ** | fp1_ptr, | ||
| INT4 | iHmap, | ||
| HOUGHMapTotal * | ht, | ||
| REAL8UnitPolarCoor * | sourceLocation, | ||
| HoughStats * | stats, | ||
| INT8 | fBinSearch, | ||
| REAL8 | deltaF | ||
| ) |
Print some extra information: HoughMaps, HoughStatistics, sigma.
Definition at line 2495 of file DriveHoughMulti.c.
| void ReadTimeStampsFile | ( | LALStatus * | status, |
| LIGOTimeGPSVector * | ts, | ||
| CHAR * | filename | ||
| ) |
Definition at line 1456 of file DriveHoughMulti.c.
| void LALHoughHistogramSignificance | ( | LALStatus * | status, |
| UINT8Vector * | out, | ||
| HOUGHMapTotal * | in, | ||
| REAL8 | mean, | ||
| REAL8 | sigma, | ||
| REAL8 | minSignificance, | ||
| REAL8 | maxSignificance | ||
| ) |
given a total hough map, this function produces a histogram of the number count significance
Definition at line 1516 of file DriveHoughMulti.c.
| void GetSFTVelTime | ( | LALStatus * | status, |
| REAL8Cart3CoorVector * | velV, | ||
| LIGOTimeGPSVector * | timeV, | ||
| MultiDetectorStateSeries * | in | ||
| ) |
Definition at line 1582 of file DriveHoughMulti.c.
| void GetSFTNoiseWeights | ( | LALStatus * | status, |
| REAL8Vector * | out, | ||
| MultiNoiseWeights * | in | ||
| ) |
Definition at line 1638 of file DriveHoughMulti.c.
| void GetPeakGramFromMultSFTVector | ( | LALStatus * | status, |
| HOUGHPeakGramVector * | out, | ||
| MultiSFTVector * | in, | ||
| REAL8 | thr | ||
| ) |
Loop over SFTs and set a threshold to get peakgrams.
SFTs must be normalized.
| status | pointer to LALStatus structure |
| out | Output peakgrams |
| in | Input SFTs |
| thr | Threshold on SFT power |
Definition at line 1683 of file DriveHoughMulti.c.
| void SetUpSkyPatches | ( | LALStatus * | status, |
| HoughSkyPatchesInfo * | out, | ||
| CHAR * | skyFileName, | ||
| CHAR * | skyRegion, | ||
| REAL8 | dAlpha, | ||
| REAL8 | dDelta, | ||
| INT4 | numSkyPartitions, | ||
| INT4 | partitionIndex | ||
| ) |
Set up location of skypatch centers and sizes If user specified skyRegion then use DopplerScan function to construct an isotropic grid.
Otherwise use skypatch file.
| status | pointer to LALStatus structure |
| out | output skypatches info |
| skyFileName | name of skypatch file |
| skyRegion | skyregion (if isotropic grid is to be constructed) |
| dAlpha | alpha resolution (if isotropic grid is to be constructed) |
| dDelta | delta resolution (if isotropic grid is to be constructed) |
| numSkyPartitions | Number of (equi-)partitions to split skygrid into |
| partitionIndex | Index [0,numSkyPartitions-1] of sky-partition to generate |
Definition at line 1743 of file DriveHoughMulti.c.
| void GetAMWeights | ( | LALStatus * | status, |
| REAL8Vector * | out, | ||
| MultiDetectorStateSeries * | mdetStates, | ||
| REAL8 | alpha, | ||
| REAL8 | delta | ||
| ) |
Definition at line 1872 of file DriveHoughMulti.c.
| void SelectBestStuff | ( | LALStatus * | status, |
| BestVariables * | out, | ||
| BestVariables * | in, | ||
| UINT4 | mObsCohBest | ||
| ) |
Definition at line 1925 of file DriveHoughMulti.c.
| void DuplicateBestStuff | ( | LALStatus * | status, |
| BestVariables * | out, | ||
| BestVariables * | in | ||
| ) |
Definition at line 2016 of file DriveHoughMulti.c.
| void GetToplistFromHoughmap | ( | LALStatus * | status, |
| toplist_t * | list, | ||
| HOUGHMapTotal * | ht, | ||
| HOUGHPatchGrid * | patch, | ||
| HOUGHDemodPar * | parDem, | ||
| REAL8 | mean, | ||
| REAL8 | sigma | ||
| ) |
Get Hough candidates as a toplist.
Definition at line 2403 of file DriveHoughMulti.c.
| void LALHOUGHCreateLUTVector | ( | LALStatus * | status, |
| HOUGHptfLUTVector * | lutV, | ||
| UINT4 | length | ||
| ) |
helper function for creating LUT vector
Definition at line 2088 of file DriveHoughMulti.c.
| void LALHOUGHCreateLUTs | ( | LALStatus * | status, |
| HOUGHptfLUTVector * | lutV, | ||
| UINT2 | maxNBins, | ||
| UINT2 | maxNBorders, | ||
| UINT2 | ySide | ||
| ) |
Definition at line 2121 of file DriveHoughMulti.c.
| void LALHOUGHCreatePHMDVS | ( | LALStatus * | status, |
| PHMDVectorSequence * | phmdVS, | ||
| UINT4 | length, | ||
| UINT4 | nfSize | ||
| ) |
Definition at line 2211 of file DriveHoughMulti.c.
| void LALHOUGHCreatePHMDs | ( | LALStatus * | status, |
| PHMDVectorSequence * | phmdVS, | ||
| UINT2 | maxNBins, | ||
| UINT2 | maxNBorders, | ||
| UINT2 | ySide | ||
| ) |
Definition at line 2252 of file DriveHoughMulti.c.
| void LALHOUGHDestroyPHMDs | ( | LALStatus * | status, |
| PHMDVectorSequence * | phmdVS | ||
| ) |
Definition at line 2303 of file DriveHoughMulti.c.
| void LALHOUGHCreateHT | ( | LALStatus * | status, |
| HOUGHMapTotal * | ht, | ||
| UINT2 | xSide, | ||
| UINT2 | ySide | ||
| ) |
Definition at line 2325 of file DriveHoughMulti.c.
| void LALHOUGHCreateFreqIndVector | ( | LALStatus * | status, |
| UINT8FrequencyIndexVector * | freqInd, | ||
| UINT4 | length, | ||
| REAL8 | deltaF | ||
| ) |
Definition at line 2366 of file DriveHoughMulti.c.
| void LALHOUGHDestroyLUTs | ( | LALStatus * | status, |
| HOUGHptfLUTVector * | lut | ||
| ) |
Definition at line 2177 of file DriveHoughMulti.c.
some memory allocations
Definition at line 237 of file DriveHoughMulti.c.
| BOOLEAN uvar_EnableExtraInfo |
Definition at line 102 of file DriveHoughMulti.c.
| BOOLEAN uvar_EnableChi2 |
Definition at line 102 of file DriveHoughMulti.c.
| BOOLEAN uvar_EnableToplistPatch |
Definition at line 102 of file DriveHoughMulti.c.