Ask a Question | Search DSPSR: |
Home
|
Public Member Functions |
Protected Member Functions |
Protected Attributes |
Friends |
List of all members
dsp::Convolution Class Reference Convolves a TimeSeries using a frequency response function. More...
Inheritance diagram for dsp::Convolution:
Detailed DescriptionConvolves a TimeSeries using a frequency response function. This class implements the overlap-save method of discrete convolution with a finite impulse response (FIR) function, as described in Chapter 13.1 of Numerical Recipes. The algorithm can perform both scalar and matrix convolution methods, and is highly suited to phase-coherent dispersion removal and phase-coherent polarimetric calibration. If g(t) is the finite impulse response function with which the data stream will be convolved, then the Convolution::response attribute represents G(w), the FFT of g(t). Convolution::response may contain an array of filters, one for each frequency channel. In order to improve the spectral leakage characteristics, an apodization function may be applied to the data in the time domain by setting the Convolution::temporal_apodization attribute. In order to improve the temporal leakage characteristics, an apodization function may be applied to the data in the frequency domain by setting the Convolution::spectral_apodization attribute. Referring to Figure 13.1.3 in Numerical Recipes, =response->get_impulse_pos() and =response->get_impulse_neg(), so that the duration, M= , of g(t) corresponds to the number of complex time samples in the result of each backward FFT that are polluted by the cyclical convolution transformation. Consequently, and complex samples are dropped from the beginning and end, respectively, of the result of each backward FFT; neighbouring FFTs will overlap by the appropriate number of points to make up for this loss. Member Function Documentation◆ prepare()
Prepare all relevant attributes. Complex samples dropped from beginning of cyclical convolution result Complex samples dropped from end of cyclical convolution result Reimplemented from dsp::Operation. Reimplemented in dsp::InverseFilterbank, and dsp::Filterbank. References Signal::Analytic, FTransform::bcc, FTransform::fcc, FTransform::frc, FTransform::get_norm(), and Signal::Nyquist. ◆ prepare_spectral_apodization() [1/2]
Prepare the spectral apodization function using input->get_dual_sideband. Prepare spectral apodization / tapering window. ◆ prepare_spectral_apodization() [2/2]
Prepare the spectral apodization function. Prepare spectral apodization / tapering window. ◆ prepare_temporal_apodization()
Prepare the temporal apodization function. Prepare temporal apodization / tapering window. References Signal::Analytic, and Signal::Nyquist. ◆ set_device()
Set the memory allocator to be used. Set the device memory to use. References dsp::Scratch::set_memory(). ◆ set_response()
Return a descriptive string. Set the frequency response function. Initialize from a descriptor string as output by above Set the frequency response function ◆ transformation()
Perform the convolution transformation on the input TimeSeries.
Implements dsp::Transformation< TimeSeries, TimeSeries >. Reimplemented in dsp::InverseFilterbank, and dsp::Filterbank. References Signal::Analytic, and Signal::Nyquist. The documentation for this class was generated from the following files:
Generated using doxygen 1.8.17
|