Fiveable

🎛️Control Theory Unit 11 Review

QR code for Control Theory practice questions

11.2 Z-transforms

11.2 Z-transforms

Written by the Fiveable Content Team • Last updated August 2025
Written by the Fiveable Content Team • Last updated August 2025
🎛️Control Theory
Unit & Topic Study Guides

Z-transforms convert discrete-time signals into the complex frequency domain, playing the same role for sampled systems that Laplace transforms play for continuous-time ones. In digital control, they're the primary tool for analyzing stability, designing controllers, and understanding frequency response whenever signals are sampled at regular intervals.

Definition of Z-transforms

A Z-transform takes a sequence of numbers (a discrete-time signal) and re-expresses it as a function of the complex variable zz. This lets you use algebraic manipulation instead of working directly with sequences and difference equations.

Discrete-time signals

Discrete-time signals are sequences of values defined at integer time indices, written as x[n]x[n]. They arise either by sampling a continuous signal at a fixed rate or by being generated directly in a digital system.

Common examples:

  • Audio samples in digital signal processing
  • Pixel values in digital image processing
  • Sensor readings in digital control (temperature, pressure, position)

Bilateral vs unilateral Z-transforms

The bilateral Z-transform sums over the entire time axis:

X(z)=n=+x[n]znX(z) = \sum_{n=-\infty}^{+\infty} x[n] z^{-n}

The unilateral Z-transform sums only from n=0n = 0 onward:

X(z)=n=0+x[n]znX(z) = \sum_{n=0}^{+\infty} x[n] z^{-n}

In control theory you'll almost always use the unilateral form, because physical systems are causal (no output before an input arrives) and signals typically start at n=0n = 0. The unilateral version is also easier to work with when solving difference equations with initial conditions.

Region of convergence

The region of convergence (ROC) is the set of values of zz in the complex plane for which the Z-transform sum actually converges to a finite value. The ROC matters because two different signals can share the same algebraic expression for X(z)X(z) but differ in their ROC, making the transform ambiguous without it.

Key ROC shapes:

  • Outside a circle (z>r|z| > r): corresponds to causal, stable signals
  • Inside a circle (z<r|z| < r): corresponds to anticausal signals
  • Annular region (r1<z<r2r_1 < |z| < r_2): corresponds to two-sided signals

For a causal system to be stable, the ROC must include the unit circle (z=1|z| = 1), which requires all poles to lie strictly inside the unit circle.

Properties of Z-transforms

These properties let you manipulate Z-transforms algebraically, turning time-domain operations (shifting, scaling, convolving) into simpler operations on X(z)X(z).

Linearity

Z{ax1[n]+bx2[n]}=aX1(z)+bX2(z)\mathcal{Z}\{a\, x_1[n] + b\, x_2[n]\} = a\, X_1(z) + b\, X_2(z)

Superposition holds: you can analyze each component of a signal separately and add the results.

Time shifting

Z{x[nk]}=zkX(z)\mathcal{Z}\{x[n-k]\} = z^{-k} X(z)

A delay of kk samples multiplies the transform by zkz^{-k}. This is why z1z^{-1} is often called the "unit delay operator." Advancing a signal (negative kk) multiplies by positive powers of zz.

Scaling in Z-domain

Z{anx[n]}=X(z/a)\mathcal{Z}\{a^n x[n]\} = X(z/a)

Multiplying the time-domain signal by an exponential ana^n replaces zz with z/az/a in the transform. This is handy when dealing with damped or growing signals.

Time reversal

Z{x[n]}=X(1/z)\mathcal{Z}\{x[-n]\} = X(1/z)

Flipping a signal in time replaces zz with 1/z1/z. Useful for analyzing systems with symmetric impulse responses.

Convolution

Z{x1[n]x2[n]}=X1(z)X2(z)\mathcal{Z}\{x_1[n] * x_2[n]\} = X_1(z)\, X_2(z)

