FFT (fast fourier transform) matlab default example (need explanation)

2 Ansichten (letzte 30 Tage)
I try to figure out how the FFT command works on matlab and I came across this example that matlab central gives out at this link http://www.mathworks.com/help/matlab/ref/fft.html
Can somebody explain to me how this code works?? If not all the code than this part of it
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(y,NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2+1); %why 2+1 ????
  2 Kommentare
Yona
Yona am 27 Aug. 2014
NFFT/2+1
is equal to
(NFFT/2)+1
in 0:10 you have 11 point because you have the start and stop too. so you need to add another point.
John Bitzios
John Bitzios am 27 Aug. 2014
Thanks for the reply Yona! Can you explain the whole thing from top to bottom so I can get the whole picture?? That would help me a lot :)

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Andy L
Andy L am 27 Aug. 2014
L is the length of your signal. It is used to determine the time vector t and so on. nextpow2 is used to pad the signal passed to fft - this speeds up it's computation compared to a signal not of that length. Your question RE line 3 was already answered.

Weitere Antworten (0)

Kategorien

Mehr zu Fourier Analysis and Filtering finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by