PRACTICAL MATLAB® FOR ENGINEERS PRACTICAL MATLAB

(sharon) #1

DTFT, DFT, ZT, and FFT 551


Example 5.16

Create the script fi le pole_zeroes that returns the rational transfer function H(z), the
numerator and denominator coeffi cients of H(z), and the fi rst 11 coeffi cients of their sys-
tem impulse response h(n) given the following system’s zeros, poles, and gain.

z 1 = 0.21 p 1 = −0.45
z 2 = 3.14 p 2 = 0.67
z 3 = −0.3 + j5 p 3 = 0.81 + j0.72
z 4 = −0.3 − j5 p 4 = 0.81 − j0.72
k = 2.3 p 5 = −0.33

MATLAB Solution
% Script file: pole _ zeroes
z1 = 0.21 ; p1 =-0.45;
z2 = 3.14 ; p2 = 0.67;
z3 =-0.3 + 5j; p3 = 0.81+0.72j;
z4 = -0.3-5j; p4 = 0.81-0.72j;
k =2.3; p5 = 0.33;
zr = [z1 z2 z3 z4];
pl = [p1 p2 p3 p4 p5];
z = zr’; p=pl’;
[num,den] = zp2tf(z,p,k);
n =0:10;
disp (‘*************************************************’)
disp (‘**************** R E S U L T S ****************’)
disp (‘*************************************************’)
tf(num,den,1)
disp(‘********************’)
disp (‘Coefficients of the numerator polynomial of H(z)’); disp(num’);
disp(‘********************’)
disp (‘Coefficients of the denominator polynomial of H(z)’);
disp(den’);L=11; [y,t] = impz(num,den,L);
disp(‘********************’)
disp (‘The first 11 coefficients of the impulse response h(n) are:’);
disp(‘********************’)
disp(‘ coef. num. h(n)’)
disp(‘********************’)
[n’ y]
disp (‘*************************************************’)
The script fi le pole_zeroes is executed, and the results are as follows:
>> pole _ zeroes
*********************************************************
****************R E S U L T S **************************
*********************************************************
Transfer function:
2.3 z^4 - 6.325 z^3 + 54.6 z^2 - 192.4 z + 38.05
-------------------------------------------------------------
z^5 - 2.17 z^4 + 1.837 z^3 - 0.1757 z^2 - 0.43 z + 0.1169
Sampling time: 1
***************************
Coefficients of the numerator polynomial of H(z)
Free download pdf