11 - DFT example: Difference between revisions

From Class Wiki
Jump to navigation Jump to search
(New page: Do an example using matlab of a DFT)
 
No edit summary
Line 1: Line 1:
Do an example using matlab of a DFT
Do an example using matlab of a DFT

For my example I looked into cross correlation. We needed this for our project so it seemed appropriate.
To test this I created a sin wave and shifted it over by 100 zeros then I shifted the original function one zero at a time toward my new function each time taking the dot product between the two. As expected and seen in the graph the peak was when I had shifted it 100 times then the curve went back down as it shifted past that point.

close all;
clear all;
N = 100;
t = 0:1000;
song1 = sin(t*pi/100);
song2 = [zeros(1,N) song1]';
song1 = [song1 zeros(1,N)]';
for n = 1:N
a(n) = song1'*song2;
song1 = circshift(song1,1);
end
for x = 1:N
b(x) = song1'*song2;
song1 = circshift(song1,1);
end
c = [a b]
plot(c)

Revision as of 20:19, 14 December 2009

Do an example using matlab of a DFT

For my example I looked into cross correlation. We needed this for our project so it seemed appropriate. To test this I created a sin wave and shifted it over by 100 zeros then I shifted the original function one zero at a time toward my new function each time taking the dot product between the two. As expected and seen in the graph the peak was when I had shifted it 100 times then the curve went back down as it shifted past that point.

   close all;
   clear all;
   N = 100;
   t = 0:1000;
   song1 = sin(t*pi/100);
   song2 = [zeros(1,N) song1]';
   song1 = [song1 zeros(1,N)]';
   for n = 1:N
       a(n) = song1'*song2;
       song1 = circshift(song1,1);
   end
   for x = 1:N
       b(x) = song1'*song2;
       song1 = circshift(song1,1);
   end
   c = [a b]
   plot(c)