Skip to content

IIR Prototype Comparison

Copy this iframe to your website:

1
<iframe src="https://dmccreary.github.io/signal-processing/sims/iir-prototype-comparison/main.html" width="100%" height="762px" scrolling="no"></iframe>

Run MicroSim in Fullscreen

Description

This MicroSim compares the five classic analog low-pass prototypes that IIR filter design starts from: Butterworth, Chebyshev I, Chebyshev II, elliptic (Cauer) and Bessel (Thomson), all of the same order \(N\). Every plot is computed from the pole and zero lists of

\[H(s) = K\,\frac{\prod_i (s - z_i)}{\prod_k (s - p_k)},\]

so the magnitude (dB on a log frequency axis), phase, group delay \(\tau(\omega) = -d\phi/d\omega\), step response and s-plane plot of poles (×) and zeros (○) all describe the same filters.

  • Family checkboxes show or hide each family; colors match the legend and the table.
  • Order N (1 to 10) is the number of poles.
  • Ripple \(R_p\) (0.1 to 3 dB) is the passband tolerance; Chebyshev I and elliptic designs ripple by exactly \(R_p\).
  • Stopband \(A_s\) (20 to 80 dB) is the stopband attenuation that Chebyshev II and elliptic designs guarantee.
  • Scaling puts either the −3.01 dB point or the passband edge of every family at \(\omega = 1\) rad/s.
  • Zoom passband enlarges the passband to show the ripple.

The table lists \(\omega_p\) (where the loss first exceeds \(R_p\)), \(\omega_s\) (beyond which the loss stays at least \(A_s\)), the transition width \(\Delta\omega = \omega_s - \omega_p\), the ratio \(\omega_s/\omega_p\), the step overshoot and the 2% settling time. The smallest transition width, overshoot and settling time are highlighted in gold.

The elliptic poles and zeros are computed exactly from Jacobi elliptic functions (Landen transformations). The Bessel poles are the roots of the reverse Bessel polynomial (1 s group delay at DC), rescaled like the other families.

This simulation is used in Chapter 10: Advanced Filter Design and Implementation.

Key Formulas

\[|H_{\text{Butterworth}}(j\omega)|^2 = \frac{1}{1 + (\omega/\omega_c)^{2N}} \qquad |H_{\text{Chebyshev I}}(j\omega)|^2 = \frac{1}{1 + \varepsilon^2 T_N^2(\omega/\omega_c)},\quad \varepsilon = \sqrt{10^{R_p/10} - 1}\]

