Bode Plot Example #1, Basics

This example will look at transfer functions of LTI systems and at making Bode plots of the transfer functions. Bode plots for a system consists of 2 plots -- the magnitude of H(s=jw) plotted vs. frequency, and the phase of H(s=jw) plotted vs. frequency. Several examples have been given in previous Laplace Transform and Fourier Transform examples. Generally, frequency is plotted on a logarithmic scale so that a wide range of frequencies can be covered with adequate detail. Magnitude is generally plotted either in decibels on a linear scale or in absolute value on a log scale, where |H(jw)|db = 20*log_10(|H(jw)|). Phase is generally plotted on a linear scale in degrees vs. frequency on a log scale.

A transfer function H(s) can be written in many ways: as a ratio of polynomials in the normal polynomial format; with the polynomials factored to show the gain, poles, and zeros of the transfer function; with the polynomials factored to show the gain and time constants; and others. In the set of 3 equations below, a particular transfer function is shown first in the pole-zero format. Note that there are 2 zeros and 5 poles, one of which is at the origin (s=0). Two of the poles are complex conjugates. The gain of the transfer function in this format is K=100.

The second equation is also in pole-zero format, with the two complex conjugate poles multiplied out to form a quadratic term. All the other terms are the same, including the gain K. The third equation in the set is the transfer function in the polynomial format. Note that the coefficient of the highest power of s in the numerator is the value of the gain K. Since there is a pole at s=0, there is no constant term in the denominator, so it is customary to factor out the s from each term and to write the transfer function in the form shown in the equation.

The second set of equations shows the same transfer function is time constant or "Bode" form. In factored form, each term has the characteristic that the constant term is equal to 1. The form of each real zero, for example, is (Ts+1), where T=1/z is the time constant associated with that particular zero. In polynomial time constant form, each polynomial's constant term is 1 (after any poles or zeros at s=0) are factored out.

To convert from pole-zero to time constant form in factored form, factor out each pole or zero and multiply the gain K by all the zeros (not at s=0) and divide K by all the poles (not at s=0). Note that the gain of the transfer function in Bode form is KB=9.8985. If H(s) is in the normal polynomial form, the transfer function in time-constant polynomial form is obtained by factoring out the constant terms in the numerator and denominator polynomials (assuming that the poles/zeros at s=0 are already factored out). Look at the various forms shown in these two sets of equations and see that they represent the same H(s).

The major characteristic of the time constant form that is of interest to us when considering Bode plots is the following: ignoring poles or zeros at s=0, if we plug s=0 in the numerator and denominator polynomials, they each evaluate to 1. Therefore, when we evaluate the magnitudes and phases of the various poles and zeros in the transfer function, they all have magnitudes of 1 (0 db) and phases of 0 or 180 degrees at w=0 r/s. The only term in the transfer function which will be different at w=0 is the term KB/s (assuming 1 pole at s=0). This characteristic makes it easy to analyze the effect that a pole or zero has on the frequency response of the transfer function.

First, we will consider the magnitude of the transfer function evaluated on the jw axis (the frequency response) by looking at the magnitudes of the individual poles and zeros and the gain. The time constant form of H(s) will be used. The magnitudes will be in decibels, and frequency is plotted on a log scale.

Consider a single real zero in the left half of the s-plane. This will have the form (s/z+1) ==> (jw/z+1) in time constant form. At low frequencies (w near 0), the magnitude of this term is approximately 1 ==> 0 db. At high frequencies (w/z >> 1), the magnitude of this term is approximately |w/z| ==> 20*log_10(|w/z|) db. At frequency w=w1, the magnitude is |w1/z|, and at frequency w=10*w1, the magnitude is 10*|w1/z|. In decibels, this is an increase by 20*log_10(10) which is 20 db. Therefore, at high frequencies, the magnitude curve for this simple zero will increase by 20 db every time the frequency increases by a factor of 10. When frequency is plotted on a log scale, the curve will be a straight line with a slope of +20 db/decade (decade of frequency = change of frequency by a factor of 10). At low frequencies, the magnitude will be approximately 0 db. The transition between low and high frequencies is at w=z r/s.

Poles 1/(s/p+1) have the same characteristic, except that they decrease in magnitude with frequency, having a slope of -20 db/decade. The gain KB has magnitude 20*log_10(|KB|), which is independent of frequency. Repeated poles or zeros have similar characteristics as simple poles or zeros. You can look at a term like (s/z+1)^2 as being (s/z+1)*(s/z+1). Each term has a slope of +20 db/decade at high frequencies, starting around w=z r/s, so the total term has a slope of +40 db/decade.

Poles at the origin (s=0) have slopes which are independent of frequency. Consider the 1/s ==> 1/jw term in H(s). As a function of frequency, the magnitude is 1/|0+jw| = 1/w. On a log frequency axis, this is a straight line, and the slope is -20 db/decade for all frequencies. If the term in H(s) 1/s^N, then the magnitude curve is a straight line with a slope of -20*N db/decade for all frequencies. Complex conjugate poles have essentially the same characteristics as two poles at the same point. At low frequencies, the magnitude is 0 db, and at high frequencies the slope is -40 db/decade. The transition will occur at or near the natural frequency of the pole (absolute value of the pole location), but there may be a large difference near that natural frequency compared to two real poles at the same frequency.

Compare the individual magnitude curves in the figure with the terms which appear in H(s) in the factored time constant form. The natural frequency of the complex poles is 2.119 r/s. The overall magnitude of the transfer function is the magnitude of each numerator term divided by the magnitude of each denominator term. Since the log of a product of terms is the sum of the logs of the terms, the plot of the overall magnitude for the transfer function is simply the sums of the individual plots when the magnitudes are expressed in decibels. In the plots z1 is the first zero shown in H(s), p1 is the first pole, etc. p34 is the pair of complex conjugate poles.
Individual Magnitudes

