class DecimateBy2 : public Pipe Decimation by 2^N.
The DecimateBy2 class decimates a TSeries by 2^N. The TSeries data are filtered before decimation to remove aliasing. This class is essentially a wrapper of the C code written for LIGO GDS by Peter Fritschel.DecimateBy2 is based on the DMT FilterBase clas and as such is can be treated as a generic DMT Filter. The decimation may be applied to the TSeries with either the apply method or the parentheses operator. These methods return a complex TSeries if the input series is complex, and a single precision floating point TSeries for all other input series data types.
Four anti-aliasinglow-pass FIR filters are available, each of which cuts of at 0.9 F_{Nyquist}. The options are tabulated below:
The antialiasing filters add an effective delay of
ID Order Comments 1 42 Least-Squares design, ripple ~.015 (-0.2 dB) 2 42 Equiripple design, ripple ~0.06 dB 3 22 Least-squares design, ripple ~0.1 (-1 dB) 4 82 Least-squares design, ripple ~0.0006 (-0.01 dB) , where N is the number of stages (the decimation factor exponent) and
is the filter order. This delay is NOT added to the TSeries start time.
explicit DecimateBy2(int N, int FilterID=1)
~DecimateBy2(void)
TSeries apply(const TSeries& ts)
TSeries operator)(const TSeries& ts)
void dataCheck(const TSeries& ts) const
bool isDataValid(const TSeries& ts) const
void setDecimation(int N, int FilterID=1)
void reset(void)
alphabetic index hierarchy of classes
generated by doc++