LALPulsar  6.1.0.1-b72065a
Module ComputeFstat_Resamp_Generic.c

Detailed Description

Implements a generic version [22] of the Resamp FFT-based resampling algorithm for computing the \( \mathcal{F} \) -statistic [9] .

Prototypes

int XLALSetupFstatResampGeneric (void **method_data, FstatCommon *common, FstatMethodFuncs *funcs, MultiSFTVector *multiSFTs, const FstatOptionalArgs *optArgs)
 
int XLALExtractResampledTimeseries_ResampGeneric (MultiCOMPLEX8TimeSeries **multiTimeSeries_SRC_a, MultiCOMPLEX8TimeSeries **multiTimeSeries_SRC_b, void *method_data)
 
int XLALGetFstatTiming_ResampGeneric (const void *method_data, FstatTimingGeneric *timingGeneric, FstatTimingModel *timingModel)
 
static int XLALComputeFstatResampGeneric (FstatResults *Fstats, const FstatCommon *common, void *method_data)
 
static int XLALApplySpindownAndFreqShiftGeneric (COMPLEX8 *xOut, const COMPLEX8TimeSeries *xIn, const PulsarDopplerParams *doppler, REAL8 freqShift)
 
static int XLALBarycentricResampleMultiCOMPLEX8TimeSeriesGeneric (ResampGenericMethodData *resamp, const PulsarDopplerParams *thisPoint, const FstatCommon *common)
 Performs barycentric resampling on a multi-detector timeseries, updates resampling buffer with results. More...
 
static int XLALComputeFaFb_ResampGeneric (ResampGenericMethodData *resamp, ResampGenericWorkspace *ws, const PulsarDopplerParams thisPoint, REAL8 dFreq, UINT4 numFreqBins, const COMPLEX8TimeSeries *TimeSeries_SRC_a, const COMPLEX8TimeSeries *TimeSeries_SRC_b)
 
static void XLALGetFFTPlanHints (int *planMode, double *planGenTimeoutSeconds)
 
static void XLALDestroyResampGenericWorkspace (void *workspace)
 
static void XLALDestroyResampGenericMethodData (void *method_data)
 
static int XLALComputeFaFb_ResampGeneric (ResampGenericMethodData *resamp, ResampGenericWorkspace *ws, const PulsarDopplerParams thisPoint, REAL8 dFreq, UINT4 numFreqBins, const COMPLEX8TimeSeries *restrict TimeSeries_SRC_a, const COMPLEX8TimeSeries *restrict TimeSeries_SRC_b)
 
static int XLALApplySpindownAndFreqShiftGeneric (COMPLEX8 *restrict xOut, const COMPLEX8TimeSeries *restrict xIn, const PulsarDopplerParams *restrict doppler, REAL8 freqShift)
 

Data Structures

struct  ResampGenericWorkspace
 
struct  ResampGenericMethodData
 

Function Documentation

◆ XLALSetupFstatResampGeneric()

int XLALSetupFstatResampGeneric ( void **  method_data,
FstatCommon common,
FstatMethodFuncs funcs,
MultiSFTVector multiSFTs,
const FstatOptionalArgs optArgs 
)

Definition at line 164 of file ComputeFstat_Resamp_Generic.c.

◆ XLALExtractResampledTimeseries_ResampGeneric()

int XLALExtractResampledTimeseries_ResampGeneric ( MultiCOMPLEX8TimeSeries **  multiTimeSeries_SRC_a,
MultiCOMPLEX8TimeSeries **  multiTimeSeries_SRC_b,
void *  method_data 
)

Definition at line 1032 of file ComputeFstat_Resamp_Generic.c.

◆ XLALGetFstatTiming_ResampGeneric()

int XLALGetFstatTiming_ResampGeneric ( const void *  method_data,
FstatTimingGeneric timingGeneric,
FstatTimingModel timingModel 
)

Definition at line 1047 of file ComputeFstat_Resamp_Generic.c.

◆ XLALComputeFstatResampGeneric()

