comfort-fftw: High-level interface to FFTW (Fast Fourier Transform) based on comfort-array

[ bsd3, library, math ] [ Propose Tags ]

FFTW claims to be the fastest Fourier Transform in the West. This is a high-level interface to libfftw. We re-use the type classes from netlib-ffi.


  • Support of one (audio), two (image), three (video) dimensional data, as well as n-dimensional one.

  • Support for batched transformations e.g. for block-wise Fourier transform.

  • No normalization like in plain fftw. This is because I see no universally best place to apply normalization.

The use of comfort-array enables to use array shapes tailored to Fourier transforms:

for data where the n-1-th element can also be accessed via index -1.
for complex data of a real-to-complex Fourier transform. It saves you from case distinction between even and odd data length and according mistakes.
for real-to-real Sine and Cosine transforms. They assert that you will always use the appropriate kind for back transformation.

For rather simple examples see the packages align-audio and morbus-meniere.

See also package fft.


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.0,
Dependencies base (>=4.5 && <5), comfort-array (>=0.5 && <0.6), deepseq (>=1.3 && <1.5), fftw-ffi (>=0.0 && <0.2), netlib-ffi (>=0.0 && <0.2), QuickCheck (>=2 && <3) [details]
License BSD-3-Clause
Author Henning Thielemann <>
Maintainer Henning Thielemann <>
Category Math
Home page
Source repo this: darcs get --tag
head: darcs get
Uploaded by HenningThielemann at 2023-04-22T17:53:39Z
Distributions LTSHaskell:, NixOS:, Stackage:
Downloads 232 total (11 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]