This document is a compilation of all of the Bode plot pages in one document for convenient printing.
Contents
Bode plots are a very useful way to represent the gain and phase of a system as a function of frequency. This is referred to as the frequency domain behavior of a system. This web page attempts to demystify the process. The various parts are more-or-less stand alone, so if you want to skip one or more, that should not be a problem. If you are only interested in a quick lesson on how to make Bode diagrams, go to part 4, "Making Plots." A MatLab program to make piecewise linear Bode plots is described in part 6.
The documents are:
Also available is a compilation of items 1 through 8, for easy printing.
© Copyright 2005-2013 Erik Cheever This page may be freely used for educational purposes.
Erik Cheever Department of Engineering Swarthmore CollegeOne of the most commonly used test functions for a circuit or system is the sine wave. This is not because sine waves are a particularly common signal. They are in fact quite rare - the transmission of electricity (a 60 Hz sine wave in the U.S., 50 Hz in much of the rest of the world) is one example. The reason sine waves are important is complex and involve a branch of Mathematics called Fourier Theory. Briefly put: any signal going into a circuit can be represented by a sum of sine waves of varying frequency and amplitude (often an infinite sum). As a simple example, consider the graphs shown below. The top graph shows a triangle wave. The middle graph shows a number of sine waves of varying frequency and amplitude. The bottom graph shows the sum of the sine waves (red) and the original triangle wave (dotted black).

