accelerate-fft-0.15.0.0: FFT using the Accelerate library

Copyright[2012..2013] Manuel M T Chakravarty, Gabriele Keller, Trevor L. McDonell, Robert Clifton-Everest
LicenseBSD3
MaintainerManuel M T Chakravarty <chak@cse.unsw.edu.au>
Stabilityexperimental
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell98

Data.Array.Accelerate.Math.DFT.Centre

Description

These transforms allow the centering of the frequency domain of a DFT such that the the zero frequency is in the middle. The centering transform, when performed on the input of a DFT, will cause zero frequency to be centred in the middle. The shifting transform however takes the output of a DFT to give the same result. Therefore the relationship between the two is:

fft(center(X)) = shift(fft(X))

Synopsis

Documentation

centre1D :: (Elt e, IsFloating e) => Acc (Array DIM1 (Complex e)) -> Acc (Array DIM1 (Complex e)) Source

Apply the centring transform to a vector

centre2D :: (Elt e, IsFloating e) => Acc (Array DIM2 (Complex e)) -> Acc (Array DIM2 (Complex e)) Source

Apply the centring transform to a matrix

centre3D :: (Elt e, IsFloating e) => Acc (Array DIM3 (Complex e)) -> Acc (Array DIM3 (Complex e)) Source

Apply the centring transform to a 3D array

shift1D :: Elt e => Acc (Vector e) -> Acc (Vector e) Source

Apply the shifting transform to a vector

shift2D :: Elt e => Acc (Array DIM2 e) -> Acc (Array DIM2 e) Source

Apply the shifting transform to a 2D array

shift3D :: Elt e => Acc (Array DIM3 e) -> Acc (Array DIM3 e) Source

Apply the shifting transform to a 3D array