Loading [MathJax]/extensions/TeX/AMSsymbols.js
LALPulsar 7.1.1.1-ea7c608
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Header PulsarCrossCorr.h

Detailed Description

Header-file for LAL routines for CW cross-correlation searches.

Author
Christine Chung, Badri Krishnan, John Whelan
Date
2008

Prototypes

void LALCreateSFTPairsIndicesFrom2SFTvectors (LALStatus *status, INT4VectorSequence **out, SFTListElement *in, REAL8 lag, INT4 listLength, DetChoice detChoice, BOOLEAN autoCorrelate)
 
void LALCorrelateSingleSFTPair (LALStatus *status, COMPLEX16 *out, COMPLEX8FrequencySeries *sft1, COMPLEX8FrequencySeries *sft2, REAL8FrequencySeries *psd1, REAL8FrequencySeries *psd2, UINT4 bin1, UINT4 bin2)
 Correlate a single pair of SFT at a parameter space point. More...
 
void LALGetSignalFrequencyInSFT (LALStatus *status, REAL8 *out, LIGOTimeGPS *epoch, PulsarDopplerParams *dopp, REAL8Vector *vel)
 Calculate the frequency of the SFT at a given epoch. More...
 
void LALGetSignalPhaseInSFT (LALStatus *status, REAL8 *out, LIGOTimeGPS *epoch, PulsarDopplerParams *dopp, REAL8Vector *pos)
 Get signal phase at a given epoch. More...
 
void LALCalculateSigmaAlphaSq (LALStatus *status, REAL8 *out, UINT4 bin1, UINT4 bin2, REAL8FrequencySeries *psd1, REAL8FrequencySeries *psd2)
 
void LALCalculateAveUalpha (LALStatus *status, COMPLEX16 *out, REAL8 phiI, REAL8 phiJ, REAL8 freqI, REAL8 freqJ, REAL8 deltaF, CrossCorrBeamFn beamfnsI, CrossCorrBeamFn beamfnsJ, REAL8 sigmasq)
 Calculate pair weights (U_alpha) for an average over Psi and cos(iota) More...
 
void LALCalculateUalpha (LALStatus *status, COMPLEX16 *out, CrossCorrAmps amplitudes, REAL8 phiI, REAL8 phiJ, REAL8 freqI, REAL8 freqJ, REAL8 deltaF, CrossCorrBeamFn beamfnsI, CrossCorrBeamFn beamfnsJ, REAL8 sigmasq, REAL8 *psi, COMPLEX16 *gplus, COMPLEX16 *gcross)
 Calculate pair weights (U_alpha) for the general case. More...
 
void LALCalculateCrossCorrPower (LALStatus *status, REAL8 *out, COMPLEX16Vector *yalpha, COMPLEX16Vector *ualpha)
 
void LALNormaliseCrossCorrPower (LALStatus *status, REAL8 *out, COMPLEX16Vector *ualpha, REAL8Vector *sigmaAlphasq)
 
void LALCalculateEstimators (LALStatus *status, REAL8 *aplussq1, REAL8 *aplussq2, REAL8 *acrossq1, REAL8 *acrossq2, COMPLEX16Vector *yalpha, COMPLEX16Vector *gplus, COMPLEX16Vector *gcross, REAL8Vector *sigmaAlphasq)
 

Data Structures

struct  SkyPatchesInfo
 struct holding info about skypoints More...
 
struct  SFTDetectorInfo
 
struct  CrossCorrAmps
 
struct  CrossCorrBeamFn
 
struct  SFTListElement
 
struct  PSDListElement
 
struct  REAL8ListElement
 
struct  CrossCorrBeamFnListElement
 

Enumerations

enum  DetChoice { SAME , DIFFERENT , ALL }
 

Error codes

#define PULSARCROSSCORR_ENULL   1
 
#define PULSARCROSSCORR_ENONULL   2
 
#define PULSARCROSSCORR_EVAL   3
 
#define PULSARCROSSCORR_MSGENULL   "Null pointer"
 
#define PULSARCROSSCORR_MSGENONULL   "Non-null pointer"
 
#define PULSARCROSSCORR_MSGEVAL   "Invalid value"
 

Function Documentation

◆ LALCreateSFTPairsIndicesFrom2SFTvectors()

void LALCreateSFTPairsIndicesFrom2SFTvectors ( LALStatus status,
INT4VectorSequence **  out,
SFTListElement in,
REAL8  lag,
INT4  listLength,
DetChoice  detChoice,
BOOLEAN  autoCorrelate 
)

Definition at line 28 of file PulsarCrossCorr.c.

◆ LALCorrelateSingleSFTPair()

void LALCorrelateSingleSFTPair ( LALStatus status,
COMPLEX16 out,
COMPLEX8FrequencySeries sft1,
COMPLEX8FrequencySeries sft2,
REAL8FrequencySeries psd1,
REAL8FrequencySeries psd2,
UINT4  bin1,
UINT4  bin2 
)

Correlate a single pair of SFT at a parameter space point.

