PRACTICAL MATLAB® FOR ENGINEERS PRACTICAL MATLAB

(sharon) #1

640 Practical MATLAB® Applications for Engineers


hnham = fir1(64,.4);
[h4,w4] = freqz(hnham,1,256);
magham = 20*log10(abs(h4));
plot(w4,magham)
title(‘Filter using hamming win.’)
ylabel(‘gain in db’)
subplot(3,2,5)
hntri = fir1(64,.4,triang(65));
[h5,w5] = freqz(hntri,1,256);
magtri = 20*log10(abs(h5));
plot(w5,magtri)
title(‘Filter using triang. win.’)
xlabel(‘frequency in rad.’)
ylabel(‘gain in db’)
axis([0 3 -60 10])
subplot(3,2,6)
hnbar = fir1(64,.4,bartlett(65));
[h6,w6] = freqz(hnbar,1,256);
magbar = 20*log10(abs(h6));
plot(w6,magbar)
title(‘Filter using bartlett win.’)
xlabel(‘frequency in rad.’)
ylabel(‘gain in db’)
axis([0 3 -60 10])
The script fi le fi lter_wind is executed and the results are shown in Figure 6.64.

FIGURE 6.64
Normalized LP FIR fi lters’ plots using fi r1 with the window arguments of Example 6.14.


 100

 200

100

0

0

gain in db

1 2 3 4

Filter using blackman win.

frequency in rad

gain in db
 100

 200

100

0

012 34

Filter using hamming win.

frequency in rad

Filter using bartlett win.

gain in db^40
 60

0

 20

0123

frequency in rad

gain in db

100

 100

 200
0

0

12

Filter using hanning win.

34

frequency in rad

100

 100

 200
0

0

gain in db

12

Filter using kaiser win.

34

frequency in rad

 40

 60

0

 20
gain in db

0 1 23

Filter using triang. win.

frequency in rad
Free download pdf