## SYNOPSIS

**#include <rtf_common.h>**

**hfilter rtf_create_chebychev(unsigned int ***nchann***, int ***proctype***,**

** double ***fc***, unsigned int ***num_pole***,**

** int ***highpass***, double ***r***);**

**hfilter rtf_create_butterworth(unsigned int ***nchann***, int ***proctype***,**

** double ***fc***, unsigned int ***num_pole***,**

** int ***highpass***);**

## DESCRIPTION

**rtf_create_chebychev**() creates a IIR chebychev filter processing
*nchann* channels of data type specified by *proctype* with
*fc* as normalized cutoff frequency, whose the Z-transform has
*num_pole* poles and whose the impulse response has a ripple of *r*
This latter is expressed as the ratio between the overshoot (difference
between the max value of the response to a unit step and the unit length)
and the unit length (ratio **not** expressed in decibels).

**rtf_create_butterworth**() is the same as **rtf_create_chebychev**()
but creates a butterworth filter (which a special case of a chebychev filter
with a ripple of 0).

A normalized frequency is the ratio between the absolute frequency and the sampling frequency (i.e. a value of 1.0 refers to the sampling frequency).

If *highpass* is 0, it specifies the filter should be a lowpass. If
*highpass* is non-zero, the should be a highpass.

## RETURN VALUE

Returns the handle to the created filter in case of success, NULL otherwise.