Clearly even just a few sine waves are sufficient in this case to closely approximate the original function. Fourier states that any function (with some very minor restrictions that won't concern us), can be represented in this way.
This is why sine waves are important. Not because they are common, but because we can represent arbitrarily complex functions using only these very simple function.
Given that sine waves are important, how can we analyze the response of a circuit or system to sinusoidal inputs? There are many ways to do this, depending on your mathematical sophistication. Let's use a fairly basic explanation that uses phasors. If you are unfamiliar with phasors, you can find a description in almost any circuits or systems textbook.
Using complex impedances it is possible to find the transfer function of a circuit. For example, the circuit below is described by the transfer function, H(s), where s=jω.
| Circuit | Transfer Function |
|---|---|
|
|
![]() |
Consider the case where R=1 and C=0.1. In that case:

Generally we know the input Vi and want to find the output Vo. We can do this by simple multiplication

If we have a phasor representation for the input and the transfer function, the multiplication is simple (multiply magnitudes and add phases). Finding the output becomes easy. Let's look at some examples:

and the transfer function evaluates to

The output is just the product of the input and the transfer function (evaluated as phasors)


Note that Vo has an amplitude of 0.95 and lags Vi by 72°. It is a phase "lag" because the output lags, or follows, the input (the input goes up before the output so the output is following the input).
Change input phase


Both input and output have shifted 40° from those in Example 1.
Change input frequency


Frequency has changed, magnitude of output has increased, but phase lag has decreased (to 45°).
Cosine Input


Note: all angles are given in degrees. They should be changed to radians before evaluation by calculator or computer.
This document explained briefly why sine waves are important and how to find the output of a system given a sinusoidal input (i.e., represent input and transfer function as phasors and multiply to determine output as a phasor).
© Copyright 2005-2013 Erik Cheever This page may be freely used for educational purposes.
Erik Cheever Department of Engineering Swarthmore CollegeThe previous document made the case that the study of sinusoidal inputs is important, and showed how phasor representations of the input and the system transfer function can be used to easily determine system output. This document will explain why the standard way of representing the transfer function is with two plots: magnitude vs. frequency and phase vs. frequency. At the bottom of this page there is an animation to help develop an intuitive understanding of the concepts describe in this page.
The difficulty in representing the transfer function comes about because we need to plot a complex number, H(s) or H(jω), as a function of frequency. Consider the transfer function

To graph this, the most straightforward way (with a computer) might be to plot the value of H(s) as the frequency changes. This yields the blue line in the three-dimensional plot shown below.

It would obviously be hard to get accurate information about the real and imaginary parts of H(s) from such a plot. It is easier if we plot the real and imaginary parts as a function of frequency (the red and green projections of the blue line). Clearly, in this case, two 2-dimensional graphs (one for real and one for imaginary) are superior to a single 3-dimensional graph.
However, in the last document we showed that to easily determine the output given the input, we would like to have the transfer function in phasor notation. This means that we should make a plot of magnitude and phase. Again, we could make a single 3-dimensional plot (the blue line), but it would be easier to interpret the results if we make two 2-dimensional plots (the magenta and cyan lines).

To clarify further, lets make separate plots of the magnitude and phase.

Note: Standard Bode plots are logarithmic on the frequency axis, and plot the magnitude in dB's (deciBels). We'll explore that in the next installment.
Consider the examples from the previous document.

and the transfer function evaluates to

The output is just the product of the input and the transfer function (evaluated as phasors)

Note that Vo has an amplitude of 0.95 and lags Vi by 72°.
Change input phase

Both input and output have shifted 40° from those in Example 1.
Change input frequency

Frequency has changed, magnitude of output has increased, but phase lag has decreased (to 45°).
Cosine input (i.e, a change of phase).

The magnitude and phase plots determine the phasor representation of the transfer function at any frequency. On the graphs below we can see that at 10 rad/sec the phasor representation of the transfer function has a magnitude of 0.707 and a phase of -45°. This means that at 10 rad/sec the magnitude of the output will be 0.707 times the magnitude of the input and the output will lag the input by 45°.

The frequency response of a system is presented as two graphs: one showing magnitude and one showing phase. The phasor representation of the transfer function can then be easily determined at any frequency. The magnitude of the output is the magnitude of the phasor representation of the transfer function (at a given frequency) multiplied by the magnitude of the input. The phase of the output is the phase of the transfer function added to the phase of the input.
To get a more intuitive idea of what the frequency response represents, consider the system below. (Hit start button to show animation)
For an animation of an analogous electrical system, go here.
Animation by Ames Bielenberg
The transfer function of the system is given by (with m=1, b=0.5, k=1.6, u=input to system, y=output (the position of the mass):

You can see by the animation that at low frequencies the input and output are equal, and in phase. At intermediate frequencies the system is somewhat resonant, and the output actually gets larger than the input (but there is a growing phase lag). As frequency increases further, the output decreases. The outline of the peaks of the output plot is similar to the magnitude plots above (the phase plot is not obvious, but it obviously starts at 0° and then decreases - if you type "ctrl +" you can zoom in to see the phase shift). In this case, the magnitude plot would start at one (output=input) at low frequencies, it would then increase, followed by a decrease.
Bode plots (introduced next) formalize a particular method for drawing magnitude and phase plots (as a function of frequency) associated with a given transfer function.
© Copyright 2005-2013 Erik Cheever This page may be freely used for educational purposes.
Erik Cheever Department of Engineering Swarthmore CollegeContents: Asymptotic approximation for...
Given a transfer function, such as

the question naturally arises: "How can we display this function?" In the previous document the argument was made that the most useful way to display this function is with two plots, the first showing the magnitude of the transfer function and the second showing its phase. One way to do this is by simply entering many values for the frequency, calculating the magnitude and phase at each frequency and displaying them. This is what a computer would naturally do. For example if you use MATLAB® and enter the commands
>> MySys=tf(100*[1 1],[1 110 1000])
Transfer function:
100 s + 100
------------------------------
s^2 + 110 s + 1000
>> bode(MySys)
you get a plot like the one shown below. The asymptotic solution is given elsewhere.

However, there are reasons to develop a method for drawing Bode diagrams manually. By drawing the plots by hand you develop an understanding about how the locations of poles and zeros effect the shape of the plots. With this knowledge you can predict how a system behaves in the frequency domain by simply examining its transfer function. On the other hand, if you know the shape of transfer function that you want, you can use your knowledge of Bode diagrams to generate the transfer function.
The first task when drawing a Bode diagram by hand is to rewrite the transfer function so that all the poles and zeros are written in the form (1+s/ω0). The reasons for this will become apparent when deriving the rules for a real pole. A derivation will be done using the transfer function from above, but it is also possible to do a more generic derivation. Let's rewrite the transfer function from above.

Now lets examine how we can easily draw the magnitude and phase of this function when s=jω.
First note that this expression is made up of four terms, a constant (0.1), a zero (at s=-1), and two poles (at s=-10 and s=-100). We can rewrite the function (with s=jω) as four individual phasors.

We will show (below) that drawing the magnitude and phase of each individual phasor is fairly straightforward. The difficulty lies in trying to draw the magnitude and phase of H(jω). We can write H(jω) as a single phasor:

Drawing the phase is fairly simple. We can draw each phase term separately, and then simply add them. The magnitude term is not so straightforward because of the fact that the magnitude terms are multiplied, it would be much easier if they were added - then we could draw each term on a graph and just add them. A method for doing this is outlined below.
One way to transform multiplication into addition is by using the logarithm. Instead of using a simple logarithm, we will use a deciBel (named for Alexander Graham Bell). (Note: Why the deciBel?) The relationship between a quantity, Q, and its deciBel representation, X, is given by:

So if Q=100 then X=40; Q=0.01 gives X=-40; X=3 gives Q=1.41; and so on.
If we represent the magnitude of H(s) in deciBels we get

The advantage of using deciBels (and of writing poles and zeros in the form (1+s/ω0)) are now revealed. The fact that the deciBel is a logarithmic term transforms the multiplication of the individual terms to additions. Another benefit is apparent in the last line that reveals just two types of terms, a constant term and terms of the form 20log10(|1+jω/ω0|). Plotting the constant term is trivial, however the other terms are not so straightforward. These plots will be discussed below. However, once these plots are drawn for the individual terms, they can simply be added together to get a plot for H(s).
If we look at the phase of the transfer function, we see much the same thing: The phase plot is easy to draw if we take our lead from the magnitude plot. First note that the transfer function is made up of four terms. If we want

Again there are just two types of terms, a constant term and terms of the form (1+jω/ω0). Plotting the constant term is trivial; the other terms are discussed below.
The discussion above dealt with only a single transfer function. Another derivation that is more general, but a little more complicated mathematically is here.
Following the discussion above, the way to make a Bode Diagram is to split the function up into its constituent parts, plot the magnitude and phase of each part, and then add them up. The following gives a derivation of the plots for each type of constituent part. Examples, including rules for making the plots follow in the next document, which is more of a "How to" description of Bode diagrams.
Consider a constant term,

Clearly the magnitude is constant

The phase is also constant. If K is positive, the phase is 0° (or any even multiple of 180°). If K is negative the phase is -180°, or any odd multiple of 180°. We will use -180° because that is what MATLAB® uses. Expressed in radians we can say that if K is positive the phase is 0 radians, if K is negative the phase is -π radians.
![]() |
![]() |
Consider a simple real pole

The frequency ω0 is called the break frequency, the corner frequency or the 3 dB frequency (more on this last name later).
The magnitude is given by

Let's consider three cases for the value of the frequency:
Case 1) ω<<ω0. This is the low frequency case. We can write an approximation for the magnitude of the transfer function

The low frequency approximation is shown in blue on the diagram below.
Case 2) ω>>ω0. This is the high frequency case. We can write an approximation for the magnitude of the transfer function

