FFTW
FFTW is a C subroutine library for computing the Discrete Fourier Transform in one or more dimensions, of both real and complex data, of arbitrary input size.
FFTW is free software as defined by the Free Software Foundation and is distributed under the terms of the GNU General Public License. It is callable from Fortran, and works on any platform with a C compiler.
FFTW was developed at MIT by Matteo Frigo and Steven G. Johnson.
Please note: FFTW version 3 is not compatible with version 2, but versions 3.1.1 and 3.0.1 are compatible.
Installed on : blacklight, salk, and warhol.
Blacklight Usage
To use FFTW, prepare a batch job containing commands to do the following:
- Set up the module command.
- Load the appropriate fftw module. Both fftw 2 and fftw 3 are installed
on blacklight. You can see what versions are available by typing
module avail fftw
One of the versions will be marked as the default.module load fftw loads the default version
If you want a version other than the default, be sure to use the entire module name when loading it:module load fftw/2.1.5
- Compile with a command like:
ifort -o prog -I${FFTW_INC} prog.f -L${FFTW_LIB} -lfftw3This uses the double precision v.3 library.
Submit the job with the qsub command.
Also see the example jobs.
Salk Usage
To use FFTW, prepare a batch job containing commands to do the following:
- Set up the module command.
- Load the appropriate fftw module. Both fftw 2 and fftw 3 are installed
on salk. You can see what versions are available by typing
module avail fftw
Then type, for examplemodule load fftw/2.1.5 to load version.2.1.5
- Compile with a command like:
ifort -o prog -I${FFTW_INC} prog.f -L${FFTW_LIB} -lfftw3This uses the double precision v.3 library. Single and double precision libraries are available for both versions 2 and 3.
Submit the job with the qsub command.
Also see the example jobs.
Warhol Usage
Only fftw 3 is installed on warhol. To use it, create a batch job containing commands to do the following:
- Load the fftw3 module:
module load fftw3
- To use the intel compilers, load the appropriate module.
module load ifort
- Compile with a command like:
ifort -o prog -I${FFTW_INC} prog.F -L${FFTW_LIB} -lfftw3
Submit the job with the qsub command.
Also see the example jobs.
See also:
- FFTW documentation: