Skip to main content

Bilinear Butterworth, 0.89125 and 0.17783 limits

Short answer

After pre-warping (T=1 s), Ωp=0.6498 rad/s and Ωs=1.0191 rad/s; Butterworth order N=6, Ωc=0.7273 rad/s. Bilinear substitution gives H(z) as a cascade of three second-order sections; numerator coefficients [0.00058,0.00348,0.00870,0.01159,0.00870,0.00348,0.00058] over denominator [1,-3.31430,4.95011,-4.14326,2.02754,-0.54583,0.06284].

Using bilinear transformation, design a Butterworth low pass filter which satisfies the following magnitude response: 0.89125 ≤ |H(e^jw)| ≤ 1 for 0 ≤ ω ≤ 0.2π; |H(e^jw)| ≤ 0.17783 for 0.3π ≤ ω ≤ π.

Step 1: specifications

Butterworth low-pass: 0.89125 ≤ |H| ≤ 1 for 0 ≤ ω ≤ 0.2π (−1 dB) and |H| ≤ 0.17783 for 0.3π ≤ ω ≤ π (−15 dB). T is not given; take T = 1 s (the result does not depend on T because it cancels in the bilinear transformation).

Step 2: pre-warp the edges (bilinear: Ω = (2/T) tan(ω/2), T = 1 s)

  • Ωp = (2/1) tan(0.2π/2) = 0.6498 rad/s
  • Ωs = (2/1) tan(0.3π/2) = 1.0191 rad/s

Step 3: order of the Butterworth filter

N ≥ log[(1/0.17783² − 1)/(1/0.89125² − 1)] / (2 log(Ωs/Ωp)) = log[30.6220/0.2589] / (2 log 1.5682) = 5.3044

So N = 6.

Step 4: cut-off frequency

Using the pass-band condition (1 + (Ωp/Ωc)^(2N)) = 1/0.89125²: Ωc = Ωp / (0.2589)^(1/12) = 0.7273 rad/s (This meets the pass-band exactly and exceeds the stop-band requirement.)

Step 5: analog transfer function

Poles of the normalised filter lie on the left half of the circle of radius Ωc. Pairing complex poles:

H(s) = 0.1480 / [(s² + 0.3765 s + 0.5290) (s² + 1.0285 s + 0.5290) (s² + 1.4050 s + 0.5290)]

Step 6: bilinear transformation

Replace s by (2/T)(1 − z⁻¹)/(1 + z⁻¹) = 2(1 − z⁻¹)/(1 + z⁻¹) in each factor:

  • H1(z) = 0.10014(1 + 2z⁻¹ + z⁻²) / (1 − 1.3143 z⁻¹ + 0.7149 z⁻²)
  • H2(z) = 0.08031(1 + 2z⁻¹ + z⁻²) / (1 − 1.0541 z⁻¹ + 0.3753 z⁻²)
  • H3(z) = 0.07207(1 + 2z⁻¹ + z⁻²) / (1 − 0.9459 z⁻¹ + 0.2342 z⁻²)

H(z) = H1(z) · H2(z) · H3(z)

Multiplied out:

        0.00058 0.00348 0.00870 0.01159 0.00870 0.00348 0.00058   (numerator coefficients, powers z⁰ … z⁻6)
H(z) = ---------------------------------------------
        1.00000 -3.31430 4.95011 -4.14326 2.02754 -0.54583 0.06284   (denominator coefficients)

Step 7: check

|H(e^jω)| at ωp = 0.8913 (required ≥ 0.89125); at ωs = 0.1310 (required ≤ 0.17783). Both conditions are satisfied.

Answer: N = 6, Ωc = 0.7273 rad/s, H(z) = H₁(z)·H₂(z)·H₃(z). Realise it as a cascade of three second-order sections (Direct Form II).

✓ Answer checked by Claude Opus 5.5 (high effort)

All Digital Signal Analysis and Processing chapter 6 questions →