Loading [MathJax]/extensions/TeX/AMSsymbols.js
LALPulsar 7.1.1.1-5e288d3
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
LFTandTSutils.c File Reference

Prototypes

SFTtypeXLALSFTVectorToLFT (SFTVector *sfts, REAL8 upsampling)
 Turn the given multi-IFO SFTvectors into one long Fourier transform (LFT) over the total observation time. More...
 
COMPLEX8TimeSeriesXLALSFTVectorToCOMPLEX8TimeSeries (const SFTVector *sftsIn)
 Turn the given SFTvector into one long time-series, properly dealing with gaps. More...
 
MultiCOMPLEX8TimeSeriesXLALMultiSFTVectorToCOMPLEX8TimeSeries (const MultiSFTVector *multisfts)
 Turn the given multiSFTvector into multiple long COMPLEX8TimeSeries, properly dealing with gaps. More...
 
int XLALReorderFFTWtoSFT (COMPLEX8Vector *X)
 Change frequency-bin order from fftw-convention to a 'SFT' ie. More...
 
int XLALReorderSFTtoFFTW (COMPLEX8Vector *X)
 Change frequency-bin order from 'SFT' to fftw-convention ie. More...
 
int XLALTimeShiftSFT (SFTtype *sft, REAL8 shift)
 Time-shift the given SFT by an amount of 'shift' seconds, using the frequency-domain expression \( \widetilde{y}(f) = \widetilde{x}(f) \, e^{i 2\pi\,f\,\tau} \) , which shifts \( x(t) \) into \( y(t) = x(t + \tau) \). More...
 
int XLALFrequencyShiftMultiCOMPLEX8TimeSeries (MultiCOMPLEX8TimeSeries *x, const REAL8 shift)
 Multi-detector wrapper for XLALFrequencyShiftCOMPLEX8TimeSeries NOTE: this modifies the MultiCOMPLEX8Timeseries in place. More...
 
int XLALFrequencyShiftCOMPLEX8TimeSeries (COMPLEX8TimeSeries *x, const REAL8 shift)
 Freq-shift the given COMPLEX8Timeseries by an amount of 'shift' Hz, using the time-domain expression y(t) = x(t) * e^(-i 2pi df t), which shifts x(f) into y(f) = x(f + df) More...
 
int XLALSpinDownCorrectionMultiTS (MultiCOMPLEX8TimeSeries *multiTimeSeries, const PulsarDopplerParams *doppler)
 Apply a spin-down correction to the complex8 timeseries using the time-domain expression y(t) = x(t) * e^(-i 2pi sum f_k * (t-tref)^(k+1)),. More...
 
void XLALDestroyMultiCOMPLEX8TimeSeries (MultiCOMPLEX8TimeSeries *multiTimes)
 Destroy a MultiCOMPLEX8TimeSeries structure. More...
 
MultiCOMPLEX8TimeSeriesXLALDuplicateMultiCOMPLEX8TimeSeries (MultiCOMPLEX8TimeSeries *multiTimes)
 Duplicates a MultiCOMPLEX8TimeSeries structure. More...
 
COMPLEX8TimeSeriesXLALDuplicateCOMPLEX8TimeSeries (COMPLEX8TimeSeries *ttimes)
 Duplicates a COMPLEX8TimeSeries structure. More...
 
int XLALCopyMultiCOMPLEX8TimeSeries (MultiCOMPLEX8TimeSeries *multiTimesOut, MultiCOMPLEX8TimeSeries *multiTimesIn)
 Copies a MultiCOMPLEX8TimeSeries structure, output must be allocated of identical size as input! More...
 
int XLALCopyCOMPLEX8TimeSeries (COMPLEX8TimeSeries *ts_out, COMPLEX8TimeSeries *ts_in)
 Copies a COMPLEX8TimeSeries structure, output must be allocated of identical size as input! More...
 
int XLALCompareCOMPLEX8Vectors (VectorComparison *result, const COMPLEX8Vector *x, const COMPLEX8Vector *y, const VectorComparison *tol)
 Compare two COMPLEX8 vectors using various different comparison metrics. More...
 
int XLALCompareREAL4Vectors (VectorComparison *result, const REAL4Vector *x, const REAL4Vector *y, const VectorComparison *tol)
 Compare two REAL4 vectors using various different comparison metrics. More...
 
