Skip to content

Frequency Response and Bode Plots

Summary

This chapter introduces frequency response analysis, which characterizes how circuits behave across different frequencies. Students will learn to create and interpret Bode plots showing magnitude and phase response, understand cutoff frequencies and bandwidth, and use asymptotic approximations for rapid analysis. The chapter covers transfer functions and the poles and zeros that determine circuit behavior. Frequency response analysis is essential for designing filters and understanding amplifier bandwidth limitations.

Concepts Covered

This chapter covers the following 22 concepts from the learning graph:

  1. Frequency Response
  2. Transfer Function
  3. Magnitude Response
  4. Phase Response
  5. Bode Plot
  6. Bode Magnitude Plot
  7. Bode Phase Plot
  8. Decade
  9. Octave
  10. Cutoff Frequency
  11. Corner Frequency
  12. Half-Power Point
  13. Roll-Off Rate
  14. Asymptotic Approximation
  15. Poles and Zeros
  16. Filter
  17. Low-Pass Filter
  18. High-Pass Filter
  19. Band-Pass Filter
  20. Band-Reject Filter
  21. Notch Filter
  22. Filter Order

Prerequisites

This chapter builds on concepts from:


title: Frequency Response and Bode Plots description: Analyze how circuits respond to different frequencies using transfer functions and Bode plots generated_by: chapter-content-generator v0.03 date: 2026-01-30


Introduction: How Circuits Hear the World

Different musical instruments sound different even when playing the same note. A piano, a violin, and a synthesizer playing middle C all have the same fundamental frequency, but they sound completely different because of their harmonic content—the mix of frequencies above that fundamental.

Circuits are the same way. They don't treat all frequencies equally. Some circuits amplify low frequencies and attenuate high ones (like a bass boost). Others pass high frequencies while blocking low ones (like a treble filter). Understanding how a circuit responds to different frequencies is the key to designing audio equalizers, radio receivers, noise filters, and countless other applications.

Welcome to frequency response analysis, where we stop asking "What does this circuit do to a single sinusoid?" and start asking "What does this circuit do to all frequencies?" The answer comes in the form of beautiful curves called Bode plots—named after Hendrik Bode, a Bell Labs engineer who developed these techniques in the 1930s for telephone network analysis.

By the end of this chapter, you'll be able to look at a circuit and sketch its frequency response without solving a single differential equation. That's the power of poles, zeros, and asymptotic thinking.

Frequency Response: The Big Picture

Frequency response describes how a circuit's output magnitude and phase vary as a function of input frequency. It answers: "If I put in a sinusoid at frequency f, what amplitude and phase shift comes out?"

Key insight: For linear circuits, the output is always a sinusoid at the same frequency as the input—only the amplitude and phase change. This is why frequency response is so powerful: it completely characterizes the circuit's behavior for any frequency.

Measuring frequency response:

  1. Apply sinusoidal input at frequency f
  2. Measure output amplitude and phase relative to input
  3. Repeat for many frequencies
  4. Plot the results
Frequency Range Typical Applications
DC (0 Hz) Bias circuits, power supplies
Sub-audio (< 20 Hz) Seismic sensors, medical EKG
Audio (20 Hz - 20 kHz) Music, speech, microphones
RF (20 kHz - 300 GHz) Radio, TV, wireless

Transfer Function: The Mathematical Description

The transfer function \(H(j\omega)\) is the ratio of output phasor to input phasor:

\[H(j\omega) = \frac{\mathbf{V}_{out}}{\mathbf{V}_{in}} = \frac{V_{out}}{V_{in}} \angle (\theta_{out} - \theta_{in})\]

It's a complex function of frequency that captures both magnitude and phase information:

\[H(j\omega) = |H(j\omega)| \angle \phi(\omega)\]

Where:

  • \(|H(j\omega)|\) = Magnitude response (gain)
  • \(\phi(\omega)\) = Phase response (shift)

For RC low-pass filter:

\[H(j\omega) = \frac{1}{1 + j\omega RC} = \frac{1}{1 + j\omega/\omega_c}\]