The high frequency approximation is at shown in green on the diagram below. It is a straight line with a slope of -20 dB/decade going through the break frequency at 0 dB. That is, for every factor of 10 increase in frequency, the magnitude drops by 20 dB.
Case 3) ω=ω0. The break frequency. At this frequency

This point is shown as a red circle on the diagram.
To draw a piecewise linear approximation, use the low frequency asymptote up to the break frequency, and the high frequency asymptote thereafter.

The resulting asymptotic approximation is shown highlighted in pink. The maximum error between the asymptotic approximation and the exact magnitude function occurs at the break frequency and is approximately 3 dB.
The rule for drawing the piecewise linear approximation for a real pole can be stated thus:
For a simple real pole the piecewise linear asymptotic Bode plot for magnitude is at 0 dB until the break frequency and then drops at 20 dB per decade (i.e., the slope is -20 dB/decade).
The phase of a single real pole is given by is given by

Let us again consider three cases for the value of the frequency:
Case 1) ω<<ω0. This is the low frequency case. At these frequencies We can write an approximation for the phase of the transfer function

The low frequency approximation is shown in blue on the diagram below.
Case 2) ω>>ω0. This is the high frequency case. We can write an approximation for the phase of the transfer function

The high frequency approximation is at shown in green on the diagram below. It is a straight line with a slope at -90°.
Case 3) ω=ω0. The break frequency. At this frequency

