firlp2hp

Convert FIR lowpass filter to Type I FIR highpass filter

Syntax

g = firlp2hp(b)
g = firlp2hp(b,'narrow')
g = firlp2hp(b,'wide')

Description

g = firlp2hp(b) transforms the lowpass FIR filter b into a Type I highpass FIR filter g with zero-phase response Hr(π-w). Filter b can be any FIR filter, including a nonlinear-phase filter.

The passband and stopband ripples of g will be equal to the passband and stopband ripples of b.

g = firlp2hp(b,'narrow') transforms the lowpass FIR filter b into a Type I narrow band highpass FIR filter g with zero-phase response Hr(π-w). b can be any FIR filter, including a nonlinear-phase filter.

g = firlp2hp(b,'wide') transforms the Type I lowpass FIR filter b with zero-phase response Hr(w) into a Type I wide band highpass FIR filter g with zero-phase response 1 - Hr(w). Note the restriction that b must be a Type I linear-phase filter.

For this case, the passband and stopband ripples of g will be equal to the stopband and passband ripples of b.

Examples

collapse all

Create a narrowband lowpass filter to use as prototype. Display its zero-phase response.

b = firgr(36,[0 0.2 0.25 1],[1 1 0 0],[1 3]);

zerophase(b)

Convert the prototype filter to a narrowband highpass filter. Add to the plot the zero-phase response of the new filter.

h = firlp2hp(b);

hold on
zerophase(h)

Convert the prototype filter to a wideband highpass filter. Add to the plot the zero-phase response of the new filter.

g = firlp2hp(b,'wide');

zerophase(g)
hold off

References

Saramaki, T, Finite Impulse Response Filter Design, Handbook for Digital Signal ProcessingMitra, S.K. and J.F. Kaiser Eds. Wiley-Interscience, N.Y., 1993, Chapter 4.

Introduced in R2011a