The NFFT is a C subroutine library for computing the non equispaced discrete Fourier transform (NDFT) in one or more dimensions, of arbitrary input size, and of complex data. We believe that our library, which is free software, and based on (FFTW 3.x) should become the NFFT library of choice for most applications.
The NFFT approximates
The latest version is 2.0.3. The API of NFFT 2.x is incompatible with that of NFFT 1.x. Here is a list of some of NFFT's more interesting features:
- Implemented transforms for one and more dimensions.
- Iterative solution of the inverse transform.
- Arbitrary-size transforms.
- Works on any platform with a C compiler and the FFTW package.
- Simple and flexible interface, 'type safety' and easy adaptability.
- Options (determined at compile time) and parameters (determined at run time).
The most current general paper, and the one that we recommend if you wish to cite NFFT, is:
A tutorial on NFFT was published in the 2001 in: Modern Sampling Theory: Mathematics and Applications, J.J. Benedetto and P. Ferreira (Eds.),Chapter 12, pages 249-274 with the title 'Fast Fourier transforms for nonequispaced data: A tutorial' (also in ps, pdf), by D. Potts, G. Steidl, and M. Tasche.Or the appendix in Potts, D. and Steidl, G. Fast summation at nonequispaced knots by NFFTs. SIAM J. on Sci. Comput. 24, 2013-2037. (full paper ps, pdf), 2003
Some papers about NFFT are available online. For general questions about non equispaced discrete Fourier transforms, see our links to NFFT-related resources.
Examples of usage including recent examples in papers are given here.