Unit 6: The Z-transform
I. Orientation
The z-transform is the discrete-time counterpart of the Laplace transform: it maps a discrete sequence into a function of a complex variable z, converting difference equations into algebraic equations and revealing system behaviour through pole–zero geometry. It generalises the discrete-time Fourier transform (DTFT) by allowing exponentially growing or decaying test signals, so it can analyse systems the DTFT cannot.
- Complex variable:
z = r·e^{jω}, wherer = |z|is a real radius andωis angular frequency in radians/sample; the DTFT is the z-transform restricted tor = 1. - Two flavours: the bilateral transform sums over all
n(system analysis); the unilateral transform sums overn ≥ 0(solving difference equations with initial conditions). - Core objects: the algebraic expression
X(z), its region of convergence (ROC), and the poles (roots of the denominator) and zeros (roots of the numerator). - Guiding principle: a rational
X(z)plus its ROC together specify a unique sequence; neither alone is enough.
II. The z-transform
Definition and the transform pair
The bilateral z-transform expresses a sequence as a power series in z⁻¹, and every property of the sequence maps to an algebraic feature of that series.
- Definition: the transform of
x[n]is
TEXTX(z) = Σ_{n=-∞}^{∞} x[n] z^{-n}
wherex[n]is the discrete input sample andzis complex. - Notation: the pair is written
x[n] ⟷ X(z), ROC stated alongside. - Relation to Laplace: substituting
z = e^{sT}(withTthe sampling period) maps the Laplaces-plane to thez-plane; thejΩaxis maps to the unit circle, the left half-plane to the interior. - Canonical pairs:
- Right-sided exponential:
aⁿ u[n] ⟷ 1/(1 − a z⁻¹), ROC|z| > |a|. - Left-sided exponential:
−aⁿ u[−n−1] ⟷ 1/(1 − a z⁻¹), ROC|z| < |a|— same algebra, different ROC. - Unit impulse:
δ[n] ⟷ 1, ROC allz.
- Right-sided exponential:
The two exponential pairs share one expression X(z) but describe opposite sequences: the ROC alone distinguishes them, which is why it is never optional.
III. The region of convergence for the z-transform
The set of z for which the series converges
The ROC is the annular region in the complex plane where the defining sum is finite, and its shape encodes causality and stability.
- Definition: ROC =
{ z : Σ |x[n] z⁻ⁿ| < ∞ }; convergence depends only on|z| = r, so the ROC is always an annulusr₁ < |z| < r₂centred at the origin. - No poles inside: the ROC never contains a pole, because
X(z)is unbounded there. - Shape follows sidedness:
- Right-sided (causal): ROC is the exterior of a circle,
|z| > r_max, outside the outermost pole. - Left-sided (anti-causal): ROC is the interior of a circle,
|z| < r_min. - Two-sided: ROC is an annulus between two poles.
- Right-sided (causal): ROC is the exterior of a circle,
- Stability test: a system is BIBO-stable iff its ROC includes the unit circle
|z| = 1. - Finite-length sequences: ROC is the entire plane, possibly excluding
z = 0and/orz = ∞.
IV. Properties of the z-transform
Operational rules that avoid re-summing the series
Each property is a mapping between an operation on x[n] and an operation on X(z), and each carries its own ROC rule; symbols X(z), Y(z) denote the transforms of x[n], y[n].
- Linearity:
a·x[n] + b·y[n] ⟷ a·X(z) + b·Y(z); ROC at least the intersection of the two ROCs. - Time shift:
x[n − n₀] ⟷ z^{−n₀} X(z); ROC unchanged except possiblez = 0or∞. This is the property that turns a difference equation into algebra. - Scaling in z (modulation):
aⁿ x[n] ⟷ X(z/a); ROC scaled by|a|. - Time reversal:
x[−n] ⟷ X(z⁻¹); ROC inverted to1/r₂ < |z| < 1/r₁. - Differentiation in z:
n·x[n] ⟷ −z · dX(z)/dz; ROC unchanged. Used to invert repeated poles. - Convolution:
x[n] * y[n] ⟷ X(z)·Y(z); ROC at least the intersection. This converts the LTI convolution sum into a product — the property underpinning all system analysis. - Initial-value theorem (causal):
x[0] = lim_{z→∞} X(z).
Worked example (convolution). For h[n] = δ[n] − 0.5 δ[n−1] and input x[n] = u[n]:
H(z) = 1 − 0.5 z⁻¹ X(z) = 1/(1 − z⁻¹)
Y(z) = H(z)X(z) = (1 − 0.5 z⁻¹)/(1 − z⁻¹)
so y[n] is obtained by inverting Y(z) rather than summing a convolution directly.
V. The inverse z-transform
Recovering x[n] from X(z) and its ROC
Inversion returns the sequence, and for rational transforms the practical routes avoid the formal contour integral entirely.
- Formal definition:
x[n] = (1/2πj) ∮_C X(z) z^{n−1} dz, the contourClying in the ROC — rarely computed directly. - Method 1 — Partial-fraction expansion (preferred for rational X(z)):
- Write
X(z)as a sum of first-order termsA_k /(1 − p_k z⁻¹),p_ka pole,A_ka residue. - Invert each term using the ROC to choose the right-sided form
A_k p_k^n u[n](if|z| > |p_k|) or the left-sided form−A_k p_k^n u[−n−1].
- Write
- Method 2 — Power-series / long division: divide numerator by denominator in powers of
z⁻¹; the coefficient ofz⁻ⁿisx[n]. Gives samples directly but no closed form. - ROC decides the answer: the same
X(z)yields different sequences depending on which annulus is specified, so inversion is impossible without the ROC.
Worked example. For X(z) = 1/[(1 − 0.5 z⁻¹)(1 − 2 z⁻¹)], ROC 0.5 < |z| < 2:
X(z) = (−1/3)/(1 − 0.5z⁻¹) + (... ) → poles at 0.5 and 2
The pole at 0.5 is inside the ROC → right-sided term p=0.5; the pole at 2 is outside → left-sided term p=2, giving a two-sided x[n].
VI. Analysis and characterisation of LTI systems using z-transforms
The transfer function and what its poles and zeros mean
An LTI system is characterised by H(z), the transform of its impulse response, and the placement of its poles and zeros fixes stability, causality and frequency shape.
- Transfer function:
H(z) = Y(z)/X(z)= z-transform of the impulse responseh[n]. - From difference equation: applying the time-shift property to
TEXTΣ_{k=0}^{N} a_k y[n−k] = Σ_{m=0}^{M} b_m x[n−m]
gives the rational form
TEXTH(z) = (Σ b_m z^{−m}) / (Σ a_k z^{−k})
witha_k,b_mthe constant coefficients. - Poles and zeros: zeros are roots of the numerator (nulls in response); poles are roots of the denominator (resonances) and set the natural modes
p_k^n. - Causality:
h[n]is causal iff the ROC is the exterior of the outermost pole andH(z)is proper. - Stability: the system is BIBO-stable iff all poles lie strictly inside the unit circle (for a causal system).
- Frequency response: evaluate on the unit circle,
H(e^{jω}) = H(z)|_{z=e^{jω}}; a pole near the circle produces a peak, a zero near it produces a notch.
VII. Software simulation of system representation and pole-zero analysis
Numerical tools that build, plot and test H(z)
Software represents H(z) by its coefficient vectors and computes the ROC-independent quantities — poles, zeros, response — automatically.
- Coefficient representation: numerator
b = [b₀ … b_M]and denominatora = [a₀ … a_N]fully specifyH(z). - Pole–zero computation (Python / SciPy):
PYTHONimport scipy.signal as sig b = [1, -0.5] # numerator coefficients a = [1, -0.9] # denominator coefficients z, p, k = sig.tf2zpk(b, a) # zeros, poles, gain w, H = sig.freqz(b, a) # frequency response on unit circle - Pole–zero plot: zeros as
○, poles as×, drawn against the unit circle; visual stability check is "all×inside the circle." - Representation conversions: transfer-function ↔ zero-pole-gain ↔ state-space (
tf2zpk,zpk2tf,tf2ss) let the same system be simulated or realised differently. - Simulation:
sig.dlsimorsig.lfilter(b, a, x)computes the output sample-by-sample, verifying the analyticaly[n]obtained fromH(z)X(z). - Design feedback loop: move a pole radially toward the unit circle and re-plot
freqzto watch a resonant peak sharpen — a direct link between geometry and spectrum.
Did this save you a night before the exam?
LPU Notes is free, and it stays free. Ads cover part of the server bill. The rest comes out of a student's own pocket: the domain, the storage, and keeping the site up through the weeks everyone needs it at once.
The payment button didn't load. An ad blocker or a filtered network is the usual reason. to try again.
Nothing here is ever locked, and nothing unlocks. Chip in only if it was worth it. What it pays for →