Why fft results of discrete Fourier series coefficients are different from the actual definition
7 views (last 30 days)
I tried to find the fourier coefficients of this discrete time singal x[n] = [1 1 0 0 0] using fft to get the coeffiecits.
However, they differ from the definition of fourier series by the factor 1/N.
for example the output of fft for c_0 is 2, but by the defintion of fourier series, it has to be 2/N = 2/5
Could someone explain which one is true?
David Goodmanson on 24 Mar 2020
I believe you are referriing to the convention where (informally speaking)
f(x) = Sum c_n exp( 2*pi*i*f0*n*x) % ifft direction
c_n = (1/n) Sum f(x) exp(-2*pi*i*f0*n*x) % fft direction
(where f0 is chosen to give one oscillation over the length of the x record).
Then the c_n are straight amplitudes of the complex oscillatory functions. However, Matlab fft does not do things that way. Instead, it's
f(x) = (1/n) Sum c_n exp( 2*pi*i*f0*n*x) % ifft direction
c_n = Sum f(x) exp(-2*pi*i*f0*n*x) % fft direction
so if you want the first convention, you have to multiply the fft by 1/n. And multiply the ifft by n if you want to get back to where you were.