Waveform filter programs
|
Public Types | |
typedef fourier::fft::DRFFTWAFF | Tfft |
type of FFT processor More... | |
typedef Tfft::Tseries | Tseries |
type of time series data More... | |
typedef Tfft::Tspectrum | Tspectrum |
type of Fourier coefficient data More... | |
typedef ts::TDtimeseries | Ttimeseries |
full time series with sampling interval More... | |
typedef Ttimeseries::Tconsttimeseries | Tconsttimeseries |
full time series with sampling interval More... | |
Public Member Functions | |
FourierProcessor (const bool &debug=false) | |
create object More... | |
FourierProcessor (const Tconsttimeseries &s, const bool &debug=false) | |
create object by passing a time series More... | |
FourierProcessor (const Tconsttimeseries &s, const unsigned int &n) | |
Tspectrum::Tcoc | operator() (const unsigned int &n) |
return Fourier coefficients for padded time series with n samples More... | |
Tspectrum::Tcoc | operator() (const Tconsttimeseries &s, const unsigned int &n) |
return Fourier coefficients for time series s padded to n samples More... | |
void | setseries (const Tconsttimeseries &s) |
set new input series More... | |
Private Member Functions | |
void | padseries (const unsigned int &n) |
pad input series and calculate Fourier coefficients More... | |
Private Attributes | |
Tfft | MFFT |
FFT processor. More... | |
Tseries | Mseries |
workspace for input series must have at least desired size More... | |
Tseries | Mpadded |
series addressing part of workspace More... | |
Tspectrum | Mspectrum |
resulting Fourier coefficients More... | |
bool | Mspecavail |
indicate available Fourier coefficients More... | |
unsigned int | Minsize |
size of original input series More... | |
double | Mdt |
sampling interval More... | |
bool | Mdebug |
debug flag More... | |
Process time series with padding.
Input time series must be appropriately zero padded. This means that the series passed to the FFT processor is larger than the actual time series. To avoid re-allocation of workspace, this class handles all operation in one persistent workspace and supports access to Fourier coefficients for different time series length.