Copyright | [2012..2020] The Accelerate Team |
---|---|
License | BSD3 |
Maintainer | Trevor L. McDonell <trevor.mcdonell@gmail.com> |
Stability | experimental |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
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 a, EltR (Complex a) ~ Vec2 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
class (RealFloat a, FromIntegral Int a, Elt a, EltR (Complex a) ~ Vec2 a) => Numeric a Source #
numericR
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.