0% found this document useful (0 votes)
42 views8 pages

Ee-323 Diigital Signal Processing Lab Report 02: 6 Semester (Spring 2018)

This document contains a lab report on evaluating Z-transforms and pole/zero plots in MATLAB. The objectives are to understand how to perform Z-transforms in MATLAB and related commands. The lab tasks involve writing a function to calculate the Z-transform, using it to find the Z-transform of various signals, representing transfer functions in MATLAB, and plotting poles and zeros. The lab demonstrates skills in representing and analyzing discrete-time signals and systems using the Z-transform in MATLAB.

Uploaded by

Syed Afzal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views8 pages

Ee-323 Diigital Signal Processing Lab Report 02: 6 Semester (Spring 2018)

This document contains a lab report on evaluating Z-transforms and pole/zero plots in MATLAB. The objectives are to understand how to perform Z-transforms in MATLAB and related commands. The lab tasks involve writing a function to calculate the Z-transform, using it to find the Z-transform of various signals, representing transfer functions in MATLAB, and plotting poles and zeros. The lab demonstrates skills in representing and analyzing discrete-time signals and systems using the Z-transform in MATLAB.

Uploaded by

Syed Afzal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

EE-323 DIIGITAL SIGNAL PROCESSING

LAB REPORT 02
6TH SEMESTER (SPRING 2018)

Submitted to: Engr. Komal Munir

Submitted by: Syeda Ume Rubab

16-EE-03

Data presentation (0-5) Data Analysis and interpretation (0-5)

DEPARTMENT OF ELECTRICAL ENGINEERING

UNIVERSITY OF ENGINEERING AND TECHNOLOGY

TAXILA
LAB No. 02

Evaluation of Z-transform and Pole/Zero Plots

Objective:

 To understand how to perform Z-Transform in MATLAB. To understand different


MATLAB command related to the evaluation of transfer functions, poles, zeros and
their plots.

Introduction:

Theory:

NAME: SYEDA UME RUBAB Reg #:16-EE-03


NAME: SYEDA UME RUBAB Reg #:16-EE-03
Lab Tasks:

1. Write a user-defined MATLAB function to compute Z-transform through following


relation:

𝑋(𝑧) = ∑ 𝑥(𝑛)𝑧 −𝑛
𝑛=−∞

ℎ𝑒𝑟𝑒 𝑥(𝑛)𝑖𝑠 𝑑𝑖𝑠𝑐𝑟𝑒𝑡𝑒 − 𝑡𝑖𝑚𝑒 𝑖𝑛𝑝𝑢𝑡 𝑎𝑛𝑑 𝑧 𝑖𝑠 𝑠𝑦𝑚𝑏𝑜𝑙𝑖𝑐 𝑣𝑎𝑟𝑖𝑏𝑙𝑒

Code:
function X=z_transform(x)
syms z;
sum=0;
n=length(x)-1;
for i=0:1:n;
X=x(i+1)*z^(-1*i);
sum=sum+X;
end
X=sum
end

2. Use the function defined in Task 1 to compute Z-transform of the following signals
i. x(n) = cos(2πFn) here F = 10Hz

Code:
F=10;
x=cos(2*pi*F*n);
z_transform(x)

Output:
X =1/z + 1/z^2 + 1/z^3 + 1/z^4 + 1

ii. x(n) = [2,4,5,7,1]

Code:
x=[2 4 5 7 1];
z_transform(x)

Output:
X = 4/z + 5/z^2 + 7/z^3 + 1/z^4 + 2

NAME: SYEDA UME RUBAB Reg #:16-EE-03


iii. x(n) = [0,0,1,2,5,7,0,1]

Code:
x=[0 0 1 2 5 7 0 1];
z_transform(x)

Output:
X = 1/z^2 + 2/z^3 + 5/z^4 + 7/z^5 + 1/z^7

3. Use MATLAB command ‘ztrans’ to compute Z-transform of following (use ‘syms’


command to define inputs).
𝒌𝑻 𝒇𝒐𝒓 𝒌 ≥ 𝟎
i. 𝒂𝒌 = { 𝒔
𝟎 𝒐𝒕𝒉𝒆𝒓𝒘𝒊𝒔𝒆

Code:
syms a k T;
a=k*T;
X=ztrans(a)

Output:
X= (T*z)/(z - 1)^2
ii. x[n]= an

Code:
syms a n;
x=a^n;
X=ztrans(x)

Output:
X = -z/(a - z)
4. We know that a transfer function is a ratio of polynomials with ascending power of 𝑧-1.
Transfer functions are specified by their numerator and denominator polynomials. In
MATLAB, NUM and DEN are row vectors listing the numerator and denominator
coefficients in descending order of z by default. For example, the polynomial 𝑧2 + 2𝑧 +
10 is specified as [1 2 10]. For discrete-time transfer functions, it is highly
recommended to make the length of the numerator and denominator equal to ensure
correct results. Define vectors in MATLAB to express following transfer function with
numerator and denominator polynomials.
4 − 5𝑧 −1
𝐻(𝑧) =
8 + 3𝑧 −1 + 𝑧 −2

NAME: SYEDA UME RUBAB Reg #:16-EE-03


Use ‘tf” command to generate transfer function from NUM and DEN vectors like
tf(NUM,DEN,1). Use ‘roots’ command to compute roots of NUM and DEN
polynomials. Show the pole/zero plot of H(z) using ‘zplane’ command.
Code:
num=[4 -5 0]
den=[8 3 1]
z=tf(num,den,1)
x=roots(num)
y=roots(den)
zplane(x,y)

Output:
z=
4 z^2 - 5 z
---------------
8 z^2 + 3 z + 1

Sample time: 1 seconds


Discrete-time transfer function.
x=
0
1.2500
y=
-0.1875 + 0.2997i
-0.1875 - 0.2997i

NAME: SYEDA UME RUBAB Reg #:16-EE-03


5. Consider the following transfer function:
4𝑧 −1 (1 − 0.5𝑧 −1 )(1 − 2𝑧 −1 )
𝐻(𝑧) =
(1 + 0.3𝑧 −1 )(1 − 0.4𝑧 −1 )(1 + 0.6𝑧 −1 )
Represent this transfer function in vector and object form and then computer zeros,
poles and gain using ‘tf2zp’ command and plot them using ‘pzmap’ command.
Code:
a=conv([0 4],[1 -0.5]);
num=conv([a],[1 -2])
b=conv([1 0.3],[1 -0.4]);
den=conv([b],[1 0.6])
H=tf(num,den,1)
[z,p,k]=tf2zp(num,den)
pzmap(H)

Output:
num = 0 4 -10 4
den = 1.0000 0.5000 -0.1800 -0.0720
H = 4 z^2 - 10 z + 4
------------------------------
z^3 + 0.5 z^2 - 0.18 z - 0.072
z = 2.0000
0.5000
p = 0.4000
-0.6000
-0.3000
k=4

NAME: SYEDA UME RUBAB Reg #:16-EE-03


After Lab Questions:

1. What are the differences between MATLAB commands ‘zplane’ and pzmap?

2. How complex variable ‘z’ is related to complex variable ‘s’? Give expression.

3. Give two practical applications of Z-Transform.

4. How the values of real part (σ) of ‘s’ be translated into stability conditions in z-domain?

Discussion/ Conclusion:

NAME: SYEDA UME RUBAB Reg #:16-EE-03

You might also like