Now, we will consider the phase of the frequency response for our transfer function. Again, we will assume that H(s) is in the time constant form, and look at H(jw) term by term to compute the phase shift as a function of frequency. The phase will be plotted in degrees vs. frequency on a log scale.

The phase shift of a single real zero (s/z+1) in the left-half of the s-plane has the form PH = atan(IMAG/REAL) = atan(w/z). When frequency is low (w/z << 1), the phase will approximately be equal to atan(0) = 0 degrees. For high frequencies (w/z >> 1), the phase will be approximately atan(infinity) = 90 degrees. When w=z, the phase is atan(1) = 45 degrees. Therefore, each zero contributes a phase shift of approximately 0 degrees at low frequencies, approximately 90 degrees at high frequencies, and exactly 45 degrees at a value of frequency w equal to the value of z. Most of this 90 degree change in phase occurs between w=z/10 and w=10*z. At w=z/10, the phase shift is 5.7 degrees and at w=10*z, the phase shift is 84.3 degrees. Therefore, 78.6 degrees of the total phase shift occur in the 2 decades of frequency between z/10 and 10*z.

With multiple zeros, such as (s/z+1)^2, each zero is contributing the same effect at the same frequency, so the phase shifts simply add together. For complex conjugate zeros, the phase starts at 0 degrees, ends at +180 degrees (just like 2 real poles at the same location), and passes through +90 degrees at the natural frequency w=wn (wn = absolute value of the complex zero location). The steepness of the phase transition from 0 degrees to 180 degrees depends on the ratio of the imaginary part of the complex zero to its real part.

For a pole (w/p+1), the phase shift is the negative of the phase shift that a zero would have at the same location. Therefore, the phase shift for a pole starts at 0 degrees at w=0, and ends at -90 degrees as w goes to infinity, passing through -45 degrees at w=p.

For a pole at the origin, the phase shift is -atan(IMAG/REAL) = -atan(w/0) = -atan(infinity) = -90 degrees independent of frequency. The minus sign comes from the fact that the pole is in the denominator of the transfer function.

Look at the individual phase plots, and compare the curves with the terms in the transfer function. Notice that each curve (other than 1/s) starts at 0 degrees and ends at an integer multiple of +/- 90 degrees. The phase due to 1/s is at -90 degrees for all frequencies. Since the overall phase shift is the sum of the terms in the numerator minus the sum of the terms in the denominator, the curve for the overall phase is just the sum of these individual curves.
Individual Phases

Asymptotic Bode curves are straight line approximations to the actual curves. Although the "bode" function in MATLAB can generate the actual curves very quickly and accurately, the effect of a single pole or zero is shown clearly in an asymptotic plot. We will look the curves for only one term (s+1).

As stated above, the magnitude of a single real zero starts at 0 db for low frequencies and has a slope of 20 db/decade at high frequencies, with the transition being at the frequency w=z. The asymptotic plot models this behavior by 2 straight lines. One line has a value of 0 db for all frequencies up to w=z (w=1 in this example). The other line has a slope of 20 db/decade for all frequencies above w=z and a value of 0 db at w=z. Therefore, the two lines intersect at the point w=z, magnitude = 0 db. The maximum error between the actual and asymptotic curves is 3 db, which occurs at the point of intersection, w=z.

The phase of a single real zero starts at 0 degrees, ends at 90 degrees, and passes through 45 degrees at w=z. Most of the phase shift takes place between w=z/10 and w=10*z. The asymptotic approximation models this with three straight lines. One line has a value of 0 degrees for all frequencies below w=z/10. The second line has a value of 90 degrees for all frequencies above w=10*z. The third line joins the other two, and it passes through 45 degrees at w=z. The maximum error in this approximation is 5.7 degrees, which occurs at w=z/10 and w=10*z, the two "corner" frequencies.
Asymptotic & Actual Magnitudes for (s+1)
Asymptotic & Actual Phases for (s+1)

The overall magnitude and phase curves for the frequency response of H(s) can be plotted using the "bode" function in MATLAB. The numerator and denominator polynomials can be used in the normal form when calling that function. In the figures below, the magnitude and phase have been computed using the "bode" function and also by combining the individual magnitudes and phases previously generated. The results are same, except for round-off error which is very small. For comparison, both curves are shown in the following figures.
Total Magnitude
Total Phase

By studying the various Bode plots in the previous figures and looking closely at the transfer function H(s), you can develop a relationship between the number of poles at the origin, the difference between the total number of poles and the number of zeros, and the characteristics that the magnitude and phase curves have at low and high frequencies. Specifically, let N = the number of poles of H(s) at s=0, n = the total number of poles in H(s) (including those at s=0), and m = the total number of zeros in H(s). The following table gives the relationship between the slope of the magnitude curve and those quantities and between the value of the phase curve and those quantities in the limits as frequency goes to 0 and goes to infinity -- under the assumptions of positive gain and no poles or zeros in the right-half of the s-plane. If the assumptions are false, the phase relationships are modified slightly (no changes in the magnitude relationships). Note that at low frequencies only N is a factor, and at high frequencies (n-m) is the deciding factor. Compare the curves in the last two figures against the entries in the table.

Slope of
Magnitude Curve
Value of
Phase Curve
- 20*N db/decade
- 90*N degrees
- 20*(n-m) db/decade
- 90*(n-m) degrees


Click the icon to return to the Dr. Beale's home page

Lastest revision on Friday, May 26, 2006 9:05 PM