LALPulsar  6.1.0.1-fe68b98
BinaryPulsarTiming.h File Reference

Functions to calculate binary system time delays and read TEMPO pulsar parameter files. More...

Prototypes

void XLALComputeEccentricAnomaly (REAL8 phase, REAL8 ecc, REAL8 *u)
 This function will iteratively calculate the eccentric anomaly from Kelper's equation. More...
 
void XLALComputeKopeikinTerms (KopeikinTerms *kop, BinaryPulsarParams *params, BinaryPulsarInput *input)
 This function will compute the effect of binary parameters on the pulsar parallax. More...
 
void XLALComputeKopeikinTermsNew (KopeikinTerms *kop, PulsarParameters *params, BinaryPulsarInput *input)
 
void XLALBinaryPulsarDeltaT (BinaryPulsarOutput *output, BinaryPulsarInput *input, BinaryPulsarParams *params)
 function to calculate the binary system delay More...
 
void XLALBinaryPulsarDeltaTNew (BinaryPulsarOutput *output, BinaryPulsarInput *input, PulsarParameters *params)
 function to calculate the binary system delay using new parameter structure More...
 
void LALBinaryPulsarDeltaT (LALStatus *status, BinaryPulsarOutput *output, BinaryPulsarInput *input, BinaryPulsarParams *params)
 Calculate the binary system time delay using the pulsar parameters in params. More...
 

Detailed Description

Functions to calculate binary system time delays and read TEMPO pulsar parameter files.

Author
Matt Pitkin, Bernd Machenschalk
Date
2007

The main function in this code - XLALBinaryPulsarDeltaT - is for calculating the time delay on a pulsar signal caused by its orbit within a binary system. It tranforms a signal from the binary system barycentre to the pulsar proper time. It is equivalent to the LALBarycenter() functions for transforming the Earth reference frame to the solar system barycentre. It copies the functions from the standard pulsar timing software TEMPO and can use the various binary system models BT, BT1P, BT2P, BTX, ELL1, DD and MSS.

Included is a function to read in a set of pulsar parameters from a standard TEMPO parameter (.par) file - XLALReadTEMPOParFile.

Also included are function to convert times given in the TT, TDB or TCB frames (given as a modified Julian Date - MJD) into a GPS time.

Definition in file BinaryPulsarTiming.h.

Go to the source code of this file.

Data Structures

struct  KopeikinTerms
 structure containing the Kopeikin terms More...
 
struct  BinaryPulsarInput
 structure containing the input parameters for the binary delay function More...
 
struct  BinaryPulsarOutput
 structure containing the output parameters for the binary delay function More...
 

Macros

Error Codes
#define BINARYPULSARTIMINGH_ENULLINPUT   1
 
#define BINARYPULSARTIMINGH_ENULLOUTPUT   2
 
#define BINARYPULSARTIMINGH_ENULLPARAMS   3
 
#define BINARYPULSARTIMINGH_ENULLBINARYMODEL   4
 
#define BINARYPULSARTIMINGH_EFAIL   5
 
#define BINARYPULSARTIMINGH_ENAN   6
 
#define BINARYPULSARTIMINGH_MSGENULLINPUT   "Input was Null"
 
#define BINARYPULSARTIMINGH_MSGENULLOUTPUT   "Output was Null"
 
#define BINARYPULSARTIMINGH_MSGENULLPARAMS   "Params was Null"
 
#define BINARYPULSARTIMINGH_MSGNULLBINARYMODEL   "Binary model is Null or not specified - you should\not be in the binary timing routine"
 
#define BINARYPULSARTIMINGH_MSGEFAIL   "Time delay computation failed"
 
#define BINARYPULSARTIMINGH_MSGENAN   "Output is NaN!"
 

Macro Definition Documentation

◆ BINARYPULSARTIMINGH_ENULLINPUT

#define BINARYPULSARTIMINGH_ENULLINPUT   1

Definition at line 62 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_ENULLOUTPUT

