what is fft code?

3 visualizaciones (últimos 30 días)
nur yusof
nur yusof el 19 de Jun. de 2015
Comentada: Afshin Loghmani M Toussi el 1 de Dic. de 2020
Hi all,
I'm new to FFT and I want to ask about calculating FFT in Matlab. The following is my coding guidance from Matlab help:-
clc;
Fs = 512; % Sampling frequency
T = 1/Fs; % Sample time
L = 8100; % Length of signal
t = (0:L-1)*T; % Time vector
% Sum of a 50 Hz sinusoid and a 120 Hz sinusoid
x = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);
y = x + 2*randn(size(t)); % Sinusoids plus noise
plot(Fs*t(1:50),y(1:50));
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (milliseconds)');
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);
% Plot single-sided amplitude spectrum.
plot(f,2*abs(Y(1:NFFT/2)));
title('Single-Sided Amplitude Spectrum of y(t)');
xlabel('Frequency (Hz)');
ylabel('|Y(f)|');
Can someone verify my code because the fft graph unconvincing. Here the figure of the graph
Thank you.
  5 comentarios
Sag
Sag el 26 de En. de 2016
Why to multiply by 2 in step: plot(f,2*abs(Y(1:NFFT/2)));
Afshin Loghmani M Toussi
Afshin Loghmani M Toussi el 1 de Dic. de 2020
Because you are plotting half of the frequency range( because of the symmetry). However, to show the same amount of energy you are multiplying the values by 2.

Iniciar sesión para comentar.

Respuestas (1)

Andreas Goser
Andreas Goser el 19 de Jun. de 2015
Frequent puzzlese with interpreting FFT:
2 peaks instead of 1 peak
Frequency "off" by a factor of 6.
Both effects are in the nature of the algorithm and "6" is actually "2*Pi". Next steps depend on whether you want to just use the results, then this will help. If you want to understand, read a text book about signal processing.
  1 comentario
nur yusof
nur yusof el 29 de Jun. de 2015
thank you so much

Iniciar sesión para comentar.

Categorías

Más información sobre Parametric Spectral Estimation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by