Where \(\omega_c = 1/RC\) is the cutoff frequency.

Properties of transfer functions:

  • Can be computed using voltage divider formulas
  • Complex impedances replace resistances
  • Magnitude: \(|H| = \sqrt{(\text{Re})^2 + (\text{Im})^2}\)
  • Phase: \(\phi = \tan^{-1}(\text{Im}/\text{Re})\)

Magnitude and Phase Response

Magnitude Response

The magnitude response \(|H(j\omega)|\) tells us the gain (or attenuation) at each frequency:

\[|H(j\omega)| = \frac{|V_{out}|}{|V_{in}|}\]

Often expressed in decibels:

\[|H(j\omega)|_{dB} = 20\log_{10}|H(j\omega)|\]

Key values:

Linear Decibels Meaning
1 0 dB Unity gain
0.707 -3 dB Half power (cutoff)
0.1 -20 dB 10× attenuation
0.01 -40 dB 100× attenuation
10 +20 dB 10× gain
100 +40 dB 100× gain

Phase Response

The phase response \(\phi(\omega)\) tells us the phase shift at each frequency:

\[\phi(\omega) = \angle H(j\omega) = \theta_{out} - \theta_{in}\]

Phase conventions:

  • Negative phase: Output lags input
  • Positive phase: Output leads input
  • At cutoff frequency: Typically ±45° for first-order filters

Diagram: Magnitude and Phase Response Viewer

Magnitude and Phase Response Viewer Type: microsim Bloom Level: Understand (L2) Bloom Verb: explain Learning Objective: Students will explain how magnitude and phase responses describe circuit behavior across frequency by observing low-pass and high-pass filter responses. Visual elements: - Top plot: Magnitude response |H| vs frequency (log scale) - Bottom plot: Phase response φ vs frequency (log scale) - Cutoff frequency marked with vertical line - -3dB and -45° points highlighted - Filter type indicator (low-pass, high-pass) Interactive controls: - Dropdown: Filter type (RC low-pass, RC high-pass, CR high-pass) - Slider: R (100Ω to 100kΩ, log scale) - Slider: C (1nF to 100μF, log scale) - Display: Cutoff frequency f_c = 1/(2πRC) - Toggle: Linear vs dB scale for magnitude Annotations: - "Passband" region shaded - "Stopband" region indicated - "-3dB = 0.707" at cutoff Default parameters: - RC low-pass filter - R = 10kΩ, C = 10nF - f_c ≈ 1.6 kHz Canvas layout: - Dual stacked plots: 600 × 200 pixels each - Control area: 100 pixels below Implementation: p5.js

Bode Plots: The Engineer's Shorthand

Bode plots are logarithmic frequency response graphs that reveal circuit behavior at a glance. Named after Hendrik Bode, they use clever scaling to turn curved responses into straight-line approximations.

The two Bode plots:

  1. Bode magnitude plot: |H| in dB vs. log(frequency)
  2. Bode phase plot: Phase in degrees vs. log(frequency)

Why logarithmic scales?

  • Frequency often spans many orders of magnitude (Hz to MHz)
  • Decibels already use logarithms
  • Multiplication becomes addition on log scales
  • Transfer function factors become separate additive contributions

Decades and Octaves

A decade is a 10× change in frequency: - From 100 Hz to 1 kHz is one decade - From 1 kHz to 10 kHz is one decade

An octave is a 2× change in frequency: - From 100 Hz to 200 Hz is one octave - From 1 kHz to 2 kHz is one octave

Conversions: - 1 decade ≈ 3.32 octaves - 1 octave ≈ 0.301 decades

Frequency Change In Decades In Octaves
0.301 1
10× 1 3.32
100× 2 6.64
1000× 3 9.97

Cutoff Frequency and Half-Power Point

The cutoff frequency \(f_c\) (also called corner frequency or break frequency) is where the magnitude response drops to \(1/\sqrt{2}\) (≈ 0.707) of its maximum value, which is -3dB.

\[|H(j\omega_c)| = \frac{|H|_{max}}{\sqrt{2}}\]