#define BINARYPULSARTIMINGH_ENULLOUTPUT   2

Definition at line 63 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_ENULLPARAMS

#define BINARYPULSARTIMINGH_ENULLPARAMS   3

Definition at line 64 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_ENULLBINARYMODEL

#define BINARYPULSARTIMINGH_ENULLBINARYMODEL   4

Definition at line 65 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_EFAIL

#define BINARYPULSARTIMINGH_EFAIL   5

Definition at line 66 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_ENAN

#define BINARYPULSARTIMINGH_ENAN   6

Definition at line 67 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_MSGENULLINPUT

#define BINARYPULSARTIMINGH_MSGENULLINPUT   "Input was Null"

Definition at line 69 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_MSGENULLOUTPUT

#define BINARYPULSARTIMINGH_MSGENULLOUTPUT   "Output was Null"

Definition at line 70 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_MSGENULLPARAMS

#define BINARYPULSARTIMINGH_MSGENULLPARAMS   "Params was Null"

Definition at line 71 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_MSGNULLBINARYMODEL

#define BINARYPULSARTIMINGH_MSGNULLBINARYMODEL   "Binary model is Null or not specified - you should\not be in the binary timing routine"

Definition at line 72 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_MSGEFAIL

#define BINARYPULSARTIMINGH_MSGEFAIL   "Time delay computation failed"

Definition at line 74 of file BinaryPulsarTiming.h.

◆ BINARYPULSARTIMINGH_MSGENAN

#define BINARYPULSARTIMINGH_MSGENAN   "Output is NaN!"

Definition at line 75 of file BinaryPulsarTiming.h.

Function Documentation

◆ XLALComputeEccentricAnomaly()

void XLALComputeEccentricAnomaly ( REAL8  phase,
REAL8  ecc,
REAL8 u 
)

This function will iteratively calculate the eccentric anomaly from Kelper's equation.

The equation is solved using a Newton-Raphson technique and the S9 starting value in Odell & Gooding 1986 CeMec 38 307. This is taken from the TEMPO2 code T2model.C

This function will iteratively calculate the eccentric anomaly from Kelper's equation.

Definition at line 104 of file BinaryPulsarTiming.c.

◆ XLALComputeKopeikinTerms()

void XLALComputeKopeikinTerms ( KopeikinTerms kop,
BinaryPulsarParams params,
BinaryPulsarInput in 
)

This function will compute the effect of binary parameters on the pulsar parallax.

This function is based on the terms given in Kopeikin, Ap. J. Lett, 439,

  1. The computation is copied from the KopeikinTerms function in the T2model.C file of TEMPO2.

This function will compute the effect of binary parameters on the pulsar parallax.

Definition at line 120 of file BinaryPulsarTiming.c.

◆ XLALComputeKopeikinTermsNew()

void XLALComputeKopeikinTermsNew ( KopeikinTerms kop,
PulsarParameters params,
BinaryPulsarInput input 
)

Definition at line 242 of file BinaryPulsarTiming.c.

◆ XLALBinaryPulsarDeltaT()

void XLALBinaryPulsarDeltaT ( BinaryPulsarOutput output,
BinaryPulsarInput input,
BinaryPulsarParams params 
)

function to calculate the binary system delay

function to calculate the binary system delay

Definition at line 431 of file BinaryPulsarTiming.c.

◆ XLALBinaryPulsarDeltaTNew()

void XLALBinaryPulsarDeltaTNew ( BinaryPulsarOutput output,
BinaryPulsarInput input,
PulsarParameters params 
)

function to calculate the binary system delay using new parameter structure

Definition at line 935 of file BinaryPulsarTiming.c.

◆ LALBinaryPulsarDeltaT()

void LALBinaryPulsarDeltaT ( LALStatus status,
BinaryPulsarOutput output,
BinaryPulsarInput input,
BinaryPulsarParams params 
)

Calculate the binary system time delay using the pulsar parameters in params.

Definition at line 390 of file BinaryPulsarTiming.c.