Design of digital recursive filters by the poles and zeros method

In order to facilitate the design of recursive digital filters, but also to improve the digital stability of these, it is common to represent the numerator and the denominator as a product of first-order and second-order filters.

The transfer function is as following:

Recall: the stability condition is that all the poles have to be contained in the unity circle.

It's possible to programme this kind of filter thanks to the Matlab software in this way:

[Z,P,K] = BUTTER(...), the zeros and poles are returned in length Ncolumn vectors Z and P, and the gain in scalar K.


Interpretation of the position of the poles and zeros

When a zero is placed on a given plan of the z-plan, the frequency response will be equal to 0 at this point. A pole will be the source of a peak.










On the left figure, the complete circle corresponds to a domain between -Fe/2 and Fe/2 (-180 corresponding to -fe/2 and 180à fe/2).

It is possible, thanks to a pertinent placement of the poles and zeros, to obtain a selective simple filter.

N.B.1 : The filter coefficients have to be real, that means that the poles and zeros have either to be real or to be conjugate complex.

N.B.2 : There is an empirical relationship between the transition width and the poles position and the radius which may be le 1.

. This relation is valable only if r > 0,9