C++
C#
VB
JScript
All

# fft_in_place

Copyright (C) 2005 IENT-RWTH Aachen

template<class G> inline void fft_in_place(Vector<G> &X)

FFT in place of a signal

Parameters

X | The FFT

Remarks

For complex signal, this function is equivalent to fft(X,X).

The FFT of a real signal with N terms is complex and has the following symmetry property:

    Y[N-i] = conj(Y[i])

The arrangement of the compact half-complex terms uses the following scheme:

k = 0 | X[k] = real(Y[k]), imaginary part is zero and not stored
k < N/2 | X[k] = real(Y[k]), X[N-k] = imag(Y[k])
k = N/2 | X[k] = real(Y[k]), imaginary part is zero and not stored
k > N/2 | Terms not stored but can be reconstructed using the symmetry property.

Example

    DenseVector<float>::self X(4, 1);
    fft_in_place(X);