---
title: "Bilinear Butterworth LPF then convert to HPF"
subject: "Digital Signal Analysis and Processing"
chapter: 6
key: "semester_7/digital_signal_analysis_and_processing:bilinear-butter-0-25-0-55-hp"
source: https://www.bctengineer.com/q/semester_7/digital_signal_analysis_and_processing/bilinear-butter-0-25-0-55-hp
site: BCT Engineering
---

# Bilinear Butterworth LPF then convert to HPF

Digital Signal Analysis and Processing · Chapter 6: IIR Filter Design

- Asked in: 2071 Chaitra, 9+4 marks; 2069 Chaitra, 9+4 marks (asked 2 times)
- Video: [Digital Butterworth Filter using Bilinear Transformation - Problem Solved - DTSP - DSP](https://www.youtube.com/watch?v=4yNIBnYwLuQ) — Padmasri Naban
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_7/digital_signal_analysis_and_processing/bilinear-butter-0-25-0-55-hp
- Whole chapter: https://www.bctengineer.com/md/semester_7/digital_signal_analysis_and_processing/chapter-6

## Question

Design a low pass discrete time Butterworth filter applying bilinear transformation having specifications: pass band frequency (ωp) = 0.25π radians, stop band frequency (ωs) = 0.55π radians, pass band ripple (δp) = 0.11 and stop band ripple (δs) = 0.21. Consider sampling frequency 0.5 Hz. Also, convert the obtained digital low-pass filter to high-pass filter with new pass band frequency (ω'p) = 0.45π using digital domain transformation.

## Short answer

After pre-warping (T=2 s), N=3 and Ωc=0.5177 rad/s. Low-pass H(z) numerator [0.05119,0.15356,0.15356,0.05119], denominator [1,-1.13773,0.68077,-0.13354]. High-pass with α=-0.4774: numerator [0.27624,-0.82871,0.82871,-0.27624], denominator [1,-0.68374,0.45763,-0.06853].

## Answer

#### Step 1: specifications
Low-pass Butterworth, ωp = 0.25π, ωs = 0.55π. Ripples δp = 0.11 and δs = 0.21 are read as |H(ωp)| ≥ 1 − δp = 0.89 and |H(ωs)| ≤ δs = 0.21. Sampling frequency 0.5 Hz gives T = 2 s (so 2/T = 1).

#### Step 2: pre-warp the edges (bilinear: Ω = (2/T) tan(ω/2), T = 2 s)
- Ωp = (2/2) tan(0.25π/2) = **0.4142** rad/s
- Ωs = (2/2) tan(0.55π/2) = **1.1708** rad/s

#### Step 3: order of the Butterworth filter
N ≥ log[(1/0.21² − 1)/(1/0.89² − 1)] / (2 log(Ωs/Ωp)) = log[21.6757/0.2625] / (2 log 2.8267) = 2.1239

So **N = 3**.

#### Step 4: cut-off frequency
Using the pass-band condition (1 + (Ωp/Ωc)^(2N)) = 1/0.89²:
Ωc = Ωp / (0.2625)^(1/6) = **0.5177** 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.1387 / [(s + 0.5177) (s² + 0.5177 s + 0.2680)]

#### Step 6: bilinear transformation
Replace s by (2/T)(1 − z⁻¹)/(1 + z⁻¹) = 1(1 − z⁻¹)/(1 + z⁻¹) in each factor:

- H₀(z) = 0.3411(1 + z⁻¹) / (1 − 0.3178 z⁻¹)
- H1(z) = 0.15007(1 + 2z⁻¹ + z⁻²) / (1 − 0.8199 z⁻¹ + 0.4202 z⁻²)

H(z) = H0(z) · H1(z)

Multiplied out:

```text
        0.05119 0.15356 0.15356 0.05119   (numerator coefficients, powers z⁰ … z⁻3)
H(z) = ---------------------------------------------
        1.00000 -1.13773 0.68077 -0.13354   (denominator coefficients)
```

#### Step 7: check
|H(e^jω)| at ωp = 0.8900 (required ≥ 0.89); at ωs = 0.0861 (required ≤ 0.21). Both conditions are satisfied. 

#### Conversion to a high-pass filter (ω'p = 0.45π)
The digital low-pass to high-pass transformation (Constantinides) is

z⁻¹ → −(z⁻¹ + α) / (1 + α z⁻¹),  α = −cos[(ωp + ω'p)/2] / cos[(ωp − ω'p)/2]

where ωp = 0.25π is the pass-band edge of the low-pass design and ω'p = 0.45π the new pass-band edge.

α = −cos(0.35π) / cos(−0.1π) = −0.4540 / 0.9511 = **-0.4774**

Substituting into the third-order H(z) and simplifying:

```text
        0.27624 -0.82871 0.82871 -0.27624
H'(z) = ------------------------------------------   (powers of z⁻¹)
        1.00000 -0.68374 0.45763 -0.06853
```
that is,

H'(z) = (0.2762 − 0.8287z⁻¹ + 0.8287z⁻² − 0.2762z⁻³) / (1 − 0.6837z⁻¹ + 0.4576z⁻² − 0.0685z⁻³)

Check: |H'(e^jω)| = 0.890 at ω = 0.45π (equal to the low-pass value 0.89 at 0.25π), 0.000 at ω = 0 and 1.000 at ω = π, so it is a high-pass filter.

**Answer: N = 3, Ωc = 0.5177 rad/s; low-pass H(z) as above; high-pass with α = -0.4774.**

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. Why are the digital edges converted with Omega = (2/T) tan(w/2) before designing?
   A. To remove aliasing
   B. To convert dB to ratio
   C. To make the filter linear phase
   D. To compensate for the nonlinear frequency warping of the bilinear transformation
   Answer: D. Pre-warping makes the digital edges land at the intended frequencies. (Key point: Pre-warping)

2. What T follows from sampling frequency 0.5 Hz, and what is 2/T?
   A. T = 2 s, 2/T = 1
   B. T = 0.5 s, 2/T = 4
   C. T = 1 s, 2/T = 2
   D. T = 2 s, 2/T = 4
   Answer: A. T = 1/Fs = 2 s, so 2/T = 1 and Omega = tan(w/2). (Key point: Sampling frequency)

3. What order N results from the Butterworth order formula?
   A. N = 2
   B. N = 3 (2.12 rounded up)
   C. N = 4
   D. N = 2.12 kept as is
   Answer: B. The order must be an integer, so round up the computed value. (Key point: Order)

4. Which substitution converts the digital low-pass into a high-pass?
   A. z -> 1/z
   B. z^-1 -> z^-1 + alpha
   C. z^-1 -> -(z^-1 + alpha)/(1 + alpha z^-1)
   D. s -> 1/s in the digital domain
   Answer: C. The Constantinides low-pass to high-pass transformation is an all-pass mapping with this form. (Key point: Digital transformation)

## Related in Digital Signal Analysis and Processing

- [Bilinear Butterworth, 0.27π and 0.58π](https://www.bctengineer.com/question.md?key=semester_7%2Fdigital_signal_analysis_and_processing%3Abilinear-butter-0-27-0-58) — Digital Signal Analysis and Processing, chapter 6
- [Bilinear Butterworth, 0.25π passband, −15 dB at 0.45π](https://www.bctengineer.com/question.md?key=semester_7%2Fdigital_signal_analysis_and_processing%3Abilinear-butter-0-25-1db-0-45) — Digital Signal Analysis and Processing, chapter 6, asked 3×
- [Bilinear Butterworth, 0.2π passband, −15 dB at 0.4π](https://www.bctengineer.com/question.md?key=semester_7%2Fdigital_signal_analysis_and_processing%3Abilinear-butter-0-2-1db-0-4) — Digital Signal Analysis and Processing, chapter 6, asked 2×
- [Low-pass FIR window design, αs = 40 dB](https://www.bctengineer.com/question.md?key=semester_7%2Fdigital_signal_analysis_and_processing%3Afir-lowpass-window-0-3-0-5-40) — Digital Signal Analysis and Processing, chapter 5, asked 2×
- [Hanning window low-pass FIR design](https://www.bctengineer.com/question.md?key=semester_7%2Fdigital_signal_analysis_and_processing%3Afir-hanning-window-design) — Digital Signal Analysis and Processing, chapter 5
- [Low-pass FIR window design, αs = 41 dB](https://www.bctengineer.com/question.md?key=semester_7%2Fdigital_signal_analysis_and_processing%3Afir-lowpass-window-0-2-0-5-41) — Digital Signal Analysis and Processing, chapter 5

## Related in other subjects

- [Low pass to band stop transformation](https://www.bctengineer.com/question.md?key=semester_5%2Ffilter_design%3Alowpass-to-bandstop-transformation) — Filter Design, chapter 3, asked 10×
- [How transformation reduces design steps; band stop design](https://www.bctengineer.com/question.md?key=semester_5%2Ffilter_design%3Abandstop-design-steps-reduction) — Filter Design, chapter 3
- [Band stop filter (2000 rad/s, 400 rad/s) from 3rd order](https://www.bctengineer.com/question.md?key=semester_5%2Ffilter_design%3Abandstop-2000-400-third-order) — Filter Design, chapter 3, asked 4×
- [Low pass to band pass transformation](https://www.bctengineer.com/question.md?key=semester_5%2Ffilter_design%3Alowpass-to-bandpass-transformation) — Filter Design, chapter 3, asked 10×
