### IIR Analog Filters

**Requirements:** DSP Libraries

**Limitations:** None

This module computes coefficients for three types of filters. They require the following parameters:

- Butterworth: passband edge

- Chebyshev: passband ripple, passband edge

- Elliptical: passband ripple, stopband ripple, passband edge, stopband edge

You may save the computed coefficients and the filter’s parameters to a file.

The Butterworth filter is the best compromise between attenuation and phase response. It has no ripple in the pass band or the stop band, and because of this is sometimes called a maximally flat filter. The Butterworth filter achieves its flatness at the expense of a relatively wide transition region from pass band to stop band, with average transient characteristics.

The Chebyshev filter has a smaller transition region than the same-order Butterworth filter, at the expense of ripples in its pass band. The filter minimizes the height of the maximum ripple. If you use a Chebyshev filter, you should also choose the type of normalization to apply.

An Elliptical (Cauer) filter has a shorter transition region than the Chebyshev filter because it allows ripples in both the stop and pass bands, giving a much higher rate of attenuation in the stop band. Elliptical filters give better frequency discrimination, but have a degraded transient response.

The DSP libraries should already be installed in `/usr/local/lib/rtxi/libs`

, with headers in `/usr/local/include/rtxi/libs/DSP`

.

#### Input Channels

- input(0) – “Input” : Signal to filter

#### Output Channels

- output(0) – “Output” : Filtered signal

#### Parameters

- Filter Order: an integer for the desired order for the filter
- Passband Ripple (dB)
- Passband Edge (Hz)
- Stopband Ripple (dB)
- Stopband Edge (Hz)
- Input quantizing factor: the number of bits to which the input signal is to be quantized
- Coefficients quantizing factor: the number of bits to which the filter coefficients are to be quantized