The items after N/2 are the “negative frequencies”

It is not the case for real FFTs, the negative

frequency components are not stored in the

returned array.

Time domain data of length N are represented by

N Fourier components with N/2 positive and N/2

negative frequencies. The negative components are

“mirror image” of the positives, just complex-

conjugate, as Adam said. In many cases only the

positive frequency components are used in analyses.

If the input vector with N elements are

complex-valued, it is 2N long, and the FFTed data

contains N Fourier components. Since each of

the components is complex and represented by two

values (real, imag), the length required to store

the FFTed data are 2N, (N/2)*2 for positive

frequencies and (N/2)*2 for negatives.

If the input vector is of N real, we have only

N length field (many of C FFT routines store the

results in-plane) and thus only the positive

frequency components of N/2 complex values are

stored in the results.