Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

SPUC::iir_lpf< Numeric > Class Template Reference
[IIR filters]

Template Class for 1st Order low pass IIR filter from S-domain transformation. More...

#include <iir_lpf.h>

Collaboration diagram for SPUC::iir_lpf< Numeric >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 iir_lpf (double A=0)
void set_coeff (double A)
 iir_lpf (const char *file)
 Constructor reading coefficient from a file.
void print ()
 Print out coefficients.
Numeric clock (Numeric input)
 Input new sample and calculate output.
void reset ()
 Reset.

Protected Attributes

double gain
double a
Numeric out
Numeric previous_out
Numeric previous_in

Detailed Description

template<class Numeric>
class SPUC::iir_lpf< Numeric >

Template Class for 1st Order low pass IIR filter from S-domain transformation.

Template for 1st Order IIR filter.

The filter is assumed the first order low pass digital filter generated by the bilinear transform of a first order analog filter.

$ H(s) = \frac{A}{(s+A)} $

$ H(z) = \frac{A*(1+z^{-1})}{((A-1)+(A-1)*z^{-1})} $ where A is real


Constructor & Destructor Documentation

template<class Numeric>
SPUC::iir_lpf< Numeric >::iir_lpf double  A = 0  )  [inline]
 

template<class Numeric>
SPUC::iir_lpf< Numeric >::iir_lpf const char *  file  )  [inline]
 

Constructor reading coefficient from a file.


Member Function Documentation

template<class Numeric>
Numeric SPUC::iir_lpf< Numeric >::clock Numeric  input  )  [inline]
 

Input new sample and calculate output.

template<class Numeric>
void SPUC::iir_lpf< Numeric >::print void   )  [inline]
 

Print out coefficients.

template<class Numeric>
void SPUC::iir_lpf< Numeric >::reset void   )  [inline]
 

Reset.

template<class Numeric>
void SPUC::iir_lpf< Numeric >::set_coeff double  A  )  [inline]
 


Member Data Documentation

template<class Numeric>
double SPUC::iir_lpf< Numeric >::a [protected]
 

template<class Numeric>
double SPUC::iir_lpf< Numeric >::gain [protected]
 

template<class Numeric>
Numeric SPUC::iir_lpf< Numeric >::out [protected]
 

template<class Numeric>
Numeric SPUC::iir_lpf< Numeric >::previous_in [protected]
 

template<class Numeric>
Numeric SPUC::iir_lpf< Numeric >::previous_out [protected]
 


The documentation for this class was generated from the following file:
Generated on Fri Sep 16 11:09:02 2005 for spuc by  doxygen 1.4.4