Without `kaiserord`, we would need to implement Kaiser's
formula [115,67] for estimating the Kaiser-window
required to achieve the given filter specs:

where is the desired stop-band attenuation in dB (typical values in audio work are to ). Note that this estimate for becomes too small when the filter pass-band width approaches zero. In the limit of a zero-width pass-band, the frequency response becomes that of the Kaiser window transform itself. A non-zero pass-band width acts as a ``moving average'' lowpass filter on the side-lobes of the window transform, which brings them down in level. The

A similar function from [198] for *window
design* (as opposed to filter design^{5.7}) is

where now is the desired

Similarly, the filter order is estimated from stop-band attenuation and desired transition width using the empirical formula

(5.13) |

where is in radians between

Without the function `fir1`, we would have to manually
implement the window method of filter design by (1) constructing the
impulse response of the ideal bandpass filter
(a cosine
modulated sinc function), (2) computing the Kaiser window
using
the estimated length and
from above, then finally (3)
windowing the ideal impulse response with the Kaiser window to obtain
the FIR filter coefficients
. A manual design of
this nature will be illustrated in the Hilbert transform example of
§4.6.

[How to cite this work] [Order a printed hardcopy] [Comment on this page via email]

[Watch the Video] [Work some Exercises] [Examination]

Copyright ©

Center for Computer Research in Music and Acoustics (CCRMA), Stanford University