Go to the source code of this file.
Variables | |
struct { | |
const char *const name | |
window name More... | |
const BOOLEAN hasBeta | |
does this window need a 'beta' parameter? More... | |
} | AllowedWindows [LAL_WINDOWTYPE_LAST] |
enum LALWindowType |
|
static |
Constructs a REAL4Window from a REAL8Window by quantizing the double-precision data to single-precision.
The REAL8Window is freed unconditionally. Intended to be used as a wrapper, to convert any function that constructs a REAL8Window into a function to construct a REAL4Window.
|
static |
Maps the length of a window and the offset within the window to the "y" co-ordinate of the LAL documentation.
Input: length > 0, 0 <= i < length
Output: length < 2 --> return 0.0 i == 0 --> return -1.0 i == (length - 1) / 2 --> return 0.0 i == length - 1 --> return +1.0
e.g., length = 5 (odd), then i == 2 --> return 0.0 if length = 6 (even), then i == 2.5 --> return 0.0
(in the latter case, obviously i can't be a non-integer, but that's the value it would have to be for this function to return 0.0)
Computes the sum of squares, and sum, of the samples in a window function.
Two techniques are employed to achieve accurate results. Firstly, the loop iterates from the edges to the centre. Generally, window functions have smaller values at the edges and larger values in the middle, so adding them in this order avoids adding small numbers to big numbers. The loops also implement Kahan's compensated summation algorithm in which a second variable is used to accumulate round-off errors and fold them into later iterations.
|
static |
Parse window-name string (case-insensitive) into an internal window-type index (>=0, returned), and also check if the user-input 'beta' is valid for given window.
Window-types that don't take a beta input parameter need to have beta==0.
Returns XLAL_FAILURE=-1 on error
const BOOLEAN hasBeta |
const struct { ... } AllowedWindows[LAL_WINDOWTYPE_LAST] |