My aim is to determine the power spectrum of a signal of finite duration using

  • Its autocorrelation function
  • Performing FFT directly on the time-domain data

The function is defined as follows in the finite time interval from 0 to 10: $$ \cos(10t) + \sin(20t) $$ I am using the library FFTW 3.3.4 in C source code and pretty confused about all the normalization constants involved. After some work I managed to get the purely real FFT of the real and even autocorrelation function but the FFT of the autocorrelation function has negative parts in it. My concern is that if this is the power spectrum by Wiener-Khinchin theorem why it has negative parts in it. Furthermore, how can I normalize the output so that the power spectrum from the direct FFT of the time-domain data and the power spectrum from the autocorrelation functions are exactly the same. I am very confused about this subject and would like to be nudged in the right direction, any help and/or comment is appreciated.

Thanks in advance

  • $\begingroup$ It is possible for the autocorrelation function of a real signal (which autocorrelation function itself is necessarily a real-valued function with any imaginary parts being small and caused by round-off error during fft/ifft computations) to have negative values: it is the power spectrum that is nonnegative as evidenced by the fact that its values are $|X[k]|^2$ where $X[k]$ is the DFT (and possibly complex-valued). $\endgroup$ – Dilip Sarwate May 18 '14 at 17:02
  • $\begingroup$ @DilipSarwate Thanks for the comment the situation is exactly as described by you. Apart from that how can I achieve the power spectrum from the FFT of the autocorrelation function, what extra operation do I need? I doubt padding or truncating the array representing the autocorrelation function before performing FFT may be necessary. My reference book says that the FFT of autocorrelation function directly gives the power spectrum(without additional operations) for infinite duration signals, it even has a proof in it. $\endgroup$ – Vesnog May 18 '14 at 17:28
  • $\begingroup$ @DilipSarwate By the way my concern was about FFT of ACF getting negative values, not the ACF itself getting negative values. $\endgroup$ – Vesnog May 18 '14 at 18:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.