This is the list of Frequently Asked Questions about NFFT.
Using NFFT
Number of irregular samples (nodes), number of regular samples
(frequencies)
The cut-off frequency (length of the regular grid) is N, i.e. the
total number of regular samples is the product of N[0],...,N[d-1].
The number of irregular samples (nodes) is M.
Known Issues
Wrong NFFT calculation when enabling the debug mode or overriding the compiler flags (CFLAGS)
Due to a bug in GCC version 4.5.0, 4.5.1, 4.5.2, 4.5.3, 4.6.0 and 4.6.1, compiling the NFFT without the compiler flag "-ffast-math" may lead to incorrect computation results and buffer overflows.
By default, this flag is set by the "configure" script.
If you enable the debug mode (configure switch "--enable-debug") or set the CFLAGS manually, please add the compiler flag "-ffast-math" to the CFLAGS environment variable.
NFFT for Windows
How can I compile the NFFT under Windows and use it with Matlab?
1. Install MinGW including MSYS (http://sourceforge.net/projects/mingw/).
2. Download and unpack FFTW 3 (http://www.fftw.org) to your MSYS home folder.
3. Compile FFTW 3. Make sure you also create the shared library by providing the --enable-shared switch to the configure script.
4. Download and unpack NFFT 3 (http://www.nfft.org) to your MSYS home folder.
5. Add the path to the header file fftw3.h to the CPPFLAGS environment variable.
If you have installed FFTW via "make install" then the header will usually be found in "/usr/local/include".
Alternatively, use the path to the "api" directory in the FFTW package folder in your home directory,
e.g. export CPPFLAGS="$CPPFLAGS -I~/fftw-3.2.2/api".
6. Add the path to the FFTW libraries to the environment variable LDFLAGS.
If you have installed FFTW via "make install" then the libraries will usually be found in "/usr/local/lib".
Alternatively, use the path to the ".libs" directory in the FFTW package folder in your home directory,
e.g. export LDFLAGS="$LDFLAGS -L~/fftw-3.2.2/.libs".
7. Provide the path to your MATLAB installation to the NFFT 3 configure script, e.g., "configure --with-matlab=/c/MATLAB/R2010a"
8. Compile NFFT 3.
9. Make sure that the directory containing the FFTW 3 libraries is contained in the Windows PATH environment variable.
This is the path that you have previously added to LDFLAGS.
10. Start MATLAB and change into the matlab/nfft directory in the NFFT package.
11. Run the simple_test MATLAB script to confirm that your installation is ok.
12. Note that in order to call the MATLAB interface to NFFT 3 from a different directory, you must ensure that the corresponding directory
matlab/ is either in your Windows PATH or the MATLAB path so that the mex library file can be found.