Need help with Fourier Transform fft

1 vue (au cours des 30 derniers jours)
Mackenzie Weeks
Mackenzie Weeks le 24 Mai 2021
Commenté : Mackenzie Weeks le 24 Mai 2021
clc;clear all
X = [8 9 9 6 10 2 5 6];
Y = fft(X)
Hi,
Im given an index (j) (0,1,2,3,4,5,6,7), data recorded(8,9,9,6,10,3,5,6), and DFT values (7, 0.28-1.03 i,0.5,-0.78-0.03 i,1,-0.78+.03 i,0.5,0.28+1.03i). I am supposed to test my FFT algorithm to recreate the discrete Fourier transform of this data set along with recreating the discrete fourier transform by writing a program that computes the discrete fourier transform. This is what i have so far, but its giving me the wrong DFT values
Y =
Columns 1 through 6
55.0000 + 0.0000i 2.9497 - 8.9497i 4.0000 + 1.0000i -6.9497 - 0.9497i 9.0000 + 0.0000i -6.9497 + 0.9497i
Columns 7 through 8
4.0000 - 1.0000i 2.9497 + 8.9497i
Any ideas of how to start?
Thanks in advance.
  2 commentaires
Paul
Paul le 24 Mai 2021
Are you sure about the problem statement? The data and the DFT values don't seem to be consistent with each other:
fft([8 9 9 6 10 3 5 6])
ans =
56.0000 + 0.0000i 2.2426 - 8.2426i 4.0000 + 0.0000i -6.2426 - 0.2426i 8.0000 + 0.0000i -6.2426 + 0.2426i 4.0000 + 0.0000i 2.2426 + 8.2426i
Mackenzie Weeks
Mackenzie Weeks le 24 Mai 2021
i accidentally typed 2 instead of 3, but even when thats chnaged its not outputting the DFT values that I'm supposed to be getting (7, 0.28-1.03 i,0.5,-0.78-0.03 i,1,-0.78+.03 i,0.5,0.28+1.03i)

Connectez-vous pour commenter.

Réponses (1)

Girijashankar Sahoo
Girijashankar Sahoo le 24 Mai 2021
MATLAB code DFT output is correct. You can varify it by first DFT value which is sum of data sequence
55=sum([8 9 9 6 10 2 5 6])
  1 commentaire
Mackenzie Weeks
Mackenzie Weeks le 24 Mai 2021
oh okay i see what i did wrong! I didn't normalize my data. Once i did, I got the correct DFT values. Thanks :)

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by