DSP Project
DSP Project
FILE
Aim: To familiarise with MATLAB software, general functions and signal processing toolbox
functions.
The name MATLAB stands for MATrix LABoratory produced by Mathworks Inc., USA. It
is a matrix-based powerful software package for scientific and engineering computation and
visualization. Complex numerical problems can be solved in a fraction of the time that required with
other high level languages. It provides an interactive environment with hundreds of built -in
functions for technical computation, graphics and animation. In addition to built-in-functions, user
can create his own functions.
MATLAB offers several optional toolboxes, such as signal processing, control systems,
neural networks etc.
It is command driven software and has online help facility.
MATLAB has three basic windows normally; command window, graphics window
and edit
window.
Command window is characterized by the prompt >>.
All commands and the ready to run program filename can be typed here. Graphic window gives the
display of the figures as the result of the program. Edit window is to create program files with an
extension .m.
Some important commands in MATLAB
Help
List topics on which help is
available Help command nameProvides help on
the topic selected Demo Runs the demo program
Who
Lists variables currently in the workspace
Whos
Lists variables currently in the workspace with their size
Clear
Clears the workspace, all the variables are removed
Clear x,y,z
Clears only variables x,y,z
Quit
Quits MATLAB
Some of the frequently used built-in-functions in Signal Processing Toolbox
filter(b.a.x)
Syntax of this function is Y = filter(b.a.x)
ifft (x)
conv (a,b)
deconv(b,a)
butter(N,Wn)
Cheby1(N,R,Wn,'high')
abs(x)
angle(H)
freqz(b,a,N)
Syntax of this function is [h,w] = freqz(b,a,N) returns the Npoint frequency vector w in radians and the N-point complex
frequency response vector
h of the filter b/a.
stem(y)
stem(x,y)
ALGORITH
M:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
MATLAB CODE:clc;
clear
all;
close
all;
t=0:.001:1;
f=input('Enter the value ofy')
frequenc
a=input('Enter;
the value of amplitude'
subplot(3,3,1);
y=a*sin(2*pi*f*
t); plot(t,y,'r');
xlabel('time');
ylabel('amplitu
de'); title('sine
wave') grid
on;
subplot(3,3,2);
z=a*cos(2*pi*f
*t); plot(t,z);
xlabel('time');
ylabel('amplitu
de');
title('cosine
wave') grid on;
subplot(3,3,3);
s=a*square(2*p
i*f*t); plot(t,s);
xlabel('time');
ylabel('amplitu
de');
title('square
wave') grid
on;
subplot(3,3,4);
plot(t,t);
xlabel('time');
ylabel('amplitu
de');
title('ramp
wave') grid on;
subplot(3,3,5);
plot(t,a,'r');
xlabel('time');
ylabel('amplitu
de'); title('unit
step wave')
grid on;
FIGURE:-
0.5
time
ramp wave
1
0.5
0
0.5
time
0
-1
square wave
amplitude
amplitude
0
-1
amplitude
cosine wave
amplitude
amplitude
sine wave
1
0.5
1
time
unit step wave
1
0
-1
0.5
time
2
1
0
0.5
time
RESULTS:- Thus the generation of continues time signals using matlab was verified
ALGORITH
M:-
MATLAB CODE:clc;
clear
all;
close
all;
n=0:1:50;
f=input('Enter the value of
frequenc
a=input('Enter
the value of amplitud
N=input('Enter the length
of unit ste subplot(3,3,1);
y=a*sin(2*pi*f
*n);
stem(n,y,'r');
xlabel('time');
ylabel('amplitu
de'); title('sine
wave') grid
on;
subplot(3,3,2);
z=a*cos(2*pi*f
*n); stem(n,z);
xlabel('time');
ylabel('amplitud
e'); title('cosine
wave') grid on;
subplot(3,3,3);
s=a*square(2*pi
*f*n); stem(n,s);
xlabel('time');
ylabel('amplitu
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
de');
title('square
wave') grid
on;
subplot(3,3,4);
stem(n,n);
xlabel('time');
ylabel('amplitu
de');
title('ramp
wave') grid on;
x=0:N-1;
d=ones(1,N);
subplot(3,3,5);
stem(x,d,'r');
xlabel('time');
ylabel('amplitu
de'); title('unit
step wave')
grid on;
FIGURE:-
cosine wave
square wave
1
0
-1
50
1
0
-10
amplitude
amplitude
50
0
-1
50
timetime
unit step wave
time
ramp
wave
50
50
amplitude
amplitude
amplitude
sine wave
1
1
0.5
00
5
time
10
time
RESULTS:- Thus the generation of discrete time signals using matlab was verified
ALGORITH
M:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
MATLAB CODE:clc;
clear
all;
close
all;
N=input('Enter the required length of
impulse response N='); n=0:N-1;
b=input('Enter the co-efficients
of x(n),b='); a=input('Enter the
co=efficients
of
y(n),a=');
x=[1,zeros(1,N-1)];
y=filter(b,a,x);
stem(n,y);
xlabel('time');
ylabel('amplitude');
title('IMPULSE
RESPONSE');
grid on;
FIGURE:IMPULSE RESPONSE
1.5
amplitude
0.5
-0.5
-1
10
15
20
time
25
30
35
40
SAMPLE INPUT:Y[n]+0.7y[n-1]-0.45y[n-2]-0.6y[n-3]=0.8x[n]-0.44x[n-1]+0.36x[n-2]+0.2x[n-3]
Enter the required length of impulse response N=40
Enter the co-efficients of x(n),b=[0.8 -0.44 0.36 0.02]
Enter the co=efficients of y(n),a=[1 0.7 -0.45 -0.6]
RESULTS:- Thus the program for impulse response of an LTI system is written using
MATLAB and verified.
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
ALGORITHM:
MATLAB CODE:clc;
clear
all;
close
all;
a=input('Enter the starting point
of x[n]='); b=input('Enter the
starting point of h[n]=');
x=input('Enter the co-efficients of
x[n]='); h=input('Enter the coefficients of h[n]='); y=conv(x,h);
subplot(3,1,1);
p=a:
(a+length(x)1); stem(p,x);
grid on;
xlabel('Time');
ylabel('Amplit
ude');
title('INPUT
x(n)');
subplot(3,1,2);
q=b:
(b+length(h)1); stem(q,h);
grid on;
xlabel('Time');
ylabel('Amplit
ude');
title('IMPULSE RESPONSE h(n)');
subplot(3,1,3);
n=a+b:length(y)
+a+b-1;
stem(n,y);
grid on;
disp(y)
xlabel('Ti
me');
ylabel('Amplitude');
title('LINEAR
CONVOLUTION');
FIGURE:INPUT x(n)
A m plitude
3
2
1
0
0
0.2
0.4
1.6
1.8
-0.8
-0.6
0.8
A m plitude
0.5
0
-1
A m plitude
2
0
-1
-0.5
0.5
1
Time
1.5
2.5
SAMPLE INPUT:-Enter
Enter
Enter
Enter
the
the
the
the
1
RESULTS :- Thus the program for linear convolution is written using MATLAB and verified.
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
ALGORITHM:
MATLAB CODE:clc;
clear
all;
close
all;
a=input('Enter the starting point
of x[n]='); b=input('Enter the
starting point of y[n]=');
x=input('Enter the co-efficients of
x[n]='); y=input('Enter the coefficients of y[n]=');
h=deconv(y,x);
subplot(3,1,1
);
p=a:a+lengt
h(x)-1;
stem(p,x);
xlabel('TIME');
ylabel('AMPLITU
DE'); grid on;
title('INPUT x[n]');
subplot(3,1,2
);
q=b:b+length
(y)-1;
stem(q,y);
xlabel('TIME');
ylabel('AMPLIT
UDE'); grid on;
title('OUTPUT
y[n]');
subplot(3,1,3);
n=(b-a):(length(h)+b-a-1);
stem(n,h);
xlabel('TIME');
ylabel('AMPLITU
DE'); grid on;
disp(h)
title('IMPULSE
h[n]');
FIGURE:INPUT x[n]
AMPLITUDE
3
2
1
0
0
0.2
0.4
0.6
AMPLITUDE
1.6
1.8
2
0
-1
-0.5
2.5
AMPLITUDE
0.5
0
-1
-0.8
-0.6
-0.4
-0.2
0
TIME
0.2
0.4
0.6
0.8
SAMPLE INPUT:-Enter
Enter
Enter
Enter
the
the
the
the
1
RESULTS :- Thus the program for de- convolution is written using MATLAB and verified.
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
ALGORITHM:
MATLAB CODE:clc;
clear
all;
close
all;
x=input('Enter the co-efficients
of x1[n]='); h=input('Enter the
co-efficients
of
x2[n]=');
y=crconc(x,h);
subplot(3,1,1);
n=0:
(length(x)-1);
stem(n,x);
grid on;
xlabel('TIME');
ylabel('AMPLITU
DE');
title('x1[n]');
subplot(3,1,2);
n=0:
(length(h)-1);
stem(n,h);
grid on;
xlabel('TIME');
ylabel('AMPLITU
DE');
title('x2[n]');
subplot(3,1,3);
n=0:
(length(y)-1);
stem(n,y);
grid on;
disp(y)
xlabel('TI
ME');
ylabel('AMPLITU
DE');
title('OUTPUTx3
[n]');
FIGURE:x1[n]
AMPLITUDE
3
2
1
0
AMPLITUDE
0.2
0.4
0.6
0.8
x21[n
]
TIME
1.2
1.4
1.6
1.8
0
0
0.1
0.2
0.3
0.4OUTP0U.5Tx3[n0] .6
TIME
0.7
0.8
0.9
0.2
0.4
0.6
0.8
1.6
1.8
AMPLITUDE
10
5
0
1
TIME
1.2
1.4
RESULTS :- Thus the program for circular convolution is written using MATLAB and
verified.
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
rp=input('enter the passband
attenuation:'); rs=input('enter the
stop band attenuation:');
wp=input('enter the pass band
frequency:'); ws=input('enter the
stop band frequency:');
[N,wn]=buttord(wp/pi,ws/pi,rp,rs);
[b,a]=butter(N,wn);
freqz(b,a);
FIGURE:-
Magnitude (dB)
100
0
-100
-200
-300
-400 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
-200
-400
-600
SAMPLE INPUT:enter
enter
enter
enter
the
the
the
the
passband attenuation:0.4
stop band attenuation:30
pass band frequency:0.2*pi
stop band frequency:0.4*pi
RESULTS:- Thus the magnitude response and phase response of Digital Butter worth Low
pass filter was verified.
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
rp=input ('Enter the pass band
attenuation:'); rs=input ('Enter the
stop band attenuation:');
wp=input ('Enter the pass band
frequency:'); ws=input ('Enter the
stop band frequency:');
[N,wn]=buttord(wp/pi,ws/pi,rp,rs);
[b,a]=butter(N,wn,'high');
freqz(b,a);
FIGURE:-
Magnitude (dB)
0
-50
SAMPLE INPUT:-
-100
-150
-200
-200
-300
Phase (degrees)
0
-400
-100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.3
0.5
0.7
0.9
0.2
0.4
0.6
0.8
1
Enter
Enter
Enter
Enter
the
the
the
the
pass
stop
pass
stop
band
band
band
band
attenuation:0.4
attenuation:30
frequency:0.6*pi
frequency:0.2*pi
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
rp=input('enter the passband
attenuation:'); rs=input('enter the
stop band attenuation:');
wp=input('enter the pass band
frequency:'); ws=input('enter the
stop band frequency:');
[N,wn]=buttord(wp/pi,ws/pi,rp,rs);
[b,a]=butter(N,wn);
freqz(b,a);
FIGURE:-
Magnitude (dB)
0
-50
-100
-150
-200
-250 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
-200
-400
-600
-800 0
SAMPLE INPUT:enter
enter
enter
enter
the
the
the
the
passband attenuation:0.2
stop band attenuation:20
pass band frequency:[0.2*pi,0.4*pi]
stop band frequency: [0.1*pi,0.5*pi]
RESULTS:- Thus the Amplitude response and phase response of Butter worth band pass
filter was verified
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
rp=input('enter the passband
attenuation:'); rs=input('enter the
stop band attenuation:');
wp=input('enter the pass band
frequency:'); ws=input('enter the
stop band frequency:');
[N,wn]=buttord(wp/pi,ws/pi,rp,rs);
[b,a]=butter(N,wn,stop);
freqz(b,a);
FIGURE:-
Magnitude (dB)
100
0
-100
-200
-300 0
Phase (degrees)
-500
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency ( rad/sample)
0.9
-1000
-1500
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency ( rad/sample)
0.9
SAMPLE INPUT:enter
enter
enter
enter
the
the
the
the
passband attenuation:0.2
stop band attenuation:20
pass band frequency:[0.1*pi,0.5*pi]
stop band frequency:[0.2*pi,0.4*pi]
RESULTS:- Thus the Amplitude response and phase response of Butter worth band stop
filter was verified
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
rp=input ('Enter the pass band
attenuation:'); rs=input ('Enter the
stop band attenuation:');
wp=input ('Enter the pass band
frequency:'); ws=input ('Enter the
stop band frequency:');
[N,wn]=cheb1ord(wp/pi,ws/pi,rp,rs
); [b,a]=cheby1(N,rp,wn);
freqz(b,a);
FIGURE:-
Magnitude (dB)
0
-100
-200
-300
-400 0
Phase (degrees)
-100
-200
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
-300
-400
-500 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
SAMPLE INPUT:Enter
Enter
Enter
Enter
the
the
the
the
pass
stop
pass
stop
band
band
band
band
attenuation:20
attenuation:50
frequency:0.3*pi
frequency:0.4*pi
RESULTS:- Thus the Amplitude response and phase response of chebyshev type 1 Low
pass filter was verified
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
rp=input ('Enter the pass band
attenuation:'); rs=input ('Enter the
stop band attenuation:');
wp=input ('Enter the pass band
frequency:'); ws=input ('Enter the
stop band frequency:');
[N,wn]=cheb1ord(wp/pi,ws/pi,rp,rs
); [b,a]=cheby1(N,rp,wn,'high');
freqz(b,a);
FIGURE:Magnitude (dB)
-100
-200
-300
Phase (degrees)
100
0
-100
-200
-300
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
-400 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
SAMPLE INPUT:Enter
Enter
Enter
Enter
the
the
the
the
pass
stop
pass
stop
band
band
band
band
attenuation:20
attenuation:50
frequency:0.4*pi
frequency:0.3*pi
RESULTS:- Thus the Amplitude response and phase response of chebyshev type 1 high
pass filter was verified
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
rp=input ('Enter the pass band
attenuation:'); rs=input ('Enter the
stop band attenuation:');
wp=input ('Enter the pass band
frequency:'); ws=input ('Enter the
stop band frequency:');
[N,wn]=cheb1ord(wp/pi,ws/pi,rp,rs
); [b,a]=cheby1(N,rp,wn);
freqz(b,a);
FIGURE:Magnitude (dB )
0
-100
-200
-300
-400 0
Phase (degrees )
-200
-400
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
-600
-800 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
SAMPLE INPUT:Enter
Enter
Enter
Enter
the
the
the
the
pass
stop
pass
stop
band
band
band
band
attenuation:20
attenuation:98
frequency:[0.3*pi,0.5*pi]
frequency:[0.1*pi,0.8*pi]
RESULTS:- Thus the Amplitude response and phase response of chebyshev type 1 band
pass filter was verified
ALGORITH
M:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
MATLAB CODE:clc;
clear
all;
close
all;
rp=input('Enter the pass band
attenuation:'); rs=input('Enter
the stop band attenuation:');
wp=input('Enter the pass band
frequency:'); ws=input('Enter
FIGURE:-
Magnitude (dB)
-100
-200
-300 0
0.1
0.2
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.9
Phase (degrees)
-200
-400
-600
-800 0
0.3
0.4
0.5
0.6
0.7
0.8
SAMPLE INPUT:Enter
Enter
Enter
Enter
the
the
the
the
pass
stop
pass
stop
band
band
band
band
attenuation:20
attenuation:98
frequency:[0.1*pi,0.8*pi]
frequency:[0.3*pi,0.5*pi]
RESULTS:- Thus the Amplitude response and phase response of chebyshev type 1 band
stop pass filter was verified
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
rp=input ('Enter the pass band
attenuation:'); rs=input ('Enter the
stop band attenuation:');
wp=input ('Enter the pass band
frequency:'); ws=input ('Enter the
stop band frequency:');
[N,wn]=cheb2ord(wp/pi,ws/pi,rp,rs
); [b,a]=cheby2(N,rp,wn);
freqz(b,a);
FIGURE:-
Magnitude (dB)
0
-20
-40
-60
-80 0
Phase (degrees)
100
0
-100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
-200
-300 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
SAMPLE INPUT:Enter
Enter
Enter
Enter
the
the
the
the
pass
stop
pass
stop
band
band
band
band
attenuation:20
attenuation:70
frequency:0.3*pi
frequency:0.4*pi
RESULTS:- Thus the Amplitude response and phase response of chebyshev type 2 Low
pass filter was verified
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
rp=input ('Enter the pass band
attenuation:'); rs=input ('Enter the
stop band attenuation:');
wp=input ('Enter the pass band
frequency:'); ws=input ('Enter the
stop band frequency:');
[N,wn]=cheb2ord(wp/pi,ws/pi,rp,rs
); [b,a]=cheby2(N,rp,wn,'high');
freqz(b,a);
FIGURE:Magnitude (dB)
0
-20
-40
-60
-80 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
300
200
100
0
-100 0
SAMPLE INPUT:Enter
Enter
Enter
Enter
the
the
the
the
pass
stop
pass
stop
band
band
band
band
attenuation:20
attenuation:70
frequency:0.4*pi
frequency:0.3*pi
RESULTS:- Thus the Amplitude response and phase response of chebyshev type 2 high
pass filter was verified
ALGORITH
M:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
MATLAB CODE:clc;
clear
all;
close
all;
rp=input ('Enter the pass band
attenuation:'); rs=input ('Enter the
stop band attenuation:');
wp=input ('Enter the pass band
frequency:'); ws=input ('Enter the
stop band frequency:');
[N,wn]=cheb2ord(wp/pi,ws/pi,rp,rs
); [b,a]=cheby2(N,rp,wn);
freqz(b,a);
FIGURE:-
Magnitude (dB)
0
-10
-20
-30
-40
-50 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
200
100
0
-100
-200 0
SAMPLE INPUT:Enter
Enter
Enter
Enter
the
the
the
the
pass
stop
pass
stop
band
band
band
band
attenuation:2
attenuation:20
frequency:[0.3*pi,0.4*pi]
frequency:[0.1*pi,0.5*pi]
RESULTS:- Thus the Amplitude response and phase response of chebyshev type 2 band
pass filter was verified
ALGORITH
M:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
MATLAB CODE:clc;
clear
all;
close
all;
rp=input('Enter the pass band
attenuation:'); rs=input('Enter
the stop band attenuation:');
wp=input('Enter the pass band
frequency:'); ws=input('Enter
the stop band frequency:');
[N,wn]=cheb2ord(wp/pi,ws/pi,rp
,rs);
[b,a]=cheby2(N,rp,wn,'stop');
freqz(b,a);
FIGURE:-
Magnitude (dB)
0
-10
-20
-30
-40 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
200
100
0
-100
-200 0
SAMPLE INPUT:Enter
Enter
Enter
Enter
the
the
the
the
pass
stop
pass
stop
band
band
band
band
attenuation:2
attenuation:20
frequency:[0.1*pi,0.5*pi]
frequency:[0.3*pi,0.4*pi]
RESULTS:- Thus the Amplitude response and phase response of chebyshev type 2 band
stop pass filter was verified
ALGORITH
M:-
MATLAB CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value
of N:'); wc=input('Enter
cutof frequency:');
h=fir1(N,wc/pi,hanning(N
+1)); freqz(h);
FIGURE:-
Magnitude (dB)
50
0
-50
-100
-150 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
0
-500
-1000
-1500
-2000 0
RESULTS:- Thus the magnitude response and phase response of fir Low pass filter using
hanning window
was verified.
FIR HIGHPASS FILTER USING HANNING WINDOW
Experiment No: - 09(b)
AIM: - TO write a MATLAB program to plot magnitude response and phase response of
digital FIR HP filter using Hanning window
PROCEDURE:-
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value of
N:'); wc=input('Enter cutof
frequency:');
h=fir1(N,wc/pi,'high',hannin
g(N+1)); freqz(h);
FIGURE:-
Magnitude (dB)
50
0
-50
-100
-150 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
500
0
-500
-1000
-1500 0
RESULTS:- Thus the magnitude response and phase response of fir High pass
filter using hanning window was verified.
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value
of N:'); wc=input('Enter
cutof frequency:');
h=fir1(N,wc/pi,hanning(N
+1)); freqz(h);
FIGURE:-
Magnitude (dB)
50
0
-50
-100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
-1500 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
500
0
-500
-1000
SAMPLE INPUT:-
RESULTS:- Thus the magnitude response and phase response of fir band pass
filter using hanning window was verified.
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value of
N:'); wc=input('Enter cutof
frequency:');
h=fir1(N,wc/pi,stop,hannin
g(N+1)); freqz(h);
FIGURE:-
Magnitude (dB)
50
0
-50
-100
-150 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
-500
-1000
-1500 0
RESULTS:- Thus the magnitude response and phase response of fir band stop
filter using hanning window was verified.
ALGORITH
M:-
MATLAB CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value
of N:'); wc=input('Enter
cutof frequency:');
h=fir1(N,wc/pi,hamming(
N+1)); freqz(h);
FIGURE:-
Magnitude (dB)
50
0
-50
-100
-150 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
0
-500
-1000
-1500
-2000 0
0.1
0.2
RESULTS:- Thus the magnitude response and phase response of fir Low pass filter using
hamming window
was verified.
FIR HIGHPASS FILTER USING HAMMING WINDOW
Experiment No: - 10(b)
AIM: - TO write a MATLAB program to plot magnitude response and phase response of
digital FIR HP filter using Hanning window
PROCEDURE:-
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value of
N:'); wc=input('Enter cutof
frequency:');
h=fir1(N,wc/pi,'high',hammi
ng(N+1)); freqz(h);
FIGURE:-
Magnitude (dB)
50
0
-50
-100
-150 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
500
0
-500
-1000
-1500 0
RESULTS:- Thus the magnitude response and phase response of fir High pass
filter using hamming window was verified.
FIR BAND PASS FILTER USING HAMMING WINDOW
Experiment No: 10(c)
AIM: - TO write a MATLAB program to plot magnitude response and phase response of
digital FIR BP filter using Hamming window
PROCEDURE:-
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value
of N:'); wc=input('Enter
cutof frequency:');
h=fir1(N,wc/pi,hamming(
N+1)); freqz(h);
FIGURE:-
Magnitude (dB)
-50
-100 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
500
0
-500
-1000
-1500 0
RESULTS:- Thus the magnitude response and phase response of fir band pass
filter using hamming window was verified.
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value of
N:'); wc=input('Enter cutof
frequency:');
h=fir1(N,wc/pi,stop,hammi
ng(N+1)); freqz(h);
FIGURE:-
Magnitude (dB)
-50
-100 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
0
-500
-1000
-1500
-20000
RESULTS:- Thus the magnitude response and phase response of fir band stop
filter using hamming window was verified.
FIR LOW PASS FILTER USING BLACKMAN WINDOW
Experiment No: - 11(a)
AIM: - TO write a MATLAB program to plot magnitude response and phase response of
digital FIR LP filter using blackman window
PROCEDURE:-
ALGORITH
M:-
MATLAB CODE:clc;
clear
all;
close
all;
N=input('Enter the value
of N:'); wc=input('Enter
cutof frequency:');
h=fir1(N,wc/pi,blackman(
N+1)); freqz(h);
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
FIGURE:-
Magnitude (dB)
50
0
-50
-100
-150 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency ( rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency ( rad/sample)
0.9
Phase (degrees)
0
-500
-1000
-1500
-2000 0
RESULTS:- Thus the magnitude response and phase response of fir Low pass filter using
blackman window
was verified.
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value of
N:'); wc=input('Enter cutof
frequency:');
h=fir1(N,wc/pi,'high',blackm
an(N+1)); freqz(h);
FIGURE:-
Magnitude (dB)
50
0
-50
-100
-150 0
Phase (degrees)
1000
-1000
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
-2000 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
RESULTS:- Thus the magnitude response and phase response of fir High pass
filter using blackman window was verified.
FIR BAND PASS FILTER USING BLACKMAN WINDOW
Experiment No: - 11(c)
AIM: - TO write a MATLAB program to plot magnitude response and phase response of
digital FIR BP filter using blackman window
PROCEDURE:-
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value
of N:'); wc=input('Enter
cutof frequency:');
h=fir1(N,wc/pi,blackman(
N+1)); freqz(h);
FIGURE:-
Magnitude (dB)
0
-50
-100
-150
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
-3000 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
1000
0
-1000
-2000
RESULTS:- Thus the magnitude response and phase response of fir band pass
filter using blackman window was verified.
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value of
N:'); wc=input('Enter cutof
frequency:');
h=fir1(N,wc/pi,stop,black
man(N+1)); freqz(h);
FIGURE:-
Magnitude (dB)
50
0
-50
-100
-150 0
0.1
0.2
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.9
Phase (degrees)
-1000
-2000
-3000
0.3
0.4
0.5
0.6
0.7
0.8
No
rm
ali
ze
Fr
eq
ue
nc
(
ad
/sa
m
ple
RESULTS:- Thus the magnitude response and phase response of fir band stop
filter using blackman window was verified.
FIR LOW PASS FILTER USING RECTANGULAR WINDOW
Experiment No: - 12(a)
AIM: - TO write a MATLAB program to plot magnitude response and phase response of
digital FIR LP filter using rectangular window
PROCEDURE:-
ALGORITH
M:-
MATLAB CODE:clc;
clear
all;
close
all;
N=input('Enter the value
of N:'); wc=input('Enter
cutof frequency:');
h=fir1(N,wc/pi,rectwin(N+
1)); freqz(h);
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
FIGURE:-
Magnitude (dB)
50
0
-50
-100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
0
-500
-1000
-1500
RESULTS:- Thus the magnitude response and phase response of fir Low pass filter using
rectangular window
was verified.
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value of
N:'); wc=input('Enter cutof
frequency:');
h=fir1(N,wc/pi,'high',rectwi
n(N+1)); freqz(h);
FIGURE:-
Magnitude (dB)
50
0
-50
-100
Phase (degrees)
500
0
-500
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
-1000
-1500 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
RESULTS:- Thus the magnitude response and phase response of fir High pass
filter using rectangular window was verified.
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value
of N:'); wc=input('Enter
cutof frequency:');
h=fir1(N,wc/pi,rectwin(N+
1)); freqz(h);
FIGURE:
Magnitude (dB)
50
-50
-100 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency (rad/sample)
0.9
Phase (degrees)
500
0
-500
-1000
-1500 0
RESULTS:- Thus the magnitude response and phase response of fir band pass
filter using rectangular window was verified.
ALGORITH
M:-
MATLAB
CODE:-
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
clc;
clear
all;
close
all;
N=input('Enter the value of
N:'); wc=input('Enter cutof
frequency:');
h=fir1(N,wc/pi,stop,rectwi
n(N+1)); freqz(h);
FIGURE:
Magnitude (dB)
50
-50
-100 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency ( rad/sample)
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized Frequency ( rad/sample)
0.9
Phase (degrees)
-500
-1000
-1500 0
RESULTS:- Thus the magnitude response and phase response of fir band stop
filter using rectangular window was verified.
DISCRETE FOURIER TRANSFORM
Experiment No: - 13
AIM: - TO write a MATLAB program to find the DFT of a sequence
PROCEDURE:
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\
Figure window
ALGORITHM:-
MATLAB CODE:clc;
clear
all;
close
all;
N=input('Enter the value of
N'); x=input('Enter the input
sequence X(n):'); t=0:N-1;
subplot(2,1,1);
stem(t,x);
xlabel('TIME');
ylabel('AMPLITU
DE');
title('INPUT
SIGNAL');
grid
on;
y=ft(x
,N)
subplot(2,1,2);
stem(t,y);
xlabel('TIME');
ylabel('AMPLITU
DE');
title('OUTPUT
SIGNAL');
grid on;
FIGURE:-
INPUT SIGNAL
AMPLITUDE
4
3
2
1
0
0.5
10
AMPLITUDE
1.5
2.5
2.5
TIME
OUTPUT SIGNAL
-5
0.5
1.5
TIME
-2.0000 + 2.0000i
-2.0000
-2.0000 - 2.0000i
RESULTS:- Thus the program for dft is written using MATLAB and verified.
ALGORITH
M:-
MATLAB CODE:clc;
clear
all;
close
all;
N=input('Enter the value
of N='); y=input('Enter
the sequence y[n]=');
t=0:N-1;
subplot(2,1,1);
stem(t,y);
xlabel('TIME');
ylabel('AMPLITU
DE');
title('INPUT
SIGNAL');
grid on;
x=ift(y,N)
subplot(2,1,
2);
stem(t,x);
xlabel('TIME');
ylabel('AMPLITU
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
DE');
title('OUTPUT
SIGNAL');
grid on;;
FIGURE:-
INPUT SIGNAL
AMPLITUDE
10
-5
0.5
4
AMPLITUDE
1.5
2.5
2.5
TIME
OUTPUT
SIGNAL
3
2
1
0
0.5
1.5
TIME
RESULTS:- Thus the program for idft is written using MATLAB and verified.
ALGORITH
M:-
MATLAB CODE:clc;
clear
all;
close
all;
x=input('Enter
sequence
h=input('Enter
sequence
l1=length(x);
l2=length(h);
x=[x,zeros(1,l
2-1)];
h=[h,zeros(1,l
1-1)];
l3=length(x);
c=0:l3-1;
subplot(3,1,1);
the
x(n):');
the
h(n):');
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
stem(c
,x);
grid
on;
xlabel('TIME');
ylabel('AMPLITU
DE');
title('X(n)');
subplot(3,1,2);
stem(c,h);
xlabel('TIME');
ylabel('AMPLITU
DE'); grid on;
title('h(n)');
q=ft(x,l3);
r=ft(h,l3);
s=(r).*q;
y=ift(s,l3)
subplot(3,1,
3);
stem(c,y);
xlabel('TIME');
ylabel('AMPLITU
DE'); grid on;
title('y(n)');
FIGURE:X(n)
3
2
1
00.511.5
h(2n) TIME
2.533.54
00.511.5
y(2n) TIME
2.533.54
00.511.5
2
TIME
2.533.54
AMPLITUDE
10
AMPLITUDE
AMPLITUDE
0.5
6
4
2
0
3.0000
6.0000
5.0000
3.0000
RESULTS:- Thus the program for linear convolution using dft is written using MATLAB
and verified.
ALGORITH
M:-
MATLAB CODE:clc;
clear
all;
close
all;
x=input('Enter
sequence
h=input('Enter
sequence
l1=length(x);
l2=lengt
h(h);
a=0:l1-1;
b=0:l2-1;
l3=max(l1
,l2);
c=0:l3-1;
subplot(3,1,1);
stem(a,x);
grid on;
xlabel('TI
ME');
the
x(n):');
the
h(n):');
Open MATLAB
Open new M-file
Type the program
Save in current directory
Compile and Run the program
For the output see command window\ Figure window
ylabel('AMPLITU
DE');
title('X(n)');
subplot(3,1,2);
stem(b,h);
xlabel('TIME');
ylabel('AMPLITU
DE');
grid on;
title('h(n)'
);
q=ft(x,l3)
;
r=ft(h,l3);
s=(r).*q;
t=ift(s,l3)
subplot(3,1,
3);
stem(c,t);
xlabel('TIME');
ylabel('AMPLITU
DE'); grid on;
title('y(n)');
FIGURE:
X(n)
AMPLITUDE
2
1
00.20.40.60.8
AMPLITUDE
0
2
1
0
0.5
y1(.n5) TIME
2.5
0.5
1.5
TIME
2.5
AMPLITUDE
10
0
10
10
RESULTS:- Thus the program for circular convolution using dft is written using MATLAB
and verified.