Digital Signal Processing: A Computer-Based Approach: 3 Edition
Digital Signal Processing: A Computer-Based Approach: 3 Edition
3rd Edition
by
Sanjit K. Mitra
Errata List
Chapter 1
1. Page 4, Eq. (1.1): Replace the lower limit of the integral with .
Chapter 2
1. Page 45, line 2 below Eq. (2.9): Insert for a length-N sequence, after definition
that . Delete the L 2 norm , and replace x 2 with x 2 / N . Delete the
L 1 norm .
3 0 3 0
3} with
{0 3 0
3} , and {2 0 2 0 2 0 2 0} with
{2 0 2 0} , respectively.
12. Page 115, Problem M2.1, Parts (a) and (b): Replace Program 2_1 with Program
2_2.
Chapter 3
13. Page 161, Problem 3.6(d): Replace X a with X a j .
a
a
14. Page 162, Problem 3.16: Replace 1.. with 1. .
j e j
(1 e j ) 2
with
e j
(1 e j ) 2
k o
kn
g[n] with WN
g[n] .
N
x1[ n] = x[ n] x[ + n] WNn .
2
0,
0 n N 1,
with
13. Page 291, Problem 5.15: Replace h[ n] =
x
n
N
n 2 N 1.
[
],
0,
0 n N 1,
.
h[ n] =
x
n
N
N
[
],
n 2 N 1.
14. Page 291, Problem 5.16: Replace and H[k ] with H[ k ], and X[ k ] .
15. Page 293, Problem 5.34, Part (b): Replace X[6] with X[5] .
16. Page 293, Problem 5.35: Replace first 6 with first 7 , 15 with 2 + j , and
2 + j with 15 .
17. Page 293, Problem 5.38: Replace X [7] with X[8] .
18. Page 293, Problem 5.41: Replace X[ k 4 ] = 3.4 + j 5.9 with X[ k 4 ] = 3.4 j 5.9 .
19. Page 294, Problem 5.43: Replace 2 4 with 2, 4 .
20. Page 294, Problem 5.44: Replace , , with , and e j 2 / 3 with e j 2 n / 3 .
21. Page 294, Problem 5.49: Replace even with real and replace odd with
imaginary .
n=0
m =0
1
z
replace z M
1 z 1
z M N M z N with M z M
N M 1
n=0
(z 1 ) n with M z M
N M 1
n=0
N M (N M )
z
with M z M 1
1 z 1
N z N .
(z 1 ) n ,
and replace
1
1
and
with 5
6. Page 323, Line 6 from top: Replace 2
1
1
1 0 .2 z
1 0.2 z
10. Page 345, Problem 6.23: Replace it with the following: Determine the z transform
of each of the following left-sided sequences:
(a) x[ n] = n [ n 1], (b) y[ n] = (n + 1) n [ n 1].
3. Page 349, Problem 6.44: Replace
1 z 2
1 (1 + ) cos(c )z 1 + z 2
1 z 2
1 2 cos(c )z
2 2
+ z
with
4. Page 350, Problem 6.52: Replace it with the following: Let H ( z) be the transfer
function of a causal, stable LTI discrete-time system. Consider the transfer function
G( z ) = H ( z ) z = F (z ) . What are the conditions that need to be satisfied by the
transformation F ( z) so that remains stable?
5. Page 350, Problem 6.53: Replace it with the following: Determine the z transform
F ( z ) of the Fibonacci sequence { f [ n]} of Problem 2.70. Evaluate the inverse z
transform of F ( z ) .
H ( z ) + H ( z 1 )
6. Page 351, Problem 6.58: Replace g () =
2
T ( z ) + T ( z 1 )
g () =
2
T ( z) = z
. with
z = e j
dH ( z) / dz
. .
H (z)
Chapter 7
3. Page 369, line below Eq. (7.43): Insert and making use of the relation
(
(
H () = H ()" after (7.43).
4. Page 418, Problem 7.49: Replace it with If H ( z) is a bandpass filter with passband
edges at p1 and p2 , and stopband edges at s1 and s 2 , with s1 < p1 < p 2
< s 2 , what type of filter is H ( z) ? Determine the locations of the bandedges of
H ( z) in terms of the bandedges of H ( z).
1. Page 483, Problem 8.35: Replace realizes with is and replace transfer with
filter.
2. Page 484, Problem 8.37: Replace multipliers with delays.
3. Page 484, Problem 8.39: Replace 3H with 3B, and multipliers with delays.
4. Page 485, Problem 8.48, Part (c): Replace 0.3885 with 0.5414 , and 0.2543
with 0.0757 .
5. Page 485, Problem 8.48, Part (d): Replace 0.3646 with 0.4547 , and 0.147
with 0.2859 .
6. Page 488, Problem M8.7: Replace
G( z) =
G( z) =
with
with
.
Chapter 9
1. Page 497, Eq. (9.23): Delete T in the numerator and denominator on the right hand
side of the equation.
2. Page 498, Eqs. (9.30a): Delete T in the numerator and denominator on the right
hand side of the equation.
3. Page 498, Eq. (9.30b): Delete T on the right hand side of the equation.
4. Page 506, Eq. (9.40): Replace F 1 ( z ) with 1 / F ( z ) .
5. Page 517, Problem 9.8: Replace it with Using Eq. (9.58), develop the expression for
the causal digital transfer function G( z) obtained from the causal analog transfer
function H (s) =
A
s+
0.1944(1 + 0.9802 z 1 + z 2 )
1 0.7016 z 1 + 0.281 z 2
. .
Chapter 10
2 n
n
1. Page 533, Eq. (10.30): Replace cos
with cos .
2M + 1
M
2 n
n
2. Page 533, Eq. (10.31): Replace cos
with cos .
2M + 1
M
2n
n
3. Page 533, Eq. (10.30): Replace cos
] with cos , and replace
2M + 1
M
4n
2n
cos
with cos
.
2M + 1
M
4. Page 535, Table 10.2: Replace Barlett with Bartlett.
1 .
1 + s
8. Page 562, Example 10.22: In line 15 of the M-file minphase.m in the CD, replace h
with g.
(
(
9. Page 569, Figure 10.35: Replace H () with H IFIR () .
1. Page 833:
% Program 14_1
% Frequency Responses of Tree-Structured QMF Filters
%
clf;
% Type in prototype lowpass filter coefficients
% B1 = input ('Filter coefficients = ');
B1 = [0.002329266,-0.005182978,-0.002273145,0.01354012,-0.0006504669,
-0.02755195,0.01004621,0.05088162,-0.03464143,
-0.09987885,0.12464520,0.4686479]; % Test coefficients
B1 = [B1 fliplr(B1)];
% Generate the complementary highpass filter
L = length(B1);
for k = 1:L
B2(k) = ((-1)^k)*B1(k);
end
% Determine the coefficients of the four filters
B10 = zeros(1, 2*length(B1));
B10([1: 2: length(B10)]) = B1;
B11 = zeros(1, 2*length(B2));
B11([1: 2: length(B11)]) = B2;
C0 = conv(B1, B10);C1 = conv(B1, B11);
C2 = conv(B2, B10);C3 = conv(B2, B11);
% Determine the frequency responses
[H00z, w] = freqz(C0, 1, 256);% corrected
h00 = abs(H00z);
M00 = 20*log10(h00);
[H01z, w] = freqz(C1, 1, 256);
h01 = abs(H01z);
M01 = 20*log10(h01);
[H10z, w] = freqz(C2, 1, 256);
h10 = abs(H10z);
M10 = 20*log10(h10);
[H11z, w] = freqz(C3, 1, 256);
h11 = abs(H11z);
M11 = 20*log10(h11);
plot(w/pi, M00,'-',w/pi, M01,'--',w/pi, M10,'--',w/pi,M11,'-');%corrected
xlabel('\omega/\pi'); ylabel('Gain, dB');grid
axis([0,1,-150,10])
2. Page 846, Figure P14.2: Replace F1 (e j ) with G1 (e j ) .
3. Page 847, Problem 14.11: Insert elliptic after lowpass.
4. Page 847, Problem 14.17: Replace 3 z 2 with 4 z 2 , 2 with z 1 , 1.5 z 1
with 0.5 z 1 , and 4 z 1 with z 2 .
10
5. Page 848, Problem 14.26: Replace it with the following: The lowpass analysis filter
of a two-channel QMF bank is given by H ( z ) = a + bz 1 + cz 2 + dz 3 + ez 4 + fz 5 .
Determine the highpass analysis filter H 1 (z ) , and the two synthesis filters, G0 (z ) and
G1 (z ), so that the QMF bank is an orthogonal filter bank.
6. Page 848, Problem 14.31, Part (c): Replace Pm (z ) with Pm ( z 1 ) .
Chapter 15
x = (x)/(A);
y = zeros(1,N+1);
a = zeros(1,N+1);
e = 0;
for k = 2:N+1
a(k) = x(k-1) - e;
if a(k) >= 0,
y(k) = 1;
else
y(k) = -1;
end
e = y(k) - a(k);
end
yn = y(2:N+1);
axis([0 N -1.2 1.2]);
stem(m, yn); % Plot the quantized output
xlabel('Time'); ylabel('Amplitude');
title ('Digital output of sigma-delta quantizer');
pause
Y = fft(yn);
H = [1 1 0.5 zeros(1,N-5) 0.5 1];% Lowpass filter
YF = Y.*H; % Filtering in the DFT domain
out = ifft(YF);
plot(m,out);
xlabel('Time'); ylabel('Amplitude');
title ('Lowpass filtered analog output');
Appendix A
12