If FFTW is compiled in
long double (extended) precision
(see Installation and Customization), you may be able to call the
fftwl_ routines (see Precision) from Fortran if
your compiler supports the
C_LONG_DOUBLE_COMPLEX type code.
Because some Fortran compilers do not support
fftwl_ declarations are
segregated into a separate interface file
fftw3l.f03, which you
should include in addition to
fftw3.f03 (which declares
precision-independent ‘FFTW_’ constants):
use, intrinsic :: iso_c_binding include 'fftw3.f03' include 'fftw3l.f03'
We also support using the nonstandard
quadruple-precision type provided by recent versions of
32- and 64-bit x86 hardware (see Installation and Customization),
using the corresponding
gfortran. The quadruple-precision ‘fftwq_’
functions (see Precision) are declared in a
interface file, which should be included in addition to
fftw3l.f03, as above. You should also link with
-lfftw3q -lquadmath -lm as in C.