Difference between fft and pspectrum

58 views (last 30 days)
Takashi Fukushima on 22 Sep 2020
Commented: Takashi Fukushima on 22 Sep 2020
I would like to do frequency analysis of EMG and found 2 different functions: fft and pspectrum. Could anyone tell me the difference between the 2 functions?

Shantanu Dwivedi on 22 Sep 2020
Edited: Shantanu Dwivedi on 22 Sep 2020
The 'fft(x)' function computes the discrete Fourier transform (DFT) of x using a fast Fourier transform (FFT) algorithm.
The 'pspectrum(x)' function returns the power spectrum of x.
A fast Fourier transform is an algorithm that computes the discrete Fourier transform of a sequence. Fourier Transform changes the domain of the signal from time or space to frequency domain. The DFT is obtained by decomposing a sequence of values into components of different frequencies.
The statistical average of a certain signal or sort of signal (including noise) as analyzed in terms of its frequency content, is called its spectrum. So, the power spectrum refers to the spectral energy distribution that would be found per unit time, since the total energy of such a signal over all time would generally be infinite.
Takashi Fukushima on 22 Sep 2020
I visited fft function page and saw this ...
Y = fft(X);
Fs = Sample frequency
L = Length of signal
P2 = abs(Y/L);
P1 = P2(1:L/2+1);
P1(2:end-1) = 2*P1(2:end-1);
f = Fs*(0:(L/2))/L;
plot(f,P1);
Could you tell me why I have to compute two-sided spectrum and convert it to single-sided spectrum? I mean I do not know where the formula comes from...