Functions for handling "full" multi-dimensional search-grids for CFS. as opposed to the "factored" grids implemented in DopplerScan.[ch]. More...
Prototypes | |
int | XLALInitFactoredGrid (DopplerFullScanState *scan, const DopplerFullScanInit *init) |
Initialize Doppler-scanner to emulate an old-style factored template grid: 'sky x f0dot x f1dot x f2dot x f3dot'. More... | |
int | nextPointInFactoredGrid (PulsarDopplerParams *pos, DopplerFullScanState *scan) |
return current grid-point and step forward one template in 'factored' grids (sky x f0dot x f1dot ... More... | |
int | XLALLoadFullGridFile (DopplerFullScanState *scan, const DopplerFullScanInit *init) |
load a full multi-dim template grid from the file init->gridFile, the file-format is: lines of 6 columns, which are: More... | |
DopplerFullScanState * | XLALInitDopplerFullScan (const DopplerFullScanInit *init) |
Set up a full multi-dimensional grid-scan. More... | |
void | InitDopplerFullScan (LALStatus *status, DopplerFullScanState **scan, const DopplerFullScanInit *init) |
int | XLALGetDopplerSpinRange (PulsarSpinRange *spinRange, const DopplerFullScanState *scan) |
Return the spin-range spanned by the given template bank stored in the opaque DopplerFullScanState. More... | |
REAL8 | XLALNumDopplerTemplates (DopplerFullScanState *scan) |
Return (and compute if not done so yet) the total number of Doppler templates of the DopplerScan scan. More... | |
int | XLALNextDopplerPos (PulsarDopplerParams *pos, DopplerFullScanState *scan) |
Function to step through the full template grid point by point. More... | |
static void | XLALREAL8VectorListDestroy (REAL8VectorList *head) |
void | XLALDestroyDopplerFullScan (DopplerFullScanState *scan) |
Destroy the a full DopplerFullScanState structure. More... | |
static REAL8VectorList * | XLALREAL8VectorListAddEntry (REAL8VectorList *head, const REAL8Vector *entry) |
static double | F1DotAgeBrakingBound (const void *data, const size_t dim UNUSED, const gsl_matrix *cache UNUSED, const gsl_vector *point) |
int | XLALSetLatticeTilingF1DotAgeBrakingBound (LatticeTiling *tiling, const size_t freq_dimension, const size_t f1dot_dimension, const double age, const double min_braking, const double max_braking) |
Set a first spindown bound derived from spindown age and braking indices. More... | |
static double | F2DotBrakingBound (const void *data, const size_t dim UNUSED, const gsl_matrix *cache UNUSED, const gsl_vector *point) |
int | XLALSetLatticeTilingF2DotBrakingBound (LatticeTiling *tiling, const size_t freq_dimension, const size_t f1dot_dimension, const size_t f2dot_dimension, const double min_braking, const double max_braking) |
Set a second spindown bound derived from braking indices. More... | |
Functions for handling "full" multi-dimensional search-grids for CFS. as opposed to the "factored" grids implemented in DopplerScan.[ch].
Definition in file DopplerFullScan.c.
Go to the source code of this file.
Data Structures | |
struct | factoredGridScan_t |
struct | REAL8VectorList |
doubly linked list of REAL8-vectors (physical vectors) More... | |
struct | DopplerFullScanState |
--— internal [opaque] type to store the state of a FULL multidimensional grid-scan --— More... | |
struct | F1DotAgeBrakingBoundInfo |
struct | F2DotBrakingBoundInfo |
Macros | |
#define | MIN(x, y) (x < y ? x : y) |
#define | MAX(x, y) (x > y ? x : y) |
#define | TRUE (1==1) |
#define | FALSE (1==0) |
#define TRUE (1==1) |
Definition at line 45 of file DopplerFullScan.c.
#define FALSE (1==0) |
Definition at line 46 of file DopplerFullScan.c.
int XLALInitFactoredGrid | ( | DopplerFullScanState * | scan, |
const DopplerFullScanInit * | init | ||
) |
Initialize Doppler-scanner to emulate an old-style factored template grid: 'sky x f0dot x f1dot x f2dot x f3dot'.
This is a compatiblity-mode with the previous implementation currently also used in ComputeFstatistic.c.
scan | [bout] initialized Doppler scan state | |
[in] | init | initialization parameters |
Definition at line 302 of file DopplerFullScan.c.
int nextPointInFactoredGrid | ( | PulsarDopplerParams * | pos, |
DopplerFullScanState * | scan | ||
) |
return current grid-point and step forward one template in 'factored' grids (sky x f0dot x f1dot ...
) return 0 = OK, -1 = ERROR
Definition at line 541 of file DopplerFullScan.c.
int XLALLoadFullGridFile | ( | DopplerFullScanState * | scan, |
const DopplerFullScanInit * | init | ||
) |
load a full multi-dim template grid from the file init->gridFile, the file-format is: lines of 6 columns, which are:
Freq Alpha Delta f1dot f2dot f3dot
*) a possible future extension should probably clip the template-bank to the user-specified ranges, then return the effective ranges spanned by the resultant template bank.
*) in order to avoid surprises until such a feature is implemented, we currently return an error if any of the input spinRanges are non-zero
Definition at line 727 of file DopplerFullScan.c.
DopplerFullScanState* XLALInitDopplerFullScan | ( | const DopplerFullScanInit * | init | ) |
Set up a full multi-dimensional grid-scan.
Currently this only emulates a 'factored' grid-scan with 'sky x Freq x f1dot ...' , but keeps all details within the DopplerScan module for future extension to real multidimensional grids.
NOTE: Use 'XLALNextDopplerPos()' to step through this template grid.
[in] | init | initialization parameters |
Definition at line 106 of file DopplerFullScan.c.
void InitDopplerFullScan | ( | LALStatus * | status, |
DopplerFullScanState ** | scan, | ||
const DopplerFullScanInit * | init | ||
) |
status | pointer to LALStatus structure | |
[out] | scan | initialized Doppler scan state |
[in] | init | initialization parameters |
Definition at line 252 of file DopplerFullScan.c.
int XLALGetDopplerSpinRange | ( | PulsarSpinRange * | spinRange, |
const DopplerFullScanState * | scan | ||
) |
Return the spin-range spanned by the given template bank stored in the opaque DopplerFullScanState.
Definition at line 281 of file DopplerFullScan.c.
REAL8 XLALNumDopplerTemplates | ( | DopplerFullScanState * | scan | ) |
Return (and compute if not done so yet) the total number of Doppler templates of the DopplerScan scan.
Definition at line 381 of file DopplerFullScan.c.
int XLALNextDopplerPos | ( | PulsarDopplerParams * | pos, |
DopplerFullScanState * | scan | ||
) |
Function to step through the full template grid point by point.
Normal return = 0, errors return -1, end of scan is signalled by return = 1
Definition at line 417 of file DopplerFullScan.c.
|
static |
Definition at line 608 of file DopplerFullScan.c.
void XLALDestroyDopplerFullScan | ( | DopplerFullScanState * | scan | ) |
Destroy the a full DopplerFullScanState structure.
Definition at line 636 of file DopplerFullScan.c.
|
static |
Definition at line 673 of file DopplerFullScan.c.
|
static |
Definition at line 878 of file DopplerFullScan.c.
int XLALSetLatticeTilingF1DotAgeBrakingBound | ( | LatticeTiling * | tiling, |
const size_t | freq_dimension, | ||
const size_t | f1dot_dimension, | ||
const double | age, | ||
const double | min_braking, | ||
const double | max_braking | ||
) |
Set a first spindown bound derived from spindown age and braking indices.
[in] | tiling | Lattice tiling |
[in] | freq_dimension | Frequency dimension |
[in] | f1dot_dimension | First spindown dimension |
[in] | age | Spindown age |
[in] | min_braking | Minimum braking index |
[in] | max_braking | Maximum braking index |
Definition at line 897 of file DopplerFullScan.c.
|
static |
Definition at line 933 of file DopplerFullScan.c.
int XLALSetLatticeTilingF2DotBrakingBound | ( | LatticeTiling * | tiling, |
const size_t | freq_dimension, | ||
const size_t | f1dot_dimension, | ||
const size_t | f2dot_dimension, | ||
const double | min_braking, | ||
const double | max_braking | ||
) |
Set a second spindown bound derived from braking indices.
[in] | tiling | Lattice tiling |
[in] | freq_dimension | Frequency dimension |
[in] | f1dot_dimension | First spindown dimension |
[in] | f2dot_dimension | Second spindown dimension |
[in] | min_braking | Minimum braking index |
[in] | max_braking | Maximum braking index |
Definition at line 953 of file DopplerFullScan.c.