2
$\begingroup$

I would like to convert FFT data which is set of 396 values for 396 frequencies (from 4Hz to 399Hz by 1Hz) in unit of g's (gravitational akcceleration) to PSD in unit of (g^2)/Hz, is it possible? Thank you for your help.

$\endgroup$
3
$\begingroup$

If X is your fft data then you need to take Y=abs(X).^2; to convert it. Your frequency axis is f=4:399;. You can plot the result then using plot(f,Y).

$\endgroup$
1
$\begingroup$

To get the PSD from your FFT values, square each FFT value and divide by 2 times the frequency spacing on your x axis.

PSDvalue=(fftValue^2.0)/(2.0*df)

If you want to check the output is scaled correctly, the area under the PSD should be equal to the variance of the original signal.

If your FFT is zero padded, you also need to multiply by the zero padding ratio:

zp=number of points in Fourier Transform/Number of points in original time series

$\endgroup$

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.