MATLAB News & Notes - December 2004
Visualizing the Complex Transfer Function
A View into a MathWorks Training Classroom
by Louvere Walker
In signal processing applications, a common challenge is to design a filter that efficiently meets input/output specifications. In MATLAB, filters are modeled as linear, time-independent (LTI) systems.
The two-day MATLAB for Signal Processing course provides practice, through hands-on examples, of effective techniques for the design of LTI systems. Addressing an audience that has some familiarity with MATLAB and signal processing concepts, this course includes detailed instruction in the use of the Signal Processing and Filter Design toolboxes. The example presented here is one of several used in the course to introduce students to relevant concepts and toolbox features.
The defining characteristic of an LTI system is its frequency response—the magnitude and phase of the output for inputs of different frequencies. Because of linear superposition, the frequency response of an LTI system is completely determined by its response to a unit impulse. This impulse response is represented in the complex plane by its z-transform, the transfer function.
If you know the transfer function of an LTI system, you can use the
Signal Processing Toolbox function freqz to compute and plot the
frequency response. Engineers are usually interested in the inverse
problem: begin with a desired frequency response and design the
transfer function for an appropriate LTI system.
In practice, a factored form of the transfer function is often used.
Complex poles and zeros become readily apparent, and they are
added, removed, and repositioned to adjust the frequency response.
The Filter Design and Analysis Tool (FDATool) in the
Signal Processing Toolbox provides a Pole/Zero Editor that lets you
interactively manipulate the poles and zeros of a transfer function
and immediately see the effects on a freqz plot (Figure 1).
![]() |
Figure 1. Pole/Zero Editor in the FDATool. Click on image to see enlarged view. |
Figure 2 shows a three-dimensional plot of the magnitude of the transfer function
| H(z) = 8 | z-1 | |
| z2- 1.2z + 0.72 |
![]() |
Figure 2. The transfer function and frequency response. Click on image to see enlarged view. |
Superimposed on the plot is a curve showing the magnitude above the unit circle. In signal processing, the unit circle represents frequencies from 0 to the sampling frequency. The transfer function, evaluated on the unit circle, is the frequency response.
To see the two-dimensional representation of the frequency
response in Figure 2, unwrap the curve and display it using the
same scale as freqz (Figure 3). The plot is identical to the one
produced in FDATool.
![]() |
Figure 3. The unwrapped frequency response. Click on image to see enlarged view. |
For more information, visit:
- Transfer Function Plot M-file Source Code
- MATLAB for Signal Processing Course
- Filter Design Toolbox
- Signal Processing Toolbox