int XLALCheckVectorComparisonTolerances (const VectorComparison *result, const VectorComparison *tol)
 Check VectorComparison result against specified tolerances, to allow for standardized comparison and reporting. More...
 
int XLALSincInterpolateCOMPLEX8TimeSeries (COMPLEX8Vector *y_out, const REAL8Vector *t_out, const COMPLEX8TimeSeries *ts_in, UINT4 Dterms)
 Interpolate a given regularly-spaced COMPLEX8 timeseries 'ts_in = x_in(j * dt)' onto new samples 'y_out(t_out)' using windowed Shannon sinc interpolation, windowed to (2*Dterms+1) terms, namely. More...
 
int XLALSincInterpolateCOMPLEX8FrequencySeries (COMPLEX8Vector *y_out, const REAL8Vector *f_out, const COMPLEX8FrequencySeries *fs_in, UINT4 Dterms)
 Interpolate a given regularly-spaced COMPLEX8 frequency-series 'fs_in = x_in( k * df)' onto new samples 'y_out(f_out)' using (complex) Sinc interpolation (obtained from Dirichlet kernel in large-N limit), truncated to (2*Dterms+1) terms, namely. More...
 
SFTtypeXLALSincInterpolateSFT (const SFTtype *sft_in, REAL8 f0Out, REAL8 dfOut, UINT4 numBinsOut, UINT4 Dterms)
 (Complex)Sinc-interpolate an input SFT to an output SFT. More...
 
COMPLEX8VectorXLALrefineCOMPLEX8Vector (const COMPLEX8Vector *in, UINT4 refineby, UINT4 Dterms)
 Interpolate frequency-series to newLen frequency-bins. More...
 

Go to the source code of this file.

Macros

#define MYMAX(x, y)   ( (x) > (y) ? (x) : (y) )
 
#define MYMIN(x, y)   ( (x) < (y) ? (x) : (y) )
 
#define SQ(x)   ((x)*(x))
 
#define FINITE_OR_ONE(x)   (((x) != 0) ? (x) : 1.0)
 
#define cRELERR(x, y)   ( cabsf( (x) - (y) ) / FINITE_OR_ONE( 0.5 * (cabsf(x) + cabsf(y)) ) )
 
#define fRELERR(x, y)   ( fabsf( (x) - (y) ) / FINITE_OR_ONE( 0.5 * (fabsf(x) + fabsf(y)) ) )
 
#define OOTWOPI   (1.0 / LAL_TWOPI)
 
#define OOPI   (1.0 / LAL_PI)
 
#define LD_SMALL4   (2.0e-4)
 

Variables

static LALUnit emptyLALUnit
 

Macro Definition Documentation

◆ MYMAX

#define MYMAX (   x,
  y 
)    ( (x) > (y) ? (x) : (y) )

Definition at line 38 of file LFTandTSutils.c.

◆ MYMIN

#define MYMIN (   x,
  y 
)    ( (x) < (y) ? (x) : (y) )

Definition at line 39 of file LFTandTSutils.c.

◆ SQ

#define SQ (   x)    ((x)*(x))

Definition at line 40 of file LFTandTSutils.c.

◆ FINITE_OR_ONE

#define FINITE_OR_ONE (   x)    (((x) != 0) ? (x) : 1.0)

Definition at line 42 of file LFTandTSutils.c.

◆ cRELERR

#define cRELERR (   x,
  y 
)    ( cabsf( (x) - (y) ) / FINITE_OR_ONE( 0.5 * (cabsf(x) + cabsf(y)) ) )

Definition at line 43 of file LFTandTSutils.c.

◆ fRELERR

#define fRELERR (   x,
  y 
)    ( fabsf( (x) - (y) ) / FINITE_OR_ONE( 0.5 * (fabsf(x) + fabsf(y)) ) )

Definition at line 44 of file LFTandTSutils.c.

◆ OOTWOPI

#define OOTWOPI   (1.0 / LAL_TWOPI)

Definition at line 45 of file LFTandTSutils.c.

◆ OOPI

#define OOPI   (1.0 / LAL_PI)

Definition at line 46 of file LFTandTSutils.c.

◆ LD_SMALL4

#define LD_SMALL4   (2.0e-4)

Definition at line 47 of file LFTandTSutils.c.

Variable Documentation

◆ emptyLALUnit

LALUnit emptyLALUnit
static

Definition at line 49 of file LFTandTSutils.c.