Calculating the Power spectral density

前端 未结 3 1723
一向
一向 2021-01-20 03:59

I am trying to get the PSD of a real data set by making use of fftw3 library To test I wrote a small program as shown below ,that generates the a signal whic

3条回答
  •  南笙
    南笙 (楼主)
    2021-01-20 04:11

    I'm not sure what your question is. Your results seem reasonable, with the information provided.

    As you must know, the PSD is the Fourier transform of the autocorrelation function. With sine wave inputs, your AC function will be periodic, therefore the PSD will have tones, like you've plotted.

    My 'answer' is really some thought starters on debugging. It would be easier for all involved if we could post equations. You probably know that there's a signal processing section on SE these days.

    First, you should give us a plot of your AC function. The inverse FT of the PSD you've shown will be a linear combination of periodic tones.

    Second, try removing the window, just make it a box or skip the step if you can.

    Third, try replacing the DFT with the FFT (I only skimmed the fftw3 library docs, maybe this is an option).

    Lastly, trying inputting white noise. You can use a Bernoulli dist, or just a Gaussian dist. The AC will be a delta function, although the sample AC will not. This should give you a (sample) white PSD distribution.

    I hope these suggestions help.

提交回复
热议问题