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:
ais the base of the exponentialzis a complex variableu[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 byz. It means1/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^n | Does not converge | No 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.