ECE 211 · Circuit Analysis · Interactive Notes

Lecture 21: Adding the Bode Factors, and Reading a Plot Backwards

This page completes the Bode plot begun in Lecture 20 by the method the board notes actually use: each standard factor is drawn on its own set of axes, and the five curves are then added ordinate by ordinate to produce the magnitude and the phase. The reverse problem follows, in which a transfer function is recovered from a straight-line magnitude sketch. The material is reconstructed from the Lecture 21 board notes as interactive plots.

Teal indicates linked content. Hovering over (or tabbing to) a boxed factor such as 1010 highlights the curve that the factor contributes to both plots; the linkage also operates in the reverse direction, from the plot to the equations. Gray marks one factor on its own, blue the running total of the sketch, and orange the exact response.

§1 · The five pieces

Every number in both plots is already visible in the standard form

The transfer function factored at the end of Lecture 20 requires no further algebra: each of its five factors belongs to one of the four standard forms, and each form carries a level, a slope, and a break frequency that may be read off directly.

H(s)=800s(s+5)(s+2)2(s2+10s+100)=10s(s5+1)(s2+1)2(s2102+s10+1)1H(s) = \frac{800 \, s \, (s + 5)}{(s + 2)^2 \, (s^2 + 10 s + 100)} = \tm{ma.f1 pa.f1}{10} \cdot \tm{ma.f2 pa.f2}{s} \cdot \tm{ma.f3 pa.f3}{\left(\frac{s}{5}+1\right)} \tm{ma.f4 pa.f4}{\left(\frac{s}{2}+1\right)^{-2}} \tm{ma.f5 pa.f5}{\left(\frac{s^2}{10^2} + \frac{s}{10} + 1\right)^{-1}}

The board notes number the five factors and record one line of reading for each. Hovering over an entry highlights the curve that the factor contributes, in both the magnitude figure of §2 and the phase figure of §4.

  1. The constant 10. Its level is 20log1010=2020\log_{10} 10 = 20 dB at every frequency, and its angle is 0°, because KK is positive.
  2. The factor s1s^1. Its level is 20log10ω20\log_{10}\omega, a straight line of slope +20+20 dB/dec passing through 0 dB at ω=1\omega = 1 rad/s, and its angle is a constant +90°+90°.
  3. (s/α+1)N(s/\alpha + 1)^N with α=5\alpha = 5 and N=+1N = +1. It breaks at ω=5\omega = 5 rad/s, with a slope of +20+20 dB/dec above the break and an angle ramping from 0° to +90°+90°.
  4. (s/α+1)N(s/\alpha + 1)^N with α=2\alpha = 2 and N=2N = -2. It breaks at ω=2\omega = 2 rad/s, with a slope of 40-40 dB/dec above the break and an angle ramping from 0° to 180°-180°.
  5. The quadratic with ω0=10\omega_0 = 10 and N=1N = -1. It breaks at ω=10\omega = 10 rad/s, with a slope of 40-40 dB/dec above the break and an angle ramping from 0° to 180°-180°.

The quadratic is read by matching coefficients: ω02=100\omega_0^2 = 100 gives ω0=10\omega_0 = 10 rad/s, and 2ζ/ω0=1/102\zeta/\omega_0 = 1/10 then gives ζ=0.5\zeta = 0.5. The damping ratio affects the exact curve only; it never moves an asymptote.

Two answers before any drawing begins

There are 2 zeros and 4 poles, so far above the last break HH behaves as s2/s4=s2s^2/s^4 = s^{-2}: the final slope is 40-40 dB/dec and the final angle is 180°-180°. Both are worth writing down first, because the finished sketch must agree with them.

§2 · Adding the magnitudes

Five curves on one set of axes, added ordinate by ordinate

The decibel scale is used precisely so that this addition is legal. Since 20logABCD=20logA+20logB+20logC+20logD20 \log |ABCD| = 20\log|A| + 20\log|B| + 20\log|C| + 20\log|D|, each factor may be plotted alone and the five ordinates summed at every frequency. The sum of straight lines is a straight line between breaks, so only the corner values have to be computed.

The five factors are added below in order of increasing break frequency (2, then 5, then 10) rather than in the order they happen to be written. Addition is commutative, so the destination is the same either way; taking the breaks in order keeps every partial total on the page and makes the slope bookkeeping identical to the bookkeeping done on paper.

