Safe Haskell | None |
---|---|
Language | Haskell2010 |
Fast computation of Discrete Fourier Transforms using the Cooley-Tuckey algorithm. Time complexity is O(n log n) in the size of the input.
This uses a naive divide-and-conquer algorithm, the absolute performance is about 50x slower than FFTW in estimate mode.
Synopsis
- data Mode
- isPowerOfTwo :: Int -> Bool
- fft3dP :: (Source r Complex, Monad m) => Mode -> Array r DIM3 Complex -> m (Array U DIM3 Complex)
- fft2dP :: (Source r Complex, Monad m) => Mode -> Array r DIM2 Complex -> m (Array U DIM2 Complex)
- fft1dP :: (Source r Complex, Monad m) => Mode -> Array r DIM1 Complex -> m (Array U DIM1 Complex)
Documentation
isPowerOfTwo :: Int -> Bool Source #
Check if an Int
is a power of two. Assumes n
is a natural number.
fft3dP :: (Source r Complex, Monad m) => Mode -> Array r DIM3 Complex -> m (Array U DIM3 Complex) Source #
Compute the DFT of a 3d array. Array dimensions must be powers of two else error
.