Designs an FIR linear phase Kaiser highpass filter.

KWHPASS(order, rate, fstop, fc, attn)

order |
- |
Optional. An integer, the filter length. If not specified, the filter order is automatically estimated. |

rate |
- |
A real, the sample rate of the filter in Hertz. |

fstop |
- |
A real, the stopband frequency in Hertz. |

fc |
- |
A real, the cutoff frequency in Hertz. |

attn |
- |
A real, the stopband attenuation in dB. |

A series, the highpass filter coefficients. The filter coefficients are identical to the impulse response of the FIR filter.

W1: kwhpass(1000.0, 180.0, 200.0, 40.0)

W2: 20*log10(filtmag(W1, {1}, 1024))

Generates a 119 point highpass filter with a pass band edge of 200 Hz and a stop band edge of 180 Hz. The stopband attenuation is 40 dB and the time offset is -0.059 seconds. W2 displays the frequency response of the filter.

W1: kwhpass(1000.0, 180.0, 200.0, 40.0)

W2: gsin(1000, 1/1000, 10) + gsin(1000, 1/1000, 400)

W3: firfilterf(W2, W1)

Creates the same FIR highpass filter as the previous example. W2 contains a series with two sinusoids and W3 applies the filter to recover the high frequency sinewave.

W2: kwhpass(140, 1000.0, 180.0, 200.0, 40.0)

Designs the same filter as above except the filter order is explicitly set to 140 samples resulting in a slightly narrower transition band.

The KWHPASS filter specifications are depicted as follows:

KWHPASS designs a highpass filter using a Kaiser window method. The impulse response of the ideal filter is multiplied by a Kaiser window to produce a linear phase FIR filter with a flat passband. The filter is non-causal and time symmetric about t = 0 and the offset is equal to:

- (length-1) / (rate * 2)

The filter order refers to the number of resulting filter coefficients, though the order will always be odd for a highpass filter.

The highpass edges must lie between 0.0 and 0.5 * rate (the Nyquist frequency). Overlapping band edges are not permitted.

Although a filter designed with the Kaiser window method exhibits a flat passband response, the resulting filter generally has more coefficients than the Remez Exchange method. See HIGHPASS to design a linear phase FIR highpass filter using the Remez Exchange algorithm.

See BESSEL, BUTTERWORTH, CHEBY1, CHEBY2 and ELLIPTIC to design IIR filters using the Bilinear Transform method.

KWHPASS requires the DADiSP/Filters Module.

Oppenheim and Schafer

Discrete Time Signal Processing

Prentice Hall, 1989

Digital Signal Processing Committee

Programs for Digital Signal Processing

I.E.E.E. Press, 1979

Bateman & Yates

Digital Signal Processing Design

Computer Science Press, 1989