Start with the constant

The constant 10 plots as a horizontal line at 20log1010=2020 \log_{10} 10 = 20 dB. Nothing else has been added yet, so the running total (blue) sits exactly on top of it.

Add the zero at the origin

The factor ss plots as a line of slope +20+20 dB/dec that crosses 0 dB at ω=1\omega = 1 rad/s. Adding it to the constant lifts the whole line by 20 dB, so the running total is

20+20log10ω        0 dB at ω=0.1,20 dB at ω=120 + 20\log_{10}\omega \;\;\Longrightarrow\;\; 0 \ \text{dB at } \omega = 0.1, \qquad 20 \ \text{dB at } \omega = 1

No break has been reached, so this line is the low-frequency asymptote of the finished plot.

Add the double pole at ω = 2

The factor (s/2+1)2(s/2+1)^{-2} is 0 dB below its break at 2 and falls at 40 dB/dec above it. Adding zero changes nothing below the break, so the running total keeps its +20+20 dB/dec segment up to

20+20log102=26.02 dB at ω=220 + 20\log_{10} 2 = 26.02 \ \text{dB at } \omega = 2

and turns there to +2040=20+20 - 40 = -20 dB/dec.

Add the real zero at ω = 5

The factor (s/5+1)(s/5+1) contributes 0 dB below its break at 5 and +20+20 dB/dec above it. The running total falls from 26.02 dB at ω=2\omega = 2 to

26.0220log1052=18.06 dB at ω=526.02 - 20\log_{10}\tfrac{5}{2} = 18.06 \ \text{dB at } \omega = 5

and the new +20+20 cancels the previous 20-20, leaving a flat segment.

Add the conjugate pair at ω = 10

The factor (s2/102+s/10+1)1(s^2/10^2 + s/10 + 1)^{-1} contributes 0 dB below its break at 10 and 40-40 dB/dec above it, twice the slope of a real factor because the pair carries two roots. The flat segment therefore runs from 5 to 10 rad/s at 18.06 dB, and the total then falls at 40-40 dB/dec. No break remains, and 40-40 dB/dec is the final slope predicted in §1. ✓

Compare with the exact response

The exact magnitude is drawn over the finished sketch. The two agree far from every break and separate near them, most visibly at ω=2\omega = 2, where a double pole breaks on a segment that is already climbing.

one factor on its own running total of the sketch exact response

The same addition performed at one frequency

The figure adds ordinates graphically; the table below adds the same five numbers arithmetically. Moving the slider moves the cursor in the figure and recomputes every contribution.

#Factorcontribution
11020.00 dB
2s10.00 dB
3(s/5 + 1)10.00 dB
4(s/2 + 1)−20.00 dB
5(s²/10² + s/10 + 1)−10.00 dB
sum, that is the sketch20.00 dB
exact, and the error18.28 dB (−1.72)
Ordinates add, magnitudes multiply

The addition is legal in decibels only. The underlying magnitudes are multiplied, not added: at ω=1\omega = 1 the five factors contribute 101111=1010 \cdot 1 \cdot 1 \cdot 1 \cdot 1 = 10, which is the 20 dB the table reports. Adding the raw magnitudes would give 14, that is a different function entirely.

§3 · The composite, in closed form

Four segments, and what each one is worth

Each segment of the finished sketch is the product of the factors that have already broken, and each such product collapses to a single term. Writing them out is the fastest check on a sketch, because every corner value then follows from arithmetic rather than from measurement on the page.

The completed straight-line magnitude plot with the exact response drawn over it. The four segments are +20 dB/dec, −20 dB/dec, flat, and −40 dB/dec, joined at the breaks 2, 5, and 10 rad/s.

Range of ωasymptotic |H|SlopeUpper end
ω ≤ 210ω+2026.02 dB
2 to 510ω · (2/ω)² = 40/ω−2018.06 dB
5 to 10(40/ω) · (ω/5) = 8018.06 dB
ω ≥ 108 · (10/ω)² = 800/ω²−40−21.94 dB

