Documentation

filternorm

2-norm or infinity-norm of digital filter

Syntax

L = filternorm(b,a)
L = filternorm(b,a,pnorm)
L = filternorm(b,a,2,tol)

Description

A typical use for filter norms is in digital filter scaling to reduce quantization effects. Scaling often improves the signal-to-noise ratio of the filter without resulting in data overflow. You also can use the 2-norm to compute the energy of the impulse response of a filter.

L = filternorm(b,a) computes the 2-norm of the digital filter defined by the numerator coefficients in b and denominator coefficients in a.

L = filternorm(b,a,pnorm) computes the 2- or infinity-norm (inf-norm) of the digital filter, where pnorm is either 2 or inf.

L = filternorm(b,a,2,tol) computes the 2-norm of an IIR filter with the specified tolerance, tol. The tolerance can be specified only for IIR 2-norm computations. pnorm in this case must be 2. If tol is not specified, it defaults to 10–8.

Examples

collapse all

Compute the 2-norm of a Butterworth IIR filter with tolerance $1{0}^{-10}$. Specify a normalized cutoff frequency of $0.5\pi$ rad/s and a filter order of 5.

[b,a] = butter(5,0.5);
L2 = filternorm(b,a,2,1e-10)
L2 = 0.7071

Compute the infinity-norm of an FIR Hilbert transformer of order 30 and normalized transition width $0.2\pi$ rad/s.

b = firpm(30,[.1 .9],[1 1],'Hilbert');
Linf = filternorm(b,1,inf)
Linf = 1.0028

Algorithms

Given a filter with frequency response H(e), the Lp-norm for 1 ≤ p < ∞ is given by

${‖H\left({e}^{j\omega }\right)‖}_{p}={\left(\frac{1}{2\pi }{\int }_{-\pi }^{\pi }{|H\left({e}^{j\omega }\right)|}^{p}d\omega \right)}^{1/p}.$

For the case p → ∞, the L-norm is

${‖H\left({e}^{j\omega }\right)‖}_{\infty }=\underset{-\pi \le \omega \le \pi }{\mathrm{max}}|H\left({e}^{j\omega }\right)|.$

For the case p = 2, Parseval's theorem states that

${‖H\left({e}^{j\omega }\right)‖}_{2}={\left(\frac{1}{2\pi }{{\int }_{-\pi }^{\pi }|H\left({e}^{j\omega }\right)|}^{2}d\omega \right)}^{1/2}={\left(\sum _{n}{|h\left(n\right)|}^{2}\right)}^{1/2},$

where h(n) is the impulse response of the filter. The energy of the impulse response is the squared L2-norm.

References

 Jackson, L. B. Digital Filters and Signal Processing: with MATLAB Exercises. 3rd Ed. Hingham, MA: Kluwer Academic Publishers, 1996, Chapter 11.