Routines for manipulating spherical harmonic time- and frequency-series.
Data Structures | |
struct | SphHarmTimeSeries |
Structure to carry a collection of spherical harmonic modes in COMPLEX16 time series. More... | |
struct | SphHarmPolarTimeSeries |
struct | SphHarmFrequencySeries |
SphHarmPolarTimeSeries Routines | |
SphHarmPolarTimeSeries * | XLALSphHarmPolarTimeSeriesAddMode (SphHarmPolarTimeSeries *appended, const REAL8TimeSeries *inAmpl, const REAL8TimeSeries *inphase, UINT4 l, INT4 m) |
Prepend a node to a linked list of SphHarmPolarTimeSeries, or create a new head. More... | |
void | XLALSphHarmPolarTimeSeriesSetTData (SphHarmPolarTimeSeries *ts, REAL8Sequence *tdata) |
Set the tdata member for all nodes in the list. More... | |
REAL8Sequence * | XLALSphHarmPolarTimeSeriesGetTData (SphHarmPolarTimeSeries *ts) |
Get the tdata member for nodes in the list. More... | |
void | XLALDestroySphHarmPolarTimeSeries (SphHarmPolarTimeSeries *ts) |
Delete list from current pointer to the end of the list. More... | |
REAL8TimeSeries * | XLALSphHarmPolarTimeSeriesGetModeAmplitude (SphHarmPolarTimeSeries *ts, UINT4 l, INT4 m) |
Get the time series of a waveform's (l,m) spherical harmonic mode amplitude from a SphHarmPolarTimeSeries linked list. More... | |
REAL8TimeSeries * | XLALSphHarmPolarTimeSeriesGetModePhase (SphHarmPolarTimeSeries *ts, UINT4 l, INT4 m) |
Get the time series of a waveform's (l,m) spherical harmonic mode phase from a SphHarmPolarTimeSeries linked list. More... | |
UINT4 | XLALSphHarmPolarTimeSeriesGetMaxL (SphHarmPolarTimeSeries *ts) |
Get the largest l index of any mode in the SphHarmTimeSeries linked list. More... | |
SphHarmPolarTimeSeries * | XLALResizeSphHarmPolarTimeSeries (SphHarmPolarTimeSeries *ts, int first, size_t length) |
For every (l,m) node in the SphHarmPolarTimeSeries linked list, call XLALResizeREAL8TimeSeries(ts->ampl, first, length) and XLALResizeREAL8TimeSeries(ts->phase, first, length) More... | |
SphHarmPolarTimeSeries * | XLALCutSphHarmPolarTimeSeries (SphHarmPolarTimeSeries *ts, int first, size_t length) |
Create a new SphHarmPolarTimeSeries linked listby extracting a section of an existing SphHarmPolarTimeSeries linked list. More... | |
SphHarmTimeSeries* XLALSphHarmTimeSeriesAddMode | ( | SphHarmTimeSeries * | appended, |
const COMPLEX16TimeSeries * | inmode, | ||
UINT4 | l, | ||
INT4 | m | ||
) |
Prepend a node to a linked list of SphHarmTimeSeries, or create a new head.
appended | Linked list to be prepended |
inmode | Time series of h_lm mode being prepended |
l | l index of h_lm mode being prepended |
m | m index of h_lm mode being prepended |
Definition at line 48 of file LALSimSphHarmSeries.c.
void XLALSphHarmTimeSeriesSetTData | ( | SphHarmTimeSeries * | ts, |
REAL8Sequence * | tdata | ||
) |
Set the tdata member for all nodes in the list.
ts | Linked list to be prepended |
tdata | series of time data |
Definition at line 98 of file LALSimSphHarmSeries.c.
REAL8Sequence* XLALSphHarmTimeSeriesGetTData | ( | SphHarmTimeSeries * | ts | ) |
Get the tdata member for nodes in the list.
ts | Get tdata from this list |
Definition at line 112 of file LALSimSphHarmSeries.c.
void XLALDestroySphHarmTimeSeries | ( | SphHarmTimeSeries * | ts | ) |
Delete list from current pointer to the end of the list.
ts | Head of linked list to destroy |
Definition at line 123 of file LALSimSphHarmSeries.c.
COMPLEX16TimeSeries* XLALSphHarmTimeSeriesGetMode | ( | SphHarmTimeSeries * | ts, |
UINT4 | l, | ||
INT4 | m | ||
) |
Get the time series of a waveform's (l,m) spherical harmonic mode from a SphHarmTimeSeries linked list.
Returns a pointer to its COMPLEX16TimeSeries
ts | linked list to extract mode from |
l | l index of h_lm mode to get |
m | m index of h_lm mode to get |
Definition at line 145 of file LALSimSphHarmSeries.c.
UINT4 XLALSphHarmTimeSeriesGetMaxL | ( | SphHarmTimeSeries * | ts | ) |
Get the largest l index of any mode in the SphHarmTimeSeries linked list.
Definition at line 164 of file LALSimSphHarmSeries.c.
UINT4 XLALSphHarmTimeSeriesGetMinL | ( | SphHarmTimeSeries * | ts | ) |
Get the smallest l index of any mode in the SphHarmTimeSeries linked list.
Definition at line 178 of file LALSimSphHarmSeries.c.
SphHarmTimeSeries* XLALResizeSphHarmTimeSeries | ( | SphHarmTimeSeries * | ts, |
int | first, | ||
size_t | length | ||
) |
For every (l,m) node in the SphHarmTimeSeries linked list, call XLALResizeCOMPLEX16TimeSeries(ts->mode, first, length)
The TimeSeries of each (l,m) mode will have the given length, and its contents will consist of that part of the original time series that started at sample first. If first is negative, then the new time series is padded at the start by that many samples. The time series' epoch is adjusted appropriately.
ts | SphHarmTimeSeries to be resized |
first | index of first time sample to be copied over |
length | length to resize all COMPLEX16TimeSeries to |
Definition at line 199 of file LALSimSphHarmSeries.c.
SphHarmTimeSeries* XLALSphHarmTimeSeriesFromSphHarmFrequencySeriesDataAndPSD | ( | SphHarmFrequencySeries * | hlms, |
COMPLEX16FrequencySeries * | data, | ||
COMPLEX16FrequencySeries * | psd | ||
) |
Definition at line 214 of file LALSimSphHarmSeries.c.
SphHarmPolarTimeSeries* XLALSphHarmPolarTimeSeriesAddMode | ( | SphHarmPolarTimeSeries * | appended, |
const REAL8TimeSeries * | inAmpl, | ||
const REAL8TimeSeries * | inphase, | ||
UINT4 | l, | ||
INT4 | m | ||
) |
Prepend a node to a linked list of SphHarmPolarTimeSeries, or create a new head.
appended | Linked list to be prepended |
inAmpl | Time series of |h_lm| mode amplitude being prepended |
inphase | Time series of phi_lm mode phase being prepended |
l | l index of h_lm mode being prepended |
m | m index of h_lm mode being prepended |
Definition at line 273 of file LALSimSphHarmSeries.c.
void XLALSphHarmPolarTimeSeriesSetTData | ( | SphHarmPolarTimeSeries * | ts, |
REAL8Sequence * | tdata | ||
) |
Set the tdata member for all nodes in the list.
ts | Linked list to be prepended |
tdata | series of time data |
Definition at line 335 of file LALSimSphHarmSeries.c.
REAL8Sequence* XLALSphHarmPolarTimeSeriesGetTData | ( | SphHarmPolarTimeSeries * | ts | ) |
Get the tdata member for nodes in the list.
ts | Get tdata from this list |
Definition at line 350 of file LALSimSphHarmSeries.c.
void XLALDestroySphHarmPolarTimeSeries | ( | SphHarmPolarTimeSeries * | ts | ) |
Delete list from current pointer to the end of the list.
ts | Head of linked list to destroy |
Definition at line 361 of file LALSimSphHarmSeries.c.
REAL8TimeSeries* XLALSphHarmPolarTimeSeriesGetModeAmplitude | ( | SphHarmPolarTimeSeries * | ts, |
UINT4 | l, | ||
INT4 | m | ||
) |
Get the time series of a waveform's (l,m) spherical harmonic mode amplitude from a SphHarmPolarTimeSeries linked list.
Returns a pointer to its REAL8TimeSeries
ts | linked list to extract mode from |
l | l index of h_lm mode to get |
m | m index of h_lm mode to get |
Definition at line 386 of file LALSimSphHarmSeries.c.
REAL8TimeSeries* XLALSphHarmPolarTimeSeriesGetModePhase | ( | SphHarmPolarTimeSeries * | ts, |
UINT4 | l, | ||
INT4 | m | ||
) |
Get the time series of a waveform's (l,m) spherical harmonic mode phase from a SphHarmPolarTimeSeries linked list.
Returns a pointer to its REAL8TimeSeries
ts | linked list to extract mode from |
l | l index of h_lm mode to get |
m | m index of h_lm mode to get |
Definition at line 406 of file LALSimSphHarmSeries.c.
UINT4 XLALSphHarmPolarTimeSeriesGetMaxL | ( | SphHarmPolarTimeSeries * | ts | ) |
Get the largest l index of any mode in the SphHarmTimeSeries linked list.
Definition at line 426 of file LALSimSphHarmSeries.c.
SphHarmPolarTimeSeries* XLALResizeSphHarmPolarTimeSeries | ( | SphHarmPolarTimeSeries * | ts, |
int | first, | ||
size_t | length | ||
) |
For every (l,m) node in the SphHarmPolarTimeSeries linked list, call XLALResizeREAL8TimeSeries(ts->ampl, first, length) and XLALResizeREAL8TimeSeries(ts->phase, first, length)
The TimeSeries of each (l,m) mode will have the given length, and its contents will consist of that part of the original time series that started at sample first. If first is negative, then the new time series is padded at the start by that many samples. The time series' epoch is adjusted appropriately.
ts | SphHarmTimeSeries to be resized |
first | index of first time sample to be copied over |
length | length to resize all COMPLEX16TimeSeries to |
Definition at line 448 of file LALSimSphHarmSeries.c.
SphHarmPolarTimeSeries* XLALCutSphHarmPolarTimeSeries | ( | SphHarmPolarTimeSeries * | ts, |
int | first, | ||
size_t | length | ||
) |
Create a new SphHarmPolarTimeSeries linked listby extracting a section of an existing SphHarmPolarTimeSeries linked list.
For every (l,m) node in the SphHarmPolarTimeSeries linked list, call XLALCutREAL8TimeSeries(ts->ampl, first, length) and XLALCutREAL8TimeSeries(ts->phase, first, length)
The TimeSeries of each (l,m) mode will have the given length, and its contents will consist of that part of the original time series that started at sample first. If first is negative, then the new time series is padded at the start by that many samples. The time series' epoch is adjusted appropriately.
ts | new SphHarmTimeSeries to be filled in |
first | index of first time sample to be copied over |
length | length to cut all COMPLEX16TimeSeries to |
Definition at line 478 of file LALSimSphHarmSeries.c.
SphHarmFrequencySeries* XLALSphHarmFrequencySeriesFromSphHarmTimeSeries | ( | SphHarmTimeSeries * | hlms_TD | ) |
Create a SphHarmFrequencySeries from a SphHarmTimeSeries by performing an FFT on each mode in the SphHarmTimeSeries.
hlms_TD | SphHarmTimeSeries to be FFT'd |
Definition at line 537 of file LALSimSphHarmSeries.c.
SphHarmFrequencySeries* XLALSphHarmFrequencySeriesAddMode | ( | SphHarmFrequencySeries * | appended, |
const COMPLEX16FrequencySeries * | inmode, | ||
UINT4 | l, | ||
INT4 | m | ||
) |
Prepend a node to a linked list of SphHarmFrequencySeries, or create a new head.
appended | Linked list to be prepended |
inmode | Time series of h_lm mode being prepended |
l | l index of h_lm mode being prepended |
m | m index of h_lm mode being prepended |
Definition at line 577 of file LALSimSphHarmSeries.c.
void XLALSphHarmFrequencySeriesSetFData | ( | SphHarmFrequencySeries * | ts, |
REAL8Sequence * | fdata | ||
) |
Set the tdata member for all nodes in the list.
ts | Linked list to be prepended |
fdata | series of frequency data |
Definition at line 627 of file LALSimSphHarmSeries.c.
REAL8Sequence* XLALSphHarmFrequencySeriesGetFData | ( | SphHarmFrequencySeries * | ts | ) |
Get the fdata member.
ts | Get tdata from this list |
Definition at line 641 of file LALSimSphHarmSeries.c.
void XLALDestroySphHarmFrequencySeries | ( | SphHarmFrequencySeries * | ts | ) |
Delete list from current pointer to the end of the list.
ts | Head of linked list to destroy |
Definition at line 652 of file LALSimSphHarmSeries.c.
COMPLEX16FrequencySeries* XLALSphHarmFrequencySeriesGetMode | ( | SphHarmFrequencySeries * | ts, |
UINT4 | l, | ||
INT4 | m | ||
) |
Get the time series of a waveform's (l,m) spherical harmonic mode from a SphHarmFrequencySeries linked list.
Returns a pointer to its COMPLEX16FrequencySeries
ts | linked list to extract mode from |
l | l index of h_lm mode to get |
m | m index of h_lm mode to get |
Definition at line 674 of file LALSimSphHarmSeries.c.
UINT4 XLALSphHarmFrequencySeriesGetMaxL | ( | SphHarmFrequencySeries * | ts | ) |
Get the largest l index of any mode in the SphHarmFrequencySeries linked list.
Definition at line 693 of file LALSimSphHarmSeries.c.