Each row carries the factors of the rows above it: the double pole enters at the second row, the zero at the third, and the conjugate pair at the fourth. The flat segment is worth exactly 8, that is 20log108=18.0620 \log_{10} 8 = 18.06 dB, and the number arrives without any reference to the drawing. The last segment gives 800/1002=0.08800/100^2 = 0.08 at ω=100\omega = 100 rad/s, that is the 21.94-21.94 dB in the table, and it continues to fall by 40 dB in every decade thereafter.

What the straight lines cost

largest error −5.21 dB, at ω = 2 at ω = 5 +2.62 dB at ω = 10 +0.63 dB at ω = 100 +0.05 dB

The sketch is worst where breaks crowd together. At ω=2\omega = 2 a double pole contributes 2×(3.01)=6.022 \times (-3.01) = -6.02 dB of its own, and the neighboring zero at 5 has already begun to lift the exact curve, so the net departure is 5.21-5.21 dB. Far from every break the two curves are indistinguishable: at ω=1000\omega = 1000 rad/s they agree to better than 0.01 dB.

Why ζ = 0.5 is a convenient value here

At its break frequency a quadratic factor is worth 20Nlog10(2ζ)20N\log_{10}(2\zeta) dB. With ζ=0.5\zeta = 0.5 the argument is 1 and the contribution is exactly 0 dB, so the conjugate pair sits on its own asymptote at ω=10\omega = 10. The +0.63+0.63 dB error recorded there is contributed entirely by the other factors.

§4 · Adding the phases

The same procedure, with ramps instead of slopes

Angles add for exactly the same reason that decibels do, so the phase plot is assembled by the same graphical addition. The only difference is the shape of the pieces: a constant or an sNs^N factor contributes a horizontal line, while every break contributes a ramp that starts one decade below the break and ends one decade above it.

double pole: 0.2 to 20, −90°/dec zero: 0.5 to 50, +45°/dec pair: 1 to 100, −90°/dec

A ramp of 90N°90N° spread over two decades has slope 45N°45N° per decade, and a quadratic swings 180N°180N° over the same two decades, hence 90N°90N° per decade. Six corner frequencies are therefore in play, and between consecutive corners the total is a straight line.

The constant contributes nothing

K=10K = 10 is positive, so its angle is 0° at every frequency. A negative constant would contribute 180°180° instead, and the entire phase plot would be displaced by that amount.

The zero at the origin contributes a constant +90°

The angle of jωj\omega is +90°+90° regardless of frequency, so the running total is a horizontal line at +90°+90°. This is the low-frequency angle of the finished plot, since no ramp has yet begun.

The double pole ramps from 0.2 to 20

Two poles at 2 swing 180°-180° over the two decades from 0.2 to 20, a slope of 90°-90° per decade. The running total leaves +90°+90° at ω=0.2\omega = 0.2 and falls; at ω=0.5\omega = 0.5 it has reached

9090log100.50.2=54.19°90 - 90\log_{10}\tfrac{0.5}{0.2} = 54.19°

The zero ramps from 0.5 to 50

The zero at 5 swings +90°+90° over the two decades from 0.5 to 50, a slope of +45°+45° per decade. Where the two ramps overlap the slopes add: 90+45=45°-90 + 45 = -45° per decade, and the total reaches 40.64°40.64° at ω=1\omega = 1 rad/s.

The pair ramps from 1 to 100

The conjugate pair swings 180°-180° over the two decades from 1 to 100. All three ramps now run together and the slope is 90+4590=135°-90 + 45 - 90 = -135° per decade, the steepest stretch of the plot. The ramps then finish one by one: at 20 the double pole is done, at 50 the zero is done, and at 100 the pair is done, leaving the total flat at

180°    -180° \;\; \checkmark

which is the value predicted in §1 from the count of 2 zeros against 4 poles.

Compare with the exact response

The exact phase is drawn over the sketch. The agreement is poorer than in the magnitude plot, as it always is: the two-decade ramp is a cruder device than the two-segment asymptote, and here three ramps overlap. The largest departure is 18.8°18.8°, near ω=5.4\omega = 5.4 rad/s.

The corner values are worth tabulating, because they are what a graded sketch is checked against:

ω (rad/s)Slope belowSketchExact
0.20+90.00°+79.72°
0.5−90°/dec+54.19°+64.77°
1−45°/dec+40.64°+42.41°
20−135°/dec−135.00°−148.92°
50−45°/dec−152.91°−169.36°
100−90°/dec−180.00°−174.80°
Why the value at ω = 20 is exactly −135°

