Unit 6 - Notes

ECE220

Unit 6: The Z-transform

1. Introduction

The Z-transform is a mathematical tool used for the analysis and design of discrete-time signals and systems. It serves as the discrete-time counterpart to the Laplace transform used in continuous-time systems.

While the Discrete-Time Fourier Transform (DTFT) provides a frequency-domain representation of a discrete signal, it only exists if the signal is absolutely summable (stable). The Z-transform generalizes the DTFT, allowing for the analysis of a broader class of signals (including unstable ones) and the characterization of transient behaviors in Discrete-Time Linear Time-Invariant (DT-LTI) systems.

Key Analogies

Continuous Time Discrete Time
Differential Equations Difference Equations
Laplace Transform (-domain) Z-transform (-domain)
Stability: Left Half of -plane Stability: Inside Unit Circle of -plane

2. The Z-transform

Definition

The bilateral (two-sided) Z-transform of a discrete-time signal is defined as a power series:

Where:

  • is a complex variable defined as .
  • is the magnitude of .
  • is the angle (frequency) in radians.

Relation to DTFT

If we substitute (i.e., restricting to the unit circle where ), the Z-transform reduces to the DTFT:

Note: The Z-transform exists on the complex z-plane, while the DTFT exists specifically on the Unit Circle of that plane.

The Unilateral Z-transform

Used primarily for solving difference equations with initial conditions (causal systems), defined as:


3. The Region of Convergence (ROC)

The Region of Convergence is the set of values of in the complex plane for which the infinite summation converges to a finite value.

A Z-transform expression is uniquely defined only when its ROC is specified. For example, and result in the same algebraic expression , distinguished only by their ROCs.

Properties of the ROC

  1. Shape: The ROC consists of a ring or disk in the z-plane centered at the origin.
  2. No Poles: The ROC cannot contain any poles (values of where ).
  3. Finite Duration Signals: The ROC is the entire z-plane, except possibly or .
  4. Right-Sided Signals (Causal): If is right-sided (zero for ), the ROC is the region outside the outermost pole:
  5. Left-Sided Signals (Anti-Causal): If is left-sided (zero for ), the ROC is the region inside the innermost pole:
  6. Two-Sided Signals: The ROC is an annular ring bounded by two poles (does not include the poles themselves):
  7. Stability: For a system to be stable, the ROC must include the Unit Circle ().

4. Properties of the Z-transform

Assuming with ROC and with ROC .

1. Linearity


ROC: Contains .

2. Time Shifting


ROC: Same as (except possibly or ).

3. Scaling in the z-domain


ROC: (scaled expansion/contraction of the ROC).

4. Time Reversal


ROC: Inverted ().

5. Differentiation in the z-domain

6. Convolution


ROC: Contains . This is the foundation of system analysis (Output = Input Transfer Function).

7. Initial Value Theorem (Causal Signals)

If for :

8. Final Value Theorem (Causal Signals)

If the poles of are inside the unit circle:


5. The Inverse Z-transform

The process of recovering the discrete-time signal from .

Method 1: Power Series Expansion (Long Division)

Useful when is a rational function and we need the first few samples of .

  • Divide the numerator polynomial by the denominator.
  • The coefficients of the resulting series correspond to the sequence values.

Method 2: Partial Fraction Expansion (Most Common)

Used for rational functions of the form .

  1. Ensure the order of is less than . If not, use long division first.
  2. Factor the denominator to find poles.
  3. Express as a sum of partial fractions:
  4. Multiply by to isolate :
  5. Apply the inverse transform based on the ROC:
    • If ROC is (Right-sided):
    • If ROC is (Left-sided):

Method 3: Contour Integration (Residue Method)

Based on Cauchy's Integral Theorem:


Where is a counter-clockwise contour in the ROC encircling the origin.


6. Analysis and Characterization of LTI Systems

An LTI system is characterized by its impulse response . The Z-transform of is the System Function or Transfer Function, .

System Function from Difference Equations

Given a Linear Constant Coefficient Difference Equation (LCCDE):


Taking the Z-transform (assuming zero initial conditions):

Causality

A system is Causal if for .

  • ROC Condition: The ROC is the exterior of a circle , including .
  • Rational Function Condition: The order of the numerator polynomial must be less than or equal to the order of the denominator polynomial (proper fraction).

Stability

A system is BIBO Stable (Bounded Input, Bounded Output) if .

  • ROC Condition: The ROC must include the Unit Circle ().
  • Pole Location: For a causal system to be stable, all poles must lie strictly inside the unit circle.

7. Software Simulation and Pole-Zero Analysis

Modern analysis relies on software tools (MATLAB, Python/SciPy) to visualize the relationship between the algebraic and system behavior.

Pole-Zero Plot

  • Zeros (): Roots of the numerator . Values of where .
  • Poles (): Roots of the denominator . Values of where .

Effect of Pole Locations (Causal Systems)

  1. Real Pole inside unit circle (): Decaying exponential response.
  2. Real Pole outside unit circle (): Growing exponential (Unstable).
  3. Pole at origin (): Simple delay.
  4. Complex Conjugate Poles ():
    • : Damped sinusoidal oscillation (Stable).
    • : Constant amplitude oscillation (Marginally Stable/Oscillator).
    • : Growing sinusoidal oscillation (Unstable).

Python Simulation Example

Using scipy.signal to analyze a system described by: .

PYTHON
import numpy as np
import matplotlib.pyplot as plt
from scipy import signal

# Define system coefficients
# H(z) = B(z) / A(z)
# Numerator: 1 (which is 1*z^0)
# Denominator: 1 - 0.5*z^-1
b = [1]          # Numerator coefficients
a = [1, -0.5]    # Denominator coefficients

# 1. Pole-Zero Analysis
z, p, k = signal.tf2zpk(b, a)

print(f"Zeros: {z}")
print(f"Poles: {p}") 
# Result: Pole at 0.5. Since |0.5| < 1, system is stable.

# 2. Frequency Response
w, h = signal.freqz(b, a)

plt.figure()
plt.title('Digital Filter Frequency Response')
plt.plot(w, 20 * np.log10(abs(h)), 'b')
plt.ylabel('Amplitude [dB]')
plt.xlabel('Frequency [rad/sample]')
plt.grid()
plt.show()

# 3. Impulse Response (Inverse Z-transform simulation)
# Create an impulse signal
impulse = np.zeros(20)
impulse[0] = 1
response = signal.lfilter(b, a, impulse)

plt.figure()
plt.stem(response)
plt.title('Impulse Response h[n]')
plt.xlabel('n')
plt.grid()
plt.show()
# Result will show a decaying exponential (0.5)^n

Interpretation of Simulation

  • zplane: Visualizes stability immediately. If x markers are inside the circle drawn at radius 1, the filter is stable.
  • freqz: Evaluates along the unit circle () to show how the system amplifies or attenuates specific frequencies.
  • lfilter: Implements the difference equation numerically to simulate time-domain behavior.