FIR filters

Collaboration diagram for FIR filters:


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_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.
void SPUC::create_remez_lpfir (fir_coeff< float_type > &remezfir, float_type pass_edge, float_type stop_edge, float_type stop_weight)
 Calculate coefficients for lowpass FIR assuming equiripple frequency response.
void SPUC::inv_dft_symmetric (smart_array< float_type > h, smart_array< float_type > A, int N)
 Calculate coefficients for FIR using frequency sampling IDFT.
void SPUC::gaussian_fir (fir_coeff< float_type > &gaussf, float_type bt, float_type spb)
 Calculate coefficients for FIR assuming gaussian frequency response.
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
smart_array< float_typeSPUC::hamming (long nf, float_type alpha, float_type beta)
 hamming window $ w(n) = alpha + beta*cos( 2*\pi*(n-1)/(nf-1) )$
smart_array< float_typeSPUC::hanning (long nf)
 hanning window $ w(n) = 0.5( 1 - cos( 2*\pi*n/(nf-1) )$
smart_array< float_typeSPUC::blackman (long nf)
 Blackman Window $ w[x] = 0.42 - 0.5*cos(2*\pi*x/nf) + 0.08*cos(2*\pi*x/nf)$.
smart_array< float_typeSPUC::kaiser (long nf, float_type beta)
 kaiser window
smart_array< float_typeSPUC::cheby (long nf, long n, long ieo, float_type dp, float_type df, float_type x0)
 dolph chebyshev window design
void SPUC::chebc (float_type nf, float_type dp, float_type df, float_type n, float_type x0)
 chebyshev window

Function Documentation

smart_array< float_type > SPUC::blackman ( long  nf  ) 

Blackman Window $ w[x] = 0.42 - 0.5*cos(2*\pi*x/nf) + 0.08*cos(2*\pi*x/nf)$.

Author:
Tony Kirke

void SPUC::butterworth_fir ( fir_coeff< float_type > &  butfir,
float_type  spb 
)

Calculate coefficients for FIR assuming butterworth frequency response.

Author:
Tony Kirke, Copyright(c) 2001

Tony Kirke

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

Author:
Tony Kirke

smart_array< float_type > SPUC::cheby ( long  nf,
long  n,
long  ieo,
float_type  dp,
float_type  df,
float_type  x0 
)

dolph chebyshev window design

Author:
Tony Kirke

void SPUC::create_remez_lpfir ( fir_coeff< float_type > &  remezfir,
float_type  edge,
float_type  fx,
float_type  wtx 
)

Calculate coefficients for lowpass FIR assuming equiripple frequency response.

Author:
Tony Kirke, Copyright(c) 2001

Tony Kirke

void SPUC::gaussian_fir ( fir_coeff< float_type > &  gaussf,
float_type  bt,
float_type  spb 
)

Calculate coefficients for FIR assuming gaussian frequency response.

Author:
Tony Kirke, Copyright(c) 2001

Tony Kirke

smart_array< float_type > SPUC::hamming ( long  nf,
float_type  alpha,
float_type  beta 
)

hamming window $ w(n) = alpha + beta*cos( 2*\pi*(n-1)/(nf-1) )$

Author:
Tony Kirke

smart_array< float_type > SPUC::hanning ( long  nf  ) 

hanning window $ w(n) = 0.5( 1 - cos( 2*\pi*n/(nf-1) )$

Author:
Tony Kirke

void SPUC::inv_dft_symmetric ( smart_array< float_type h,
smart_array< float_type A,
int  N 
)

Calculate coefficients for FIR using frequency sampling IDFT.

Author:
Tony Kirke, Copyright(c) 2001

Tony Kirke

float_type SPUC::io ( float_type  x  ) 

bessel function for kaiser window

function: io

smart_array< float_type > SPUC::kaiser ( long  nf,
float_type  beta 
)

kaiser window

Author:
Tony Kirke

template<class T>
void SPUC::root_raised_cosine ( fir_coeff< T > &  rcfir,
float_type  alpha,
int  rate 
)

Author:
Tony Kirke

template<>
void SPUC::root_raised_cosine_quantized ( fir_coeff< double > &  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< float > &  rcfir,
float_type  alpha,
int  rate,
int  bits,
float_type  scale 
)

template<>
void SPUC::root_raised_cosine_quantized ( fir_coeff< long > &  rcfir,
float_type  alpha,
int  rate,
int  bits,
float_type  scale 
)


Generated on Mon Jun 9 19:40:20 2008 for DSPTemplates by  doxygen 1.4.7