You are on page 1of 3

EE-402 Zzzzzz …

EE402 Digital Signal Processing


The z-Domain ...Lab 7
We have been doing some mathematical stuff in the class, to evaluate z-transform and
the inverse z-transform. Let’s use MATLAB to ease out our life!

In this lab… a few exercises of computing z-transform and its


inverse will be performed.

Z-Transformation
Using z-transform properties and z-transform tables provided, determine the z-transform X(z) of
⎛ ⎡π ⎤⎞
x[n] = (n − 2)(0.5) ( n −2 ) cos⎜⎜ ⎢ (n − 2)⎥ ⎟⎟u (n − 2)
⎝⎣ 3 ⎦⎠

matlab verification…
To check your Z-transform, compute the sequence x[n] corresponding to X(z)… Use the filter command.

Z-Transform Inversion
When X(z) is a rational function of z-1, it can be expressed as a sum of simple (first-order) factors using the
partial fraction expansion… The individual sequences corresponding to these factors can be written down
using the z-transform table.
The inverse Z-transform procedure can be summarized as follows:

Given

b0 + b1 z−1 + L + bM z− M
X ( z) = , Rx− < z < Rx+
1 + a1 z −1 + L + a N z − N

• Express it in terms of a proper rational part and, if M≥N, a polynomial part as well… This is obtained by
performing polynomial division if M≥N using the deconv function…
~ ~ ~
b 0 + b1 z −1 + L + b N −1 z −( N −1) M − N
X ( z) = −1 −N
+ ∑ C k z −k
1 + a1 z + L + a N z k =0

• Perform a partial fraction expansion on the proper rational part of X(z) to obtain

N M −N
Rk
X ( z) = ∑ −1
+ ∑ Ck z − k
k =1 1 − pk z k =0
Where pk is the kth pole of X(z) and Rk is the residue at pk… For repeated poles the above expansion has a
more general form…

December 2007 1
EE-402 Zzzzzz …
− ( l −1) −1 − ( r −1)
r R,z Rk ,1 Rk , 2 z R z

l=1
kl

(1 − pk z )l −1
=
1 − pk z −1
+
(1 − pk z−1 )2
+ L + k ,r
(1 − pk z−1 )r
The Residues, Rk,l, are computed and the inverse Z-transform evaluated using the tables provided… Just take
care about the ROC…

matlab implementation…
A MATLAB function residuez is available to compute the residue part and the direct (or polynomial) terms of a
rational function in z-1… The command [R,p,C]=residuez(b,a) finds the residues, poles, and direct terms of
X(z) in which two polynomials B(z) and A(z) are given in two vectors b and a, respectively… The returned
column vector R contains the residues, column vector p contains the pole locations, and row vector C
contains the direct terms. If p(k)=…=p(k+r-1) is a pole of multiplicity r, then the expansion includes the term
of the form

Rk Rk +1 z −1 Rk + r −1 z − ( r −1)
+ + L +
1 − p k z −1 (1 − p k z −1 )2 (1 − pk z −1 )r

Similarly, [b,a]=residuez(R,p,C), with three input arguments and two output arguments, converts the
partial fraction expansion expansion back to polynomials with coefficients in row vector b and a.

• • • matlab problem

z −1
X ( z) =
3 − 4 z −1 + z − 2
Using MATLAB, evaluate R, p, C of X(z)=B(z)/A(z) where
And then re-evaluate X(z)=B(z)/A(z) for verification.

• • • matlab problem

1
X ( z) = , z > 0.9
(1 − 0.9 z ) (1 + 0.9 z )
−1 2 −1

Using MATLAB compute the inverse Z-transform of


Using MATLAB, verify if you have reached the right expression for x[n].

• • • matlab problem
Determine and verify the inverse z-transform of
1 + 0.4 2 z −1
X ( z) =
1 − 0.8 2 z −1 + 0.64 z − 2
so that the resulting sequence is causal and contains no complex numbers.

December 2007 2
EE-402 Zzzzzz …

System Representation in the Z-domain


The function zplane(b,a) plots poles and zeros of X(z) defined by b and a.
The function [H,w]=freqz(b,a,N) returns the N-point frequency vector w, and the N-point complex frequency
response vector H of the system, defined by b and a.

• • • matlab problem
Given the causal system

y[n]=0.9y[n-1]+x[n]

(a) Find H(z) and sketch its pole-zero plot.


(b) Plot |H(ejw)| and ∠ H(ejw).
(c) Determine the impulse response h[n].

Take MATLAB Help on the following useful functions as well,


zpk, tf, filt , ss, ltiprops

December 2007 3

You might also like