This function calculates Y_alpha according to Eqn 4.1 in Dhurandar et al 2008, where Y_alpha = (xI* xJ)/Delta T^2 sft1 and sft2 have been normalised by XLALNormalizeSFT in pulsar_crosscorr.c, so they are actually sft1 = xI/sqrt(psd1), sft2 = xJ/sqrt(psd2) Therefore, when calculating the output, we need to have out = sft1*sqrt(psd1)*sft2*sqrt(psd2)/Delta T^2

Definition at line 151 of file PulsarCrossCorr.c.

◆ LALGetSignalFrequencyInSFT()

void LALGetSignalFrequencyInSFT ( LALStatus status,
REAL8 out,
LIGOTimeGPS epoch,
PulsarDopplerParams dopp,
REAL8Vector vel 
)

Calculate the frequency of the SFT at a given epoch.

Definition at line 207 of file PulsarCrossCorr.c.

◆ LALGetSignalPhaseInSFT()

void LALGetSignalPhaseInSFT ( LALStatus status,
REAL8 out,
LIGOTimeGPS epoch,
PulsarDopplerParams dopp,
REAL8Vector pos 
)

Get signal phase at a given epoch.

Definition at line 256 of file PulsarCrossCorr.c.

◆ LALCalculateSigmaAlphaSq()

void LALCalculateSigmaAlphaSq ( LALStatus status,
REAL8 out,
UINT4  bin1,
UINT4  bin2,
REAL8FrequencySeries psd1,
REAL8FrequencySeries psd2 
)

Definition at line 315 of file PulsarCrossCorr.c.

◆ LALCalculateAveUalpha()

void LALCalculateAveUalpha ( LALStatus status,
COMPLEX16 out,
REAL8  phiI,
REAL8  phiJ,
REAL8  freqI,
REAL8  freqJ,
REAL8  deltaF,
CrossCorrBeamFn  beamfnsI,
CrossCorrBeamFn  beamfnsJ,
REAL8  sigmasq 
)

Calculate pair weights (U_alpha) for an average over Psi and cos(iota)

Definition at line 342 of file PulsarCrossCorr.c.

◆ LALCalculateUalpha()

void LALCalculateUalpha ( LALStatus status,
COMPLEX16 out,
CrossCorrAmps  amplitudes,
REAL8  phiI,
REAL8  phiJ,
REAL8  freqI,
REAL8  freqJ,
REAL8  deltaF,
CrossCorrBeamFn  beamfnsI,
CrossCorrBeamFn  beamfnsJ,
REAL8  sigmasq,
REAL8 psi,
COMPLEX16 gplus,
COMPLEX16 gcross 
)

Calculate pair weights (U_alpha) for the general case.

Definition at line 378 of file PulsarCrossCorr.c.

◆ LALCalculateCrossCorrPower()

void LALCalculateCrossCorrPower ( LALStatus status,
REAL8 out,
COMPLEX16Vector yalpha,
COMPLEX16Vector ualpha 
)

Definition at line 459 of file PulsarCrossCorr.c.

◆ LALNormaliseCrossCorrPower()

void LALNormaliseCrossCorrPower ( LALStatus status,
REAL8 out,
COMPLEX16Vector ualpha,
REAL8Vector sigmaAlphasq 
)

Definition at line 490 of file PulsarCrossCorr.c.

◆ LALCalculateEstimators()

void LALCalculateEstimators ( LALStatus status,
REAL8 aplussq1,
REAL8 aplussq2,
REAL8 acrossq1,
REAL8 acrossq2,
COMPLEX16Vector yalpha,
COMPLEX16Vector gplus,
COMPLEX16Vector gcross,
REAL8Vector sigmaAlphasq 
)

Definition at line 523 of file PulsarCrossCorr.c.

Enumeration Type Documentation

◆ DetChoice

enum DetChoice
Enumerator
SAME 
DIFFERENT 
ALL 

Definition at line 83 of file PulsarCrossCorr.h.

Macro Definition Documentation

◆ PULSARCROSSCORR_ENULL

#define PULSARCROSSCORR_ENULL   1

Definition at line 70 of file PulsarCrossCorr.h.

◆ PULSARCROSSCORR_ENONULL

#define PULSARCROSSCORR_ENONULL   2

Definition at line 71 of file PulsarCrossCorr.h.

◆ PULSARCROSSCORR_EVAL

#define PULSARCROSSCORR_EVAL   3

Definition at line 72 of file PulsarCrossCorr.h.

◆ PULSARCROSSCORR_MSGENULL

#define PULSARCROSSCORR_MSGENULL   "Null pointer"

Definition at line 74 of file PulsarCrossCorr.h.

◆ PULSARCROSSCORR_MSGENONULL

#define PULSARCROSSCORR_MSGENONULL   "Non-null pointer"

Definition at line 75 of file PulsarCrossCorr.h.

◆ PULSARCROSSCORR_MSGEVAL

#define PULSARCROSSCORR_MSGEVAL   "Invalid value"

Definition at line 76 of file PulsarCrossCorr.h.