R: Compute a two-dimensional FFT on a matrix using FFTW3

fftw3d {fftwtools} | R Documentation

## Compute a two-dimensional FFT on a matrix using FFTW3

### Description

Computes three-dimensional FFT on an array using the FFTW3 libraries. Use fftw_r2c_3d(x, HermConj=0) for real to complex FFT. This will return the result without the "Hermitian" redundancy. These functions follow the R convention when returning the inverse of the FFT. For the two-dimension fft, the inverse is currently requires the entire matrix, including the redundant complex conjugate.

### Usage

    fftw3d(data, inverse=0, HermConj=1)
    fftw_r2c_3d(data, HermConj=1)
    fftw_c2c_3d(data, inverse=0)

### Arguments

`data` | (complex or real) 3-dimensional array to be processed
`inverse` | (integer) 1 or 0 indicating if inverse FFT is preformed. The return follows the format of the R FFT commands–the output is not scaled.
`HermConj` | (integer) 1 or 0 indicating if either "Hermitian" redundant conjugate should be returned.

### Author(s)

Karim Rahim

### Examples

    x=c(1, 2, 3, 9, 8, 5, 1, 2, 9, 8, 7, 2)
    x= array(x, dim=c(3,2,2))

    fftw3d(x)
    fftw3d(x, HermConj=0)

    fftw3d(fftw3d(x), inverse=1)/12

    fftw_r2c_3d(x)
    fftw_r2c_3d(x, HermConj=0)

[Package fftwtools version 0.9-11 Index]