Transfer functions, poles and zeros of FIR filters are often brushed aside apparently because it requires a knowledge of the Z Transform.

Here the zeros are shown for a LP configuration using the Fourier Series. Poles are added to the transfer function at the origin for causality but they do not affect the frequency response and are not included here.

The first applet shows a magnitude plot of the transfer function over a range ±1.2 in the Z plane. Zeros show up as minima (white areas) in the plot. Numerical values of the zeros can be obtained by varying zr, zi (shown as a yellow x) in the region of the zero until a minimum is obtained(shown by Mag(zr, zi) = ---). Furthur refinement is possible by varying zr2, zi2.

With Parameters (7, 0.05, zr, zi, 0.5, 1.0, 1.4, NA, 0.0, 0.0)

There are 6 Zeros between zero and the sampling frequency approximately located at:-

0.59426 ± j0.80428, 0.149w

-0.236429 ± j0.97165, 0.288w

-0.902739 ± j0.43019, 0.429w

Changing fc/fs shows how the zeros move

for fc/fs < 0.14, zeros on the unit circle.

for fc/fs > 0.14, one pair of zeros coalese, break apart, one moves towards -∞ and the other towards zero.

for fc/fs ~ 0.167, one zero moves to the +ve z axis and the other one moves from -∞ to +∞.

for fc/fs > 0.167, both zeros move towards the unit circle from different directions.

for fc/fs ~ 0.279, a second pair of zeros coalesce, break apart, one moves towards -∞ and the other towards zero.

for fc/fs ~ 0.333, a second zero moves to the +ve z axis and another moves from -∞ to +∞.

for fc/fs ~ 0.341, the 2 zeros along the + ve z axis outside the unit circle coalesce, break apart and become complex conjugate zeros.

for fc/fs ~ 0.343, the 2 zeros along the + ve z axis inside the unit circle coalesce, break apart and become complex conjugate zeros.

The parameters (7, 0.39, zr, zi, 0.8, 2.0, 1.3, NA, NA, NA)

show the filter now has 2 zeros in the stop band and 4(2 inside and 2 outside the unit circle) in the passband between zero and the sampling frequency. for fc/fs ~ 0.413, the third pair of zeros coalesce, break apart, one moves towards -∞ and the other towards zero.

The parameters (7, 0.47, zr, zi, 0.8, 2.0, 1.3, NA, NA, NA)

show the filter now has 3 zeros inside the unit circle and 3 zeros outside.

With the magnitude plot some of the zeros may be difficult to locate because the slope of the function near these zeros is very steep. This is worse for the zeros outside the unit circle.

An alternative is to plot the phase of the transfer function in the Z plane.

The transfer function can be written as :-

G(z) = I(0) + I(1)z

This can also be written as :-

G(z) = (I(0)z

If the phase of G(z) is plotted in the Z plane, then there are (N - 1) phase discontinuities which begin at the poles at Z = 0 and end at the zeros. This can be seen by setting Fn = 0 in the applet below.

The phase discontinuities are at the red - violet boundary.

If the phase of N(z) is plotted in the Z plane, then there are (N - 1) phase discontinuities which begin at Z = ∞ and end at the zeros. This can be seen by setting Fn = 1 in the applet below.

The Phase plots show the same sequence of events as the magnitude plot but it is easier to follow the movement of the zeros outside the unit circle.

For Parameters (13, 0.35. zr, zi, 0.0, 0.0, zg, 0, NA, NA)

The transfer function has 12 zeros which can be located by zr, zi. zr2, zi2 can make small adjustments to zr, zi. There are 4 zeros on the unit circle in the stop band,

4 zeros inside the unit circle in the pass band.

and 4 zeros outside the unit circle in the pass band.

Approximate locations of zeros are:-

-0.974528 ± j0.224262 at 0.464ws

-0.786995 ± j0.616959 at 0.394ws

+0.107055 ± j0.530995 at 0.218ws

+0.43308 ± j0.207685 at 0.0711ws

+0.364864 ± j1.80969 at 0.218ws

+1.87731 ± j0.900272 at 0.0711ws

The first 2 zeros are on the unit circle. The other 4 form pairs at frequencies 0.218, 0.0711 ws. In the pass band the magnitude of the product of the 2 zeros at the same frequency is 1.

COPYRIGHT © 2008 Cuthbert Nyack.