Compute intermediate samples of the derivative of a signal between signal samples x(k*Ts) More...
#include <gnuradio/filter/mmse_interp_differentiator_cc.h>
| Public Member Functions | |
| mmse_interp_differentiator_cc () | |
| mmse_interp_differentiator_cc (mmse_interp_differentiator_cc &&)=default | |
| unsigned | ntaps () const | 
| unsigned | nsteps () const | 
| gr_complex | differentiate (const gr_complex input[], float mu) const | 
| compute a single interpolated differentiated output value. | |
| Protected Attributes | |
| std::vector< kernel::fir_filter_ccf > | filters | 
Compute intermediate samples of the derivative of a signal between signal samples x(k*Ts)
This implements a Minimum Mean Squared Error interpolating differentiator with 8 taps. It is suitable for signals where the derivative of a signal has a bandwidth of interest in the range (-Fs/4, Fs/4), where Fs is the samples rate.
Although mu, the fractional delay, is specified as a float, in the range [0.0, 1.0], it is actually quantized. That is, mu is quantized in the differentiate method to 128th's of a sample.
| gr::filter::mmse_interp_differentiator_cc::mmse_interp_differentiator_cc | ( | ) | 
Referenced by mmse_interp_differentiator_cc().
| 
 | default | 
References mmse_interp_differentiator_cc().
| gr_complex gr::filter::mmse_interp_differentiator_cc::differentiate | ( | const gr_complex | input[], | 
| float | mu ) const | 
compute a single interpolated differentiated output value.
input must have ntaps() valid entries. input[0] .. input[ntaps() - 1] are referenced to compute the output value.
mu must be in the range [0, 1] and specifies the fractional delay.
| std::runtime_error | if mu is not in the range [0, 1]. | 
| unsigned gr::filter::mmse_interp_differentiator_cc::nsteps | ( | ) | const | 
| unsigned gr::filter::mmse_interp_differentiator_cc::ntaps | ( | ) | const | 
| 
 | protected |