MATLAB IMPLEMENTATION OF FFT
PROF. RAKESH K. JHA
CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA)
DEPARTMENT OF ELECTRONICS & COMMUNICATION
MATLAB IMPLEMENTATION OF FAST FOURIER TRANSFORM
% fft of 10 hz and 20 hz signal
clear all;
clc;
close all;
fs= 100;
f1=10 ;
f2= 20 ;
nfft=1024;
%plot 10 hz signal
t=-1:1/fs:1;
y1= sin(2*pi*f1*t);
figure;
plot(t,y1)
xlabel('----->t');
ylabel('sin(2*pi*f1*t)');
title('10 hz ferquency signal');
%plot 20 hz signal
t=-1:1/fs:1;
y2= sin(2*pi*f2*t);
figure;
plot(t,y2)
xlabel('----->t');
ylabel('sin(2*pi*f2*t)');
title('20 hz ferquency signal');
%addition of two signals
y3= y1+y2;
figure;
plot(t,y3)
xlabel('----->t');
ylabel('sin(2*pi*f1*t)+sin(2*pi*f2*t)');
title(' addition of two signal');
% appended signal
y4=[y1,y2];
figure
plot(y4);
xlabel('---->t');
ylabel('appended signal');
title(' plot appending of two signals');
%fft of y1
x1= fft(y1,nfft)
x1= x1(1:nfft/2)
mx1= abs(x1);
f=(1:nfft/2)*fs/nfft;
figure
plot(f,mx1);
xlabel(' frequency in hz');
ylabel('power');
title('fft of 10 hz signal');
%fft of y2
x2= fft(y2,nfft);
x2=x2(1:nfft/2);
mx2= abs(x2);
f=(0:nfft/2-1)*fs/nfft;
figure
plot(f,mx2);
MATLAB IMPLEMENTATION OF FFT
PROF. RAKESH K. JHA
CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA)
DEPARTMENT OF ELECTRONICS & COMMUNICATION
xlabel(' frequency in hz');
ylabel('power');
title('fft of 20 hz signal');
% fft of added signal y3
x3= fft(y3,nfft);
x3=x3(1:nfft/2);
mx3= abs(x3);
f=(0:nfft/2-1)*fs/nfft;
figure
plot(f,mx3);
xlabel(' frequency in hz');
ylabel('power');
title('fft of added signal');
%fft of appended signal
x4= fft(y4,nfft);
x4=x4(1:nfft/2);
mx4=abs(x4);
f=(0:nfft/2-1)*fs/nfft;
figure
plot(f,mx4);
xlabel(' frequency in hz');
ylabel('power');
title('fft of appended signal');
RESULTS:
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
----->t
sin(2*pi*f1*t)
10 hz ferquency signal
MATLAB IMPLEMENTATION OF FFT
PROF. RAKESH K. JHA
CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA)
DEPARTMENT OF ELECTRONICS & COMMUNICATION
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
----->t
sin(2*pi*f2*t)
20 hz ferquency signal
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
----->t
sin(2*pi*f1*t)+sin(2*pi*f2*t)
addition of two signal
MATLAB IMPLEMENTATION OF FFT
PROF. RAKESH K. JHA
CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA)
DEPARTMENT OF ELECTRONICS & COMMUNICATION
0 50 100 150 200 250 300 350 400 450
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
---->t
appendedsignal plot appending of two signals
0 5 10 15 20 25 30 35 40 45 50
0
10
20
30
40
50
60
70
80
90
100
frequency in hz
power
fft of 10 hz signal
MATLAB IMPLEMENTATION OF FFT
PROF. RAKESH K. JHA
CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA)
DEPARTMENT OF ELECTRONICS & COMMUNICATION
0 5 10 15 20 25 30 35 40 45 50
0
10
20
30
40
50
60
70
80
90
100
frequency in hz
power fft of 20 hz signal
0 5 10 15 20 25 30 35 40 45 50
0
10
20
30
40
50
60
70
80
90
100
frequency in hz
power
fft of added signal
MATLAB IMPLEMENTATION OF FFT
PROF. RAKESH K. JHA
CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA)
DEPARTMENT OF ELECTRONICS & COMMUNICATION
0 5 10 15 20 25 30 35 40 45 50
0
10
20
30
40
50
60
70
80
90
100
frequency in hz
power fft of appended signal