Why -3dB is significant:

At the cutoff frequency, power is cut in half: [P = V^2/R \propto |H|^2]

When \(|H|\) drops to \(0.707\), power drops to \((0.707)^2 = 0.5\) = half power.

This is why it's also called the half-power point or -3dB point.

For a simple RC low-pass filter:

[f_c = \frac{1}{2\pi RC}] [\omega_c = \frac{1}{RC}]

The 70.7% Rule

At the cutoff frequency, voltage (or current) is 70.7% of maximum, but power is 50% of maximum. Both statements are correct—it's just the difference between amplitude and power. Always clarify whether you're talking about amplitude (-3dB in voltage) or power (-3dB in power).

Roll-Off Rate: How Fast Filters Attenuate

The roll-off rate describes how quickly the magnitude response decreases in the stopband. It's measured in dB per decade (dB/decade) or dB per octave (dB/octave).

For first-order filters (one reactive element): - Roll-off: -20 dB/decade = -6 dB/octave

For second-order filters (two reactive elements): - Roll-off: -40 dB/decade = -12 dB/octave

For nth-order filters: - Roll-off: -20n dB/decade = -6n dB/octave

Filter Order Roll-off (dB/decade) Roll-off (dB/octave)
1st -20 -6
2nd -40 -12
3rd -60 -18
4th -80 -24

Higher order means sharper cutoff, but also more phase shift and potential for overshoot/ringing.

Asymptotic Approximation: Straight Lines for Curves

Asymptotic approximation is the technique of representing smooth curves with straight-line segments. This makes Bode plots easy to sketch by hand and reveals key behavior quickly.

For a first-order low-pass filter:

\[H(j\omega) = \frac{1}{1 + j\omega/\omega_c}\]

Magnitude asymptotes:

  • Far below cutoff (\(\omega << \omega_c\)): \(|H| \approx 1\) → 0 dB (flat)
  • Far above cutoff (\(\omega >> \omega_c\)): \(|H| \approx \omega_c/\omega\) → -20 dB/decade slope

Phase asymptotes:

  • Far below cutoff: \(\phi \approx 0°\)
  • At cutoff: \(\phi = -45°\)
  • Far above cutoff: \(\phi \approx -90°\)

The three-line approximation:

  1. Horizontal line at 0° for \(\omega < 0.1\omega_c\)
  2. Slope of -45°/decade through the cutoff
  3. Horizontal line at -90° for \(\omega > 10\omega_c\)

Diagram: Bode Plot Sketcher

Bode Plot Sketcher Type: microsim Bloom Level: Apply (L3) Bloom Verb: construct Learning Objective: Students will construct Bode plot asymptotic approximations and compare them to exact curves. Visual elements: - Bode magnitude plot with asymptotes (dashed) and exact curve (solid) - Bode phase plot with asymptotes (dashed) and exact curve (solid) - Cutoff frequency marker - Asymptote breakpoint highlighted - Maximum error annotation (≈3dB at cutoff for magnitude) Interactive controls: - Dropdown: Filter type (LP, HP, BP) - Slider: Cutoff frequency f_c - Toggle: Show/hide exact curve - Toggle: Show/hide asymptotes - Toggle: Show/hide error - Display: Asymptote equations Step-through mode for learning: - Step 1: "Draw low-frequency asymptote" - Step 2: "Draw high-frequency asymptote (slope = -20 dB/dec)" - Step 3: "Connect at corner frequency" - Step 4: "Compare to exact curve" Default parameters: - First-order low-pass - f_c = 1 kHz Canvas layout: - Dual plots: 600 × 200 pixels each - Control area: 100 pixels below Instructional Rationale: Step-through teaches the construction process before revealing the final result. Implementation: p5.js

Poles and Zeros: The DNA of Transfer Functions

Poles and zeros are the characteristic frequencies that shape the transfer function. They come from factoring the transfer function into standard forms.

General transfer function:

\[H(s) = K \frac{(s - z_1)(s - z_2)...}{(s - p_1)(s - p_2)...}\]

Where:

  • \(z_1, z_2, ...\) are zeros (roots of numerator)
  • \(p_1, p_2, ...\) are poles (roots of denominator)
  • \(K\) is a constant gain

For frequency response, substitute \(s = j\omega\).

Effects of poles and zeros:

Element Effect on Magnitude Effect on Phase
Zero at origin +20 dB/decade slope +90°
Pole at origin -20 dB/decade slope -90°
Zero at \(\omega_z\) Slope increases by +20 dB/dec Phase increases toward +90°
Pole at \(\omega_p\) Slope decreases by -20 dB/dec Phase decreases toward -90°

Simple RC low-pass has: - One pole at \(\omega_p = 1/RC\) - No zeros

Simple RC high-pass has: - One pole at \(\omega_p = 1/RC\) - One zero at \(\omega = 0\)

Poles Mean Roll-Off

Each pole adds -20 dB/decade roll-off and -90° phase shift (at high frequencies for left-half-plane poles). Count the poles to know the filter order. A second-order filter has two poles and -40 dB/decade roll-off.

Filter Types: Shaping the Frequency Spectrum

Filters are circuits designed to pass certain frequencies while attenuating others. The four basic filter types are defined by their passband:

Low-Pass Filter

Passes: Frequencies below cutoff Blocks: Frequencies above cutoff

[|H| \approx 1 \text{ for } f < f_c] [|H| \text{ decreases for } f > f_c]

Applications: Anti-aliasing, noise reduction, audio bass boost

High-Pass Filter

Passes: Frequencies above cutoff Blocks: Frequencies below cutoff

[|H| \approx 1 \text{ for } f > f_c] [|H| \text{ decreases for } f < f_c]

Applications: DC blocking, rumble filter, audio treble boost

Band-Pass Filter

Passes: Frequencies within a band (between \(f_L\) and \(f_H\)) Blocks: Frequencies below \(f_L\) and above \(f_H\)

Bandwidth: \(BW = f_H - f_L\) Center frequency: \(f_0 = \sqrt{f_L \cdot f_H}\)

Applications: Radio tuning, audio equalizer bands, signal selection

Band-Reject Filter (Notch Filter)

Blocks: Frequencies within a narrow band around \(f_0\) Passes: All other frequencies

Also called notch filter when the rejected band is very narrow.

Applications: 60 Hz hum removal, interference rejection, feedback suppression

Filter Type Passband Stopband Typical Application
Low-pass DC to f_c Above f_c Smoothing, anti-aliasing
High-pass Above f_c DC to f_c DC blocking, subsonic removal
Band-pass f_L to f_H Below f_L, above f_H Radio tuning, equalizer
Band-reject Below f_L, above f_H f_L to f_H Notch (60 Hz hum removal)

Diagram: Filter Type Comparison

Filter Type Comparison Type: microsim Bloom Level: Understand (L2) Bloom Verb: classify Learning Objective: Students will classify filters by their frequency response characteristics and identify appropriate applications. Visual elements: - Four-panel display showing ideal responses: - Low-pass: flat then drops - High-pass: rises then flat - Band-pass: peak at center - Band-reject: notch at center - Passband shaded green, stopband shaded red - Cutoff/center frequencies labeled - Realistic (non-ideal) curves overlaid Interactive controls: - Dropdown: Select filter to highlight - Slider: Cutoff frequency (for LP/HP) - Slider: Center frequency (for BP/BR) - Slider: Bandwidth (for BP/BR) - Slider: Filter order (affects transition steepness) - Toggle: Show ideal vs realistic Annotations for each filter: - Typical application example - Passband/stopband labels - Roll-off slope indication Default parameters: - All four filters displayed - f_c = 1 kHz for LP/HP - f_0 = 1 kHz, BW = 200 Hz for BP/BR Canvas layout: - 2×2 grid of plots: 300 × 200 pixels each - Control area: 100 pixels below Implementation: p5.js

Filter Order: Sharper is Better (Usually)

Filter order determines how sharply a filter transitions from passband to stopband. It equals the number of reactive elements (L's and C's) in the filter.

First-order (one pole): - Single RC or RL section - 20 dB/decade roll-off - 90° maximum phase shift - Gentle transition

Second-order (two poles): - LC or RLC section, or cascaded RC - 40 dB/decade roll-off - 180° maximum phase shift - Can have resonant peak (underdamped)

Higher orders: - More stages, sharper cutoff - Trade-offs: complexity, cost, phase distortion, potential instability

Design philosophies:

Approach Characteristics Application
Butterworth Maximally flat passband General purpose
Chebyshev Steeper roll-off, ripple in passband Where sharp cutoff matters
Bessel Linear phase (no distortion) Pulse/data transmission
Elliptic Steepest roll-off, ripple in both bands Maximum selectivity

Building Bode Plots: Step-by-Step

To construct a Bode plot from a transfer function:

Step 1: Factor the transfer function into standard forms [H(j\omega) = K \frac{(1 + j\omega/\omega_{z1})(1 + j\omega/\omega_{z2})...}{(1 + j\omega/\omega_{p1})(1 + j\omega/\omega_{p2})...}]

Step 2: Identify corner frequencies (poles and zeros)

Step 3: For magnitude plot: - Start with the DC gain (20 log|K|) - At each pole frequency, slope decreases by 20 dB/decade - At each zero frequency, slope increases by 20 dB/decade

Step 4: For phase plot: - Start at 0° (or 180° if K is negative) - Each pole contributes -90° transition centered at its frequency - Each zero contributes +90° transition centered at its frequency

Step 5: Sketch asymptotes, then round corners at ±3dB points

Worked Example: Second-Order Low-Pass

Transfer function: [H(j\omega) = \frac{1}{1 + j\omega/\omega_1 + (j\omega/\omega_0)^2}]

With \(\omega_0 = 1000\) rad/s and damping ratio \(\zeta = 0.5\):

Characteristics: - DC gain: 0 dB - Two poles at complex frequencies - -40 dB/decade roll-off above \(\omega_0\) - Phase: 0° at DC, -90° at \(\omega_0\), -180° at high frequency - Slight peak near \(\omega_0\) due to underdamping

Practical Filter Circuits

Simple RC Low-Pass

\[H(j\omega) = \frac{1}{1 + j\omega RC}\]

Cutoff: \(f_c = \frac{1}{2\pi RC}\)

Roll-off: -20 dB/decade

Simple RC High-Pass

\[H(j\omega) = \frac{j\omega RC}{1 + j\omega RC}\]

Cutoff: \(f_c = \frac{1}{2\pi RC}\)

Roll-off: +20 dB/decade below cutoff, flat above

Series RLC Band-Pass

\[H(j\omega) = \frac{R}{R + j(\omega L - 1/\omega C)}\]

Center frequency: \(f_0 = \frac{1}{2\pi\sqrt{LC}}\)

Bandwidth: \(BW = \frac{R}{2\pi L}\)

Q factor: \(Q = \frac{f_0}{BW}\)

Diagram: Filter Design Calculator

Filter Design Calculator Type: microsim Bloom Level: Apply (L3) Bloom Verb: calculate Learning Objective: Students will calculate component values for desired filter specifications (cutoff frequency, Q). Visual elements: - Circuit schematic for selected filter type - Bode magnitude plot showing resulting response - Component value displays - Frequency specifications highlighted Interactive controls: - Dropdown: Filter type (RC LP, RC HP, RLC BP, RLC notch) - Input: Desired cutoff frequency - Input: Desired Q (for second-order) - Button: Calculate components - Display: Calculated R, L, C values Design mode: - Enter specifications → Calculate components - Or enter components → See resulting response Practical considerations displayed: - Standard component values (E12 series) - Component tolerance effects - "Nearest standard value" suggestions Default parameters: - RC low-pass - f_c = 1 kHz target - Calculated: R = 15.9 kΩ, C = 10 nF Canvas layout: - Circuit/plot: 400 × 350 pixels - Calculator panel: 200 × 350 pixels - Control area: 100 pixels below Implementation: p5.js

Self-Check Questions

