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

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 件のコメント

Yona
Yona 2014 年 8 月 27 日
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 2014 年 8 月 27 日
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 :)

サインインしてコメントする。

 採用された回答

Andy L
Andy L 2014 年 8 月 27 日

1 投票

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.

2 件のコメント

John Bitzios
John Bitzios 2014 年 8 月 28 日
Thanks a lot!
Andy L
Andy L 2014 年 8 月 28 日
No worries

サインインしてコメントする。

その他の回答 (0 件)

質問済み:

2014 年 8 月 27 日

コメント済み:

2014 年 8 月 28 日

Community Treasure Hunt

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

Start Hunting!

Translated by