Matlab implementation of fast fourier transform

  • 1.
    MATLAB IMPLEMENTATION OFFFT PROF. RAKESH K. JHA CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA) DEPARTMENT OF ELECTRONICS & COMMUNICATION MATLAB IMPLEMENTATION OF FAST FOURIER TRANSFORM % fft of 10 hz and 20 hz signal clear all; clc; close all; fs= 100; f1=10 ; f2= 20 ; nfft=1024; %plot 10 hz signal t=-1:1/fs:1; y1= sin(2*pi*f1*t); figure; plot(t,y1) xlabel('----->t'); ylabel('sin(2*pi*f1*t)'); title('10 hz ferquency signal'); %plot 20 hz signal t=-1:1/fs:1; y2= sin(2*pi*f2*t); figure; plot(t,y2) xlabel('----->t'); ylabel('sin(2*pi*f2*t)'); title('20 hz ferquency signal'); %addition of two signals y3= y1+y2; figure; plot(t,y3) xlabel('----->t'); ylabel('sin(2*pi*f1*t)+sin(2*pi*f2*t)'); title(' addition of two signal'); % appended signal y4=[y1,y2]; figure plot(y4); xlabel('---->t'); ylabel('appended signal'); title(' plot appending of two signals'); %fft of y1 x1= fft(y1,nfft) x1= x1(1:nfft/2) mx1= abs(x1); f=(1:nfft/2)*fs/nfft; figure plot(f,mx1); xlabel(' frequency in hz'); ylabel('power'); title('fft of 10 hz signal'); %fft of y2 x2= fft(y2,nfft); x2=x2(1:nfft/2); mx2= abs(x2); f=(0:nfft/2-1)*fs/nfft; figure plot(f,mx2);
  • 2.
    MATLAB IMPLEMENTATION OFFFT PROF. RAKESH K. JHA CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA) DEPARTMENT OF ELECTRONICS & COMMUNICATION xlabel(' frequency in hz'); ylabel('power'); title('fft of 20 hz signal'); % fft of added signal y3 x3= fft(y3,nfft); x3=x3(1:nfft/2); mx3= abs(x3); f=(0:nfft/2-1)*fs/nfft; figure plot(f,mx3); xlabel(' frequency in hz'); ylabel('power'); title('fft of added signal'); %fft of appended signal x4= fft(y4,nfft); x4=x4(1:nfft/2); mx4=abs(x4); f=(0:nfft/2-1)*fs/nfft; figure plot(f,mx4); xlabel(' frequency in hz'); ylabel('power'); title('fft of appended signal'); RESULTS: -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 ----->t sin(2*pi*f1*t) 10 hz ferquency signal
  • 3.
    MATLAB IMPLEMENTATION OFFFT PROF. RAKESH K. JHA CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA) DEPARTMENT OF ELECTRONICS & COMMUNICATION -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 ----->t sin(2*pi*f2*t) 20 hz ferquency signal -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 ----->t sin(2*pi*f1*t)+sin(2*pi*f2*t) addition of two signal
  • 4.
    MATLAB IMPLEMENTATION OFFFT PROF. RAKESH K. JHA CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA) DEPARTMENT OF ELECTRONICS & COMMUNICATION 0 50 100 150 200 250 300 350 400 450 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 ---->t appendedsignal plot appending of two signals 0 5 10 15 20 25 30 35 40 45 50 0 10 20 30 40 50 60 70 80 90 100 frequency in hz power fft of 10 hz signal
  • 5.
    MATLAB IMPLEMENTATION OFFFT PROF. RAKESH K. JHA CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA) DEPARTMENT OF ELECTRONICS & COMMUNICATION 0 5 10 15 20 25 30 35 40 45 50 0 10 20 30 40 50 60 70 80 90 100 frequency in hz power fft of 20 hz signal 0 5 10 15 20 25 30 35 40 45 50 0 10 20 30 40 50 60 70 80 90 100 frequency in hz power fft of added signal
  • 6.
    MATLAB IMPLEMENTATION OFFFT PROF. RAKESH K. JHA CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL ( INDIA) DEPARTMENT OF ELECTRONICS & COMMUNICATION 0 5 10 15 20 25 30 35 40 45 50 0 10 20 30 40 50 60 70 80 90 100 frequency in hz power fft of appended signal