LAL  7.5.0.1-b72065a
Cubic Spline Trigger Interpolant

Detailed Description

Catmull-Rom cubic spline interpolation.

Find the Catmull-Rom cubic spline interpolants that pass through the real and imaginary parts of the data. Find the interpolated time by solving for the maximum of the sum of the squares of the two spline interpolants.

Warning
It is an error to request a Catmull-Rom workspace with a window size not equal to 2.

Prototypes

CubicSplineTriggerInterpolant * XLALCreateCubicSplineTriggerInterpolant (unsigned int window)
 Constructor. More...
 
void XLALDestroyCubicSplineTriggerInterpolant (CubicSplineTriggerInterpolant *)
 Destructor. More...
 
int XLALCOMPLEX16ApplyCubicSplineTriggerInterpolant (CubicSplineTriggerInterpolant *interp, double *tmax, COMPLEX16 *ymax, const COMPLEX16 *y)
 Perform interpolation using the allocated workspace. More...
 
int XLALCOMPLEX8ApplyCubicSplineTriggerInterpolant (CubicSplineTriggerInterpolant *interp, double *tmax, COMPLEX8 *ymax, const COMPLEX8 *y)
 
int XLALREAL8ApplyCubicSplineTriggerInterpolant (CubicSplineTriggerInterpolant *interp, double *tmax, REAL8 *ymax, const REAL8 *y)
 
int XLALREAL4ApplyCubicSplineTriggerInterpolant (CubicSplineTriggerInterpolant *interp, double *tmax, REAL4 *ymax, const REAL4 *y)
 

Function Documentation

◆ XLALCreateCubicSplineTriggerInterpolant()

CubicSplineTriggerInterpolant* XLALCreateCubicSplineTriggerInterpolant ( unsigned int  window)

Constructor.

Allocate a new interpolation workspace and return a pointer to it, or NULL if an error occurs.

Warning
It is an error to request a Catmull-Rom workspace with a window size not equal to 2.

Definition at line 307 of file TriggerInterpolation.c.

◆ XLALDestroyCubicSplineTriggerInterpolant()

void XLALDestroyCubicSplineTriggerInterpolant ( CubicSplineTriggerInterpolant *  interp)

Destructor.

If the workspace is non-NULL, deallocate it.

Definition at line 328 of file TriggerInterpolation.c.

◆ XLALCOMPLEX16ApplyCubicSplineTriggerInterpolant()

int XLALCOMPLEX16ApplyCubicSplineTriggerInterpolant ( CubicSplineTriggerInterpolant *  interp,
double *  tmax,
COMPLEX16 ymax,
const COMPLEX16 y 
)

Perform interpolation using the allocated workspace.

Perform interpolation around the matched-filter output data pointed to by y. There should exist window samples before and window samples after this pointer.

On success, set *tmax to the interpolated time, *ymax to the complex interpolated signal, and return 0. On failure, return a non-zero GSL error code.

Definition at line 339 of file TriggerInterpolation.c.

◆ XLALCOMPLEX8ApplyCubicSplineTriggerInterpolant()

int XLALCOMPLEX8ApplyCubicSplineTriggerInterpolant ( CubicSplineTriggerInterpolant *  interp,
double *  tmax,
COMPLEX8 ymax,
const COMPLEX8 y 
)

Definition at line 371 of file TriggerInterpolation.c.

◆ XLALREAL8ApplyCubicSplineTriggerInterpolant()

int XLALREAL8ApplyCubicSplineTriggerInterpolant ( CubicSplineTriggerInterpolant *  interp,
double *  tmax,
REAL8 ymax,
const REAL8 y 
)

Definition at line 383 of file TriggerInterpolation.c.

◆ XLALREAL4ApplyCubicSplineTriggerInterpolant()

int XLALREAL4ApplyCubicSplineTriggerInterpolant ( CubicSplineTriggerInterpolant *  interp,
double *  tmax,
REAL4 ymax,
const REAL4 y 
)

Definition at line 395 of file TriggerInterpolation.c.