0
0
RosHow-ToBeginner · 4 min read

Z Transform of Exponential Sequence in Signal Processing Explained

The Z transform of an exponential sequence x[n] = a^n u[n] (where u[n] is the unit step) is X(z) = 1 / (1 - a z^{-1}) for |z| > |a|. It converts the time-domain exponential sequence into a complex frequency domain representation.
📐

Syntax

The Z transform of a discrete-time sequence x[n] is defined as:

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

For an exponential sequence x[n] = a^n u[n], where u[n] is the unit step (0 for n<0, 1 for n≥0), the Z transform becomes:

X(z) = \sum_{n=0}^{\infty} a^n z^{-n} = \frac{1}{1 - a z^{-1}}, valid for |z| > |a|.

Here:

  • a is the base of the exponential
  • z is a complex variable
  • u[n] ensures the sequence is causal (starts at n=0)
latex
X(z) = \sum_{n=0}^{\infty} a^n z^{-n} = \frac{1}{1 - a z^{-1}}, \quad |z| > |a|
💻

Example

This example calculates the Z transform of the exponential sequence x[n] = (0.5)^n u[n] using Python with sympy. It shows the formula and plots the magnitude of X(z) on the complex plane.

python
import sympy as sp
import numpy as np
import matplotlib.pyplot as plt

# Define symbols
z, a = sp.symbols('z a', complex=True)

# Define the Z transform of x[n] = a^n u[n]
Xz = 1 / (1 - a / z)

# Substitute a = 0.5
Xz_sub = Xz.subs(a, 0.5)

# Display the formula
print(f"Z transform formula for a=0.5: {sp.simplify(Xz_sub)}")

# Plot magnitude on unit circle
theta = np.linspace(-np.pi, np.pi, 400)
z_vals = np.exp(1j * theta)
Xz_func = sp.lambdify(z, Xz_sub, 'numpy')
Xz_vals = Xz_func(z_vals)

plt.plot(theta, np.abs(Xz_vals))
plt.title('Magnitude of Z transform X(z) on unit circle for a=0.5')
plt.xlabel('Angle (radians)')
plt.ylabel('|X(z)|')
plt.grid(True)
plt.show()
Output
Z transform formula for a=0.5: 1/(1 - 0.5/z)
⚠️

Common Pitfalls

Common mistakes when working with the Z transform of exponential sequences include:

  • Forgetting the region of convergence (ROC). The formula 1 / (1 - a z^{-1}) is valid only if |z| > |a|. Outside this, the transform does not converge.
  • Ignoring the unit step u[n]. Without it, the sequence is not causal and the sum limits change.
  • Misinterpreting z^{-1} as division by z. It means 1/z, which affects the formula.

Example of wrong and right usage:

python
# Wrong: ignoring ROC
from sympy import symbols
z = symbols('z')
X_wrong = 1 / (1 - 2 / z)  # a=2
# This is invalid if |z| <= 2

# Right: specify ROC
# The Z transform converges only if |z| > 2
# So use this condition when analyzing or plotting

print("Wrong formula used without ROC consideration:", X_wrong)
Output
Wrong formula used without ROC consideration: 1/(1 - 2/z)
📊

Quick Reference

Sequence x[n]Z Transform X(z)Region of Convergence (ROC)
a^n u[n]1 / (1 - a z^{-1})|z| > |a|
-a^n u[-n-1]1 / (1 - a z^{-1})|z| < |a|
a^nDoes not convergeNo ROC (two-sided infinite)

Key Takeaways

The Z transform of x[n] = a^n u[n] is X(z) = 1 / (1 - a z^{-1}) with ROC |z| > |a|.
Always include the unit step u[n] to ensure causality and correct summation limits.
Check the region of convergence before using the Z transform formula to avoid invalid results.
The variable z is complex and z^{-1} means 1/z, which is key in the formula.
Use tools like sympy or numerical plotting to visualize and verify the Z transform.