Borrar filtros
Borrar filtros

fast fourier transform functions function

1 visualización (últimos 30 días)
Salar
Salar el 7 de Oct. de 2012
I have a question about fft function. I have a set of data consisting of two columns; one is time in seconds, and the other is amplitude. now I need to find the seven dominant frequencies buried in the noisy time signal, and also I know that very low frequencies (less than 0.01Hz) can spoof my low-frequency output unless I subtract the mean of the data from the time series before taking the Fourier transform. I need a hint to start writing the code for this, I read the Matlab help page, but it confused me more. any help that can explain this more to me will be appreciated, Thank you

Respuesta aceptada

Image Analyst
Image Analyst el 7 de Oct. de 2012
Can't you just FFT the signal, then call sort() and take the 7 frequencies with the largest signal?
By the way, how did you get your noisy signal? Could a Lock-in Amplifier help improve your signal?
  3 comentarios
Salar
Salar el 7 de Oct. de 2012
I get error for this code, and it's not working,
Image Analyst
Image Analyst el 7 de Oct. de 2012
Editada: Image Analyst el 7 de Oct. de 2012
Well, you define f, but then redefine it. Was the output of the sin() function supposed to be "data" instead of f? Secondly, you don't use A and t. Thirdly, your signal is just one frequency, not lots of them plus noise. Fourth, you define freq, which has nothing to do with anything. Basically this program is a mess. Try again. Next time start with data, then fft the data, then take the real part or magnitude and sort it. Then take the 7 highest components.

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by