1. An RC low-pass filter has R = 10kΩ and C = 100nF. What is the cutoff frequency, and what is the magnitude at 1 kHz, 10 kHz, and 100 kHz?

Cutoff frequency: [f_c = \frac{1}{2\pi RC} = \frac{1}{2\pi(10000)(100 \times 10^{-9})} = 159.2 \text{ Hz}]

At each frequency:

\(f = 1\) kHz = 6.28× cutoff: [|H| = \frac{1}{\sqrt{1 + (f/f_c)^2}} = \frac{1}{\sqrt{1 + 6.28^2}} = 0.157 = -16 \text{ dB}]

\(f = 10\) kHz = 62.8× cutoff: [|H| = \frac{1}{\sqrt{1 + 62.8^2}} = 0.0159 = -36 \text{ dB}]

\(f = 100\) kHz = 628× cutoff: [|H| = \frac{1}{\sqrt{1 + 628^2}} = 0.00159 = -56 \text{ dB}]

Note: Each decade above cutoff adds about -20 dB (asymptotic approximation).

2. How many poles does a filter need for -60 dB/decade roll-off?

Each pole contributes -20 dB/decade of roll-off.

For -60 dB/decade: [\text{Number of poles} = \frac{60}{20} = 3]

A third-order filter (three reactive elements) is needed.

This could be implemented as: - Three cascaded RC sections - An LCL or CLC ladder network - Active filter with three op-amp stages

3. A band-pass filter has center frequency 1 MHz and Q = 50. What is the bandwidth, and what are the approximate lower and upper cutoff frequencies?

Bandwidth: [BW = \frac{f_0}{Q} = \frac{1\text{ MHz}}{50} = 20 \text{ kHz}]

Cutoff frequencies (approximate for high Q): [f_L \approx f_0 - \frac{BW}{2} = 1000 - 10 = 990 \text{ kHz}] [f_H \approx f_0 + \frac{BW}{2} = 1000 + 10 = 1010 \text{ kHz}]

The filter passes frequencies from about 990 kHz to 1010 kHz, a 20 kHz window centered on 1 MHz.

4. At what frequency does a first-order high-pass filter have -45° phase shift?

For a first-order high-pass filter: [H(j\omega) = \frac{j\omega/\omega_c}{1 + j\omega/\omega_c}]

The phase is: [\phi = 90° - \tan^{-1}(\omega/\omega_c)]

At low frequency: \(\phi \to 90°\) At cutoff: \(\phi = 90° - 45° = 45°\) At high frequency: \(\phi \to 0°\)

The -45° phase (measured from 0°) doesn't occur for a high-pass filter—the phase goes from +90° down to 0°.

If the question means 45° phase (halfway between 90° and 0°), that's at the cutoff frequency \(f_c\).

Summary

Frequency response analysis unlocks the ability to understand and design circuits for specific frequency behaviors:

  1. Transfer function H(jω) captures complete frequency behavior - Magnitude and phase at every frequency

  2. Bode plots use logarithmic scales - Decades and dB make wide frequency ranges manageable

  3. Cutoff frequency is the -3dB (half-power) point - Where magnitude drops to 0.707

  4. Roll-off rate indicates filter sharpness - -20n dB/decade for nth-order filters

  5. Asymptotic approximation makes sketching easy - Straight lines with corners at pole/zero frequencies

  6. Poles add roll-off; zeros reduce it - Count poles to know the order

  7. Four basic filter types serve different needs - Low-pass, high-pass, band-pass, band-reject

  8. Filter order trades sharpness for complexity - Higher order = sharper cutoff but more components

  9. Design involves choosing components for desired specs - f_c, Q, and bandwidth are key parameters

  10. Bode analysis is fundamental to amplifier and filter design - These techniques appear everywhere in electronics

With frequency response analysis, you can predict how any circuit will behave across the entire frequency spectrum. This is essential for designing audio systems, communication circuits, control systems, and anywhere signals of different frequencies need to be treated differently. The Bode plot is your roadmap to understanding circuit behavior—learn to read it fluently, and you'll have a superpower that serves you throughout your engineering career.