SPUC
3.0
|
![]() |
Classes | |
class | SPUC::cic< Numeric > |
class for CIC digital filter More... | |
class | SPUC::farrow< Numeric > |
Template Class for Farrow implementation of a ploynomial interpolation using a FIR filter. More... | |
class | SPUC::fir< Numeric, Coeff > |
Template Class for Modeling a Finite Impulse Response filter. More... | |
class | SPUC::fir_adapt< Numeric, Coeff > |
template class fir_adapt Based on FIR class, created to support LMS adaptive filtering More... | |
class | SPUC::fir_coeff< Numeric > |
Template Class for Modeling a Finite Impulse Response filter. More... | |
class | SPUC::fir_decim< Numeric, Coeff > |
template class for fir decimation based on FIR class More... | |
class | SPUC::fir_interp< Numeric, Coeff > |
template class fir_decim based on FIR class More... | |
class | SPUC::lagrange< Numeric, Coeff > |
Template Lagrange interpolation via FIR Fitler. More... | |
class | SPUC::remez_fir |
template Remez_fir class More... | |
class | SPUC::running_average< Numeric > |
template class running average filter consisting of a delay line, adder and subtractor More... | |
class | SPUC::running_sum< Numeric > |
template class running average filter consisting of a delay line, adder and subtractor More... | |
class | SPUC::scic< Numeric > |
Implementation for sharped cascaded integrator comb filter. More... | |
class | SPUC::sum_and_dump< Numeric > |
sum and dump filter More... | |
Functions | |
void | SPUC::butterworth_fir (fir_coeff< float_type > &butfir, float_type spb) |
Calculate coefficients for FIR assuming butterworth frequency response. More... | |
void | SPUC::create_remez_lpfir (fir_coeff< float_type > &remezfir, float_type pass_edge, float_type stop_edge, float_type stop_weight) |
calculates the coefficients for lowpass FIR based on Remez constraints More... | |
std::vector< float_type > | SPUC::inv_dft_symmetric (const std::vector< float_type > &A, int N) |
Calculate coefficients for FIR using frequency sampling IDFT. More... | |
void | SPUC::gaussian_fir (fir_coeff< float_type > &gaussf, float_type bt, float_type spb) |
Calculate coefficients for FIR assuming gaussian frequency response. More... | |
template<class T > | |
void | SPUC::root_raised_cosine (fir_coeff< T > &rcfir, float_type alpha, int rate) |
template<> | |
void | SPUC::root_raised_cosine_quantized (fir_coeff< long > &rcfir, float_type alpha, int rate, int bits, float_type scale) |
template<> | |
void | SPUC::root_raised_cosine_quantized (fir_coeff< float > &rcfir, float_type alpha, int rate, int bits, float_type scale) |
template<> | |
void | SPUC::root_raised_cosine_quantized (fir_coeff< int > &rcfir, float_type alpha, int rate, int bits, float_type scale) |
template<> | |
void | SPUC::root_raised_cosine_quantized (fir_coeff< double > &rcfir, float_type alpha, int rate, int bits, float_type scale) |
float_type | SPUC::io (float_type x) |
bessel function for kaiser window More... | |
std::vector< float_type > | SPUC::hamming (long nf, float_type alpha, float_type beta) |
hamming window ![]() | |
std::vector< float_type > | SPUC::hanning (long nf) |
hanning window ![]() | |
std::vector< float_type > | SPUC::blackman (long nf) |
Blackman Window ![]() | |
std::vector< float_type > | SPUC::kaiser (long nf, float_type beta) |
kaiser window More... | |
std::vector< float_type > | SPUC::cheby (long nf, long n, long ieo, float_type dp, float_type df, float_type x0) |
dolph chebyshev window design More... | |
void | SPUC::chebc (float_type nf, float_type dp, float_type df, float_type n, float_type x0) |
chebyshev window subroutine to generate chebyshev window parameters when one of the three parameters nf,dp and df is unspecified??? More... | |
std::vector< float_type > SPUC::blackman | ( | long | nf | ) |
void SPUC::butterworth_fir | ( | fir_coeff< float_type > & | butfir, |
float_type | spb | ||
) |
Calculate coefficients for FIR assuming butterworth frequency response.
References SPUC::fir_coeff< Numeric >::coeff, SPUC::cos(), SPUC::exp(), SPUC::fir_coeff< Numeric >::num_taps, PI, SPUC::sqrt(), and TWOPI.
Referenced by main().
void SPUC::chebc | ( | float_type | nf, |
float_type | dp, | ||
float_type | df, | ||
float_type | n, | ||
float_type | x0 | ||
) |
chebyshev window subroutine to generate chebyshev window parameters when one of the three parameters nf,dp and df is unspecified???
chebyshev window
subroutine to generate chebyshev window parameters when one of the three parameters nf,dp and df is unspecified
References SPUC::cos(), SPUC::cosh(), SPUC::coshin(), PI, and TWOPI.
std::vector< float_type > SPUC::cheby | ( | long | nf, |
long | n, | ||
long | ieo, | ||
float_type | dp, | ||
float_type | df, | ||
float_type | x0 | ||
) |
dolph chebyshev window design
References SPUC::cos(), SPUC::cosh(), SPUC::coshin(), SPUC::expj(), PI, and TWOPI.
void SPUC::create_remez_lpfir | ( | fir_coeff< float_type > & | remezfir, |
float_type | edge, | ||
float_type | fx, | ||
float_type | wtx | ||
) |
calculates the coefficients for lowpass FIR based on Remez constraints
Calculate coefficients for lowpass FIR assuming equiripple frequency response.
References SPUC::fir_coeff< Numeric >::num_taps, SPUC::remez_fir::remez(), and SPUC::fir_coeff< Numeric >::settap().
Referenced by main().
void SPUC::gaussian_fir | ( | fir_coeff< float_type > & | gaussf, |
float_type | bt, | ||
float_type | spb | ||
) |
Calculate coefficients for FIR assuming gaussian frequency response.
References SPUC::fir_coeff< Numeric >::coeff, SPUC::exp(), SPUC::fir_coeff< Numeric >::num_taps, SPUC::sqrt(), and TWOPI.
Referenced by main().
std::vector< float_type > SPUC::hamming | ( | long | nf, |
float_type | alpha, | ||
float_type | beta | ||
) |
std::vector< float_type > SPUC::hanning | ( | long | nf | ) |
std::vector< float_type > SPUC::inv_dft_symmetric | ( | const std::vector< float_type > & | A, |
int | N | ||
) |
Calculate coefficients for FIR using frequency sampling IDFT.
References SPUC::cos(), M, and TWOPI.
Referenced by SPUC::remez_fir::remez().
float_type SPUC::io | ( | float_type | x | ) |
bessel function for kaiser window
Referenced by SPUC::kaiser().
std::vector< float_type > SPUC::kaiser | ( | long | nf, |
float_type | beta | ||
) |
void SPUC::root_raised_cosine | ( | fir_coeff< T > & | rcfir, |
float_type | alpha, | ||
int | rate | ||
) |
References SPUC::fir_coeff< Numeric >::coeff, SPUC::fir_coeff< Numeric >::num_taps, and SPUC::root_raised_cosine_imp().
Referenced by SPUC::qam_tx< float_type >::loop_init(), SPUC::quad_data< float_type >::quad_data(), and SPUC::sim_qam< Numeric >::sim_qam().
void SPUC::root_raised_cosine_quantized | ( | fir_coeff< long > & | rcfir, |
float_type | alpha, | ||
int | rate, | ||
int | bits, | ||
float_type | scale | ||
) |
References SPUC::fir_coeff< Numeric >::coeff, SPUC::fir_coeff< Numeric >::num_taps, SPUC::root_raised_cosine_imp(), and SPUC_TOLONG.
void SPUC::root_raised_cosine_quantized | ( | fir_coeff< float > & | rcfir, |
float_type | alpha, | ||
int | rate, | ||
int | bits, | ||
float_type | scale | ||
) |
References SPUC::fir_coeff< Numeric >::coeff, SPUC::fir_coeff< Numeric >::num_taps, and SPUC::root_raised_cosine_imp().
void SPUC::root_raised_cosine_quantized | ( | fir_coeff< int > & | rcfir, |
float_type | alpha, | ||
int | rate, | ||
int | bits, | ||
float_type | scale | ||
) |
References SPUC::fir_coeff< Numeric >::coeff, SPUC::fir_coeff< Numeric >::num_taps, SPUC::root_raised_cosine_imp(), and SPUC_TOINT.
void SPUC::root_raised_cosine_quantized | ( | fir_coeff< double > & | rcfir, |
float_type | alpha, | ||
int | rate, | ||
int | bits, | ||
float_type | scale | ||
) |
References SPUC::fir_coeff< Numeric >::coeff, SPUC::fir_coeff< Numeric >::num_taps, and SPUC::root_raised_cosine_imp().