# R: Compute fft using fftw3

 fftw {fftwtools} R Documentation

## Compute fft using fftw3

### Description

These functions compute the FFT using the FFTW3 libraries.
Use fftw_r2c(x, HermConj=0) for real to complex fft. This will
return the result without the redundant complex conjugate. This follows the R
convention for returning the unscaled inverse of the FFT. The function
fftw_c2r(res, HermConj=0, n=length(x)) will invert the FFT
from the result not containing the redundant complex conjugate. You must
specify, n, the dimension of the original data–length–if the
redundant complex conjugate is not included.

### Usage

fftw(data, inverse=0, HermConj=1, n=NULL)
fftw(data, inverse=0, HermConj=1, n=NULL)
fftw_r2c(data, HermConj=1)
fftw_c2c(data, inverse=0)
fftw_c2r(data, HermConj=1, n=NULL)


### Arguments

 data (complex or real) vector 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, or that the complex to real data includes the “Hermitian” redundant conjugate. n (integer) column length of the original data set. This is required when using the inverse complex to real FFT without providing the “Hermitian” redundant conjugate.

Karim Rahim

### Examples

res <- fftw_r2c(1:9)
res
fftw_c2r(res)/9
res
fftw_c2r(res)/9

res <- fftw_r2c(1:10)
res
fftw_c2r(res)/10
res
fftw_c2r(res)/10

res <- fftw_r2c(1:9, HermConj=0)
res
fftw_c2r(res, HermConj=0, n=9)/9

res <- fftw_r2c(1:10, HermConj=0)
res
fftw_c2r(res, HermConj=0, n=10)/10

fftw_r2c(1:3)
fftw_c2r(fftw_r2c(1:3))/3
fftw_c2r(fftw_r2c(1:2))/2
fftw_c2r(fftw_r2c(1:4))/4

fftw_r2c(1:3, HermConj=1)
fftw_c2r(fftw_r2c(1:3, HermConj=0), HermConj=0, n=3)/3

fftw_c2r(fftw_r2c(1:4, HermConj=0), HermConj=0, n=4)/4
fftw_c2r(fftw_r2c(1:20, HermConj=0), HermConj=0, n=20)/20



[Package fftwtools version 0.9-11 Index]