This point is shown as a red circle on the diagram.

A piecewise linear approximation is not as easy in this case because the high and low frequency asymptotes don't intersect. Instead we use a rule that follows the exact function fairly closely, but is also arbitrary. Its main advantage is that it is easy to remember. The rule can be stated as
Follow the low frequency asymptote until one tenth the break frequency (0.1 ω0) then decrease linearly to meet the high frequency asymptote at ten times the break frequency (10 ω0). This line is shown above. Note that there is no error at the break frequency and about 5.7° of error at one tenth and ten times the break frequency.


The second example shows a double pole at 30 radians per second. Note that the slope of the asymptote is -40 dB/decade and the phase goes from 0 to -180°.


The piecewise linear approximation for a zero is much like that for a pole Consider a simple zero:

The development of the magnitude plot for a zero follows that for a pole. Refer to the previous section for details. The magnitude of the zero is given by

Again there are three cases:
The rule for drawing the piecewise linear approximation for a real zero can be stated thus:
For a simple real zero the piecewise linear asymptotic Bode plot for magnitude is at 0 dB until the break frequency and then increases at 20 dB per decade (i.e., the slope is +20 dB/decade).
The phase of a simple zero is given by:

The phase of a single real zero also has three cases:
The rule for drawing the phase plot can be stated thus:
Follow the low frequency asymptote until one tenth the break frequency (0.1 ω0) then increase linearly to meet the high frequency asymptote at ten times the break frequency (10 ω0).
This example shows a simple zero at 30 radians per second. The low frequency asymptote is the dashed blue line, the exact function is the solid black line, the cyan line represents 0.


A pole at the origin is easily drawn exactly. Consider

The magnitude is given by

This function is represented by a straight line on a Bode plot with a slope of -20 dB per decade and going through 0 dB at 1 rad/ sec. It also goes through 20 dB at 0.1 rad/sec, -20 dB at 10 rad/sec...
The rule for drawing the magnitude for a pole at the origin can be thus:
For a pole at the origin draw a line with a slope of -20 dB/decade that goes through 0 dB at 1 rad/sec.
The phase of a simple zero is given by:

The rule for drawing the phase plot for a pole at the origin an be stated thus:
The phase for a pole at the origin is -90°.
This example shows a simple pole at the origin. The black line is the Bode plot, the cyan line indicates a zero reference (dB or °).

A zero at the origin is just like a pole at the origin but the magnitude increases, and the phase is positive.
The magnitude and phase plots of a complex conjugate (underdamped) pair of poles is more complicated than those for a simple pole. Consider the transfer function:

The magnitude is given by

Let's consider three cases for the value of the frequency:
Case 1) ω<<ω0. This is the low frequency case. We can write an approximation for the magnitude of the transfer function

The low frequency approximation is shown in red on the diagram below.
Case 2) ω>>ω0. This is the high frequency case. We can write an approximation for the magnitude of the transfer function

The high frequency approximation is at shown in green on the diagram below. It is a straight line with a slope of -40 dB/decade going through the break frequency at 0 dB. That is, for every factor of 10 increase in frequency, the magnitude drops by 40 dB.
Case 3) ω≈ω0. It can be shown that a peak occurs in the magnitude plot near the break frequency. The derivation of the approximate amplitude and location of the peak are given here. We make the approximation that a peak exists only when
0<ζ<0.5
and that the peak occurs at ω0 with height 1/(2·ζ).
To draw a piecewise linear approximation, use the low frequency asymptote up to the break frequency, and the high frequency asymptote thereafter. If ζ<0.5, then draw a peak of amplitude 1/(2·ζ) Draw a smooth curve between the low and high frequency asymptote that goes through the peak value.
As an example For the curve shown below,

