Bode Plots 1 (C) Copyright 2002 Richard R. Johnston, Ph.D., P.E. The Bode magnitude and phase plots are tools for analyzing the frequency response of linear circuits or systems that can be defined in terms of transfer functions. To construct the bode plots, the transfer function H(s), must be given in factored form: nz K⋅ ∏ (s + ωzi) i= 1 np H ( s) = ∏ = (s + ωpi) zero \/ )( ) ( ) (s + ωp1) ⋅(s + ωp2) ⋅ .. ⋅(s + ωpnp) ( K ⋅ s + ωz1 ⋅ s + ωz2 ⋅ .. ⋅ s + ωznz /\ pole i= 1 where numerator terms are called zeros, denominator terms are called poles, ωpi and ωzi are constants, nz is the number of zeros, and np is the number of poles. Bode's insight was to realize that if we take the log of the magnitude of both sides of the above equation we have: log ( H ( s) ) = ( s + ωz1) ⋅ ( s + ωz2) ⋅ .. ⋅ ( s + ωznz) log ( s + ωp1) ⋅ ( s + ωp2) ⋅ .. ⋅ ( s + ωpnp) ( ) + log( s + ωz2 ) + .. ( ) − log( s + ωp1 ) − .. = log s + ωz1 - log s + ωp1 ( ) − log ( s + ωpnp ) + log s + ωznz This formulation allows us to deal with the right-hand side as a sum of terms, rather than as a quotient of products of terms. The basic plan is to find the graph of each of the terms on the right-hand side, and then to "add" the graphs together "by eye" (or by machine with Mathcad). Decibels Before we go into the details of this procedure, it is necessary to examine the term on the left-hand side of the above equation. What Bode understood was that the quantity on the left-hand side is, in fact, already in standard units. The units to which we refer, were developed by telephone engineers to conveniently represent ratios of power as an aid to analyzing the attenuation of telephone signals as they are propagated down the telephone wire. The Bel (after Alexander Graham Bell) is defined as 2 Loss in Bels = Pin log P out Unfortunately the Bel (like the Farad) is too large a unit to be useful, so the deciBel, which is one tenth of a Bel, is the usual unit. Loss in DeciBels = Pin 10 ⋅ log P out Now in most electronic and control work the transfer function represents not a ratio of powers, but a ratio of voltages or currents. However, since we may write: 2 V P = R we have: = 2 I ⋅R Loss in dB = Gain in dB = Loss in dB = Gain in dB = Vin2 R 10 ⋅ log Vout 2 R Vout2 R 10 ⋅ log Vin 2 R = Iout 2 ⋅ R 10 ⋅ log I 2 ⋅R in Vout 20 ⋅ log V in = Iin 2 ⋅ R 10 ⋅ log I 2 ⋅R out = = Vin 20 ⋅ log V out Iin 20 ⋅ log I out Iout 20 ⋅ log I in or and or Point-by-Point Addition of Functions 3 To gain some insight into "adding graphs by eye" the reader is encouraged to examine the examples given below. ( u(t) is the Heaviside unit step function.) Recall that given a function f(t), then the graph of f(t-k) is simply the graph of f(t) shifted to the right by k units. t := −1 , −0.999 .. 5 u ( t) := if ( t > 0 , 1 , 0) f2 ( t) := −1 ⋅ ( f1 ( t) ) f1 ( t) := t ⋅ u ( t) f3 ( t) := u ( t − 2) − u ( t − 3) g1 ( t) := t g2 ( t) := −t f4 ( t) := f1 ( t − 1) − 2 ⋅ f1 ( t − 2) 2 2 1 1 u ( t−2) u ( t) 0 0 1 1 0 2 4 0 2 t t f1 ( t) 5 4 3 2 1 0 1 f1 ( t−1) 0 2 4 4 3 2 1 0 1 0 t f2 ( t) 1 0 1 2 3 4 5 2 t 2 t g1 ( t) 0 4 4 5 4 3 2 1 0 1 0 2 t 4 4 g2 ( t) 1 0 1 2 3 4 5 1 g1 ( t) +g2 ( t) 0 2 4 0 1 4 0 2 t 4 t 2 1 f1 ( t) +g2 ( t) f2 ( t) +g1 ( t) 0 0 0 2 1 4 0 2 t t 4 f1 ( t−1) 4 4 2 f1 ( t−2) 0 2 0 0 2 4 0 2 t 4 t 2 4 f1 ( t−1) ... + f1 ( t−2) f1 ( t−1) ... + − f1 ( t−2) 2 1 0 0 0 2 t 4 1 0 5 t 2 5 1 1 0 f3 ( t) f4 ( t) 0 1 1 0 2 4 2 6 0 2 t 4 t Normalization Before we proceed with the derivation of the magnitude plots of the individual terms of a transfer function, we introduce an algebraic normalization of the transfer function that makes the individual plots simpler to manipulate. The transfer function is usually given in factored form as: nz K⋅ H ( s) = ∏ (s + ωz ) i= 1 np ∏ )( ) ( ) (s + ωp1) ⋅(s + ωp2) ⋅ .. ⋅(s + ωpnp) ( i K ⋅ s + ωz1 ⋅ s + ωz2 ⋅ .. ⋅ s + ωznz = (s + ωpi) i= 1 where the coefficients of s have been set to one. A more convenient normalization, for our purposes, is to set the constant coefficients to one as shown below: nz K⋅ H ( s) = ∏( i= 1 np ∏ i= 1 = s + ωz i (s + ωpi) nz ) K⋅ = ∏ nz ωzi i= 1 np ∏ ⋅ ωpi i= 1 )( ) ( ) (s + ωp1) ⋅(s + ωp2) ⋅ .. ⋅(s + ωpnp) ( ∏ s + 1 ωz i ∏ s + 1 ωp i i= 1 np i= 1 K ⋅ s + ωz1 ⋅ s + ωz2 ⋅ .. ⋅ s + ωznz so s + 1 ⋅ s + 1 ⋅ .. ωz K ⋅ ωz1 ⋅ ωz2 ⋅ .. ⋅ ωznz ωz1 2 ⋅ ωp1 ⋅ ωp2 ⋅ .. ⋅ wpn s s + 1 ⋅ .. + 1 ⋅ p ωp ωp 1 2 H ( s) = For example: H ( s) = 10 ⋅ ( s + 1) ⋅ ( s + 2) ⋅ ( s + 3) ( s + 5) ⋅ ( s + 6) ⋅ ( s + 7) = = s + 1 ⋅ ωz n z s + 1 ⋅ ωp n z 6 ( s + 1) ⋅ s + 1 ⋅ s + 1 10 ⋅ 2 ⋅ 3 2 3 ⋅ 5 ⋅6 ⋅7 s s s + 1 ⋅ + 1 ⋅ + 1 5 6 7 ( s + 1) ⋅ s + 1 ⋅ s + 1 2 2 3 ⋅ 7 s s s + 1 ⋅ + 1 ⋅ + 1 5 6 7 We now wish to find the magnitude plot for each of the terms of H(s), which we shall add together to form the magnitude plot for the transfer function as a whole. The magnitude plot is a graph of the magnitude of the transfer function (in dB) vs. log(ω). The transfer functions shown above contain three distinct kinds of terms: constant terms ( ( 2 ), zeros (s + 1), and poles 7 s + 1). 5 Magnitude Plots of Constant Terms Since the magnitude of a transfer function H(s) = K is not a function of ω, such transfer functions have magnitude plots as shown below: K1 := 2 7 ω := 0.1 , 0.2 .. 10 20 ⋅ log ( K1) = −10.881 K2 := 15 20 ⋅ log ( K2) = 23.522 7 20 ⋅ log ( K1) 0 20 ⋅ log ( K2) 20 0 20 0.1 1 10 0.1 ω 1 10 ω Magnitude Plots of First order Poles To begin our study of individual terms of the general transfer function H(s), let us use as an example a transfer function that has only one term. Consider the frequency response of the circuit shown below. (This experiment is performed in virtually every undergraduate circuits laboratory. ) The transfer function of this circuit is: H(s) = Vout ( s) Vin ( s) = 1 s 1 + 1 s = 1 s+1 Since we have agreed to deal with magnitudes in dB (in order to decouple the terms of the transfer function from one another), we have plotted the magnitude of the response in dB versus frequency by point-by-point calculation below. 8 1 1 + ω ⋅i H ( ω ) := 20 ⋅ log ω := 0.01 , 0.02 .. 100 10 0 H(ω ) 10 20 30 40 20 40 60 80 100 ω We see that for large frequencies (ω > 50) the plot is nearly linear, but for small frequencies the plot is strongly nonlinear. In fact the plot appears nearly exponential. Since exponential functions have linear graphs when plotted against a logarithmic frequency axis, we plot |H(s)| versus log(ω) below. (We obtain the semi-log plot by using Format X Y Axes, and changing the x axis to a log scale.) 10 0 H(ω ) 10 20 30 40 0.01 0.1 1 10 100 ω We see that this plot is nearly linear over most of the frequency range. Our basic strategy is to We see that this plot is nearly linear over most of the frequency range. Our basic strategy is to find equations for the two different straight lines that describe the magnitude response and to 9 extend the straight lines until they intersect as shown below. ω 0 := 1 ( HSL ( ω ) := if ω > ω 0 , −20 ⋅ log ( ω ) , 0 ) (We will derive this equation for HSL presently.) 10 0 H(ω ) HSL ( ω ) 10 20 30 40 0.01 0.1 1 10 100 ω Consider a more general transfer function of the form: H ( s) = 1 where ω o is a constant which we shall call the break frequency for reasons that we shall make clear presently. (ω without subscript is the frequency variable over which we desire the frequency response.) s + 1 ω o The magnitude of this transfer function is: H ( jω) = dB 1 j⋅ ω + 1 ω o 20 ⋅ log We seek a straight-line approximation to this magnitude for our magnitude plot. We proceed by finding the limit of the magnitude function as ω approaches zero, and using that limit as an approximation of the magnitude function for all "low" frequencies. We then find the limit of the magnitude function as ω approaches positive infinity and use that limit as an approximation of the magnitude function for all "high" frequencies. We shall define what we mean by "low" frequencies and "high" frequencies presently. 1 j ⋅ω + 1 ω o lim 20 ⋅ log ω→0 10 = 20 ⋅ log ( 1) − 20 ⋅ log ( 1) = 0 dB Since the limit of the magnitude function as ω approaches zero is 0 dB, we approximate the magnitude function as 0 dB for all "low" frequencies. That is we approximate the magnitude function as a horizontal straight line at 0 dB for all "low" frequencies. For "high" frequencies we take the limit of H(jω) as ω approaches positive infinity. lim ω→∞ = 1 j⋅ ω + 1 ω o 20 ⋅ log ωo lim 20 ⋅ log j ⋅ ω ω→∞ = = lim ω→∞ lim ω→∞ 1 j⋅ ω ω o 20 ⋅ log (20 ⋅log(ω o) − 20 ⋅log(ω )) ( ) = −20 ⋅ log ω This is the magnitude approximation at high frequencies. Decades To understand the significance of this last function, consider the function f(t) = 5t. This is the equation of a straight line in t, with a slope of 5, passing through the point t = 0, f(t) = 0. Similarly the function f(log(ω)) = -20 log(ω) is a straight line in log(ω) with a slope of -20 dB passing through 0 dB at ω = 1. (-20 log(1) = 0) The question is a slope of -20 dB per what? Not -20 dB per radian since we are plotting against log(ω) not against ω. To answer our question of the units for the slope of our straight line, we must calculate two frequencies ω 1 and ω 2 , such that log(ω 2) - log(ω 1) = 1. Since the slope is the "rise" over the "run", and we desire a slope of -20 and a "run" of 1. So we have: −20 we need a "rise" of 1 ( ) ( ) log ω 2 − log ω 1 = ω2 log ω 1 11 = 1 If we exponentiate (base 10) both sides of the right hand equation, we obtain: ω2 ω 1 = 10 1 or log 10 ω2 ω1 = 10 Two frequencies related in this way are said to be one decade apart. The slope of our "high" frequency approximation is then -20 dB per decade. Of course simply specifying the slope does not uniquely determine a straight line; there are infinitely many straight lines with slope -20 dB per decade. Recalling our earlier analogy with straight lines f(t), we recognize that f(t)=a t is not the most general equation of a straight line in t: it is the equation of the specific straight line in t passing through (0,0). The most general equation of a straight line in t is f(t) = a t + b. To uniquely specify our straight line we must specify one point on the line. The question of which point to specify, and the question of what constitutes a "low" or "high" frequency are considered together. Since the low frequency approximation holds when ω approaches zero, i.e. when ω ωo << 1 We approximate the magnitude function by its low frequency approximation for all ω such that ω ωo < 1 (i.e. for all ω such that ω < ω o.) That is, we use the low frequency approximation (asymptote) for all ω such that ω < ω o. Similarly we use the high frequency approximation (asymptote) for all ω such that ω ωo > 1 (i.e. for all ω such that ω > ω o.) The question of what point on the -20 dB per decade line to specify is settled by the above approximation strategy: we select the point ω = ω o. The magnitude of a transfer function of the form: H ( s) = 1 s + 1 ω o is approximated by a straight line of 0 dB for all ω < ω and a straight line of slope -20 dB per is approximated by a straight line of 0 dB for all ω < ω o and a straight line of slope -20 dB per decade passing through the point having magnitude 0 dB at ω = ω o, for all ω > ω o. That is, 12 |H(jω)| is approximated as 0 dB for ω < ω o, and |H(jω)| is approximated by 20 log(ω) -20 log(ω o) for ω > ω o. e.g. 1 H1 ( s) := H4 ( s) := H2 ( s) := s +1 0.5 1 1 H3 ( s) := s +1 1 1 s +1 3 ω := 0.1 , 0.2 .. 100 s +1 12 ω , 0 0.5 H1 ( ω ) := if ω > 0.5 , −20 ⋅ log ω , 0 3 H3 ( ω ) := if ω > 3 , −20 ⋅ log ω , 0 1 H2 ( ω ) := if ω > 1 , −20 ⋅ log ω , 0 12 H4 ( ω ) := if ω > 12 , −20 ⋅ log (We shall discuss these Mathcad functions for plotting straight-line magnitude approximations later when we do the first "First Order Magnitude Example.") 0 H1 ( ω ) 0 H2 ( ω ) 20 40 0.1 1 10 ω 100 20 40 0.1 1 10 ω 100 0 H3 ( ω ) 13 0 H4 ( ω ) 20 20 40 40 0.1 1 10 100 0.1 1 10 100 ω ω These plots are constructed on semi-log paper by hand as follows. First locate the break frequency ω o, then draw a straight line of slope -20 dB per decade (downward and to the right) starting at ω o. In some cases, for instance when ω o= 12 as above, the frequency that is one decade above ω o is not on the graph. In these cases it is helpful if one knows the equivalent of -20 dB per decade in dB per octave. Octaves Frequencies ω 1 and ω 2 are said to be one octave apart if ω 2 = 2 ω 1. (This terminology results from musical theory where notes that are separated by eight diatonic pitches are said to be one octave apart. For example middle C and the C one reaches by playing C D E F G A B C, are an octave apart. Two notes that are an octave apart have a frequency ratio of 2:1.) To find the slope in dB per octave that is equivalent to -20 dB per decade we need to know how many decades there are in an octave. For ω 1 and ω 2 to be x decades apart we require: ω2 log ω 1 = x We can check the above result for pairs of frequencies whose separation in decades is known, for example: Separation ω1 ω2 in decades 10 100 1 10 1000 2 10 10000 3 Now if ω 2 = 2 ω 1, then ω2 log ω 1 = 2 ⋅ω 1 log ω 1 = log ( 2) = 0.30103 So frequencies ω 1 and ω 2 that are one octave apart are 0.30103 decades apart, and 1 1 octave = 0.30103 decades, and 1 decade = octaves. 0.30103 Then −20 ⋅ dB decade −20 = dB decade ⋅ 0.30103 ⋅ decade octave −6.0206 ⋅ = dB octave or, -20 dB per decade is approximately -6 dB per octave. Referring again to the example 1 H4 ( s) = s +1 12 while the decade related frequency ω = 120 is not on the graph, the octave related frequency ω = 24 is on the graph. So in this case one would draw a straight line of slope -6 dB per octave starting at ω = 12. Magnitude Plots of First order Zeros The situation for zeros is very similar. Consider a transfer function H(s) such that s + 1 ω o H ( s) = The low frequency approximation (ω < ω 0) is: H ( jω) dB j ⋅ω lim 20 ⋅ log = ω0 ω→0 The high frequency approximation is: H ( jω) dB = = lim ω→∞ lim ω→∞ j ⋅ω 20 ⋅ log ω0 ω ω 0 20 ⋅ log lim 20 ⋅ log ( 1) = 0 dB +1 = ω→0 +1 = = lim ω→∞ lim ω→∞ j ⋅ω ω 0 20 ⋅ log (20 ⋅log(ω 0) − 20 ⋅log(ω )) 14 H ( jω) = dB 20 ⋅ log ( ω ) ⋅ dB decade 15 First order zeros with break frequency "ω 0", are handled in a manner similar to the manner in which we handled first order poles with break frequency "ω 0". The magnitude plot is a horizontal straight line through 0 dB for ω < "ω 0", and a straight line of slope + 20 dB per decade (6 dB per octave) through "ω 0", for all ω > "ω 0". e.g. ω , 0 0.5 H5 ( s) = s +1 0.5 H5 ( ω ) := if ω > 0.5 , 20 ⋅ log H6 ( s) = s+1 H6 ( ω ) := if ω > 1 , 20 ⋅ log H7 ( s) = s +1 3 H7 ( ω ) := if ω > 3 , 20 ⋅ log H8 ( s) = s +1 12 H8 ( ω ) := if ω > 12 , 20 ⋅ log ω , 0 1 ω , 0 3 40 H5 ( ω ) ω , 0 12 40 H6 ( ω ) 20 0 20 0 0.1 1 10 100 0.1 ω 100 40 H8 ( ω ) 20 20 0 0 0.1 10 ω 40 H7 ( ω ) 1 1 10 ω 100 0.1 1 10 ω 100 Magnitude Plots of First Order Zeros and Poles at s = 0 16 First order magnitude plots for transfer functions that include zeros or poles at s = 0, that is for terms where ω 0 = 0, require special attention. Consider a transfer function having a zero at 0, H(s) = s. The magnitude function H(ω) is H(ω) = |20 log(ω)| for all values of ω. The magnitude plot is a straight line of slope 20 dB per decade (6 dB per octave), passing through 0 dB at the value of ω for which 20 log(ω) = 0. Since log(1) = 0, the magnitude function is a straight line of slope 20 dB per decade (6 dB per octave) passing through ω = 1. While this function is relatively easy to draw, it does complicate the process of adding the individual graphs together since there is no frequency range where the slope of the function is zero: the function contributes a slope of 20 dB per decade at ALL frequencies. Similarly transfer functions containing poles at zero, i.e., H ( s) = 1 s have magnitude plots that are straight lines of slope -20 dB per decade (6 dB per octave) passing through ω = 1. e.g. H9 ( ω ) := 20 ⋅ log ( ω ) H9 ( s) = s H10 ( s) = 1 s H10 ( ω ) := −20 ⋅ log ( ω ) 40 H9 ( ω ) 40 H10 ( ω ) 0 40 0.1 1 10 100 0 40 0.1 ω 1 10 ω Multiple poles and zeros 100 Multiple poles and zeros Transfer functions having terms of the form s + 1 ω o n or 17 1 s + 1 ω o n are handled exactly as above except that the slope of the magnitude plot of the term having multiplicity n is not 20 dB per decade (6 dB per octave), but 20 n dB per decade (6 n dB per octave). This is true for both zeros and poles except of course that poles have negative slopes. The slope multiplication is also correct when ω 0 = 0, i.e. for poles and zeros at the origin (s = 0). First Order Magnitude Examples #1. As an example of the technique, consider the transfer function: H ( s) = 2 ( s + 2) ⋅ ( s + 4) 5 ⋅ s ⋅ ( s + 3) First we normalize the transfer function as follows: H ( s) = s s ⋅ + 1 5 ⋅3 3 ⋅ 2 2 2 ⋅4 s + 1 ⋅ s + 1 2 4 = s s ⋅ + 1 15 3 ⋅ 2 32 s + 1 ⋅ s + 1 2 4 This example has several features that make it useful as an easy first example. 1. There are no break-points ω 0 with magnitudes less than 1. (Control System Transfer Functions commonly contain break-points smaller than ω 0 = 1.) 2. None of the break points is more than 1 or 2 decades away from ω 0 =1. (Electronic Filter Transfer Functions commonly contain break-points 4, 5,6 or even 7 decades above ω 0 =1.) The transfer function has 5 terms: a constant term of 15 , a zero at zero, a zero at 3, a 32 pole at 2 and a pole of multiplicity 2 at 4. The individual term magnitude plots along with the composite plot formed by the addition of the individual terms are given below. Mathcad Functions for Magnitude Approximations Consider the task of writing the equation of the linear function graphed below. x := −10 , −9 × .9 .. 10 f ( x) := 2 ⋅ x 20 This is very easy, since the y intercept is zero we may write f(x) = m⋅ x where m is the easily calculated slope. 10 f ( x) 0 10 20 10 5 0 5 10 Contrast the previous equation with the equation of the linear function graphed below x g ( x) := 2 ⋅ x − 5 20 10 . g ( x) 0 10 20 10 5 0 x 5 10 This is only slightly more difficult since we must find the y intercept b as well as the slope m, and the function is g(x) = m⋅ x + b. However, notice that when we plot | H(jω) | vs log(ω), we are frustrated since there is no place on the plot where log(ω) = 0. (However many decades smaller than log(ω) = 1.0 we go.) The key to solving our problem is to note that the second fuction g(x) is merely the first function f(x) shifted to the right by 2.5 units. By substitution of x -> (x - 2.5) in f(x) we have g(x) = 2 ⋅ ( x − 2.5) = 2 ⋅ x − 5. We are then able to write the equation for g(x) without knowing the y intercept. 18 1 First consider | H(jω) | vs log(ω), where H(s) = s (Note that in Mathcad we Format X Y Axes to set the x axis to a log axis) 50 H10 ( ω ) 19 0 50 0.1 1 10 100 ω Now consider what happens when we replace [log(ω)] in H10(ω) by [log(ω) -log(3)]. 40 ( ( )) Since H10(ω) = −20 ⋅ log ω , when we replace [log(ω)] by [log(ω) -log(3)] , we get ω 3 −20 ⋅ ( log ( ω ) − log ( 3) )= −20 ⋅ log ω 3 H10 20 0 20 40 1 which is | H(jω) | vs log(ω), where H(s) = s 0.1 1 10 100 10 100 ω shifted to the right by 2. (3 - 1 = 2) Finally consider | H(jω) | vs log(ω), where H(s) = 1 0 H3 ( ω ) s +1 3 ω for ω >3. 3 Note that H (ω) is 0 for ω < 3 and H10 3 20 40 0.1 1 ω The if statement in Mathcad is perfectly suited to generating piece-wise linear functions. The syntax is if(condition,true,false), where condition is a logical (boolean) expression, true is the expression to be returned if the condition is true, and false is the expression to be returned if the condition is false. For example, the magnitude approximation of H(s) = 1 s +1 3 ω , 0 . In general the magnitude 3 is H(ω) = if ω > 3 , −20 ⋅ log 1 approximation in Mathcad for a term of the form H(s) = s +1 ω0 is ω , 0 . ω 0 H(ω) = if ω > ω 0 , −20 ⋅ log The magnitude approximation for a term of the form H(s) = s + 1 is ω0 ω , 0 . ω 0 if ω > ω 0 , 20 ⋅ log For our example then, we have: 15 32 M1 ( ω ) := 20 ⋅ log ω , 0 3 M2 ( ω ) := if ω > 3 , 20 ⋅ log 6.57 M1 ( ω ) 6.58 M2 ( ω ) 20 0 6.59 0.1 1 10 100 0.1 1 ω 10 100 ω M3 ( ω ) := 20 ⋅ log ( ω ) (See plot of H9 above.) ω , 0 2 M4 ( ω ) := if ω > 2 , −20 ⋅ log ω , 0 4 M5 ( ω ) := if ω > 4 , −40 ⋅ log 20 0 M4 ( ω ) 21 0 M5 ( ω ) 20 20 0.1 1 10 40 100 0.1 1 10 100 ω ω In Mathcad all we have to do to add these functions point-by-point is to define MT ω as ( ) MT ( ω ) := M1 ( ω ) + M2 ( ω ) + M3 ( ω ) + M4 ( ω ) + M5 ( ω ) ( ) and plot MT ω 5 0 5 MT ( ω ) 10 15 20 25 30 0.1 1 10 100 ω This is our composite Bode magnitude plot! To proceed by hand with semi-log paper, we must first discuss some peculiarities of semi-log paper. Semi-log paper Several remarks are in order concerning the use of semi-log paper. First, since the vertical scale is linear, all magnitudes must be converted into dB. For example, the magnitude of the constant term 15 15 = -6.58 dB. Second, since the must be converted to dB as 20 ⋅ log 32 32 frequency scale is a log scale it is never necessary to take the log of any frequency: by locating frequencies according to their values as described by the log scale, the curve is automatically scaled horizontally according to log(ω). Finally the frequency scale must be oriented so that the distance between successive numbers decreases as one proceeds from left to right; this usually means placing the log scale markings on top. The log scale runs from 1 to 1 three times on 3 cycle semi-log paper. The scale markings must be identified as to their magnitudes as shown above in our composite Bode magnitude plot . Using the scale in our example #1 abovee.g., the first cycle is 0.1, 0.2, 0.3, ... 0.9, 1.0, the second cycle is 1.0, 2.0, 3.0, ... 9.0, 10.0, the third cycle is 10.0, 20.0, 30.0, 90.0, 100.0. The frequency scale can be set to span any three decade frequency range that is desired. We could have for example, 0.01 to 10.0, or 1 to 1000.0, or 1000 to 1000000, or any range that is necessary to represent the magnitude plot of the transfer function at hand. To follow the steps we now give, refer to the figure that follows the steps. The composite drawing is produced on semi-log paper as follows: 1) Add all the contributions to the magnitude at ω = 1. In the case of our present example this would be: -6.58 + 0 + 0 + 0 + 0 = -6.58 dB. Enter point #1. 2) Determine the behavior of the composite function for frequencies smaller that ω = 1. In our example the only contribution to the magnitude function for ω < 1 is the contribution from the zero at zero ( the s term in the numerator). Therefore at ω = 0.1 the magnitude is 20 dB smaller than it is at ω = 1 since the slope of the magnitude function is +20 dB per decade. So the Magnitude at ω = 0.1 = -6.58 - 20 = -26.58. Enter point #2 3) Determine the behavior of the composite function for ω > 1. Again in our example, for 1 < ω < 2, the only contribution to the magnitude function is from the zero at zero, so extend the +20 dB per decade line to ω = 2 and enter point #3. (-6.58 dB + log 2 ⋅ decades ⋅ 20 ⋅ dB = -0.56 dB) decade 1 22 4) 5) For 2 < ω < 3, we have two contributions to the composite magnitude function: the contribution of the zero at zero, and the contribution of the pole at 2. Since the zero at zero contributes a slope of +20 dB per decade and the pole at 2 contributes a slope of -20 dB per decade, the contributions cancel each other out and the composite magnitude function does not change between ω = 1 and ω = 2, so draw a horizontal line from point #3 to ω = 3. Enter point #4. For ω > 3 we must add the contribution of the zero at 3. This adds another slope of +20 dB per decade so we would like to draw a line with slope +20 dB per decade between ω = 3 and ω = 30. Unfortunately the magnitude 19.5 dB is beyond the range of our graph, so we draw a line with slope +6 dB per octave between ω = 3 and ω = 6, 6 ⋅ 20 = 5.46dB) 3 giving us point #5. ( - 0.56 + log 6) At ω = 4, the composite function changes character again as we must add the contribution of the double pole (pole of multiplicity 2) at 4. Enter point #6 (Point #6 is where the line we drew in step 5 intersects ω = 4) 4 ⋅ 20 = 1.94dB) 3 (-0.56 + log 7) For ω > 4 the double pole at ω = 4 adds a slope of -40 dB per decade so the total slope for ω > 4 is +20 - 20 + 20 - 40 = -20 dB per decade, so enter point #7. (1.94 - 20 = -18.06) This completes the straight-line approximation to the magnitude of the transfer function H ( s) = s ⋅ ( s + 3) 5 ⋅ 2 ( s + 2 ) ⋅ ( s + 4 ) L(ω) is the construction line in step 5. ω 3 L ( ω ) := −0.56 + 20 ⋅ log 0.1 1.0 2.0 points := 3.0 4.0 6.0 40 −26.58 −6.58 −0.56 −0.56 1.94 5.46 −18.06 23 24 10 0 MT ( ω ) ( points) 〈1〉 L(ω ) 10 20 30 40 Points 0.1 1 ^ ^ #2 #1 10 〈 〉 ω , points 0 , ω ^ ^ ^ ^ Example #2 H ( s) = s + 1 ⋅ ( s + 5) 4 1 s ⋅ s + 2 = = ω := 0.1 , 0.15 .. 10 5 5 #3 #4 #6 #5 100 ^ #7 s + 1 ⋅ s + 1 1 5 1 ⋅5 4 4 ⋅ 1 s + 1 s ⋅ 1 2 2 s + 1 ⋅ s + 1 1 5 5 4 ⋅ 2 s + 1 s ⋅ 1 2 5 M1 ( ω ) := 20 ⋅ log 2 M2 ( ω ) := if ω > 5 20 ⋅ log = 7.959 2 1 ω , 20 ⋅ log , 0 4 1 4 25 ω , 0 5 M3 ( ω ) := if ω > 5 , 20 ⋅ log M5 ( ω ) := if ω > M4 ( ω ) := −20 ⋅ log ( ω ) 1 ω , −20 ⋅ log , 0 2 1 2 7.97 7.965 M1 ( ω ) 7.96 M2 ( ω ) 7.955 7.95 0.1 20 0 1 10 0.1 ω 1 10 ω 10 20 M3 ( ω ) M4 ( ω ) 0 0 0.1 1 10 ω M5 ( ω ) 20 1 ω 0.1 1 ω 0 0.1 20 10 10 MT ( ω ) := M1 ( ω ) + M2 ( ω ) + M3 ( ω ) + M4 ( ω ) + M5 ( ω ) 26 0.1 27.96 0.25 20 points := 0.5 20 1.0 13.98 5.0 0 1 1 = 12.0412 dB and the contribution from the pole at ω = 0 is 20 ⋅ log 4 1 4 5 the contribution from the constant is 20 ⋅ log = 7.959 dB. So the total contribution at 2 1 log(ω) = is 20 dB => point #1. Since the magnitude response is -20 dB per decade for 4 1 4 1 = 27.96. For ω < , we may plot point #2 as ω = 0.1 and magnitude 20 + 20 ⋅ log 4 0.1 1 1 1 <ω< the zero at cancels the pole at zero, and we draw a horizontal line to point #3 4 2 4 1 1 at ω = . For < ω < 5, we have slope -20 dB per decade so we plot point #4 at ω = 1.0 2 2 1 = 13.98 dB. Finally for 5 < ω , we have and magnitude 20 - 20 ⋅ log 1 2 At log(ω) = -20 + 20 - 20 + 20 = 0 dB, hence point #5 at ω = 5 and magnitude 5 = 0dB. 1 13.98 - 20 ⋅ log 30 27 25 20 MT ( ω ) 15 〈 〉 points 1 10 5 0 5 0.1 1 10 〈 〉 ω , points 0 Points ^ ^ ^ ^ ^ #2 #1 #3 #4 #5 Example #3 H ( s) = 100000 ⋅ s 100000 = ⋅ ( s + 10000) ⋅ ( s + 50000) 10000 ⋅ 50000 s s s + 1 + 1 ⋅ 10000 50000 ω := 100 , 200 .. 1000000 100000 8 5 ⋅ 10 M1 ( ω ) := 20 ⋅ log M2 ( ω ) := 20 ⋅ log ( ω ) ω , 0 10000 ω , 0 50000 M3 ( ω ) := if ω > 10000 , −20 ⋅ log M4 ( ω ) := if ω > 50000 , −20 ⋅ log 28 M1 ( ω ) 74 74.1 100 1 .10 3 1 .10 ω 4 1 .10 1 .10 5 6 200 M2 ( ω ) 100 0 100 M3 ( ω ) 1 .10 1 .10 ω 1 .10 1 .10 1 .10 1 .10 ω 1 .10 1 .10 1 .10 1 .10 ω 1 .10 1 .10 3 4 5 6 0 20 100 M4 ( ω ) 3 4 5 6 0 20 100 3 4 5 MT ( ω ) := M1 ( ω ) + M2 ( ω ) + M3 ( ω ) + M4 ( ω ) 6 100 −33.979 4 6.021 10 points := 4 5 ⋅ 10 6.021 5 5 ⋅ 10 −13.979 At log(ω) = 100 we have -73.979 from the constant term and 0dB + ( 2 ⋅ decades) ⋅ 20 ⋅ dB = 40 dB so the total magnitude at log(ω) = 100 is decade 4 40 - 73.979 = -33.979 => pont #1. For 100 < ω < 10 we have +20 dB per dacade so point #2 at ω = 10 4 10 and magnitude -33.979 + 20 ⋅ log 100 4 4 4 =6.021. For ω > 10 , the pole at 10 cancels the zero at 0 and we have a horizontal 4 line to point #3. For 5 ⋅ 10 < ω we have slope - 20 dB per decade, so point #4 at 5 ω = 5 ⋅ 10 and magnitude 6.021 - 20 dB = -13.979 10 0 MT ( ω ) 〈 〉 points 1 10 20 30 40 100 Points 1 .10 ^ 1 .10 〈 〉 ω , points 0 ^ ^ ^ #1 #2 #3 #4 3 4 1 .10 1 .10 5 6 29 First Order Magnitude Errors 30 It should be noted that there is an error associated with the straight-line approximation to the first order magnitude function, and that the error is greatest at the break frequency "ω 0" where the assumptions about "high" and "low" frequencies are the weakest. The highest "low" frequency is ω = ω 0, and the lowest "high" frequency is also ω = "ω 0". The magnitude of the error can be found by evaluating H(jω) at ω = ω 0. For pole terms, the error is given by the difference between 0 dB and 1 j⋅ ω + 1 ω 0 20 ⋅ log 2 2) ( 1 + 1 1 evaluated at ω = ω 0, which is 20 ⋅ log = −20 ⋅ log ( 2) = -3.103 dB So for a pole the magnitude is actually at -3 dB rather than at 0 dB as predicted by the straight-line approximation. For zero terms the error is given by the difference between 0 dB and ω ω0 20 ⋅ log j ⋅ + 1 evaluated at ω = ω 0, which is 20 ⋅ log = (1 2 + 1 2) 20 ⋅ log ( 2) = 3.103 dB So for a zero the magnitude is actually at +3 dB rather that at 0 dB as predicted by the straight-line approximation. First Order Phase Approximations The first order phase response is the difference in phase angle between the input sinusoid and the output sinusoid as a function of frequency for a system characterized by a transfer function of the form: H ( s) = s + ωo (First order zero at ω o) where ω o is referred to as the break frequency for reasons that are apparent from our investigation of the magnitude response, and which plays an important role in the phase response as well. The phase response as a function of frequency is: ω ωo Φ ( ω ) = atan ω 360 ⋅ 1 2⋅ π atan 31 A plot of Φ vs. log(ω) for ω o= 1 is shown below: ω := 0.01 , 0.02 .. 100 90 80 70 60 50 40 30 20 10 0 0.01 0.1 1 10 100 ω Our first approach to a straight-line approximation might be to calculate the slope of the phase function at ω = ω o and draw a line with that slope through the point on the phase function where ω = ω o. This is the basis for the approach that Nilsson [1] takes to second order phase approximations. The slope of the phase function at ω = ω o is found by evaluating the derivative of the phase function at ω = ω o. The derivative of Φ(ω), is d dω ω ω o atan Which evaluated at ω = ω o gives: slope = 1 = 2 ω ω o ⋅ 1 + 2 ω o 1 (2 ⋅ω o) Unfortunately this is the slope in radians per radian, not radians per decade. To calculate the slope in radians per decade we must calculate the "rise" over the "run" where the "rise" is in 32 radians and the "run" is in decades. Since we are interested in the slope at the point where ω = ω o , we take as the rise, the limit as ∆ approaches 0 of: ( ω o + ∆ ) − ( ω o − ∆ ) ⋅ 2 ⋅ω (The difference in ω is 2 ∆ ) 1 o For the run we use the limit as ∆ approaches 0, of 2∆ expressed in decades. Since one decade is defined as the distance between two frequencies ω 1 and ω 2, where ω 1 and ω 2 are related as ω 2 = 10 ω 1, we have: ( ) ( ) ∆ω (in decades) = log ω 2 − log ω 1 = ω2 log ω 1 ω2 which gives log = 1 decade if ω 2 = 10ω 1 as required. ω 1 The run is given then, by the limit as ∆ approaches 0 of: ωo + ∆ log ω − ∆ o The slope in radians per decade is given then as: ω + ∆ − ω − ∆ ⋅ 1 ) ( o ) 2 ⋅ω ( o o lim ωo + ∆ ∆ω → 0 log ω − ∆ o which simplifies to 1 ⋅ ln ( 10) 2 (We must use L'Hopital's rule.) An interesting aspect of this result is that the slope of the phase function (in radians per decade) evaluated at the break frequency ω o is independent of the value of ω o. This is, of course, one of the principle reasons for plotting the phase function against log (ω) rather than against ω. Phase functions for various values of ω o are plotted below to demonstrate the plausibility of the independence of the slope at ω = ω o from the value of ω o. 1 radians = ⋅ ln ( 10) ⋅ 2 decade 1 360 degrees ⋅ ln ( 10) ⋅ ⋅ 2 2 ⋅ π decade ω 360 ⋅ 0.1 2 ⋅π ω 360 ⋅ 0.5 2 ⋅π Φ 1 ( ω ) := atan Φ 1(ω ) 90 80 70 60 50 40 30 20 10 0 0.01 0.1 Φ 2 ( ω ) := atan Φ 2(ω ) 1 10 100 90 80 70 60 50 40 30 20 10 0 0.01 0.1 ω ω 360 ⋅ 5 2 ⋅π Φ 3(ω ) ω 360 ⋅ 10 2 ⋅π Φ 4 ( ω ) := atan Φ 4(ω ) 1 10 100 ω Φ 3 ( ω ) := atan 90 80 70 60 50 40 30 20 10 0 0.01 0.1 1 10 100 90 80 70 60 50 40 30 20 10 0 0.01 0.1 1 10 100 ω ω First Straight-Line Approximation (Inadequate) The slope of the phase function evaluated at the break frequency is 360 1 ⋅ ⋅ ln ( 10) = 65.964 2 ⋅π 2 Deg Dec If we plot a straight line with this slope through the phase function at the break frequency we obtain the following result. (We have normalized the break frequency ω o to 1) L ( ω ) := 45 + 65.964 ⋅ log ( ω ) degrees per decade 33 L1 ( ω ) := 45 + 65.964 ⋅ log ( ω ) degrees per decade 90 80 70 60 50 40 30 20 10 0 0.01 ω 360 ⋅ 1 2⋅ π atan L1 ( ω ) 0.1 1 34 10 100 ω We propose as our first straight-line approximation to the first order phase function: _ | 0 if ω < ω lo Φ approx ω | 45+65.964 log(w) if ω lo < ω < ω hi = |_90 if ω hi< ω ( ) where ω lo is the frequency where L1(ω) intersects 0 degrees, and ω hi is the frequency where L1(ω) intersects 90 degrees. Since 45 + 64.964 log(ω hi )= 90 we have: ω hi = 10 45 64.964 ⋅ω o or ω hi= 4.928 ⋅ ω o Since 45 + 64.964 log( w) = 0 we have: ω lo = − 45 64.964 10 ⋅ω o or ω lo = 0.2029 ⋅ ω o This approximation suffers from two principal shortcomings. The first disadvantage is that the line L1(ω) underestimates the range of frequencies over which the phase function changes with ω. In other words the error, i. e., the difference between Φ(ω) and Φ approx (ω) at ω lo and at ω hi is too large. The second problem is the complexity of the expressions for ω lo and ω hi. Let us devise a new straight-line approximation by applying one of the oldest, most fundamental engineering rules of thumb to the selection of ω lo and ω hi. The rule of thumb in question is the notion that if quantity a is less that 1 of quantity b, then compared to 10 quantity b, quantity a may be ignored to a first order approximation. Standard Phase Approximation (Best) Standard Phase Approximation (Best) 35 For small frequencies, i.e. for frequencies smaller than ω lo, Φ(ω) -> 0, so let us choose for ω lo not .2029 ω , but o ω0 10 . Similarly for large frequencies, i.e. for frequencies larger than ω , hi Φ(ω) −> 90, so let us choose not ω hi = 4.928 ω o, but ω hi = 10 ω o. The straight line resulting from this selection changes value from 0 to 90 over a frequency range of Since the distance between ω0 10 ω0 10 to 10 ⋅ ω 0. and ω is one decade and the distance between o ω0 10 and 10 ⋅ ω 0 is one decade, the slope of the line is 90 degrees per 2 decades or 45 degrees per decade. (45 deg per decade = log ( 2) ⋅ 45 deg per octave = 13.56 deg per octave.) The new straight-line approximation as well as the original straight-line approximation, are plotted below. L2 ( ω ) := 45 + 45 ⋅ log ( ω ) L1 L2 ω 360 ⋅ 1 2⋅ π atan L1 ( ω ) L2 ( ω ) 90 80 70 60 50 40 30 20 10 0 0.01 0.1 1 10 100 ω In general for a zero at ω 0, we have Φ(ω) = ω0 ω if ω < , 0 , if ω < 10 ⋅ ω 0 , 45 + 45 ⋅ log , 90 10 ω 0 The line L (ω) is the familiar 45 degree per decade straight-line approximation to which all The line L2(ω) is the familiar 45 degree per decade straight-line approximation to which all undergraduate engineering students are introduced. The result is too often simply stated with 36 little or no explanation of the underlying derivation. In fact, well over 95% of the over 100 ω ω 0 electrical engineering students informally surveyed thought that the slope of atan evaluated at ω = ω o has a value of 45 degrees per decade. Before we demonstrate how this same line of reasoning can be applied to the second order phase response, let us calculate the errors of L1(ω) and L2(ω) at their respective ω lo and ω hi. At ω lo we have: atan ( 0.2029) ⋅ and 360 2 ⋅π atan ( 0.1) ⋅ 360 2 ⋅π = 11.47 So the error at ω lo is 11.47 degrees for L1(ω) = 5.711 So the error at ω lo is 5.711 degrees for L2(ω) At ω hi we have: atan ( 4.928) ⋅ and 360 2 ⋅π atan ( 10) ⋅ = 78.529 360 2 ⋅π = 84.289 So the error at ω hi is 90 - 78.529 = 11.47 degrees for L1(ω) So the error at ω hi is 90 - 84.289 = 5.711 degrees for L2(ω) A similar analysis for the related transfer function gives the following result: L3 ( ω ) := −45 − 65.964 ⋅ log ( ω ) L4 ( ω ) := −45 − 45 ⋅ log ( ω ) H ( s) = 1 s + ωo L4 L3 ω 360 0−atan ⋅ 1 2⋅ π L3 ( ω ) L4 ( ω ) 0 10 20 30 40 50 60 70 80 90 0.01 37 0.1 1 10 100 ω In general for a pole at ω 0 we have Φ(ω) = ω0 ω if ω < , 0 , if ω < 10 ⋅ ω 0 , −45 − 45 ⋅ log , − 90 10 ω 0 For both transfer functions we see that the 45 degree per decade approximation better represents the phase function because it distributes the error on both sides of the line, whereas the 66 degree per decade approximation (the one based on the slope of the phase function at the break frequency) puts all of the error on one side of the line. In other words the 45 degree per decade line is a better linear curve fit to the phase function. This results in the smaller errors at ω lo and ω hi. Phase Plots of First Order Poles and Zeros at s = 0 The phase function Φ(ω) for a tranfer function H(s) = s is found by taking the angle of H(jω) as follows: H ( jω) = jω = 0 + jω The angle of such a complex number is Re ( H ( jω) ) Im( H ( jω) ) Φ ( ω ) = atan θ := 0 , π .. 2 ⋅ π 10 = ω 0 atan = 90 Deg for all ω f1 ( θ ) := if θ = π , 1 , 0 2 120 100 90 150 f1 ( θ ) 50 0 0.01 0.1 1 10 90 30 0.6 0.2 180 0 210 100 ω 38 60 330 240 270 θ 300 Plot of 0 + j 1 = 1 at angle 90 deg in the complex plane The phase function Φ(ω) for a tranfer function H(s) = 1 s is found by taking the angle of H(jw) as follows: H ( jω) = 1 jω = 0− j ω The angle of such a complex number is Re ( H ( jω) ) ( ( ) ) Im H jω Φ ( ω ) = atan = − 1 ω atan 0 = -90 Deg for all ω f2 ( θ ) := if θ = 120 0 − 90 f2 ( θ ) 50 100 0.01 0.1 1 ω 10 100 150 90 3 ⋅π , 1 , 0 2 60 30 0.6 0.2 180 0 210 330 240 270 θ 300 Plot of 0 - j 1 = 1 at angle -90 deg in the complex plane Phase Plots of Constant Terms 39 Constant terms K produce no phase shift at all if K > 0 since the angle of K + j0 = 0. f3 ( θ ) := if ( θ = 0 , 1 , 0) 120 1 0 f3 ( θ ) 0 1 0.01 0.1 1 10 150 90 60 30 0.6 0.2 180 0 210 100 330 240 ω 270 θ 300 Plot of 1 + j 0 = 1 at angle 0 deg in the complex plane Constant terms K such that K < 0 produce a phase shift of 180o for all ω, since the angle of -K + j0 is 180o. f4 ( θ ) := if ( θ = π , 1 , 0) 120 400 180 f4 ( θ ) 200 0 0.01 0.1 1 10 100 ω 150 90 60 30 0.6 0.2 180 0 210 330 240 270 θ 300 Plot of -1 + j 0 = 1 at angle180 deg in the complex plane First Order Phase Approximation Examples First Order Phase Approximation Examples #1. H ( s) = −5 ⋅ s+1 s ⋅ ( s + 12) ω := 0.01 , 0.02 .. 1000 Since the angle of s + 1 −5 1 ⋅ H ( s) = 12 s + 1 s ⋅ 12 −5 + j0 = 180 degrees , the constant term contributes a phase of 12 180degrees for all ω. (A positive constant has angle = 0 and so would not produce any phase contribution an all.) The pole at s = 0 contributes a phase of -90 degrees for all ω, so the constant phase is 180 - 90 = 90 degrees. The zero at s = 1 contributes a phase shift that varies from 0 degrees for ω < 0.1 to 90 degrees for ω > 10, varying linearly at + 45 degrees per decade for 0.1 < ω < 10. The pole at s = 12 contributes a phase shift that varies from 0 degrees for ω < 1.2 to -90 degrees for ω > 120, varying linearly at -45 degrees per decade (-13.56 degrees per octave). We begin by calculating the phase shift for all ω < 0.1 as 180 - 90 = 90 degrees, fixing point 1. The next step is to make an auxiliary drawing like the one below, which assumes that all of the phase change contributed by each pole and zero occurs suddenly at the break point ω o (the solid red line with vertical segments). Next draw in the 45 degrees per decade lines at the proper locations on the same drawing. (These are the blue dashed lines.) We now can see all the contributing slopes at all frequencies. (The black line at 135 degrees help us associate a blue line with a red vertical trasition as follows. The red vertical transition, the black line at 135 degrees and the blue line associated with that red vertical trasition all intersect at the same point.) The construction of the phase plot itself begins with a straight line of +45 degrees per decade between ω = 0.1 and ω = 1.2 (point 2), fixing point 3. Notice that for 1.2 < ω < 10 we have a slope of +45 -45 = 0 degrees, so construct a horizontal line from point 3 to point 4. Finally we have a slope of -13.6 degrees per octave (point 5) between ω = 12 and ω = 120, so construct a straight line of slope -45 degrees per decade ( -13.6 degrees per octave) to point 6. 0.01 1 1 A := 12 12 1000 90 90 180 180 90 90 1 90 B := 10 10 180 12 180 C := 10 120 90 1 10 12 D := 10 10 120 180 180 90 90 40 41 180 〈 〉 A1 160 〈 〉 B1 140 〈 〉 C1 〈 〉 D1 120 135 100 80 0.01 0.1 1 10 〈 〉 〈 〉 〈 〉 〈 〉 A0 ,B 0 ,C 0 ,D 0 ,ω 100 1 .10 3 Auxilliary drawing Φ 1 ( ω ) := if ω < Φ 2 ( ω ) := −90 Φ 4 ( ω ) := if ω < 1 ω , 0 , if ω < 10 , 45 + 45 ⋅ log , 90 10 1 Φ 3 ( ω ) := 180 12 ω , 0 , if ω < 10 ⋅ 12 , −45 − 45 ⋅ log , −90 10 12 90 0.01 0.1 90 1.2 138.563 points := 10 138.563 90 120 3 90 10 Φ T ( ω ) := 0 + Φ 1 ( ω ) + Φ 2 ( ω ) + Φ 3 ( ω ) + Φ 4 ( ω ) 42 100 Φ 1 ( ω ) 50 0 0.01 0.1 1 10 100 1 .10 100 1 .10 3 ω 0 Φ 4 ( ω ) 50 100 0.01 0.1 1 10 3 ω 140 Φ T( ω ) 〈 〉 points 1 Points 120 100 80 0.01 0.1 ^ ^ #1 #2 1 10 〈 〉 ω , points 0 ^ ^ #3 #4 100 1 .10 3 ^ ^ #5 #6 At ω = 0.1 the contributions to the phase function are the constant -90 degrees from the pole at ω = 0 and the 180 degress from the (-5) constant term so point #1. For ω < 1 , the slope is 0 degrees per decade so point #2. 10 1 < ω < 1.2 we have slope +45 degrees per decade so point #3. 10 1.2 =138.563 ) ( 90 + 45 ⋅ log 0.1 For 1.2 < ω < 10 the slope is + 45 + -45 = 0 degrees per decade so point #4. For 10 < ω < 120 the slope is -45 degrees per decade so point #5. 120 = 90 degrees.) For ω > 120 we have slope = 0 so point #6. (138.563 - 45 ⋅ log 10 For s s ⋅ + 1 15 3 ω := 0.1 , 0.2 .. 100 ⋅ 2 32 s + 1 ⋅ s + 1 2 4 #2 H ( s) = Φ 1 ( ω ) := if ( ω ) < Φ 2 ( ω ) := if ω < 3 ω , 0 , if ω < 3 ⋅ 10 , 45 + 45 ⋅ log , 90 10 3 2 ω , 0 , if ω < 2 ⋅ 10 , −45 − 45 ⋅ log , −90 10 2 100 0 Φ 1 ( ω ) 50 0 0.1 Φ 2 ( ω ) 50 1 10 100 100 0.1 1 ω Φ 3 ( ω ) := if ( ω ) < 4 ω , 0 , if ω < 4 ⋅ 10 , −45 − 45 ⋅ log , −90 10 4 10 ω 100 43 0 Φ 3 ( ω ) 50 100 0.1 1 10 100 ω 2 90 B := 10 20 0 0.1 2 2 3 A := 3 4 4 100 3 0 C := 10 30 90 90 90 0 0 90 90 0 0 E := 4 90 D := 10 40 0 100 〈 〉 A1 〈 〉 B1 〈 〉 C1 〈 〉 D1 〈 〉 E1 80 60 40 20 45 0 0.1 1 10 〈 〉 〈 〉 〈 〉 〈 〉 〈 〉 A0 ,B 0 ,C 0 ,D 0 ,E 0 ,ω Auxilliary Diagram 100 2 44 90 10 3 10 4 10 20 30 40 0 90 0 90 0 Φ T ( ω ) := 90 + Φ 1 ( ω ) + Φ 2 ( ω ) + Φ 3 ( ω ) 0.1 0.2 0.3 0.4 points := 20 30 40 100 90 82.076 82.076 5.622 5.622 0 0 90 100 Φ T( ω ) 〈 〉 points 1 50 0 0.1 1 10 100 〈 〉 ω , points 0 ^ Points #1 ^ ^ ^ #2 #3 #4 ^ ^ ^ #5 #6 #7 ^ #8 2 , the slope of Φ T ( ω ) is zero, and the only contribution is from the zero at 10 2 3 ω = zero, so point #1 and point #2. For < ω < , the slope is -45 degrees per 10 10 0.3 = 82.076 degrees.) For 3 < ω < 4 , the decade so point #3. ( 90 - 45 ⋅ log 10 10 0.2 4 slope is -45 + 45 = 0 so point #4. For < ω < 2 ⋅ 10 , the slope is -45 + 45 - 45 = -45 10 20 = 5.622) degrees per decade so point #5. (82.076 - 45 ⋅ log 0.4 For all ω < 45 For 20 < ω < 30 , the slope is +45 - 45 = 0 degrees per decade so point #6. 46 40 30 For 30 < ω < 40 , the slope is -45 degrees per decade so point #7. (5.622 - 45 ⋅ log = 0) For all ω > 40 , the slope is 0 so point #8. s + 1 ⋅ s + 1 1 3 1 ⋅3 4 4 ⋅ 1 s + 1 s ⋅ 1 2 2 #3. H ( s) = s + 1 ⋅ ( s + 3) 4 1 s ⋅ s + 2 = = s + 1 ⋅ s + 1 1 3 3 4 ⋅ 2 s + 1 s ⋅ 1 2 ω := 0.01 , 0.015 .. 100 1 4 1 ω Φ 1 ( ω ) := if ( ω ) < , 0 , if ω < 10 ⋅ , 45 + 45 ⋅ log , 90 10 4 1 4 100 Φ 1 ( ω ) 50 0 0.01 0.1 1 ω 10 100 1 2 1 ω Φ 2 ( ω ) := if ( ω ) < , 0 , if ω < 10 ⋅ , −45 − 45 ⋅ log , −90 10 2 1 2 3 ω Φ 3 ( ω ) := if ω < , 0 , if ω < 10 ⋅ 3 , 45 + 45 ⋅ log , 90 10 3 100 0 Φ 3 ( ω ) 50 Φ 2 ( ω ) 50 0 0.01 0.1 1 10 100 100 0.01 0.1 ω 0.01 1 4 1 4 1 A := 2 1 2 3 3 100 47 −90 −90 0 0 −90 −90 0 0 1 10 ω B := 1 4 −90 10 1 ⋅ 10 0 4 C := 1 2 0 10 1 ⋅ 10 −90 2 3 −90 D := 10 30 0 E := 1 4 −90 10 1 2 0 10 3 −90 10 1 ⋅ 10 0 4 1 ⋅ 10 −90 2 30 0 100 Φ T ( ω ) := −90 + Φ 1 ( ω ) + Φ 2 ( ω ) + Φ 3 ( ω ) 48 0 〈 〉 A1 〈 〉 B1 〈 〉 C1 20 40 〈 〉 D1 〈 〉 E1 60 − 90+45 80 100 0.01 0.01 points := 0.1 1 10 〈 〉 〈 〉 〈 〉 〈 〉 〈 〉 A0 ,B 0 ,C 0 ,D 0 ,E 0 ,ω −90 −90 1 −76.45 20 3 −76.45 10 10 −35.02 4 10 −35.02 2 30 0 100 0 1 40 Auxilliary Diagram 100 49 0 20 Φ T( ω ) 40 〈 〉 points 1 60 80 100 0.01 0.1 1 10 100 〈 〉 ω , points 0 ^ ^ ^ ^ ^ ^ ^ ^ #1 #2 #3 #4 #5 #6 #7 #8 For ω < 0.01, the only contribution is from the pole at zero so point #1 and point #2. 1 1 degrees 4 2 For < ω < the slope is + 45 so point #3. 10 10 −90 + 45 ⋅ log point #4. For 1 20 1 40 decade = −76.454 For 1 2 10 < ω < 3 the slope is +45 -45 = 0 so 10 3 1 < ω < 10 ⋅ the slope is +45 -45 +45 = 45 so point #5. 10 4 −76.454 + 45 ⋅ log 10 4 3 10 -45 +45 = 0 so point #6. = −35.017 For 10 ⋅ 1 1 < ω < 10 ⋅ the slope is 4 2 1 < ω < 30 the slope is +45 so point #7. 2 30 = 0. For ω > 30 the slope is 0 so point #8. −35.017 + 45 ⋅ log 1 10 ⋅ 2 For 10 ⋅ Example #4 H ( s) = 50 100000 ⋅ s 100000 = ⋅ ( s + 10000) ⋅ ( s + 50000) 10000 ⋅ 50000 s s s + 1 + 1 ⋅ 10000 50000 ω := 100 , 200 .. 1000000 Φ1 ( ω ) := if ω < 10000 ω , 0 , if ω < 10 ⋅ 10000 , −45 − 45 ⋅ log , −90 10 10000 0 Φ1 ( ω ) 50 100 100 Φ2 ( ω ) := if ω < 1 .10 3 1 .10 ω 4 1 .10 5 1 .10 6 50000 ω , 0 , if ω < 10 ⋅ 50000 , −45 − 45 ⋅ log , −90 10 50000 0 Φ2 ( ω ) 50 100 100 1 .10 3 1 .10 ω 4 1 .10 5 1 .10 6 100 10000 10000 A := 50000 50000 6 10 90 0 0 −90 −90 90 10000 90 10 B := 10 ⋅ 10000 0 50000 90 10 C := 10 ⋅ 50000 0 10000 10 50000 D := 10 10 ⋅ 10000 10 ⋅ 50000 90 0 0 90 51 100 〈 〉 A1 50 〈 〉 B1 〈 〉 C1 〈 〉 D1 0 50 100 100 1 .10 3 1 .10 〈0〉 〈0〉 〈0〉 〈0〉 A ,B ,C ,D 4 1 .10 5 Auxilliary Diagram 90 100 10000 90 10 50000 58.546 points := 10 10000 ⋅ 10 −58.546 −90 50000 ⋅ 10 6 10 − 90 Φ T ( ω ) := 90 + Φ1 ( ω ) + Φ2 ( ω ) 1 .10 6 100 52 50 Φ T( ω ) 〈 〉 points 1 0 50 100 100 1 .10 3 ^ ^ #1 #2 1 .10 〈 〉 ω , points 0 ^ 1 .10 4 1 .10 5 #3 6 ^ ^ ^ #4 #5 #6 For ω < 1000, the only contribution is from the zero at 0 so points #1 and #2. For 1000 < ω < 5000, the slope is -45 deg per decade so point #3. 50000 10 5 90 − 45 ⋅ log = 58.546 For 5000 < ω < 10 , the slope is 10000 10 10 ⋅ 10000 = −58.547 50000 10 -45 -45 = -90 deg per decade so point #4. 58.546 − 90 ⋅ log For 10 5 5 < ω < 5 ⋅ 10 , the slope is -45 deg per decade so point #5. 5 ⋅ 10 5 −58.547 − 45 ⋅ log = -90. 10 5 5 For ω > 5 ⋅ 10 the slope is zero, so point #6. Second Order Magnitude Approximations Second Order Magnitude Approximations 53 When we gave the general form of the transfer function as: nz K⋅ (s + ωzi) ∏ i= 1 np H ( s) = ∏ = (s + ωpi) zero | \/ )( ) ( ) (s + ωp1) ⋅(s + ωp2) ⋅ .. ⋅(s + ωpnp) ( K ⋅ s + ωz1 ⋅ s + ωz2 ⋅ .. ⋅ s + ωznz /\ | pole i= 1 We allowed for the possibility that some of the constants ωzi and ωpi might be complex numbers as a result of second order terms that do not factor into real first order terms. To make magnitude and phase approximations of such terms, the terms are not factored into complex form but are left as second order terms of the form: s 2 ωo 2 + 2⋅ ζ ωo ⋅s + 1 where ζ < 1, since if ζ = 1, the quadratic is a perfect square and is handled as a pole of muliplicity 2, and if ζ >1 the quadratic is factorable into two real factors and the term is handled as two distinct first order poles. The second order response has been normalized so that the constant coefficient is one. Note that in the following discussions ω is a variable and ω o is the name of a constant . Magnitude Response of Second Order Poles consider a transfer function of the form: H( j ⋅ω ) = 1 H ( s) = s 2 ωo 2 + 2⋅ ζ ωo ⋅s + 1 1 1− ω 2 ω0 2 + 2 ⋅ζ ⋅ω ω0 The low frequency asymptote is found by taking the limit as ω approaches zero of H(jω). 54 H( j ⋅ω ) dB 1 lim 20 ⋅ log = −ω 2 ζ + 2⋅ ⋅ j ⋅ω + 1 2 ωo ωo ω→0 = 0 dB The high frequency asymptote is found by taking the limit as ω approaches infinity of H(jω). H( j ⋅ω ) dB = lim ω→∞ = = = 1 20 ⋅ log lim ω→∞ lim ω→∞ −ω 2 ζ + 2⋅ ⋅ j ⋅ω + 1 2 ωo ωo 1 20 ⋅ log −ω 2 2 ωo ω 2 o lim 20 ⋅ log 2 ω→∞ ω = (20 ⋅log(ω ) − 20 ⋅log(ω )) 2 2 o ( 2) ( ) −20 ⋅ log ω = −40 ⋅ log ω The approximation strategy is the same as with first order magnitude plots: The magnitude function is approximated by a horizontal straight line of 0 dB for frequencies less than ω o and by a straight line of slope -40 dB per decade passing through ω = ω o for all frequencies greater than ω o. The main difference between the first order case and the second order case, is that the error depends heavily on ζ and may not usually be ignored. Several second order magnitude functions are plotted below for various values of ζ (ω o has been normalized to 1.0). Ha ( ω ) := 20 ⋅ log ( 1 − ω ) 2 + 2 ⋅ ω ⋅ ( 1) ⋅ i 1 (ζ = 1.0) 1 Hb ( ω ) := 20 ⋅ log 1 − ω 2 + 2 ⋅ ω ⋅ 1 ⋅ i 2 ( Hc ( ω ) := 20 ⋅ log ) ( ) 6 + 2 ⋅ ω ⋅ ⋅ i 10 ζ = 6 10 ) 1 + 2 ⋅ ω ⋅ ⋅ i 2 ζ = 1 2 ζ = 1 5 2 1 − ω He ( ω ) := 20 ⋅ log ( 2 1 − ω Hd ( ω ) := 20 ⋅ log ( ) 1 1 1 1 2 1 − ω + 2 ⋅ ω ⋅ ⋅ i 5 Hf ( ω ) := 20 ⋅ log ( 1 − ω Hg ( ω ) := 20 ⋅ log ( ) 1 + 2 ⋅ ω ⋅ ⋅ i 10 ζ = 1 10 ) 1 + 2 ⋅ ω ⋅ ⋅ i 100 ζ = 1 100 2 2 1 − ω ω := 0.1 , 0.15 .. 100 ζ = 1 2 1 1 55 56 40 20 Ha ( ω ) Hb ( ω ) 0 Hc ( ω ) Hd ( ω ) 20 He ( ω ) Hf ( ω ) Hg ( ω ) 40 60 80 0.1 1 10 ω The above plot has been expanded around ω = ω o to expose the three distinct characteristics that such transfer functions exhibit, depending on the value of ζ, and is shown on the next page. 10 57 5 Hb ( ω ) Hc ( ω ) Hd ( ω ) 0 He ( ω ) 5 10 0.1 1 10 ω We see that for 1 > ζ > The case ζ = 1 1 the response does not peak. (Ha and Hb) 2 is the Butterworth maximally flat response. (Hb) 2 For all ζ such that 1 > ζ > For values of ζ such that 1 2 1 2 the maximum of the magnitude response occurs at ω = 0. > ζ > 1 the magnitude function peaks, but returns to 0 2 dB at a frequency smaller than ω o . (Hc) For values of ζ such that 1 > ζ 2 the response peaks and returns to 0 dB at a frequency larger than ω o. (He, Hf,Hg) For ζ = 1 the response peaks and returns to 0 dB at ω = ω (Hd) o 2 58 Peaked Responses For values of ζ such that ζ < 1 , we define ω o , ω p, ω c , ω 2 , Ao, Ap, and A2 2 ( ) as shown in the plot below. Hp ω := 20 ⋅ log ( 1 − ω ( ω o = 1 in this example) 1 ) + 2 ⋅ω ⋅ 103 ⋅i 2 Ao is the magnitude of the response at ω = ω o, Ap is the magnitude at ω p ,where the response peaks , the response crosses through 0 dB at ω c , ω 2 is one half ω o , and A2 is the magnitude of the response at ω 2 . Ap := 4.85 Ao := 4.4 A2 := 1.9 (We'll give formulae for these presently.) 10 5 Hp ( ω ) 0 Ap Ao 5 A2 10 15 20 0.1 1 ω2 ω ω pω o ω c 10 59 Derivation of ω p, ω c , ω 2 , Ao, Ap, and A2 H ( s) = 1 s2 2 ⋅ζ ⋅s + + 1 2 ω ωo o ( H( jω) ) 2 1 = 2 2 2 ω 2 ⋅ ζ ⋅ ω 1 − + 2 ωo ω o Now |H(jω)| reaches a peak at ω = ω p. Therefore: d 1 dω 2 2 2 ω 2 ⋅ ζ ⋅ ω + 1 − 2 ωo ω o = 2 ⋅ 1 − = 0 ω = ωp −2 ⋅ ω ⋅ + 2 ⋅ 2 ⋅ ζ ⋅ ω ⋅ 2 ⋅ ζ 2 2 ωo ωo ω o ω o = 2 2 2 2 1 − ω + 2 ⋅ζ ⋅ω 2 ωo ω o ω=ω ω 2 The value of ω that satisfies this equation is ωp 0 p In order for this function to equal zero the numerator must equal zero (there is no combination of positive ω, ω o, and ζ that could produce a zero denominator), so: 2 ω 2 ⋅ζ ⋅ω p 2 ⋅ζ p −2 ⋅ ω p 2⋅ 1 − ⋅ + 2 ⋅ ⋅ 2 2 ω ω o o ωo ωo = = − 4 ⋅ω p ωo −1 + 2 + ωp 2 ωo 2 4 ⋅ω p ωo 3 + 4 + 2 ⋅ζ 2 2 8 ⋅ζ ⋅ω p ωo =0 2 Therefore, the response peaks at a frequency ω p such that : ω p = ω o ⋅ 1 − 2 ⋅ ζ 2 60 The magnitude crosses back through 0 dB at ω = ω c, so 20 ⋅ log ( H ( jω) 1 ) = 0, and H ( jω) = 1 ( H( jω) ) 2 so = 1. As a result we have: 1 = 2 2 2 ω 2 ⋅ ζ ⋅ ω c c 1 − + 2 ω o ωo ω 2 ω 4 4 ⋅ζ 2 ⋅ω 2 c c c 1 − 2 ⋅ + + 2 4 2 ω ω ω o o o 2 4 2 2 ω ω 4 ⋅ ζ ⋅ ω c −2 ⋅ c + c + 2 4 2 ω ω ω o o o ωc = 1 = 0 So and 2 ωo 2 − 2 + 4 ⋅ζ 2 = 0 ( Or ω c = ω o ⋅ 2 ⋅ 1 − 2 ⋅ ζ ) 2 Since The transfer function has a magnitude Ao at ω = ω o , so Ao = 20 ⋅ log 1 2 ω 2 ⋅ ζ ⋅ ω o o + i ⋅ 1 − 2 ω o ωo = 2 ⋅ω p ω p = ω o ⋅ 1 − 2 ⋅ζ 2 = = 20 ⋅ log 20 ⋅ log ( 1) − 20 ⋅ log ( ) 0 + 4 ⋅ζ 2 = −20 ⋅ log 61 2 2 2 ω 2 ⋅ ζ ⋅ ω o 1 − o + 2 ωo ω o 1 2 2 2 1 − ω o + 2 ⋅ ζ ⋅ ω o 2 ωo ω o ( = −20 ⋅ log 2 ⋅ ζ ) = Ao At ω = ω p the magnitude is: 1 Ap = 20 ⋅ log 2 ω 2 ⋅ ζ ⋅ ω p p + i ⋅ 1 − 2 ω o ωo = 20 ⋅ log = 1 2 ω ⋅ 1 − 2 ⋅ζ 2 2 ⋅ ζ ⋅ ω ⋅ 1 − 2 ⋅ ζ 2 + i ⋅ o 1 − o 2 ω o ωo 20 ⋅ log ( 1) − 20 ⋅ log 2 2 2 2 2 ω o ⋅ 1 − 2 ⋅ζ 2 ⋅ζ ⋅ ω o ⋅ 1 − 2 ⋅ζ 1 − + 2 ω o ωo = = 2 2 2 2 2 ω ⋅ 1 − 2 ⋅ζ 2 ⋅ζ ⋅ ω ⋅ 1 − 2 ⋅ζ o + o −10 ⋅ log 1 − 2 ω o ωo ( ) ( ) 2 2 2 2 −10 ⋅ log 1 − 1 − 2 ⋅ ζ + 4 ⋅ ζ ⋅ 1 − 2 ⋅ ζ ( = −10 ⋅ log 4 ⋅ ζ 4 2 + 4 ⋅ζ − 8 ⋅ζ ( 4 ) = ( ) 2 2 So Ap = −10 ⋅ log 4 ⋅ ζ ⋅ 1 − ζ When ω = ωo 2 A2 = 20 ⋅ log = = the magnitude is: 1 1 − −20 ⋅ log 2 ωo ωo 2 ⋅ζ ⋅ 2 2 + i ⋅ ωo 2 ωo 1 − 9 + ζ 2 16 −10 ⋅ log 2 2 ωo ωo 2 ⋅ζ ⋅ 2 2 + ωo 2 ωo ( = −10 ⋅ log ζ ) 2 2 −10 ⋅ log 4 ⋅ ζ ⋅ 1 − ζ 2 2 + 0.5625 ) 62 1 In summary for ζ < ω p = ω o ⋅ 1 − 2 ⋅ζ we have: 2 Ao = −20 ⋅ log ( 2 ⋅ ζ ) ( ) 2 2 Ap = −10 ⋅ log 4 ⋅ ζ ⋅ 1 − ζ 2 ωc = 2 ⋅ω p ( 2 A2 = −10 ⋅ log ζ + 0.5625 63 ) For example when ζ = 0.3 and ω o = 1 (This is the value of ζ used in the illustration of the definition of ω o , ω p, ω c , Ao, Ap, and A2.), we obtain ω p = 0.9055, ω c = 1.281, Ao = 4.437 dB, Ap = 4.847 dB, and A2 = 1.854 dB. Non-peaked Responses For non-peaked responses, i.e. when ζ > 1 2 ω p, Ap, and ω c are not defined so we plot only Ao and A2. For example if ω o = 1 and ζ = 0.8, we have: Hnp ( ω ) := 20 ⋅ log ( 1 − ω ) 2 A0 := −20 ⋅ log ( 2 ⋅ 0.8) 8 + 2 ⋅ ω ⋅ ⋅ i 10 A2 := −10 ⋅ log ( 0.8 2 + 0.563) 1 10 5 Hnp ( ω ) 0 A0 5 A2 10 15 20 0.1 1 ω 10 Extraction of ζ and ω o from polynomial coefficients 2 s + a ⋅s + b Suppose we are given the polynomial Since ωo = 2 s + a ⋅s + b b and = 2 s + 2 ⋅ζ ⋅ω o + ω o 2 ⋅ζ ⋅ω o = a = 2 and we wish to calculate ζ and ω o. we have 2 ⋅ζ ⋅ b H(s) = 1 ⋅ 25 s 2 2⋅ b 1 2 s + 2 ⋅ s + 25 Find the Bode magnitude plot. b := 25 a ζ = so Example #1: suppose we are given the transfer function H(s) = a := 2 64 ω 0 := ω0 = 5 b 1 ζ := a ζ = 0.2 2⋅ b (Notice that the normalization does not affect the values of ω 0 and ζ , so ω 0 and ζ can be calculated 2 + ⋅s + 1 25 25 before the normalization.) 2 2 s a s 2 ⋅ζ After the normalization we have H(s) = + ⋅s + 1 = + ⋅ s + 1 and we get 2 b b ω0 ωo precisely the same formulae for ω 0 and ζ as before, so the calculation of ω 0 and ζ can be carried out either before or after the normalization. ω0 2 = 2.5 ω p := ω 0 ⋅ 1 − 2 ⋅ ζ A0 := −20 ⋅ log ( 2 ⋅ ζ ) ( 2 A0 = 7.959 2 A2 := −10 ⋅ log ζ + 0.5625 ω := 0.1 , 0.15 .. 100 ) ω p = 4.796 ω c := 2 ⋅ω p ( ω c = 6.782 ) Ap := −10 ⋅ log 4 ⋅ ζ ⋅ 1 − ζ A2 = 2.2 2 2 Ap = 8.136 The resulting plot is shown below. ω 0 10 ω0 2 Corr := ω p ω0 ω c 10 ⋅ ω 0 65 1 K0 := 20 ⋅ log K0 = −27.959 K0 25 ω ( ) L ω := if ω < ω , K , K − 40 ⋅ log 0 0 0 K0 + A2 ω0 K0 + Ap 1 1 H ( ω ) := 20 ⋅ log ⋅ K0 + A0 2 25 ω ω 1 − + j ⋅ 2 ⋅ζ ⋅ K0 2 ω0 ω 0 K0 − 40 Note that Ap and A0 are too close to resolve. This is usually the case for small values of ζ . 10 20 30 L(ω ) 〈 〉 Corr 1 H(ω ) 40 50 60 70 80 0.1 1 10 〈 〉 ω , Corr 0 , ω 100 Example #2 H(s) = 1 2 s + 0.36 + 4 ω0 = 1 ω p := ω 0 ⋅ 1 − 2 ⋅ ζ 2 A0 := −20 ⋅ log ( 2 ⋅ ζ ) ω 0 10 ω0 2 Corr := ω p ω0 ω c 10 ⋅ ω 0 2 A0 = 14.895 ω 0 := 4 ω0 = 2 ω p = 1.984 ζ := ω c := 0.36 2⋅ 4 2 ⋅ω p ( ω c = 2.805 ) Ap := −10 ⋅ log 4 ⋅ ζ ⋅ 1 − ζ 2 ( ζ = 0.09 2 Ap = 14.93 ) 2 A2 := −10 ⋅ log ζ + 0.5625 A2 = 2.437 K0 1 K := 20 ⋅ log K0 = −12.041 0 4 K0 + A2 ω ( ) L ω := if ω < ω , K , K − 40 ⋅ log 0 0 0 K0 + Ap ω0 K0 + A0 1 H ( ω ) := 20 ⋅ log 1 ⋅ 4 2 K0 ω 1 − + j ⋅ 2 ⋅ ζ ⋅ ω 2 ω0 K0 − 40 ω 0 0 L(ω ) 20 〈 〉 Corr 1 H(ω ) 40 60 80 0.1 1 10 〈 〉 ω , Corr 0 , ω 1 66 100 Example #3 H(s) = ω0 2 = 3.5 1 ω 0 := 2 s + 8.4 ⋅ s + 49 ω p := ω 0 ⋅ 1 − 2 ⋅ ζ A0 := −20 ⋅ log ( 2 ⋅ ζ ) 2 49 ω 0 = 7 ω p = 3.704 ζ := ω c := 8.4 2 ⋅ 49 2 ⋅ω p ( ) Ap := −10 ⋅ log 4 ⋅ ζ ⋅ 1 − ζ 2 A0 = −1.584 2 ζ = 0.6 67 ω c = 5.238 Ap = 0.355 Note that since ω c < ω 0 , their order in Corr is reversed. ω 0 10 ω0 2 Corr := ω p ωc ω 0 10 ⋅ ω 0 ( ) 2 A := − 10 ⋅ log ζ + 0.5625 A2 = 0.35 2 K0 1 K0 := 20 ⋅ log K0 = −33.804 49 K0 + A2 ω K0 + Ap L ( ω ) := if ω < ω 0 , K0 , K0 − 40 ⋅ log ω 0 K0 1 1 ⋅ ( ) H ω := 20 ⋅ log K0 + A0 49 2 ω 1 − + j ⋅ 2 ⋅ ζ ⋅ ω K0 − 40 2 ω0 ω 0 35 L(ω ) 40 〈 〉 Corr 1 H(ω ) 45 50 0.1 1 10 〈 〉 ω , Corr 0 , ω 100 Example #4 H(s) = ω0 2 = 4 1 2 s + 12.8 ⋅ s + 64 Since ζ > A0 := −20 ⋅ log ( 2 ⋅ ζ ) 1 2 ω 0 := 64 ω 0 = 8 ζ := 12.8 68 2 ⋅ 64 ζ = 0.8 , ω p , ω c , Ap are not defined ( 2 A0 = −4.082 A2 := −10 ⋅ log ζ + 0.5625 ) A2 = −0.801 ω0 K0 1 10 K0 := 20 ⋅ log K0 = −36.124 ω 64 0 K0 + A2 Corr := 2 L ( ω ) := if ω < ω , K , K − 40 ⋅ log ω 0 0 0 ω0 ω 0 K0 + A0 10 ⋅ ω K − 40 1 1 0 0 H ( ω ) := 20 ⋅ log ⋅ 2 64 ω 1 − + j ⋅ 2 ⋅ ζ ⋅ ω 2 ω0 ω 0 35 40 L(ω ) 〈 〉 Corr 1 H(ω ) 45 50 55 60 0.1 1 10 〈 〉 ω , Corr 0 , ω 100 Example #5 H(s) = 1 ζ := 2 s + 4 ⋅s + 3 4 2⋅ 3 69 ζ = 1.155 Since ζ > 1, H(s) can be factored into two real factors. s1 := −4 + 2 s2 := So 16 − 12 2 −4 − 2 1 2 s + 4 ⋅s + 3 16 − 12 2 = s1 = −1 s2 = −3 1 ( s + 1) ⋅ ( s + 3) ω 1 M1 ( ω ) := if ω < 1 , 0 , −20 ⋅ log ω 3 M2 ( ω ) := if ω < 3 , 0 , −20 ⋅ log MT ( ω ) := M1 ( ω ) + M2 ( ω ) 10 0 MT ( ω ) 10 20 30 40 0.1 1 10 ω 100 Magnitude Response of Second Order Zeros Transfer functions of the form H(s) = s 2 ωo 2 + 2 ⋅ζ ωo ⋅s + 1 70 (i.e. second order zeros) are handled in a manner similar to the approach we used on second order poles. The values of ω 0 , ω c , and ω p are as before, and ( ) Ap := 10 ⋅ log 4 ⋅ ζ ⋅ 1 − ζ Ao := 20 ⋅ log ( 2 ⋅ ζ ) 2 2 A2 := 10 ⋅ log ( ζ + 0.5625) Note the change in sign for all the magnitudes. ω 0 := 2 Example #1 H(s) = s + 2 ⋅ s + 25 25 ω0 = 5 ω0 2 = 2.5 ω p := ω 0 ⋅ 1 − 2 ⋅ ζ A0 := 20 ⋅ log ( 2 ⋅ ζ ) ( A0 = −7.959 2 A2 := 10 ⋅ log ζ + 0.5625 ω := 0.1 , 0.15 .. 100 ω 0 10 ω0 2 Corr := ω p ω0 ω c 10 ⋅ ω 0 2 ) 2 ζ := 2 ⋅ 25 ζ = 0.2 ω p = 4.796 ω c := 2 ⋅ω p ( ω c = 6.782 ) Ap := 10 ⋅ log 4 ⋅ ζ ⋅ 1 − ζ Ap = −8.136 A2 = −2.2 2 2 s2 2 H(s) = 25 ⋅ + ⋅s + 1 25 25 K0 := 20 ⋅ log ( 25) K0 = 27.959 K0 ω ( ) L ω := if ω < ω , K , K + 40 ⋅ log 0 0 0 K0 + A2 ω0 K0 + Ap 2 ω + j ⋅ 2 ⋅ ζ ⋅ ω H ( ω ) := 20 ⋅ log 25 ⋅ 1 − K0 + A0 2 ω0 ω 0 K0 K0 + 40 71 80 L(ω ) 60 〈 〉 Corr 1 H(ω ) 40 20 0.1 1 10 100 〈 〉 ω , Corr 0 , ω 2 Example #2 H(s) = s + 12.8 ⋅ s + 64 ω0 2 = 4 Since ζ > A0 := 20 ⋅ log ( 2 ⋅ ζ ) 1 2 ω 0 := 64 ω 0 = 8 ζ := 12.8 2 ⋅ 64 ζ = 0.8 , ω p , ω c , Ap are not defined A0 = 4.082 ( 2 A2 := 10 ⋅ log ζ + 0.5625 ) ω0 K0 10 K0 := 20 ⋅ log ( 64) K0 = 36.124 ω 0 K0 + A2 Corr := 2 L ( ω ) := if ω < ω , K , K + 40 ⋅ log ω 0 0 0 ω0 ω0 K0 + A0 2 10 ⋅ ω K + 40 ω + j ⋅ 2 ⋅ ζ ⋅ ω 0 0 H ( ω ) := 20 ⋅ log 64 ⋅ 1 − 2 ω0 ω 0 60 72 55 L(ω ) 50 〈 〉 Corr 1 45 H(ω ) 40 35 30 0.1 1 10 100 〈 〉 ω , Corr 0 , ω Second Order Phase Approximations The second order phase response is the difference in phase between the input and the output sinusoids of a system characterized by a transfer function of the form: 2 2 H(s) = s + 2 ⋅ ζ ⋅ ω o ⋅ s + ω o 2 ⋅ζ ⋅ω o ⋅ω ω 2 − ω2 o The phase function is Φ(ω) = atan First Straight-Line Approximation (Inadequate) We begin as with the first order case by finding the slope of the phase function at ω = ω 0 and passing a straight line with that slope through the phase funvtion at ω = ω 0. The slope of the phase function is: 2 ωo ω 2 ⋅ζ ⋅ + 4 ⋅ζ ⋅ω o ⋅ 2 2 2 2 ωo − ω ω − ω o d Φ (ω ) = 2 dω ω 2 2 1 + 4 ⋅ζ ⋅ω o ⋅ 2 2 2 ω − ω o ( ) ( ( ) ) 2 which simplifies to 2 ⋅ζ ⋅ω o ⋅ (ω (ω 4 2 2 o +ω 2 4 ) 2 73 2 2 o − 2 ⋅ω o ⋅ω + ω + 4 ⋅ζ ⋅ω o ⋅ω ) 2 Evaluating this expression at ω = ω o gives the slope of Φ(ω) at ω = ω o as 1 (ζ ⋅ω o) radians radian To convert a slope of k radians per radian to an equivalent slope in radians per decade we proceed as follows: the rise is the limit as ∆ -> 0 of , k ⋅ ω + ∆ − ω − ∆ and the run is ωo + ∆ the limit as ∆ -> 0 of log . ω − ∆ o ( ) ( ( ) ( ) The slope in radians per decade is then: ) k ⋅ ω o + ∆ω − ω o − ∆ω k ⋅ω o lim = k ⋅ ω o ⋅ ( ln ( 2) + ln ( 5) ) = log ( e) ω + ∆ω o ∆ω → 0 log ω − ∆ω o In our case the slope in radians per radian is k = 1 ( 1 ) ζ ⋅ω o which gives the slope at ω = ω 0 as radians 360 131.92841 degrees or as = ⋅ decade ζ ⋅ log ( e) decade 2 ⋅ π ⋅ ζ ⋅ log ( e) ζ ⋅ The slope of the phase function Φ(ω) at ω = ω 0 is independent of ω o but depends on ζ . Phase functions for various values of ζ are shown below along with the approximation obtained by extending a line of slope 132 / ζ degrees per decade through the point on the phase function where ω = ω 0 . (We have normalized ω o to 1.) ω o := 1 ζ := 1 74 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 ζ 90 ⋅ log ( ω ) 0 0.1 1 10 100 10 100 10 100 ω ζ := 0.8 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 ζ 90 ⋅ log ( ω ) 0 0.1 1 ω ζ := 0.6 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 ζ ⋅ log ( ω ) 90 0 0.1 1 ω ω ζ := 0.4 75 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 ζ 90 ⋅ log ( ω ) 0 0.1 1 10 100 10 100 10 100 ω ζ := 0.2 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 ζ 90 ⋅ log ( ω ) 0 0.1 1 ω ζ := 0.1 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 ζ ⋅ log ( ω ) 90 0 0.1 1 ω As can be seen from the above plots (and as we shall show by direct calculation), this straight-line approximation suffers from the same shortcomings that made it useless for the first order case. To demonstrate the large errors at ω lo and ω hi, we begin by calculating ω lo the value of ω at which the straight line crosses 0o, and ω hi the value of ω at which the straight line crosses 180o. ω lo is the frequency where 90 + we have so ω lo = 1 ⋅ 360 ζ ⋅ log ( e) 2 ⋅ π −90 ⋅ 2 ⋅ π ⋅ ζ ⋅ log ( e) = 360 ω ω o ⋅ log = 0 Then ω lo −π log = ⋅ ζ ⋅ log ( e) ω o 2 = − π ⋅ζ 2 log e − π ⋅ζ 2 −ζ ω o ⋅ e = ω o ⋅ 4.81 Similarly for ω hi we have ω hi = π 2 ω o ⋅ e ζ = ω o ⋅ 4.81 ζ The error at ω lo is given by substitution of ω lo into the expression for Φ(ω), which gives Errorlo = −ζ π −1 ⋅ π ⋅ ζ exp 2 ⋅ζ ⋅ω ⋅ω ⋅ e 2 o o 2 = −atan 2 ⋅ ζ ⋅ atan 2 ( ( ) ) − 1 + exp − π ⋅ ζ −ζ π 2 ω o − ω o ⋅ e 2 The errors (in degrees) at ω lo are shown below for various values of ζ . ζ := 0.1 , 0.2 .. 1.0 −1 ⋅ π ⋅ ζ exp 2 ⋅ 360 Errorlo ( ζ ) := −atan 2 ⋅ ζ ⋅ ( ( ) ) −1 + exp −π ⋅ ζ 2 ⋅ π 76 Errorlo ( ζ ) = 32.375 32.058 31.536 30.82 29.924 28.868 27.672 26.359 24.955 23.487 Similarly for the error at ω hi we have: Errorhi = ζ π 2 ⋅ ζ ⋅ ω ⋅ ω ⋅ e 2 π π o o 1 ⋅π ⋅ζ exp 2 = atan 2 ⋅ ζ ⋅ − + atan 2 2 2 ( ( ) ) − 1 + exp π ⋅ ζ ζ π 2 2 ω o − ω o ⋅ e 1 ⋅π ⋅ζ exp 2 ⋅ 360 Errorhi ( ζ ) := atan 2 ⋅ ζ ⋅ (−1 + exp (π ⋅ζ )) 2 ⋅π Errorhi ( ζ ) = 32.375 32.058 31.536 30.82 29.924 28.868 27.672 26.359 24.955 23.487 77 To extend our results for the first order phase approximation to the second order case, let us 78 consider the second order transfer function with ζ = 1. Proceeding as before we set ω hi to 10 ω and ω lo to o with the 132 ζ 10 ω0 o , giving a straight line with slope 90 per decade shown below along degrees per decade line. ζ := 1 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 ζ ⋅ log ( ω ) 90 90+90 ⋅ log ( ω ) 0 0.1 1 10 100 ω This new approximation is a better fit to the phase function Φ(ω) for the case ζ = 1 than the approximation whose slope is 132 ζ degrees per decade. To extend the result to the case where ζ does not equal 1, let us examine the behavior of the phase function as ζ increases. From the plots of Φ(ω) for various values of ζ , we see that as ζ decreases, the slope of the phase function evaluated at ω 0 increases. To make our new approximation's slope increase as ζ decreases, we take as the slope of our straight-line approximation degrees per decade. The results are shown below (along with the lines) for several values of ζ . 132 ζ 90 ζ degree per decade 79 ζ := .8 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 90+ 90 ζ ζ ⋅ log ( ω ) 90 ⋅ log ( ω ) 0 0.1 1 10 100 ω ζ := .6 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 90+ 90 ζ ζ ⋅ log ( ω ) 90 ⋅ log ( ω ) 0 0.1 1 10 ω 100 80 ζ := .4 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 90+ 90 ζ ζ ⋅ log ( ω ) 90 ⋅ log ( ω ) 0 0.1 1 10 100 ω ζ := .2 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 90+ 90 ζ ζ ⋅ log ( ω ) 90 ⋅ log ( ω ) 0 0.1 1 10 ω 100 81 ζ := .1 180 ( ) 360 2 2 arg 2 ⋅ ζ ⋅ ω o ⋅ ω ⋅ i+ ω o −ω ⋅ 2⋅ π 90+ 132 90+ 90 ζ ζ ⋅ log ( ω ) 90 ⋅ log ( ω ) 0 0.1 1 10 100 ω In order to calculate the error at ω lo and ω hi, we must produce formulae for ω lo and ω hi in terms of ζ . Since 180 ω hi = 90 + ⋅ log we have ω hi ζ ω o 90 ω lo Similarly, since 0 = 90 + ⋅ log ζ ω o 90 = ω o ⋅ 10 ζ we have ω lo = ω o ⋅ 10 −ζ Substituting these values into the phase function gives the error at ω lo and ω hi. Error1lo = = (− ζ ) 10 2 atan 2 ⋅ ζ ⋅ ω o ⋅ 2 2 2 ( − ζ ) ω − ω o ⋅ 10 o (− ζ ) 10 −atan 2 ⋅ ζ ⋅ −1 + 100 ( − ζ ) ζ := 0.1 , 0.2 .. 1.0 (− ζ ) 360 10 Error1lo ( ζ ) := −atan 2 ⋅ ζ ⋅ (− ζ ) ⋅ 2 ⋅π −1 + 100 Error1lo ( ζ ) = . 23.291 22.749 21.88 20.73 19.36 17.834 16.221 14.58 12.967 11.421 π π 2 Error1hi = − + atan 2 ⋅ ζ ⋅ ω o ⋅ 2 2 = 2 2 2 ζ) ( ω − ω ⋅ 10 o o ζ 10 atan 2 ⋅ ζ ⋅ (−1 + 100 ζ ) ζ 360 10 Error1hi ( ζ ) := atan 2 ⋅ ζ ⋅ ⋅ ζ ) 2 ⋅π ( −1 + 100 Error1hi ( ζ ) = 23.291 22.749 21.88 20.73 19.36 17.834 16.221 14.58 12.967 11.421 10 ζ 82 Summary of Second Order Phase Approximations We see that the error for the 90 and ω hi than the error for the the fit to the 90 ζ degree per decade line is considerably smaller at both ω lo ζ 132 ζ degree per decade line, demonstrating the superiority of degree per decade line. We have shown a straight-line approximation to the second order phase function that is easy to draw and has easily remembered intercepts. The line passes through ω 0 at 90 and has a slope of o 90 ζ degrees per decade. The intercepts ζ −ζ are: ω hi = ω o ⋅ 10 and ω lo = ω o ⋅ 10 s2 2 = s + 2 ⋅ s + 25 = 25 ⋅ + ⋅s + 1 25 25 2 Example #1: H(s) The constant term is greater than zero and so contributes nothing to the phase plot. ω0 = 5 ζ = 0.2 ω hi = 7.924 ω lo = 3.155 and the slope is 90 ζ o o = 450 per decade. ω := 0.01 , 0.02 .. 1000 ω , 180 , 0 5 phase ( ω ) := if ω > 3.155 , if ω < 7.924 , 90 + 450 ⋅ log 150 phase ( ω ) 100 50 0 0.01 0.1 1 10 ω 100 1 .10 3 83 84 The situation for poles is analagous as shown below. Example #2: H(s) = 1 (s 2 + 2 ⋅s + 25) = 1 ⋅ 25 s 2 1 2 + ⋅s + 1 25 25 The constant term is greater than zero and so contributes nothing to the phase plot. ω0 = 5 ζ = 0.2 ω hi = 7.924 ω lo = 3.155 and the slope is 90 o o = 450 per decade. ζ ω := 0.01 , 0.02 .. 1000 ω , −180 , 0 5 phase ( ω ) := if ω > 3.155 , if ω < 7.924 , −90 − 450 ⋅ log 0 50 phase ( ω ) 100 150 0.01 0.1 1 10 ω 100 1 .10 3 85 Final Example Magnitude Response H(s) = s + 1 ⋅ ( s 2 + 4.8 ⋅ s + 9) 5 ( 2 ( s + 80) ⋅ s + 8 ⋅ s + 400 ) = 2 s + 1 ⋅ s + 4.8 + 1 1 1 9 ⋅9 9 5 5 ⋅ 2 80 ⋅ 400 s + 1 ⋅ s + 8 ⋅ s + 1 80 400 400 1 ⋅9 5 K0 = −84.998 K0 := 20 ⋅ log 80 ⋅ 400 ω := 0.01 , 0.02 .. 1000 M1 ( ω ) := if ω < 1 ω , 0 , 20 ⋅ log 1 5 5 ω 80 M2 ( ω ) := if ω < 80 , 0 , −20 ⋅ log ω 3 M3 ( ω ) := if ω < 3 , 0 , 40 ⋅ log ω30 := 3 ζ3 := 4.8 2⋅ 9 ζ3 = 0.8 ω 8 ζ4 = 0.2 ω40 := 20 ζ4 := 20 2 ⋅ 400 M4 ( ω ) := if ω < 20 , 0 , −40 ⋅ log K0 0.01 K0 0.2 3 3 K0 + 20 ⋅ log 0.2 points := 3 20 20 K0 + 20 ⋅ log + 60 ⋅ log 0.2 3 80 0 0 1000 86 MT ( ω ) := K0 + M1 ( ω ) + M2 ( ω ) + M3 ( ω ) + M4 ( ω ) A30 := 20 ⋅ log ( 2 ⋅ ζ3) A32 := −10 ⋅ log ( 0.ζ3) + 0.563 2 0.3 0.3 K + 20 ⋅ log 0 0.2 1.5 + A3 1.5 K0 + 20 ⋅ log 2 0.2 Corr3 := 3 3 K0 + 20 ⋅ log + A30 0.2 3 10 10 K0 + 20 ⋅ log + 60 ⋅ log 0.2 3 ω4p := ω40 ⋅ 1 − 2 ⋅ ζ4 2 ω4p = 19.183 A40 := −20 ⋅ log ( 2 ⋅ ζ4) A40 = 7.959 ( A4p = 8.136 Corr4 := 2 ω4c := 2 ω40 ω4c 2 2 ⋅ ω4p = 10 ω4c = 27.129 ( ) A42 = 2.2 3 + 60 ⋅ log 10 + A4 2 0.2 3 3 20 K0 + 20 ⋅ log + 60 ⋅ log + A40 0.2 3 ω4c 3 20 K0 + 20 ⋅ log + 60 ⋅ log + 20 ⋅ log 0.2 3 20 K0 + 20 ⋅ log ) 2 2 A4p := −10 ⋅ log 4 ⋅ ζ4 ⋅ 1 − ζ4 A42 := −10 ⋅ log ζ4 + 0.5625 ω40 ω40 87 20 MT ( ω ) 0 〈 〉 points 1 20 〈 〉 Corr3 1 40 〈 〉 Corr4 1 60 80 100 0.01 0.1 1 10 100 〈 〉 〈 〉 〈 〉 ω , points 0 , Corr3 0 , Corr4 0 1 .10 3 Final Example Phase Response 0.01 0.2 0.2 3 3 points := 20 20 80 80 1000 0 0 90 90 270 270 90 90 0 0 0.02 0 A := 2 90 ω3lo := ω30 ⋅ 10 − ζ3 ω3hi := ω30 ⋅ 10 ζ3 ω3lo 90 B := ω3hi 270 90 ζ3 = 112.5 ω4lo := ω40 ⋅ 10 − ζ4 ω4hi := ω40 ⋅ 10 ζ4 ω4lo 270 C := ω4hi 90 8 90 D := 800 0 90 ζ4 = 450 88 300 250 〈 〉 points 1 〈 〉 A1 〈 〉 B1 〈 〉 C1 〈 〉 D1 200 150 100 50 0 0.01 0.1 1 10 〈 〉 〈 〉 〈 〉 〈 〉 〈 〉 points 0 , A 0 , B 0 , C 0 , D 0 1 .10 3 100 Auxilliary Drawing For ω < 0.02 slope = 0, for 0.02 < ω < ω3lo slope = +45, for ω3lo < ω < 2 slope = +45 +112.5 = 157.5, for 2 < ω < 8 slope = +112.5, for 8 < ω < ω4lo slope = +112.5 -45 = 67.5, for ω4lo < ω < ω3hi slope = +112.5 -450 - 45 = -382.5, for ω3hi < ω < ω4hi slope = -450 -45 = -495, for ω4hi < ω < 800 slope = -45 Point #1 = (0.01,0), point #2 = (0.02,0). ω3lo = 61.924 0 + 45 ⋅ log 0.02 2 = 160.191 ω3lo 61.925 + 157.5 ⋅ log so point #4. so point #3, 8 160.191 + 112.5 ⋅ log = 227.923 2 89 so point #5, ω4lo = 241.284 227.923 + 67.5 ⋅ log 8 ω3hi 241.284 − 382.5 ⋅ log = 173.929 ω4 lo ω4hi 173.929 − 495 ⋅ log = 63.094 ω3hi so pint #6. so point #7, so point #8 800 = 0 so point #9 = (800,0) and point #10 = (1000,0). ω4hi 63.094 − 45 ⋅ log 0.01 0.02 ω3lo 2 8 points := ω4lo ω3hi ω4hi 800 1000 0 61.924 160.191 227.933 241.284 173.929 63.094 0 0 0 90 ω , 90 0.2 Φ1 ( ω ) := if ω < 0.02 , 0 , if ω < 2 , 45 + 45 ⋅ log ω , −90 80 Φ2 ( ω ) := if ω < 8 , 0 , if ω < 800 , −45 − 45 ⋅ log ω , 180 ω3 0 Φ3 ( ω ) := if ω < ω3lo , 0 , if ω < ω3hi , 90 + 112.5 ⋅ log ω , −180 ω40 Φ4 ( ω ) := if ω < ω4lo , 0 , if ω < ω4hi , −90 − 450 ⋅ log Φ T ( ω ) := Φ1 ( ω ) + Φ2 ( ω ) + Φ3 ( ω ) + Φ4 ( ω ) 250 200 Φ T( ω ) 150 〈 〉 points 1 100 50 0 0.01 0.1 1 10 100 1 .10 3 〈 〉 ω , points 0 ^ ^ ^ ^ #1 #2 #3 #4 ^ ^ ^ ^ #5 #6 #7 #8 ^^ #9 #10 91 References [1] Nilsson, James W. Electric Circuits . 4th ed. Reading, Mass.: Addison Wesley Publishing Company, 1993