You are on page 1of 3

Filtering Using Hamming and Blackman Window

Program:

clear all;
wc = 0.5 *pi;
N=25;
b=fir1(N,wc/pi,hamming(N+1));
w=0:.01:pi;
h=freqz(b,1,w);
plot(w/pi, abs(h));
hold on
b=fir1(N,wc/pi,blackman(N+1));
w=0:.01:pi;
h=freqz(b,1,w);
plot(w/pi,abs(h),'-');
ylabel('Magnitude');
xlabel('Normalised Frequency');
hold off

Plot:

1.4

1.2

0.8
Magnitude

0.6

0.4

0.2

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Normalised Frequency
Filtering Using Hamming and Redan Window

Program:

clear all;
wc=.5*pi;
N=25;
alpha=(N-1)/2;
eps=0.001;
n=0:1:N-1;
hd=sin(wc*(n-alpha + eps))/(pi *(n-alpha + eps));
wr = boxcar(N);
hn = hd*wr;
w=0:0.01:pi;
h=freqz(hn,1,w);
plot(w/pi,abs(h));
hold on
wh=hamming(N);
hn=hd*wh;
w=0:0.01:pi;
h=freqz(hn,1,w);
plot(w/pi,abs(h),'-'); grid;
ylabel('Magnitude'); xlabel('Normalised Frequency');
hold off

Plot

0.08

0.07

0.06

0.05
Magnitude

0.04

0.03

0.02

0.01

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Normalised Frequency
Filter Using Kaiser Window For various values Of β

Program

clear all;
wc=0.5*pi;
N=25;
b=fir1(N,wc/pi,kaiser(N+1,0.5));
w=0:0.01:pi;
h=freqz(b,1,w);
plot(w/pi, 20*log10(abs(h)));
hold on
b=fir1(N,wc/pi,kaiser(N+1,3.5));
w=0:0.01:pi;
h=freqz(b,1,w);
plot(w/pi,20*log10(abs(h)),'-');
hold on
b=fir1(N,wc/pi,kaiser(N+1,8.5));
w=0:0.01:pi;
h=freqz(b,1,w);
plot(w/pi,20*log10(abs(h))); grid;
ylabel('Magnitude'); xlabel('Normalised Frequency');
hold off

Plot

20

­20

­40
Magnitude

­60

­80

­100

­120

­140
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Normalised Frequency

You might also like