The peak will have an amplitude of 5.00 or 14 dB.

The resulting asymptotic approximation is shown as a black dotted line, the exact response is a black solid line.
The rule for drawing the piecewise linear approximation for a complex conjugate pair of poles can be stated thus:
For the magnitude plot of complex conjugate poles draw a 0 dB at low frequencies, go through a peak of height,
.
at the break frequency and then drop at 40 dB per decade (i.e., the slope is -40 dB/decade). The high frequency asymptote goes through the break frequency.
The phase of a complex conjugate pole is given by is given by

Let us again consider three cases for the value of the frequency:
Case 1) ω<<ω0. This is the low frequency case. At these frequencies We can write an approximation for the phase of the transfer function

The low frequency approximation is shown in red on the diagram below.
Case 2) ω>>ω0. This is the high frequency case. We can write an approximation for the phase of the transfer function

The high frequency approximation is at shown in green on the diagram below. It is a straight line at -180°.
Case 3) ω=ω0. The break frequency. At this frequency

The asymptotic approximation is shown below, followed by an explanation


A piecewise linear approximation is not easy in this case, and there are no hard and fast rules for drawing it. The most common way is to look up a graph in a textbook with a chart that shows phase plots for many values of ζ. Three asymptotic approximations are given here. We will use the approximation that connects the the low frequency asymptote to the high frequency asymptote starting at

and ending at

If ζ<0.02, the approximation can be simply a vertical line at the break frequency.
The rule for drawing phase of an underdamped pair of poles can be stated as
Follow the low frequency asymptote at 0° until

then decrease linearly to meet the high frequency asymptote at -180° at

.
0 < ζ < 0.5


Not surprisingly a complex pair of zeros yields results similar to that for a complex pair of poles. The differences are that the magnitude has a dip instead of a peak, the magnitude increases above the break frequency and the phase increases rather than decreasing.
The graph below corresponds to a complex conjugate zero with

The dip in the magnitude plot will have a magnitude of 0.2 or -14 dB.

.
0 < ζ < 0.5


Brief review of page: This document derived piecewise linear approximations that can be used to draw different elements of a Bode diagram. A synopsis of these rules can be found in a separate document.
© Copyright 2005-2013 Erik Cheever This page may be freely used for educational purposes.
Erik Cheever Department of Engineering Swarthmore CollegeThis document will discuss how to actually draw Bode diagrams. It consists mostly of examples.
A transfer function is normally of the form:

As discussed in the previous document, we would like to rewrite this so the lowest order term in the numerator and denominator are both unity.
Some examples will clarify:

Note that the final result has the lowest (zero) order power of numerator and denominator polynomial equal to unity.

Note that in this example, the lowest power in the numerator was 1.

In this example the denominator was already factored. In cases like this, each factored term needs to have unity as the lowest order power of s (zero in this case).
The next step is to split up the function into its constituent parts. There are seven types of parts:
We can use the examples above to demonstrate again.

This function has
The complex conjugate poles are at s=-1.5 ± j6.9 (where j=sqrt(-1)). A more common (and useful for our purposes) way to express this is to use the standard notation for a second order polynomial

In this case


This function has

This function has
The rules for drawing the Bode diagram for each part are summarized on a separate page. Examples of each are given later.
After the individual terms are drawn, it is a simple matter to add them together. See examples, below.
These examples are compiled on the next page.
© Copyright 2005-2013 Erik Cheever This page may be freely used for educational purposes.
Erik Cheever Department of Engineering Swarthmore CollegeSeveral examples of the construction of Bode Plots are included in this file. Click on the transfer function in the table below to jump to that example.
| Examples (Click on Transfer Function) | ||||||
|---|---|---|---|---|---|---|
1![]() (a real pole) |
2![]() (real poles and zeros) |
3![]() (pole at origin) |
4![]() (repeated real poles, negative constant) |
5![]() (complex conj. poles) |
6![]() (multiple poles at origin, complex conj zeros) |
7![]() (time delay) |
Draw the Bode Diagram for the transfer function:

Make both the lowest order term in the numerator and denominator unity. The numerator is an order 0 polynomial, the denominator is order 1.

The transfer function has 2 components:
This is done in the diagram below.
The overall asymptotic plot is the translucent pink line, the exact response is the black line.

Draw the Bode Diagram for the transfer function:

Make both the lowest order term in the numerator and denominator unity. The numerator is an order 1 polynomial, the denominator is order 2.

The transfer function has 4 components:
This is done in the diagram below.
The overall asymptotic plot is the translucent pink line, the exact response is the black line.

Draw the Bode Diagram for the transfer function:

Make both the lowest order term in the numerator and denominator unity. The numerator is an order 1 polynomial, the denominator is order 2.

The transfer function has 4 components:
This is done in the diagram below.
The overall asymptotic plot is the translucent pink line, the exact response is the black line.

Draw the Bode Diagram for the transfer function:

Make both the lowest order term in the numerator and denominator unity. The numerator is an order 1 polynomial, the denominator is order 3.

The transfer function has 4 components:
This is done in the diagram below.
The overall asymptotic plot is the translucent pink line, the exact response is the black line.

Draw the Bode Diagram for the transfer function:

Make both the lowest order term in the numerator and denominator unity. The numerator is an order 1 polynomial, the denominator is order 2.

The transfer function has 4 components:

This is done in the diagram below.



The exact response is the black line.

Draw the Bode Diagram for the transfer function:

Make both the lowest order term in the numerator and denominator unity. The numerator is an order 2 polynomial, the denominator is order 3.

The transfer function has 4 components:

This is done in the diagram below.




The exact response is the black line.

Draw the Bode Diagram for the transfer function:

This is the same as "Example 1," but has a 0.01 second time delay. We have not seen a time delay before this, but we can easily handle it as we would any other constituent part of the transfer function. The magnitude and phase of a time delay are described here.
Make both the lowest order term in the numerator and denominator unity. The numerator is an order 0 polynomial, the denominator is order 1.
The transfer function has 3 components:
This is done in the diagram below.
The exact response is the black line.
© Copyright 2005-2013 Erik Cheever This page may be freely used for educational purposes.
Erik Cheever Department of Engineering Swarthmore CollegeThe table below summarizes what to do for each type of term in a Bode Plot. This is also available as a Word Document or PDF
| Term | Magnitude | Phase |
|---|---|---|
| Constant: K | 20log10(|K|) | K>0: 0° K<0: ±180° |
| Pole at Origin
(Integrator) |
-20 dB/decade passing through 0 dB at ω=1 | -90° |
| Zero at Origin
(Differentiator)
|
+20 dB/decade passing through 0 dB at ω=1 (Mirror image of Integrator about 0 dB) |
+90° (Mirror image of Integrator about 0°) |
| Real Pole
|
|
|
| Real Zero
|
|
|
| Underdamped Poles
(Complex conjugate poles)
|
|
You can also look in a textbook for examples |
| Underdamped Zeros
(Complex conjugate zeros)
|
|
You can also look in a textbook for examples. (Mirror image of Underdamped Pole about 0°) |
For multiple order poles and zeros, simply multiply the slope of the magnitude plot by the order of the pole (or zero) and multiply the high and low frequency asymptotes of the phase by the order of the system.
For example:
| Second Order Real Pole
|
-40 db/dec is used because of order of pole=2. For a third order pole, asymptote is -60 db/dec |
-180° is used because order of pole=2. For a third order pole, high frequency asymptote is at -270°. |
|---|
© Copyright 2005-2013 Erik Cheever This page may be freely used for educational purposes.
Erik Cheever Department of Engineering Swarthmore CollegeBodePlotGui is a graphical user interface written in the MATLAB® programming language. It takes a transfer function and splits it into its constituent elements, then draws the piecewise linear asymptotic approximation for each element. It is hoped that the BodePlotGui program will be a versatile program for teaching and learning the construction of Bode diagrams from piecewise linear approximations.
Files for the program are found here
Consider the transfer function:

This function has three terms to be considered when constructing a Bode diagram, a constant (100), a pole at ω=10 rad/sec, and a zero at the origin. The following MATLAB® commands begin execution of the GUI:
>>MySys=tf(1000*[1 0],[1 10]); %define Xfer function >>BodePlotGui(MySys) %Invoke GUI
The GUI generates a window as shown below.
Starting in the upper left and going counterclockwise, the windows show:
Also shown in the upper right hand corner is the transfer function, H(s).
The function displayed can be manipulated term by term to illustrate the effect of each term. For example, the zero at the origin can be excluded simply by clicking on it in the lower left hand box. The figure below shows the result.

Note that the zero at the origin is no longer included in the plot. Each term can be likewise included or excluded by simply clicking on it.
The next plot shows the plot modified to have thicker lines, a grid, phase in radians and with the asymptotic plot of the complete transfer function. In the previous graph, the phase of the asymptotic plot obscured that of the real pole; this is an example when it might be convenient not to show the asymptotic approximation.

Underdamped poles (and zeros) present a difficulty because they cause a peak (dip) in the magnitude plot. The program show this with a simple circle showing the peak height. For example the transfer function

yields the output shown below. The peak due to the underdamped pole is clearly shown.

The example below is more complicated. It shows underdamped terms, repeated poles, and a pole at the origin.


The software has known limitations. It does not calculate the phase associate with a time delay. It only decomposes transfer functions with up to 20 separate terms (a limit only of the number of colors used). Repeated poles and zeros are treated as a single term (i.e., it is not possible to move only one pole of a repeated pair from the “Elements included in plot” window to the “Elements excluded from plot” window of the GUI).
© Copyright 2005-2013 Erik Cheever This page may be freely used for educational purposes.
Erik Cheever Department of Engineering Swarthmore CollegeWhen making Bode plots one needs two pieces of semi-logarithmic paper, one for the magnitude plot and one for the phase. The program described here, BodePaper.m, can be used to make paper. Download it and save it so that MatLab can find it (from the Matlab menu you can go to File->Set Path and include the directory where you stored the BodePaper.m file.)
The syntax for calling is given by the function's help file.
>> help BodePaper BodePaper is Matlab code to generate graph paper for Bode plots. It generates two semilog graphs for making Bode plots. The top plot is for magnitude, the units on the vertical axis is set to dB. The bottom plot shows phase. The units on the phase plot can be radians or degrees, at the discretion of the user. The default is degrees. The correct calling syntax is: BodePaper(om_lo, om_hi, dB_lo, dB_hi, ph_lo, ph_hi, UseRad) om_lo the low end of the frequency scale. This can be either rad/sec or Hz. No units are displayed on the graph. om_hi the high end of the frequency scale. dB_lo the bottom end of the dB scale. dB_hi the top end of the dB scale. ph_lo the bottom end of the phase scale. ph_hi the top end of the phase scale. UseRad an optional argument. If this argument is non-zero the units on the phase plot are radians. If this argument is left off or set to zero, the units are degrees.
To make paper that goes from 0.1 Hz to 100 Hz, with the magnitude scale going from -60 to 40 dB and the phase from -180 to 90 degrees, the function call would be
>> BodePaper(0.1,100,-60,40,-180,90)
and the paper looks like:

To change the units on phase the function call would be:
BodePaper(0.1,100,-60,40,-pi,pi/2,1)
and the paper now looks like this:

© Copyright 2005-2013 Erik Cheever This page may be freely used for educational purposes.
Erik Cheever Department of Engineering Swarthmore College© Copyright 2005-2013 Erik Cheever This page may be freely used for educational purposes.
Erik Cheever Department of Engineering Swarthmore College