The three ramps have been running from 0.2, from 0.5, and from 1, with slopes 90-90, +45+45, and 90-90 degrees per decade. Writing L=log102L = \log_{10} 2 and summing from the +90°+90° start:

9090log100.50.245log1010.5135log1020=9090(12L)45L135(1+L)=13590 - 90\log_{10}\tfrac{0.5}{0.2} - 45\log_{10}\tfrac{1}{0.5} - 135\log_{10} 20 = 90 - 90(1 - 2L) - 45L - 135(1 + L) = -135

because the coefficient of LL is 18045135=0180 - 45 - 135 = 0. The same cancellation places the total at exactly 180°-180° at ω=100\omega = 100 rad/s, which is the value the pole and zero count demands.

§5 · Reading a plot backwards

From a straight-line sketch to H(s)

The construction reverses without difficulty, because each feature of the sketch was placed there by exactly one factor. Three readings are required: the level of the low-frequency asymptote fixes KK and sNs^N, the location of each corner fixes a break frequency, and the change of slope at each corner fixes the exponent.

The sketch that is given

The plot is flat at 40-40 dB below 1 rad/s, rises at 40 dB/dec to 100 rad/s, runs flat at +40+40 dB to 1000 rad/s, and falls at 40 dB/dec thereafter, crossing 0 dB at 10 000 rad/s. Three corners are visible, so three factors beyond the constant are to be recovered.

The low-frequency level gives K

The asymptote is horizontal at low frequency, so there is no sNs^N factor: a zero at the origin would tilt it upward and a pole would tilt it downward. What remains is the constant alone,

20log10K=40 dB    K=1040/20    K=0.01=110020\log_{10}|K| = -40 \ \text{dB} \;\Longrightarrow\; |K| = 10^{-40/20} \;\Longrightarrow\; \boxed{K = 0.01 = \tfrac{1}{100}}

The corner at 1 rad/s: slope changes by +40

The slope goes from 0 to +40+40 dB/dec, a change of +40+40. A real factor changes the slope by 20N20N dB/dec, so N=+2N = +2: a double zero at α=1\alpha = 1 rad/s, contributing (s/1+1)2(s/1 + 1)^{2}.

The corner at 100 rad/s: slope changes by −40

The slope goes from +40+40 to 0, a change of 40-40, so N=2N = -2: a double pole at α=100\alpha = 100 rad/s, contributing (s/100+1)2(s/100 + 1)^{-2}. The plateau it creates sits at 40+40log10100=+40-40 + 40 \log_{10} 100 = +40 dB, which agrees with the given plot. ✓

The corner at 1000 rad/s: slope changes by −40

Again N=2N = -2, so a second double pole at α=1000\alpha = 1000 rad/s contributes (s/1000+1)2(s/1000 + 1)^{-2}. The final slope is 40-40 dB/dec, and the counts confirm it: 2 zeros against 4 poles gives 20(24)=4020(2 - 4) = -40 dB/dec. ✓

The assembled function

H(s)=1100(s1+1)2(s100+1)2(s1000+1)2=108(s+1)2(s+100)2(s+1000)2H(s) = \frac{1}{100}\left(\frac{s}{1}+1\right)^{2} \left(\frac{s}{100}+1\right)^{-2}\left(\frac{s}{1000}+1\right)^{-2} = \frac{10^{8}\,(s+1)^2}{(s+100)^2\,(s+1000)^2}

The exact response of this function is drawn over the given sketch. It follows every segment and departs by ±6.02\pm 6.02 dB at the corners, which is the expected 3.01N3.01N dB for N=±2N = \pm 2.

The check that costs nothing

H(0)H(0) evaluates every normalized factor to 1, so it returns KK itself. Here H(0)=108/(100210002)=108/1010=0.01H(0) = 10^8/(100^2 \cdot 1000^2) = 10^8/10^{10} = 0.01, matching the 40-40 dB read off the left of the plot. ✓

What a magnitude sketch does not determine