Convolution in the time domain becomes multiplication in the Z-domain. This is the property that makes transfer functions work: cascading two systems means multiplying their transfer functions.

Differentiation in Z-domain

Z{nx[n]}=zddzX(z)\mathcal{Z}\{n\, x[n]\} = -z \frac{d}{dz} X(z)

Multiplying the signal by nn corresponds to differentiating the transform with respect to zz (and multiplying by z-z). You'll encounter this when analyzing ramp-like inputs or systems with integrators.

Discrete-time signals, Computing the Z-transform in MATLAB | ee-diary

Initial and final value theorems

Initial value theorem:

x[0]=limzX(z)x[0] = \lim_{z \to \infty} X(z)

Final value theorem:

limnx[n]=limz1(z1)X(z)\lim_{n \to \infty} x[n] = \lim_{z \to 1} (z-1)\, X(z)

The final value theorem only applies when (z1)X(z)(z-1)X(z) has no poles on or outside the unit circle (i.e., the system settles to a steady state). These theorems let you extract key time-domain values directly from the transform without inverting it.

Z-transforms of common signals

These transform pairs are the building blocks you'll use repeatedly. Memorizing them (or having a table handy) saves significant time.

Unit impulse

δ[n]={1,n=00,n0\delta[n] = \begin{cases} 1, & n = 0 \\ 0, & n \neq 0 \end{cases}

Z{δ[n]}=1\mathcal{Z}\{\delta[n]\} = 1

The impulse is the simplest signal. Its transform is just 1, which makes sense: the impulse "tests" a system by feeding it a single nonzero sample.

Unit step

u[n]={1,n00,n<0u[n] = \begin{cases} 1, & n \geq 0 \\ 0, & n < 0 \end{cases}

Z{u[n]}=11z1=zz1,z>1\mathcal{Z}\{u[n]\} = \frac{1}{1 - z^{-1}} = \frac{z}{z - 1}, \quad |z| > 1

The step function represents a signal that turns on at n=0n = 0 and stays on. It has a single pole at z=1z = 1.

Exponential

x[n]=anu[n]x[n] = a^n u[n]

Z{anu[n]}=11az1=zza,z>a\mathcal{Z}\{a^n u[n]\} = \frac{1}{1 - a z^{-1}} = \frac{z}{z - a}, \quad |z| > |a|

This generalizes the unit step (which is the special case a=1a = 1). When a<1|a| < 1 the signal decays; when a>1|a| > 1 it grows.

Sinusoidal

x[n]=cos(ωn)u[n]x[n] = \cos(\omega n)\, u[n]

Z{cos(ωn)u[n]}=z(zcosω)z22zcosω+1,z>1\mathcal{Z}\{\cos(\omega n)\, u[n]\} = \frac{z(z - \cos\omega)}{z^2 - 2z\cos\omega + 1}, \quad |z| > 1

The denominator has two complex conjugate poles on the unit circle, reflecting the fact that a pure sinusoid neither grows nor decays.

Damped sinusoidal

x[n]=ancos(ωn)u[n]x[n] = a^n \cos(\omega n)\, u[n]

Z{ancos(ωn)u[n]}=z(zacosω)z22azcosω+a2,z>a\mathcal{Z}\{a^n \cos(\omega n)\, u[n]\} = \frac{z(z - a\cos\omega)}{z^2 - 2az\cos\omega + a^2}, \quad |z| > |a|

This combines exponential decay (or growth) with oscillation. The poles sit at radius a|a| from the origin, so when a<1|a| < 1 the oscillation dies out over time.

Inverse Z-transforms

The inverse Z-transform recovers the discrete-time signal x[n]x[n] from its Z-domain representation X(z)X(z). Several methods exist, and the best choice depends on the form of X(z)X(z).

Partial fraction expansion

This is the most common method for rational Z-transforms (ratios of polynomials in z1z^{-1}).

  1. Express X(z)X(z) as a ratio of polynomials and factor the denominator to find the poles.
  2. Decompose X(z)/zX(z)/z (or X(z)X(z) directly, depending on convention) into partial fractions. The form of each fraction depends on whether poles are distinct, repeated, or complex conjugate.
  3. Solve for the unknown coefficients using the cover-up method or by equating coefficients.
  4. Look up each partial fraction in a standard Z-transform table to read off the corresponding time-domain term.
  5. Sum all the terms to get x[n]x[n].

A common pitfall: forgetting to work with X(z)/zX(z)/z first. Dividing by zz before expanding often produces cleaner fractions that match standard table entries directly.

Residue method

Based on the Cauchy residue theorem, this method computes x[n]x[n] as a sum of residues:

x[n]=kRes ⁣[X(z)zn1,  zk]x[n] = \sum_k \text{Res}\!\left[X(z)\, z^{n-1},\; z_k\right]

For a simple pole at zkz_k:

Res=limzzk(zzk)X(z)zn1\text{Res} = \lim_{z \to z_k} (z - z_k)\, X(z)\, z^{n-1}

This is closely related to partial fractions but frames the calculation in the language of complex analysis. It works well for simple poles; repeated poles require higher-order residue formulas.

Discrete-time signals, What is Discrete Fourier Transform(DFT) | ee-diary

Power series expansion

If you need only the first several values of x[n]x[n], long division is the most direct approach.

  1. Write X(z)X(z) as a ratio of polynomials in z1z^{-1}.
  2. Perform polynomial long division of the numerator by the denominator.
  3. The coefficient of znz^{-n} in the resulting series is x[n]x[n].

This method doesn't give you a closed-form expression, but it's useful for checking results or when you only care about the first few samples of the output.

Contour integration

The formal inverse Z-transform is defined by a contour integral:

x[n]=12πjCX(z)zn1dzx[n] = \frac{1}{2\pi j} \oint_C X(z)\, z^{n-1}\, dz

The contour CC is a closed path in the ROC that encircles the origin. In practice, you evaluate this integral using the residue theorem, so contour integration and the residue method are closely linked. This approach handles irrational transforms as well, but it requires comfort with complex analysis.

Applications of Z-transforms

Discrete-time system analysis

Once you have the Z-transform of a system, you can study its behavior entirely in the Z-domain:

  • Stability: Check whether all poles lie inside the unit circle.
  • Transient response: Use partial fraction expansion to see how the system responds to a given input.
  • Steady-state response: Apply the final value theorem.
  • Frequency response: Evaluate H(z)H(z) along the unit circle (z=ejωTz = e^{j\omega T}) to get the gain and phase at each frequency.

For example, analyzing a digital controller for a robotic arm involves computing its transfer function, verifying pole locations for stability, and checking the frequency response to ensure adequate bandwidth.

Transfer functions in the Z-domain

The transfer function H(z)H(z) describes the input-output relationship of a discrete-time system:

H(z)=Y(z)X(z)=b0+b1z1++bMzMa0+a1z1++aNzNH(z) = \frac{Y(z)}{X(z)} = \frac{b_0 + b_1 z^{-1} + \cdots + b_M z^{-M}}{a_0 + a_1 z^{-1} + \cdots + a_N z^{-N}}

You obtain H(z)H(z) by taking the Z-transform of the system's difference equation (assuming zero initial conditions). The numerator coefficients bkb_k and denominator coefficients aka_k come directly from the difference equation coefficients. Zeros of the numerator determine where the system blocks certain frequencies; poles of the denominator determine the system's natural modes.

Stability analysis using Z-transforms

A discrete-time LTI system is BIBO stable (bounded input produces bounded output) if and only if all poles of H(z)H(z) lie strictly inside the unit circle (z<1|z| < 1).

Methods for checking stability:

  • Direct factoring: Find the roots of the characteristic polynomial and verify zk<1|z_k| < 1 for each.
  • Jury stability test: An algebraic test (analogous to the Routh-Hurwitz criterion for continuous systems) that determines stability without explicitly finding roots.
  • Nyquist criterion in the Z-domain: A graphical method using the frequency response to assess closed-loop stability.

The unit circle in the Z-plane plays the same role as the imaginary axis in the s-plane: poles must stay to the "stable side" of this boundary.

Discrete-time controller design

Z-transforms support several controller design methods:

  • Pole placement: Choose desired closed-loop pole locations inside the unit circle, then solve for controller gains that achieve those locations.
  • Root locus: Plot how closed-loop poles move as a gain parameter varies. The design goal is to keep all poles inside the unit circle across the operating range.
  • Frequency response methods: Shape the open-loop frequency response (Bode plot of H(z)H(z) evaluated on the unit circle) to achieve desired gain and phase margins.

The resulting controller is implemented as a difference equation, which maps directly to code running on a microcontroller or DSP.

Digital filter design

Digital filters selectively pass or reject frequency components of a signal. Z-transforms are central to their design and analysis.

FIR (Finite Impulse Response) filters have transfer functions with only zeros (no feedback). They're inherently stable and can be designed with exactly linear phase, but they often require many taps (coefficients) for sharp cutoffs.

IIR (Infinite Impulse Response) filters have both poles and zeros (they use feedback). They can achieve sharp frequency selectivity with fewer coefficients, but stability must be verified.

Common design techniques in the Z-domain:

  • Bilinear transformation: Maps a proven continuous-time (analog) filter design into the discrete-time domain while preserving stability. Introduces frequency warping that must be pre-compensated.
  • Windowing: Starts with the ideal (infinite-length) impulse response and truncates it using a window function (Hamming, Hanning, etc.) to get a realizable FIR filter.
  • Optimization methods: Numerically minimize the error between the desired and actual frequency responses.

Z-transforms vs other transforms

Z-transforms vs Laplace transforms

The Laplace transform handles continuous-time systems; the Z-transform handles discrete-time systems. They're connected by the mapping:

z=esTz = e^{sT}

where TT is the sampling period. This mapping wraps the left half of the s-plane (stable region for continuous systems) into the interior of the unit circle in the z-plane (stable region for discrete systems).

Many properties carry over between the two: linearity, time shifting, convolution becoming multiplication, and partial fraction techniques. If you're comfortable with Laplace transforms, Z-transforms will feel familiar. The main conceptual shift is that stability boundaries change from the imaginary axis to the unit circle.

Z-transforms vs Fourier transforms

The continuous-time Fourier transform analyzes frequency content of analog signals. The Z-transform is more general for discrete-time signals because it includes a damping/growth factor (the magnitude of zz), not just frequency (the angle of zz).

The connection: evaluating the Z-transform on the unit circle gives you the discrete-time Fourier transform (DTFT):

z=ejωTz = e^{j\omega T}

So the DTFT is a special case of the Z-transform. The Z-transform is more powerful for system analysis because it captures stability information (through the ROC and pole locations), while the Fourier transform only describes frequency content.

Z-transforms vs discrete Fourier transforms

The Discrete Fourier Transform (DFT) analyzes a finite-length sequence at a finite number of equally spaced frequency points around the unit circle. It's what you actually compute in practice using the Fast Fourier Transform (FFT) algorithm.

Key differences from the Z-transform:

  • The DFT assumes the signal is periodic with period equal to the sequence length.
  • The DFT gives you frequency-domain samples, not a continuous function of zz.
  • The DFT is computationally efficient (FFT runs in O(NlogN)O(N \log N)), while evaluating the Z-transform at arbitrary points is more expensive.

In practice, you use Z-transforms for system design and analysis (transfer functions, stability, controller design) and the DFT/FFT for numerical computation of frequency spectra from measured data.