Why fft results of discrete Fourier series coefficients are different from the actual definition

조회 수: 4 (최근 30일)
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
David Goodmanson 2020년 3월 24일
Hi Romio,
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.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Fourier Analysis and Filtering에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by