fft: Bindings to the FFTW library.

[ bsd3, library, math ] [ Propose Tags ]

Bindings to the FFTW library.

Provides high performance discrete fourier transforms in arbitrary dimensions. Include transforms of complex data, real data, and real to real transforms.

[Skip to Readme]


Maintainer's Corner

For package maintainers and hackage trustees


Versions [RSS],, 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.5, 0.1.6, 0.1.7,,,, 0.1.8,,,,,,,
Dependencies array, base, carray [details]
License BSD-3-Clause
Author Jed Brown
Maintainer <jed@59A2.org>
Category Math
Uploaded by JedBrown at 2008-02-14T21:03:19Z
Distributions LTSHaskell:, NixOS:, Stackage:
Downloads 16001 total (20 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for fft-

[back to package description]
This package provides bindings to the FFTW library.

You will need to install FFTW version 3, including development files before this
package.  Consult your package manager or visit http://fftw.org to install FFTW.
In addition, the Haskell package carray is required.

  runhaskell Setup.lhs configure
  runhaskell Setup.lhs build
  runhaskell Setup.lhs haddock          (optional)
  runhaskell Setup.lhs install

Then run the tests:

  runhaskell tests/tests.hs

We use the CArray package for multi-dimensional arrays.  It allocates pinned
memory on the GC'd heap, which is 16-byte aligned by default, allowing SIMD
instructions.  If you get a CArray from a foreign source using
unsafeForeignPtrToCArray (an O(1) operation) then you must be sure that the
memory is aligned if you expect SIMD code to be used by FFTW.

A note regarding licensing: FFTW is generally distributed under the GPL,
although a different license can be purchased.  Therefore, the fact that these
bindings are BSD licensed does not mean you can link against a GPL'd copy of
FFTW without complying with the GPL.