I have a signal $a(t)$, this is how it looks when I plot it:
I am trying to extract the eigenfrequencies of this signal using FFT in MATLAB. I do it like this
Y=fft( a(1:3:end) ); Fs = 1/1.5; % Sampling frequency T = 1/Fs; % Sampling period L = dms(2); % Length of signal t = (0:L-1)*T; % Time vector P2 = abs(Y/L); P1 = P2(1:floor(L/2)+1); P1(2:end-1) = 2*P1(2:end-1); f = Fs*(0:(L/2))/L; plot(f, P1)
Now, it turns out that if I use
Y=fft( a ), I only get frequencies close to 0 when I plot the spectrum:
If I use
Y=fft( a(1:3:end) ), then I get frequencies at 0 and nonzero frequencies:
- Why do these nonzero frequencies not appear when I do the FFT on the full dataset, but only when I sample every 4th point?
- Is the nonzero frequency actually contained in my dataset or is it an artifact?