R: Compute fft using fftw3
fftw {fftwtools} | R Documentation |
Table of Contents
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 |
HermConj |
(integer) 1 or 0 indicating if either “Hermitian” redundant |
n |
(integer) column length of the original data set. This is required when using |
Author(s)
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
Read more here: Source link