Problems 569
(a) Find a matrix equation that would allow us to find the coefficients ofB(z)andA(z).
(b) Leth[n]=0.5n(u[n]−u[n−101])be the sequence we wish to obtain a rational approximation and
letB(z)=b 0 whileA(z)=a 0 +a 1 z−^1. Find the equations to solve for the coefficients{b 0 ,a 0 ,a 1 }.
9.22. Prony’s rational approximation—MATLAB
The Pade approximants provide an exact matching of ́ M+N− 1 values ofh[n]whereMandNare,
respectively, the orders of the numerator and the denominator of the rational approximation. But there is
no method for choosing the numerator and the denominator orders,MandN. Also, there is no guarantee
on how well the rest of the signal is matched. Prony’s rational approximation considers how well the rest
of the signal is approximated when finding the approximation. Leth[n]=0.9nu[n]be the exact impulse
response for which we wish to find a rational approximation. Take the first 100 values of this signal as the
impulse response.^1
(a) Assume the order of the numerator and the denominator are equal, M=N= 1. Use the
MATLAB functionpronyto obtain the rational approximation, and then usefilterto verify that the
impulse response of the rational approximation is close to the given 100 values. Plot the error between
h[n]and the impulse response of the rational approximation for the first 200 samples.
(b) Plot the poles and the zeros of the rational approximation and compare them to the poles and the
zeros ofH(z)=Z(h[n].
(c) Suppose thath[n]=(h 1 ∗h 2 )[n]—that is, the convolution ofh 1 [n]=0.9nu[n]andh 2 [n]=0.8nu[n].
Use againpronyto find the rational approximation when the first 100 values ofh[n]are available. Use
convfrom MATLAB to computeh[n]. Compare the impulse response of the rational approximation to
h[n]. Plot the poles and the zeros ofH(z)=Z(h[n])and of the rational approximation.
(d) Consider theh[n]given above, and perform the Prony approximation using ordersM=N= 3. Explain
your results. Plot the poles and the zeros.
9.23. MATLAB partial fraction expansion
Consider the partial fraction expansion that MATLAB uses.
(a) Find the inverse Z-transform ofa/( 1 −az−^1 )^2.
(b) Suppose that the partial fraction expansion given by MATLAB is
X(z)=
− 1
1 −0.5z−^1
+
1
( 1 −0.5z−^1 )^2
Determine the inversex[n].
9.24. MATLAB partial fraction expansion
Consider finding the inverse Z-transform of
X(z)=
2 z−^1
( 1 −z−^1 )( 1 − 2 z−^1 )^2
|z|> 2
MATLAB does the partial fraction expansion as
X(z)=
A
1 −z−^1
+
B
1 − 2 z−^1
+
C
( 1 − 2 z−^1 )^2
while we do it in the following form:
X(z)=
D
1 −z−^1
+
E
1 − 2 z−^1
+
Fz−^1
( 1 − 2 z−^1 )^2
Show that the two partial fraction expansions give the same result.
(^1) Gaspar de Prony (1765–1839) was a French mathematician and engineer, while Henri Pad ́e (1863–1953) was a French mathemati-
cian interested in rational approximations.