11 - DFT example: Difference between revisions
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)