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 20010000gain in db1 2 3 4Filter using blackman win.frequency in radgain in db
100 2001000012 34Filter using hamming win.frequency in radFilter using bartlett win.gain in db^40
600 200123frequency in radgain in db100 100 200
0012Filter using hanning win.34frequency in rad100 100 200
00gain in db12Filter using kaiser win.34frequency in rad 40 600 20
gain in db0 1 23Filter using triang. win.frequency in rad