Copyright | [2012..2017] Manuel M T Chakravarty Gabriele Keller Trevor L. McDonell [2013..2017] Robert Clifton-Everest |
---|---|
License | BSD3 |
Maintainer | Trevor L. McDonell <tmcdonell@cse.unsw.edu.au> |
Stability | experimental |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell98 |
For performance, compile against the foreign library bindings (using any number of '-fllvm-ptx', and '-fllvm-cpu' for the accelerate-llvm-ptx, and accelerate-llvm-native backends, respectively).
Synopsis
- data Mode
- class (RealFloat a, FromIntegral Int a, Elt (Complex a)) => Numeric a
- fft :: forall sh e. (Shape sh, Slice sh, Numeric e) => Mode -> Acc (Array (sh :. Int) (Complex e)) -> Acc (Array (sh :. Int) (Complex e))
- fft1D :: forall e. Numeric e => Mode -> Acc (Array DIM1 (Complex e)) -> Acc (Array DIM1 (Complex e))
- fft2D :: forall e. Numeric e => Mode -> Acc (Array DIM2 (Complex e)) -> Acc (Array DIM2 (Complex e))
- fft3D :: forall e. Numeric e => Mode -> Acc (Array DIM3 (Complex e)) -> Acc (Array DIM3 (Complex e))
Documentation
fft :: forall sh e. (Shape sh, Slice sh, Numeric e) => Mode -> Acc (Array (sh :. Int) (Complex e)) -> Acc (Array (sh :. Int) (Complex e)) Source #
Discrete Fourier Transform along the innermost dimension of an array.
Notes for FFI implementations:
- fftw supports arrays of dimension 1-5
- cuFFT supports arrays of dimension 1-3
The pure implementation will be used otherwise.
fft1D :: forall e. Numeric e => Mode -> Acc (Array DIM1 (Complex e)) -> Acc (Array DIM1 (Complex e)) Source #
Discrete Fourier Transform of a vector.