Frequency response definition
Frequency response analysis examines how a linear time-invariant (LTI) system responds to sinusoidal inputs across a range of frequencies. It tells you two things at every frequency: how much the system amplifies or attenuates the signal, and how much it shifts the signal in time (phase). This makes it one of the most practical tools for assessing stability, designing controllers, and shaping system behavior without ever solving a differential equation in the time domain.
Sinusoidal input vs output
The core idea is straightforward. Apply a sinusoidal input to an LTI system and wait for transients to die out. The steady-state output will be another sinusoid at the same frequency:
The output has a different amplitude and a phase shift , but the frequency never changes. This property holds only for LTI systems, and it's what makes frequency response analysis so clean: you just need to track how and vary as you sweep .
Magnitude vs phase
- Magnitude response is the ratio of output amplitude to input amplitude at each frequency. Values greater than 1 mean the system amplifies that frequency; values less than 1 mean it attenuates.
- Phase response is the angular shift between input and output. A negative phase means the output lags the input.
Together, magnitude and phase give you a complete picture of what the system does to any sinusoidal input. Since any signal can be decomposed into sinusoids (via Fourier analysis), knowing the frequency response effectively tells you how the system treats every possible input.
Bode plots
Bode plots are the standard way to visualize frequency response. They consist of two stacked graphs that share a common logarithmic frequency axis: one for magnitude and one for phase. Named after Hendrik Wade Bode, who developed them in the 1930s at Bell Labs, they remain the go-to tool because they turn multiplication of transfer functions into simple graphical addition.
Magnitude plot
The magnitude plot displays in decibels (dB) on the vertical axis:
Why decibels? Two reasons. First, the log scale compresses a huge dynamic range into a manageable plot. A gain of 1000 is only 60 dB. Second, when you cascade systems (multiply transfer functions), their dB magnitudes simply add, which makes sketching composite responses much easier.
The horizontal axis uses a logarithmic frequency scale (rad/s), so each factor-of-10 increase in frequency (a decade) occupies the same horizontal distance.
Phase plot
The phase plot shows in degrees versus the same logarithmic frequency axis. Phase is typically kept in the range (or sometimes for open-loop analysis) to avoid confusing jumps in the plot.
The phase tells you about timing. At a given frequency, if , the output peak arrives one-quarter cycle after the input peak. This lag information is critical for stability analysis.
Logarithmic frequency scale
The log scale is not just a convenience; it's what makes Bode plots powerful.
- It lets you see behavior from, say, 0.01 rad/s to 10,000 rad/s on a single plot.
- Asymptotic approximations (straight-line slopes like dB/decade) become easy to draw and interpret.
- Decades (factors of 10) and octaves (factors of 2) serve as natural reference intervals. A first-order pole, for example, contributes a slope of dB/decade and roughly dB/octave.
Frequency response of LTI systems
The frequency response of an LTI system is fully determined by its transfer function . You obtain it by substituting to get the complex-valued function . The magnitude of gives , and the angle of gives .
Transfer function representation
The transfer function relates the Laplace-domain output to input under zero initial conditions:
where and are polynomials in . The roots of are the zeros (frequencies where the system output goes to zero), and the roots of are the poles (frequencies associated with the system's natural modes).

Poles vs zeros
- Poles are values of where . Each pole contributes a dB/decade slope to the magnitude and up to of phase lag.
- Zeros are values of where . Each zero contributes a dB/decade slope and up to of phase lead.
The interplay between pole and zero locations shapes the entire frequency response. Poles near the imaginary axis produce sharp resonant peaks; zeros near the imaginary axis produce sharp notches.
Stability implications
Pole locations directly determine stability:
- Stable: all poles in the left half-plane (negative real parts). Transients decay.
- Marginally stable: poles on the imaginary axis. Sustained oscillations, no decay.
- Unstable: any pole in the right half-plane. Transients grow without bound.
The frequency response doesn't show pole locations directly, but it reveals stability margins (gain margin and phase margin) that tell you how close the closed-loop system is to instability. More on those below.
Frequency domain specifications
Frequency domain specs translate time-domain performance goals (speed, overshoot, robustness) into measurable features of the Bode plot. Designers use these specs to set targets before shaping the open-loop frequency response with compensators.
Bandwidth
Bandwidth is the frequency range over which the system responds effectively. For a low-pass system, it's defined as the frequency where the magnitude drops to dB below its low-frequency (DC) value. At the dB point, the output power is half the input power.
A larger bandwidth means faster response to changing inputs, but it also means the system passes more high-frequency noise. There's always a trade-off between speed and noise sensitivity.
Resonant peak
The resonant peak is the maximum value of the closed-loop magnitude response, usually occurring near the system's natural frequency . A tall, sharp resonant peak signals low damping and corresponds to large overshoot in the time-domain step response.
For a standard second-order system, the resonant peak grows as the damping ratio decreases. A common design target is (about 2.3 dB), which roughly corresponds to and acceptable overshoot.
Gain vs phase margin
These are the two most important robustness indicators on a Bode plot.
- Gain margin (GM): measured at the frequency where the phase crosses (the phase crossover frequency). It's the number of dB the magnitude is below 0 dB at that point. A GM of 6 dB means you could double the loop gain before the system goes unstable.
- Phase margin (PM): measured at the frequency where the magnitude crosses 0 dB (the gain crossover frequency). It's how many degrees the phase is above . A PM of 45° means you could add 45° of extra lag before instability.
Typical design targets are GM 6 dB and PM between 30° and 60°. Larger margins mean more tolerance for modeling errors and parameter variations.
Frequency response of standard systems
Standard first- and second-order building blocks have characteristic Bode plot shapes. Recognizing these patterns lets you quickly sketch the response of more complex systems by combining individual contributions.
First-order systems
A first-order system has the transfer function:
where is the DC gain and is the time constant. The corner frequency (or break frequency) is .
- Magnitude: flat at dB for , then rolls off at dB/decade for . At , the magnitude is down dB from the DC value.
- Phase: starts at , passes through at , and approaches at high frequencies. Most of the phase transition happens within one decade on either side of .

Second-order systems
A standard second-order system has the form:
where is the natural frequency and is the damping ratio.
- Magnitude: flat at 0 dB for low frequencies, then rolls off at dB/decade at high frequencies. Near , the response depends heavily on . For , a resonant peak appears; for , the response rolls off smoothly with no peak.
- Phase: transitions from to , passing through exactly at regardless of . Lower damping makes this transition sharper.
Higher-order systems
Higher-order systems (third-order and above) have transfer functions with denominator polynomials of degree three or more. Their Bode plots can show multiple break frequencies, multiple resonant peaks, and steeper high-frequency roll-off (e.g., dB/decade for a third-order system with three real poles).
In practice, you analyze higher-order systems by factoring the transfer function into first-order and second-order terms, sketching each term's contribution separately, and then adding the magnitude (in dB) and phase contributions together. This is one of the biggest practical advantages of Bode plots.
Experimental determination of frequency response
When you don't have a mathematical model of the system, or when you want to validate a model against reality, you can measure the frequency response experimentally. Three common approaches exist, each with different trade-offs between speed and accuracy.
Sinusoidal testing
This is the most direct method:
- Apply a sinusoidal input at a specific frequency and wait for the transient to die out.
- Measure the steady-state output amplitude and phase shift relative to the input.
- Compute and record .
- Repeat at many frequencies across the range of interest.
- Plot the results as a Bode plot.
Sinusoidal testing is accurate but slow, since you need to wait for steady state at each frequency. Frequency response analyzers automate this process.
Correlation methods
Correlation methods speed things up by exciting all frequencies at once. You apply a broadband signal (white noise, pseudorandom binary sequences, or a chirp) and record both input and output. Cross-correlating the two signals yields the system's impulse response, which you then Fourier-transform to get .
These methods are faster than point-by-point sinusoidal testing but require more signal processing and can be sensitive to noise and nonlinearities.
Spectrum analyzers
A two-channel spectrum analyzer measures the power spectral density of both the input and output simultaneously. The frequency response is computed as the ratio of the output spectrum to the input spectrum (the cross-spectrum divided by the input auto-spectrum). The result is displayed directly as magnitude and phase versus frequency.
Spectrum analyzers also compute a coherence function, which tells you how much of the output is linearly related to the input at each frequency. Low coherence at a particular frequency flags noise contamination or nonlinear behavior at that frequency.
Frequency response applications
Frequency response analysis connects directly to three major areas of control engineering: filtering, stability assessment, and controller design.
Filter design
Filters selectively pass or reject frequency bands. The four basic types are low-pass, high-pass, band-pass, and band-stop (notch). Designing a filter means placing poles and zeros so that the resulting Bode plot matches the desired frequency response.
For example, a second-order Butterworth low-pass filter places two complex poles at angles in the left half-plane (), giving a maximally flat passband with no resonant peak and a dB/decade roll-off.
Stability analysis
For closed-loop systems, the Nyquist stability criterion and Bode stability analysis use the open-loop frequency response to determine closed-loop stability. You don't need to find the closed-loop poles explicitly.
On a Bode plot, you read gain and phase margins directly. If the open-loop gain is still above 0 dB when the phase reaches , the closed-loop system is unstable. The Nyquist plot provides a more general test that also handles open-loop unstable plants and time delays.
Controller design
Frequency response methods are central to designing compensators like PID controllers and lead-lag networks. The design process typically follows these steps:
- Plot the uncompensated open-loop Bode plot.
- Identify the current gain crossover frequency and phase margin.
- Determine how much phase lead or additional gain is needed to meet specs.
- Add a compensator (lead, lag, or lead-lag) that reshapes the Bode plot to achieve the desired crossover frequency, phase margin, and bandwidth.
- Verify the design by checking the compensated Bode plot and simulating the closed-loop step response.
This loop-shaping approach is one of the most widely used controller design methods because it gives you direct, visual control over the trade-offs between speed, robustness, and noise rejection.