static int XLALComputeFstatResampGeneric ( FstatResults Fstats,
const FstatCommon common,
void *  method_data 
)
static

Definition at line 358 of file ComputeFstat_Resamp_Generic.c.

◆ XLALApplySpindownAndFreqShiftGeneric() [1/2]

static int XLALApplySpindownAndFreqShiftGeneric ( COMPLEX8 xOut,
const COMPLEX8TimeSeries xIn,
const PulsarDopplerParams doppler,
REAL8  freqShift 
)
static

◆ XLALBarycentricResampleMultiCOMPLEX8TimeSeriesGeneric()

static int XLALBarycentricResampleMultiCOMPLEX8TimeSeriesGeneric ( ResampGenericMethodData resamp,
const PulsarDopplerParams thisPoint,
const FstatCommon common 
)
static

Performs barycentric resampling on a multi-detector timeseries, updates resampling buffer with results.

NOTE Buffering: this function does check 1) whether the previously-buffered solution can be completely reused (same sky-position and binary parameters), or 2) if at least sky-dependent quantities can be re-used (antenna-patterns + timings) in case only binary parameters changed

Definition at line 787 of file ComputeFstat_Resamp_Generic.c.

◆ XLALComputeFaFb_ResampGeneric() [1/2]

static int XLALComputeFaFb_ResampGeneric ( ResampGenericMethodData resamp,
ResampGenericWorkspace ws,
const PulsarDopplerParams  thisPoint,
REAL8  dFreq,
UINT4  numFreqBins,
const COMPLEX8TimeSeries TimeSeries_SRC_a,
const COMPLEX8TimeSeries TimeSeries_SRC_b 
)
static

◆ XLALGetFFTPlanHints()

static void XLALGetFFTPlanHints ( int planMode,
double *  planGenTimeoutSeconds 
)
static

Definition at line 997 of file ComputeFstat_Resamp_Generic.c.

◆ XLALDestroyResampGenericWorkspace()

static void XLALDestroyResampGenericWorkspace ( void *  workspace)
static

Definition at line 120 of file ComputeFstat_Resamp_Generic.c.

◆ XLALDestroyResampGenericMethodData()

static void XLALDestroyResampGenericMethodData ( void *  method_data)
static

Definition at line 141 of file ComputeFstat_Resamp_Generic.c.

◆ XLALComputeFaFb_ResampGeneric() [2/2]

static int XLALComputeFaFb_ResampGeneric ( ResampGenericMethodData resamp,
ResampGenericWorkspace ws,
const PulsarDopplerParams  thisPoint,
REAL8  dFreq,
UINT4  numFreqBins,
const COMPLEX8TimeSeries *restrict  TimeSeries_SRC_a,
const COMPLEX8TimeSeries *restrict  TimeSeries_SRC_b 
)
static
Parameters
[in,out]resampbuffered resampling data and workspace
[in,out]wsresampling workspace (memory-sharing across segments)
[in]thisPointDoppler point to compute {FaX,FbX} for
[in]dFreqoutput frequency resolution
[in]numFreqBinsnumber of output frequency bins
[in]TimeSeries_SRC_aSRC-frame single-IFO timeseries * a(t)
[in]TimeSeries_SRC_bSRC-frame single-IFO timeseries * b(t)

Definition at line 611 of file ComputeFstat_Resamp_Generic.c.

◆ XLALApplySpindownAndFreqShiftGeneric() [2/2]

static int XLALApplySpindownAndFreqShiftGeneric ( COMPLEX8 *restrict  xOut,
const COMPLEX8TimeSeries *restrict  xIn,
const PulsarDopplerParams *restrict  doppler,
REAL8  freqShift 
)
static
Parameters
[out]xOutthe spindown-corrected SRC-frame timeseries
[in]xInthe input SRC-frame timeseries
[in]dopplercontaining spindown parameters
[in]freqShiftfrequency-shift to apply, sign is "new - old"

Definition at line 730 of file ComputeFstat_Resamp_Generic.c.