Two pieces of information are absent from the plot above and cannot be recovered from it. The sign of KK is invisible, because the magnitude carries K|K|; only the phase plot distinguishes +0.01+0.01 from 0.01-0.01. A slope change of ±40\pm 40 dB/dec at a single corner is equally consistent with a repeated real break and with a complex conjugate pair, since the two share the same asymptotes; the exact curve near the corner settles it, a resonant peak indicating a lightly damped pair. The double factors written above are the conventional reading, not the only one.

§6 · Your turn

Practice: recover H(s) from the sketch below

The straight-line magnitude sketch of an unknown H(s)H(s). It falls at −20 dB/dec at low frequency, passes through 0 dB at ω = 10 rad/s, flattens at ω = 50, and falls again above ω = 500. Find H(s)H(s) in factored standard form and as a ratio of polynomials, then state the low-frequency and high-frequency angles.

The problem should be attempted on paper before the hints are opened, in order.

Hint 1: The low-frequency segment carries two facts, not one

A tilted low-frequency asymptote means an sNs^N factor is present. A slope of 20-20 dB/dec gives N=1N = -1, that is one pole at the origin. The level is then carried by the product Kω1K \cdot \omega^{-1}, whose plot is 20log10K20log10ω20\log_{10}|K| - 20\log_{10}\omega. Setting that expression to 0 dB at the frequency where the segment crosses the axis determines K|K|.

Hint 2: Each corner in turn

At ω=50\omega = 50 rad/s the slope changes from 20-20 to 0, a change of +20+20, which is one real zero. At ω=500\omega = 500 rad/s it changes from 0 to 20-20, a change of 20-20, which is one real pole. Neither corner changes the slope by 40, so no repeated factor and no conjugate pair is present.

Hint 3: The level of the plateau

The plateau begins where the first corner is, so its value is the value of the low-frequency asymptote evaluated at that corner. That single number is the best check available on the whole answer.

Solution

The low-frequency asymptote is 20log10K20log10ω20\log_{10}|K| - 20\log_{10}\omega, and it passes through 0 dB at ω=10\omega = 10 rad/s, hence 20log10K=20log1010=2020\log_{10}|K| = 20\log_{10} 10 = 20 dB and K=10K = 10. Adding the zero at 50 and the pole at 500 gives the standard form, and clearing the normalizations gives the ratio of polynomials:

H(s)=10s1(s50+1)(s500+1)1=100(s+50)s(s+500)H(s) = 10 \cdot s^{-1} \left(\frac{s}{50}+1\right) \left(\frac{s}{500}+1\right)^{-1} = \frac{100\,(s + 50)}{s\,(s + 500)}

The plateau sits at 2020log1050=13.9820 - 20\log_{10} 50 = -13.98 dB, that is a magnitude of 0.2, and it runs from 50 to 500 rad/s. The angles follow from the counts: 1 zero against 2 poles gives a high-frequency slope of 20(12)=2020(1 - 2) = -20 dB/dec and a high-frequency angle of 90(12)=90°90(1 - 2) = -90°, while the pole at the origin holds the low-frequency angle at 90°-90° as well. The phase therefore begins and ends at 90°-90°, rising to 45°-45° across the plateau in between.

Check at ω = 158.1 rad/s, the geometric mean of the two breaks:

H(j158.1)=10050+j158.1158.1500+j158.1=1658082907=0.2000    13.98 dB|H(j158.1)| = \frac{100\,|50 + j158.1|}{158.1 \cdot |500 + j158.1|} = \frac{16\,580}{82\,907} = 0.2000 \;\Longrightarrow\; -13.98 \ \text{dB}

The sketch and the exact response agree to four figures there, because the +0.41+0.41 dB by which the zero exceeds its asymptote is cancelled by the 0.41-0.41 dB by which the pole falls below its own. At ω=10\omega = 10 rad/s the exact value is +0.17+0.17 dB against the sketch's 0 dB. ✓

The completed plots

The finished sketch and the exact response, for comparison with the plots made on paper. The breaks are 50 and 500 rad/s, and the straight-line magnitude runs flat at 13.98-13.98 dB between them.

straight-line approximation exact response

The phase plot repays a second look. Its straight-line form is flat at 45°-45° from 50 to 500 rad/s, whereas the exact angle turns back toward 35°-35° in the same interval; the discrepancy is the ordinary cost of the two-decade ramp, and it is largest exactly where the ramps of neighboring breaks overlap.