Chris@42: Chris@42: Chris@42: Chris@42: Chris@42:
Chris@42:Chris@42: Next: 1d Real-even DFTs (DCTs), Previous: The 1d Discrete Fourier Transform (DFT), Up: What FFTW Really Computes [Contents][Index]
Chris@42:The real-input (r2c) DFT in FFTW computes the forward transform
Chris@42: Y of the size n
real array X, exactly as defined
Chris@42: above, i.e.
Chris@42:
As a result of this symmetry, half of the output Y is redundant Chris@42: (being the complex conjugate of the other half), and so the 1d r2c Chris@42: transforms only output elements 0…n/2 of Y Chris@42: (n/2+1 complex numbers), where the division by 2 is Chris@42: rounded down. Chris@42:
Chris@42:Moreover, the Hermitian symmetry implies that
Chris@42: Y0and, if n is even, the
Chris@42: Yn/2element, are purely real. So, for the R2HC
r2r transform, the
Chris@42: halfcomplex format does not store the imaginary parts of these elements.
Chris@42:
Chris@42:
Chris@42:
Chris@42:
The c2r and H2RC
r2r transforms compute the backward DFT of the
Chris@42: complex array X with Hermitian symmetry, stored in the
Chris@42: r2c/R2HC
output formats, respectively, where the backward
Chris@42: transform is defined exactly as for the complex case:
Chris@42:
Y
of this transform can easily be seen to be purely
Chris@42: real, and are stored as an array of real numbers.
Chris@42:
Chris@42:
Chris@42: Like FFTW’s complex DFT, these transforms are unnormalized. In other Chris@42: words, applying the real-to-complex (forward) and then the Chris@42: complex-to-real (backward) transform will multiply the input by Chris@42: n. Chris@42:
Chris@42: Chris@42: Chris@42: Chris@42: Chris@42: