Matlab Programs & Output
Matlab Programs & Output
0.5
0
-20 -15 -10 -5 0 5 10 15 20
n
UNIT STEP FUNCTION
1
amplitude
0.5
0
-20 -15 -10 -5 0 5 10 15 20
n
anu(n) for (a=0.9)
1
amplitude
0.5
0
-20 -15 -10 -5 0 5 10 15 20
n
6
x 10 MAGNITUDE RESPONSE
4
amplitude
0
-5 -4 -3 -2 -1 0 1 2 3 4 5
n
PHASE RESPONSE
5
phase
-5
-5 -4 -3 -2 -1 0 1 2 3 4 5
n
TRIGNOMETRIC FUNCTION
5
amplitude
-5
0 1 2 3 4 5 6 7 8 9 10
n
SYMMETRICAL SQUARE WAVE
1
amplitude
0.5
0
0 5 10 15 20 25
n
RAMP FUNCTION
5
amplitude
0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
n
SYMMETRICAL TRIANGULAR WAVE
1
amplitude
0.5
0
0 1 2 3 4 5 6 7 8 9
n
SINC FUNCTION
1
amplitude
0.5
-0.5
-4 -3 -2 -1 0 1 2 3 4
n
RANDOM SIGNAL
2
1
amplitude
-1
-2
0 10 20 30 40 50 60 70 80 90 100
n
GAUSSIAN RANDOM SIGNAL
4
2
amplitude
-2
-4
0 10 20 30 40 50 60 70 80 90 100
n
%SUPERPOSITION:
n=-10:10;
y1=[zeros(1,12),ones(1,1),zeros(1,8)];
y2=[zeros(1,5),ones(1,1),zeros(1,15)];
y=y1+y2;
figure(1);
subplot(2,1,1);
stem(n,y);
xlabel('n');
ylabel('amplitude');
title('super position');
%TIME SHIFTING:
n=-10:10;
y1=zeros(1,17);
y2=ones(1,1);
y3=zeros(1,3);
y=[y1 y2 y3];
subplot(2,1,2);
stem(n,y);
xlabel('n');
ylabel('amplitude');
title('time shifting');
%GENERATION OF 4*x(n-4)-2*x(n+3):
clear;
clc;
x=[1 3 5 7 2 4 6 8 1 2 3 4 ];
n=-20:20;
yt1=zeros(1,24);
x=x;
yt2=zeros(1,5);
y1=[yt1 x yt2];
y1=4*y1;
figure(2);
subplot(3,1,1);
stem(n,y1);
xlabel('n');
ylabel('amplitude');
title('4*x(n-4)');
n=-20:20;
yt3=zeros(1,17);
x=x;
yt4=zeros(1,12);
y2=[yt3 x yt4];
y2=2*y2;
subplot(3,1,2);
stem(n,y2);
xlabel('n');
ylabel('amplitude');
title('2*x(n+3');
y3=y1-y2;
subplot(3,1,3);
stem(n,y3);
xlabel('n');ylabel('amplitude');title('GENERATION OF 4*x(n-4)-2*x(n+3)');
superposition
amplitude 1
0.5
0
-10 -8 -6 -4 -2 0 2 4 6 8 10
n
time shifting
1
amplitude
0.5
0
-10 -8 -6 -4 -2 0 2 4 6 8 10
n
4*x(n-4)
40
amplitude
20
0
-20 -15 -10 -5 0 5 10 15 20
n
2*x(n+3
20
amplitude
10
0
-20 -15 -10 -5 0 5 10 15 20
n
GENERATION OF 4*x(n-4)-2*x(n+3)
50
amplitude
-50
-20 -15 -10 -5 0 5 10 15 20
n
Basic operations on Elementary Discrete Time sequence using MATLAB
%GENERATION OF x(n)=u(n)-u(n-2):
n=-10:10;
x=[zeros(1,10),ones(1,11)]-[zeros(1,12),ones(1,9)];
figure(1);
subplot(2,1,1);
stem(n,x);
xlabel('n');
ylabel('x(n)');
title('x(n)=u(n)-u(n-2)');
%GENERATION OF -u(n+3)+2u(n+1)-2u(n-1)+u(n-3):
n=-5:5;
figure(2);
a=[zeros(1,2),ones(1,9)];
b=[zeros(1,4),ones(1,7)];
c=[zeros(1,6),ones(1,5)];
d=[zeros(1,8),ones(1,3)];
e=-a;
f=2*b;
g=-2*c;
h=d;
subplot(2,2,1);
stem(n,e);
title('-u(n+3)');
xlabel('n');
ylabel('amplitude');
subplot(2,2,2);
stem(n,f);
title('+2u(n+1)');
xlabel('n');
ylabel('amplitude');
subplot(2,2,3);
stem(n,g);
title('2u(n-1)');
xlabel('n');
ylabel('amplitude');
subplot(2,2,4);
stem(n,h);
title('u(n-3)');
xlabel('n');
ylabel('amplitude');
figure(3);
subplot(2,1,1);
x=e+f+g+h;
stem(n,x);
title('x(n)=-u(n+3)+2u(n+1)-2u(n-1)+u(n-3)');
xlabel('n');ylabel('amplitude');
%RAISED COSINE SIGNAL:
t=-0.05:0.001:0.05;
x=cos(pi*0.1*t*2);
subplot(2,1,2);
plot(t,x);
title('raised cosine signal');
xlabel('n');
ylabel('x(n)');
%GENERATION OF UNIT EVEN AND ODD STEP SIGNAL:
n=-30:30;
x=[zeros(1,30),ones(1,31)]-[zeros(1,50),ones(1,11)];
y=fliplr(x);
xe=0.5*(x+y);
xo=0.5*(x-y);
figure(4);
subplot(2,1,1);
stem(n,xe);
title('even component');
xlabel('n');
ylabel('Xe(n)');
subplot(2,1,2);
stem(n,xo);
title('odd component');
xlabel('n');
ylabel('Xo(n)');
x(n)=u(n)-u(n-2)
1
0.5
x(n)
0
-10 -8 -6 -4 -2 0 2 4 6 8 10
n
-u(n+3) +2u(n+1)
0 2
1.5
amplitude
amplitude
-0.5 1
0.5
-1 0
-5 0 5 -5 0 5
n n
2u(n-1) u(n-3)
0 1
-0.5
amplitude
amplitude
-1 0.5
-1.5
-2 0
-5 0 5 -5 0 5
n n
x(n)=-u(n+3)+2u(n+1)-2u(n-1)+u(n-3)
1
0.5
amplitude
-0.5
-1
-5 -4 -3 -2 -1 0 1 2 3 4 5
n
raised cosine signal
1
0.9998
x(n)
0.9996
0.9994
-0.05 -0.04 -0.03 -0.02 -0.01 0 0.01 0.02 0.03 0.04 0.05
n
even component
1
Xe(n)
0.5
0
-30 -20 -10 0 10 20 30
n
odd component
0.5
Xo(n)
-0.5
-30 -20 -10 0 10 20 30
n
Computing Correlation of given Discrete Time Sequence using MATLAB
%CROSS CORRELATION:
clc;
clear all;
x1=[1 2 3 4];
x2=[4 3 2 1];
y=xcorr(x1,x2);
figure(1);
subplot(3,1,1);
i=0:1:3;
stem(i,x1);
title('x1(n)');
ylabel('amplitude');
xlabel('n');
subplot(3,1,2);
stem(i,x2);
title('x2(n)');
ylabel('amplitude');
xlabel('n');
subplot(3,1,3);
i=-3:1:3;
stem(i,y);
ylabel('amplitude');
xlabel('n');
title('cross correlation');
disp('the resultant signal is');
disp(y);
%AUTO CORRELATION FUNCTION:
x=[1 2 3 4 ];
y=xcorr(x,x);
figure(2);
subplot(2,1,1);
i=0:1:3;
stem(i,x);
ylabel('amplitude');
xlabel('n');
title('x');
subplot(2,1,2);
i=-3:1:3;
stem(i,y);
ylabel('amplitude');
xlabel('n');
title('auto correlation');
disp('the resultant signal is');
disp(y);
x1(n)
4
amplitude
0
0 0.5 1 1.5 2 2.5 3
n
x2(n)
4
amplitude
0
0 0.5 1 1.5 2 2.5 3
n
cross correlation
40
amplitude
20
0
-3 -2 -1 0 1 2 3
n
x
4
3
amplitude
0
0 0.5 1 1.5 2 2.5 3
n
auto correlation
30
20
amplitude
10
0
-3 -2 -1 0 1 2 3
n
0.5
Imaginary Part
-0.5
-1
-3 -2 -1 0 1 2 3
Real Part
Impulse Response:
1
0.5
h(n)
0
0 5 10 15 20 25 30 35 40 45 50
n
Impulse Response:
1
0.5
h(n)
-0.5
0 5 10 15 20 25 30 35 40 45 50
n
Step Response:
1
y(n)
0.5
0
0 5 10 15 20 25 30 35 40 45 50
n
Plotting Magnitude and Phase response of Discrete Time system using MATLAB
1.5
0.5
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
normalised frequency
phase resoonse of first order system h(n)=0.5nu(n)
1
phase in radians
0.5
-0.5
-1
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
normalised frequency
LINEAR & CIRCULAR CONVOLUTION USING MATLAB
%Linear Convolution:
x=[1 2 3 4 5 6];
h=[1 2 3 4 5 6];
y=conv(x,h);
subplot(2,1,1);
stem(y);
title('y(n)=x(n)*h(n)');
xlabel('n')
ylabel('y(n)');
n=-5:15;
x=[zeros(1,7),ones(1,14)]-[zeros(1,12),ones(1,9)];
h=[zeros(1,5),ones(1,16)]-[zeros(1,15),ones(1,6)];
y=conv(x,h);
subplot(2,1,2);
stem(y);
title('y(n)=x(n)*h(n)');
xlabel('n');
ylabel('y(n)');
n=-5:15;
figure;
a=[zeros(1,3),ones(1,18)]-[zeros(1,17),ones(1,4)];
x=2*a;
b=[zeros(1,7),ones(1,14)]-[zeros(1,18),ones(1,3)];
h=(0.9.^n).*b;
y=conv(x,h);
subplot(2,1,1);
stem(y);
title('y(n)=x(n)*h(n)');
xlabel('n');
ylabel('y(n)');
x1=[3 1 6];
x2=[2 3 4 5];
y=conv(x1,x2);
subplot(2,1,2);
stem(y);
title('y(n)=x(n)*h(n)');
xlabel('n');
ylabel('y(n)');
y(n)=x(n)*h(n)
80
60
40
y(n)
20
0
1 2 3 4 5 6 7 8 9 10 11
n
y(n)=x(n)*h(n)
6
4
y(n)
0
0 5 10 15 20 25 30 35 40 45
n
y(n)=x(n)*h(n)
15
10
y(n)
0
0 5 10 15 20 25 30 35 40 45
n
y(n)=x(n)*h(n)
40
30
y(n)
20
10
0
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6
n
CIRCULAR CONVOLUTION
clc;
clear all;
x=input('enter first sequence');
h=input('enter second sequence');
n1=length(x);
n2=length(h);
n3=max(n1,n2);
if n1>n2
h=[h,zeros(1,n1-n2)]
else
x=[x,zeros(1,n2-n1)]
n1=n2;
end;
for i=1:n3;
y(i)=0;
for n=1:n3;
k=i-n+1;
if k<=0
k=k+n3
end;
y(i)=y(i)+[x(n)*h(k)]
end;
figure(1);
subplot(3,1,1);
i=0:1:3;
stem(i,x);
xlabel('n');
ylabel('amplitude');
subplot(3,1,2);
stem(i,h);
xlabel('n');
ylabel('amplitude');
subplot(3,1,3);
xlabel('n');
ylabel('amplitude');
stem(y);
xlabel('n');
ylabel('amplitude');
title('circular convnolution');
disp('conv sequence');
end;
%enter first sequence [2 4 6 8]
%enter second sequence [1 3 5 7]
10
amplitude
0
0 0.5 1 1.5 2 2.5 3
n
10
amplitude
0
0 0.5 1 1.5 2 2.5 3
n
circular convnolution
100
amplitude
50
0
1 1.5 2 2.5 3 3.5 4
n
%CIRCULAR CONVOLUTION USING DFT:
clc;
clear all;
x1=input('enter first sequence');
x2=input('enter second sequence');
n1=length(x1);
n2=length(x2);
if n1>n2
x2=[x2,zeros(1,n1-n2)];
else
x1=[x1,zeros(1,n1-n2)];
n1=n2
end;
x=fft(x1,n1);
h=fft(x2,n2);
y=(x.*h);
y1=ifft(y);
figure(2);
subplot(3,1,1);
i=0:1:3;
stem(i,x1);
xlabel('n');
ylabel('amplitude');
title('x(n)');
subplot(3,1,2);
stem(i,x2);
xlabel('n');
ylabel('amplitude');
title('h(n)');
subplot(3,1,3);
stem(i,y1);
xlabel('n');
ylabel('amplitude');
title('circular convolution using DFT');
disp(y1);
0
0 0.5 1 1.5 2 2.5 3
n
h(n)
10
amplitude
0
0 0.5 1 1.5 2 2.5 3
n
circular convolution using DFT
100
amplitude
50
0
0 0.5 1 1.5 2 2.5 3
n
Iir analog and digital filters using matlab
%BUTTERWORTH LPF:
clc;
clear all;
close all;
format long;
rp=input('Enter the pass band ripple');
rs=input('Enter the stop band ripple');
wp=input('Enter the pass band frequency');
ws=input('Enter the stop band frequency');
fs=input('Enter the sampling frequency');
w1=2*wp/fs;
w2=2*ws/fs;
[n,wn]=buttord(w1,w2,rp,rs,'s');
disp(n);
disp(wn);
[b,a]=butter(n,wn,'low','s');
w=0:.01:pi;
[h,om]=freqs(b,a,w);
m=20*log10(abs(h));
an=angle(h);
subplot(2,1,1);
plot(om/pi,m);grid on;
ylabel('Gain in db');
xlabel('Normalised Frequency');
title('Frequency Response Of Butterworth Lowpass Filter');
subplot(2,1,2);
plot(om/pi,an);grid on;
ylabel('Phase In Radians');
xlabel('Normalised Frequency');
%Enter the pass band ripple 0.15
%Enter the stop band ripple 30
%Enter the pass band frequency 1500
%Enter the stop band frequency 3000
%Enter the sampling frequency 7000
FREQUENCY RESPONSE OF BUTTERWORTH LOWPASS FILTER
50
0
gain in db
-50
-100
-150
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
normalised frequency
2
Phase in radians
-2
-4
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
normalised frequency
%BUTTERWORTH HIGH PASS FILTER:
clc;
clear all;
close all;
rp=input('Enter the passband ripple');
rs=input('Enter the stopband ripple');
wp=input('Enter the passband frequency');
ws=input('Enter the stopband frequency');
fs=input('Enter the sampling frequency');
w1=2*wp/fs;
w2=2*ws/fs;
[n,wn]=buttord(w1,w2,rp,rs,'s');
disp(n);
disp(wn);
[b,a]=butter(n,wn,'high','s');
w=0:0.01:pi;
[h,om]=freqs(b,a,w);
m=20*log10(abs(h));
an=angle(h);
subplot(2,1,1);
plot(om/pi,m);grid on;
title('Frequency Response Of Butterworth High Pass Filter');
ylabel('Gain in db');
xlabel('Normalised Frequency');
subplot(2,1,2);
plot(om/pi,an);grid on;
ylabel('Phase in Radians');
xlabel(' Normalised Frequency');
%Enter the pass band ripple 0.15
%Enter the stop band ripple 30
%Enter the pass band frequency 1500
%Enter the stop band frequency 3000
%Enter the sampling frequency 7000
frequency response of butterworth high pass filter
0
-100
Gain in db
-200
-300
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Normalised Frequency
2
Phase in Radians
-2
-4
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Normalised Frequency
%BUTTER WORTH FILTER
clear all;
rp=0.5;rs=50;wp=1200;ws=2400;fs=10000;
w1=2*wp/fs;
w2=2*ws/fs;
[n,wn]=buttord(w1,w2,rp,rs);
disp(n);
disp(wn);
[z,p,k]=butter(n,wn,'high');
[b,a]=butter(n,wn,'high');
figure(1);
subplot(3,1,1);
zplane(z,p);
grid on;
w=0:0.01:pi;
[h,om]=freqz(b,a,w);
m=20*log10(abs(h));
an=angle(h);
title('Frequency response of Butterworth high pass filter');
subplot(3,1,2);
plot(om/pi,m);
xlabel('normalised frequency');
ylabel('gain in dB');
grid on;
subplot(3,1,3);
plot(om/pi,an);
xlabel('normalised frequency');
ylabel('angle in radians');
grid on;
%CHEBYSHEV TYPE I FILTER:
rp=3;rs=40;wp=1200;ws=2400;fs=8000;
w1=2*wp/fs;
w2=2*ws/fs;
[n,wn]=cheb1ord(w1,w2,rp,rs);
disp(n);
disp(wn);
[z,p,k]=cheby1(n,rp,wn,'high');
[b,a]=cheby1(n,rp,wn,'high');
figure(2);
subplot(3,1,1);
zplane(z,p);
grid on;
w=0:0.01:pi;
[h,om]=freqz(b,a,w);
m=20*log10(abs(h));
an=angle(h);
title('Frequency Response of Chebyshew Type-I Filter');
subplot(3,1,2);
plot(om/pi,m);
xlabel('normalised frequency');
ylabel('gain in dB');
grid on;
subplot(3,1,3);
plot(om/pi,an);
xlabel('normalised frequency ');
ylabel('angle in radians');
grid on;
%CHEBYSHEV TYPE II FILTER:
rp=3;rs=40;wp=1200;ws=2400;fs=8000;
w1=2*wp/fs;
w2=2*ws/fs;
[n,wn]=cheb2ord(w1,w2,rp,rs);
disp(n);
disp(wn);
[z,p,k]=cheby2(n,rs,wn,'high');
[b,a]=cheby2(n,rs,wn,'high');
figure(3);
subplot(3,1,1);
zplane(z,p);
grid on;
w=0:0.01:pi;
[h,om]=freqz(b,a,w);
m=20*log10(abs(h)/pi);
an=angle(h);
title('Frequency Response of Chebyshev Type=II Filter');
subplot(3,1,2);
plot(om/pi,m);
xlabel('normalised frequency');
ylabel('gain in dB');
grid on;
subplot(3,1,3);
plot(om/pi,an);
xlabel('normalised frequency');
ylabel('angle in radians');
grid on;
%ELLIPTIC FILTER:
rp=3;rs=50;wp=1500;ws=2400;fs=8000;
w1=2*wp/fs;
w2=2*ws/fs;
[n,wn]=ellipord(w1,w2,rp,rs);
disp(n);
disp(wn);
[z,p,k]=ellip(n,rp,rs,wn,'high');
[b,a]=ellip(n,rp,rs,wn,'high');
figure(4);
subplot(3,1,1);
zplane(z,p);
grid on;
w=0:0.10:pi;
[h,om]=freqz(b,a,w);
m=20*log10(abs(h));
an=angle(h);
title('Frequency Response of Elliptic Filter');
subplot(3,1,2);
plot(om/pi,m);
xlabel('normalised frequency');
ylabel('gain in dB');
grid on;
subplot(3,1,3);
plot(om/pi,an);
xlabel('normalised frequency');
ylabel('angle in radians');
grid on;
Frequency response of Butterworth high pass filter
Imaginary Part
1
8
0
-1
-5 0 5
Real Part
500
gain in dB
-500
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
normalised frequency
angle in radians
-5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
normalised frequency
Frequency Response of Chebyshew Type-I Filter
Imaginary Part
1
4
0
-1
-5 0 5
Real Part
0
gain in dB
-200
-400
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
normalised frequency
angle in radians
-5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
normalised frequency
Frequency Response of Chebyshev Type=II Filter
1
Imaginary Part
-1
-6 -4 -2 0 2 4 6
Real Part
0
gain in dB
-100
-200
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
normalised frequency
5
angle in radians
-5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
normalised frequency
Frequency Response of Elliptic Filter
Imaginary Part
-1
-6 -4 -2 0 2 4 6
Real Part
0
gain in dB
-50
-100
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
normalised frequency
5
angle in radians
-5
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
normalised frequency
DESIGN OF FIR FILTERS (LPF AND HPF) USING WINDOWING
TECHINIQUES
%FIR LPF using Rectangular and Hamming window
clear all;
wc=0.5*pi;
N=11;
alpha=(N-1)/2;
eps=0.001;
n=0:1:N-1;
m=(n-alpha+eps);
hd=sin(wc*m)./(pi*m);
wr=boxcar(N);
hn=hd.*wr';
disp(hn);
w=0:0.01:pi;
h=freqz(hn,1,w);
figure(1);
i=-(N-1)/2:1:(N-1)/2;
stem(i,hn); grid on;
title('FILTER COEFFICIENTS');
xlabel('n');
ylabel('hn');
figure(2);
plot(w/pi,abs(h),'r');
grid on;
hold on;
wh=hamming(N);
disp(wh);
hn=hd.*wh';
disp(hn);
w=0:0.01:pi;
h=freqz(hn,1,w);
plot(w/pi,abs(h),'-.');
grid on;
ylabel('magnitude');
xlabel('normalised frequency');
hold off;
title('FIR LPF using windowing technique');
%FIR HPF using Rectangular and Blackman window
clear all;
wc=0.5*pi;
N=11;
alpha=(N-1)/2;
eps=0.001;
n=0:1:N-1;
m=(n-alpha+eps);
hd=(sin(pi*m)-sin(wc*m))./(pi*m);
wr=boxcar(N);
hn=hd.*wr';
w=0:0.01:pi;
h=freqz(hn,1,w);
figure(3);
i=-(N-1)/2:1:(N-1)/2;
stem(i,hn); grid on;
title('FILTER COEFFICIENTS');
xlabel('n');
ylabel('hn');
figure(4);
plot(w/pi,abs(h));
hold on;
wb=blackman(N);
hn=hd.*wb';
w=0:0.01:pi;
h=freqz(hn,1,w);
plot(w/pi,abs(h),'-.');
grid on;
ylabel('magnitude');
xlabel('normalised frequency');
hold off;
title('FIR HPF using windowing technique');
FILTER COEFFICIENTS
0.5
0.4
0.3
0.2
hn
0.1
-0.1
-0.2
-5 -4 -3 -2 -1 0 1 2 3 4 5
n
FIR LPF using windowing technique
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
FIR HPF using windowing technique
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
FILTER COEFFICIENTS
0.5
0.4
0.3
0.2
0.1
hn
-0.1
-0.2
-0.3
-0.4
-5 -4 -3 -2 -1 0 1 2 3 4 5
n
Design of FIR BPF and BSF using filters Using Hamming Windowing Technique
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
FIR BPF FILTER COEFFICIENTS
0.5
0.4
0.3
0.2
0.1
hn
-0.1
-0.2
-0.3
-0.4
-5 -4 -3 -2 -1 0 1 2 3 4 5
normalised frequency
FIR BSF FILTER COEFFICIENTS
0.6
0.5
0.4
0.3
hn
0.2
0.1
-0.1
-5 -4 -3 -2 -1 0 1 2 3 4 5
normalised frequency
FIR BSF using rectangular and blackman window
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
kaiser window for different values of alpha
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