How can the "fft" alogrithm analyze non-stationary sources?

7 visualizzazioni (ultimi 30 giorni)
I am trying to analyze non-stationary sound sources. The data has to be transformed to the Frequency domain, adjusted and transformed back to the Time domain. To do this I thought I needed the Fast Wavelet Transformation or the short-time Fourier Transformation to maintain the Time information of the signals. However, in Matlab it appeared that the “fft” function works as well!
In general, the problem using the Fast Fourier Transform is that the time information gets lost. Therefore it is only possible to analyze very small pieces of the signal which can be assumed to be stationary. This idea is used in the short-time Fourier Transformation, isn’t it? Another option is the Fast Wavelet Transformation.
However, when I analyze a non-stationary signal in Matlab with “fft” and “ifft” the signal can be reconstructed without any loss of information, which is actually great! The documentation in Matlab mentions that the algorithm used (based on FFTW) splits up de signal. This is the point where it becomes confusing for me. Does this not affect the Nyquist frequency or frequency resolution (especially for signals with only a small amount of data points)? How can I be sure that no time information gets lost when doing real experiments?

Risposte (1)

Daniel Shub
Daniel Shub il 5 Ago 2011
I think you are mixing up some things. You can take the ifft of the fft of any signal and get back, to within machine precision, the original signal. The fft tells you something about the across-time average amplitude (and phase) as a function of frequency. For non-stationary signals, this is often not that informative.

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by