For Chebyshev I, \(\omega_c\) is the ripple edge. Both Chebyshev types have \(\omega_s/\omega_p = \cosh\!\big(\cosh^{-1}(\varepsilon_s/\varepsilon)/N\big)\) with \(\varepsilon_s = \sqrt{10^{A_s/10} - 1}\); the elliptic ratio \(1/k\) solves the degree equation \(K'(k)/K(k) = K'(k_1)/\big(N K(k_1)\big)\) with \(k_1 = \varepsilon/\varepsilon_s\) and complete elliptic integrals \(K\), \(K'\).

Lesson Plan

Learning Objectives

After using this MicroSim, students will be able to:

  1. Compare the transition width \(\Delta\omega = \omega_s - \omega_p\) of the five prototype families at the same order and rank them from sharpest to gentlest
  2. Relate the pole and zero pattern in the s-plane (a circle, an ellipse, poles close to the \(j\omega\) axis, zeros on the \(j\omega\) axis) to flatness, ripple and notches in the magnitude response
  3. Analyze the trade-off between frequency selectivity and time-domain behavior: overshoot, settling time and group-delay variation
  4. Calculate Butterworth band edges and the minimum Butterworth order from \(|H|^2 = 1/(1 + \omega^{2N})\), and check them against the read-outs
  5. Evaluate which prototype best meets an application requirement, such as sharp channel selection or faithful pulse shape

Target Audience

Undergraduate students in a junior- or senior-level signals and systems or digital signal processing course in electrical engineering, computer engineering or physics. Plan 30 to 40 minutes for the activities.

Prerequisites

  • The Laplace transform, transfer functions and the frequency response \(H(j\omega)\)
  • Poles, zeros and stability in the s-plane
  • Decibels, the step response and group delay
  • Filter specifications: passband, stopband and transition band (Chapter 9: Filter Design Fundamentals)

Activities

Activity 1: Rank the families by selectivity (8 min). Use the default settings: \(N = 4\), \(R_p = 1.0\) dB, \(A_s = 40\) dB, scaling "−3 dB point at ω = 1 rad/s", with Butterworth, Chebyshev I, elliptic and Bessel shown. Every curve passes through −3.01 dB at \(\omega = 1\). The dots on the dashed −40 dB line are the stopband edges: 1.459 (elliptic), 2.221 (Chebyshev I), 3.162 (Butterworth) and 4.724 rad/s (Bessel). The table gives the transition widths 0.496, 1.271, 2.318 and 4.130 rad/s. Look at the s-plane: the Butterworth poles lie on the unit circle, the Chebyshev I poles lie on a flattened ellipse closer to the \(j\omega\) axis, and only the elliptic filter has zeros, at \(\pm j1.55\) (on the plot) and \(\pm j3.39\) (listed under it). Those zeros are the two notches in the magnitude plot.

Activity 2: The same specification for two Chebyshevs (8 min). Check Chebyshev II and set Scaling to "Passband edge at ω = 1 rad/s". Now every family has exactly 1 dB loss at \(\omega = 1\), so \(\omega_p = 1.000\) for all of them and \(\omega_s\) equals the selectivity ratio: elliptic 1.515, Chebyshev I and Chebyshev II both 2.339, Butterworth 3.744 and Bessel 7.964. Check Zoom passband. Chebyshev I ripples between 0 and −1 dB and touches 0 dB at \(\omega = 0.383\) and \(0.924\) rad/s (where \(T_4(\omega) = 0\)). Chebyshev II is flat and monotonic in the passband because its ripple is in the stopband, where its zeros sit at \(\pm j2.53\) and \(\pm j6.11\). The two Chebyshevs have the same selectivity, but Chebyshev II overshoots only 13.0% and settles in 8.42 s, compared with 21.9% and 19.20 s for Chebyshev I.

Activity 3: The time-domain price of sharpness (8 min). Return to the default settings. In the table, overshoot grows as the transition narrows: Bessel 0.8%, Butterworth 10.8%, Chebyshev I 21.9% and elliptic 24.0%. The 2% settling times grow the same way: 3.88, 9.87, 20.22 and 23.12 s. In the group-delay plot the Bessel curve stays flat near 2.11 s through the passband, while the elliptic delay peaks near 11 s just below \(\omega = 1\). The delay peaks come from the poles closest to the \(j\omega\) axis. The Chebyshev I and elliptic step responses settle at 0.891, not 1, because an even-order equiripple design has a DC gain of \(10^{-R_p/20}\).

Activity 4: Raise the order (8 min). Keep the −3 dB scaling with \(R_p = 1.0\) dB and \(A_s = 40\) dB and move the Order slider. At \(N = 1\) all five families are the same first-order filter \(1/(s + 1)\): every row reads \(\Delta\omega = 99.49\) rad/s, 0.0% overshoot and 3.91 s settling. The elliptic transition width shrinks fastest: 4.977 (\(N = 2\)), 1.305 (\(N = 3\)), 0.496 (\(N = 4\)), 0.098 (\(N = 6\)) and 0.022 rad/s (\(N = 8\)). The Butterworth width falls more slowly: 9.286, 3.843, 2.318, 1.261 and 0.859 rad/s. Meanwhile the elliptic settling time grows from 23.12 s at \(N = 4\) to 57.73 s at \(N = 8\), and its group-delay peak runs off the chart ("peaks clipped"). Bessel overshoot stays below 1% at every order.

Assessment

  1. With \(N = 4\), \(R_p = 1\) dB and \(A_s = 40\) dB, a specification requires \(\omega_s/\omega_p \le 2\). Which families meet it? Answer: only the elliptic filter (1.515). Chebyshev I and II give 2.339, Butterworth 3.744 and Bessel 7.964.
  2. Use \(|H|^2 = 1/(1 + \omega^{2N})\) to find the Butterworth stopband edge for \(N = 4\) and \(A_s = 40\) dB, with the −3 dB point at 1 rad/s. Answer: \(10\log_{10}(1 + \omega_s^8) = 40\), so \(\omega_s = (10^4 - 1)^{1/8} = 3.162\) rad/s, which matches the table.
  3. What is the smallest Butterworth order that matches the selectivity of the 4th-order elliptic filter (\(\omega_s/\omega_p = 1.515\)) with \(R_p = 1\) dB and \(A_s = 40\) dB? Answer: \(N \ge \log_{10}\!\big((10^{4} - 1)/(10^{0.1} - 1)\big) / \big(2\log_{10} 1.515\big) = 12.7\), so \(N = 13\). Even at \(N = 10\) the sim shows a Butterworth ratio of 1.696.
  4. Why does the 4th-order Chebyshev I step response settle at about 0.89 instead of 1? Answer: for even \(N\) the equiripple passband starts at a ripple minimum, so the DC gain is \(1/\sqrt{1 + \varepsilon^2} = 10^{-1/20} = 0.891\) for \(R_p = 1\) dB. Overshoot is measured relative to this final value.
  5. A data-acquisition front end must pass rectangular pulses with as little ringing as possible. Which family would you choose at \(N = 4\), and what does it cost? Answer: Bessel, with 0.8% overshoot, 3.88 s settling and nearly constant group delay (the elliptic filter has 24.0% and 23.12 s). The cost is the widest transition band, \(\Delta\omega = 4.130\) rad/s against 0.496 rad/s for the elliptic filter.

Common Misconceptions

"The sharpest filter is the best filter." Sharpness is paid for in the time domain. In the default table the family with the narrowest transition (elliptic, 0.496 rad/s) also has the largest overshoot (24.0%) and the longest settling time (23.12 s). At \(N = 8\) its transition is only 0.022 rad/s wide, but it takes 57.73 s to settle and its group delay peak no longer fits on the plot.

"Chebyshev II gives up selectivity to get a flat passband." With "Passband edge at ω = 1 rad/s" scaling, Chebyshev I and Chebyshev II have exactly the same \(\omega_s = 2.339\). Type II does not lose selectivity. It moves the equiripple behavior from the passband to the stopband, and it rings less.

References

  1. Butterworth filter - Wikipedia - the maximally flat magnitude response and its poles on a circle
  2. Chebyshev filter - Wikipedia - Type I and Type II responses, the ripple factor and the elliptical pole locus
  3. Elliptic filter - Wikipedia - equiripple passband and stopband, the elliptic rational function and the selectivity factor
  4. Bessel filter - Wikipedia - maximally flat group delay and the reverse Bessel polynomial
  5. Group delay and phase delay - Wikipedia - why constant group delay preserves pulse shape
  6. Jacobi elliptic functions - Wikipedia - the sn and cd functions behind the elliptic poles and zeros
  7. The Scientist and Engineer's Guide to Digital Signal Processing - Steven W. Smith - free online textbook with chapters on Chebyshev filters and on step-response versus frequency-response trade-offs