Calling Wrappers from Fortran

The FFTW2 wrappers to Intel MKL provide the following subroutines for calling from Fortran:

call fftw_f77_create_plan(plan, n, dir, flags)

call fftw_f77(plan, howmany, in, istride, idist, out, ostride, odist)

call fftw_f77_one(plan, in, out)

call fftw_f77_threads(nthreads, plan, howmany, in, istride, idist, out, ostride, odist)

call fftw_f77_threads_one(nthreads, plan, in, out)

call fftw_f77_destroy_plan(plan)

call fftwnd_f77_create_plan(plan, rank, n, dir, flags)

call fftw2d_f77_create_plan(plan, nx, ny, dir, flags)

call fftw3d_f77_create_plan(plan, nx, ny, nz, dir, flags)

call fftwnd_f77(plan, howmany, in, istride, idist, out, ostride, odist)

call fftwnd_f77_one(plan, in, out)

call fftwnd_f77_threads(nthreads, plan, howmany, in, istride, idist, out, ostride, odist)

call fftwnd_f77_threads_one(nthreads, plan, in, out)

call fftwnd_f77_destroy_plan(plan)

call rfftw_f77_create_plan(plan, n, dir, flags)

call rfftw_f77(plan, howmany, in, istride, idist, out, ostride, odist)

call rfftw_f77_one(plan, in, out)

call rfftw_f77_threads(nthreads, plan, howmany, in, istride, idist, out, ostride, odist)

call rfftw_f77_threads_one(nthreads, plan, in, out)

call rfftw_f77_destroy_plan(plan)

call rfftwnd_f77_create_plan(plan, rank, n, dir, flags)

call rfftw2d_f77_create_plan(plan, nx, ny, dir, flags)

call rfftw3d_f77_create_plan(plan, nx, ny, nz, dir, flags)

call rfftwnd_f77_complex_to_real(plan, howmany, in, istride, idist, out, ostride, odist)

call rfftwnd_f77_one_complex_to_real (plan, in, out)

call rfftwnd_f77_real_to_complex(plan, howmany, in, istride, idist, out, ostride, odist)

call rfftwnd_f77_one_real_to_complex (plan, in, out)

call rfftwnd_f77_threads_complex_to_real(nthreads, plan, howmany, in, istride, idist, out, ostride, odist)

call rfftwnd_f77_threads_one_complex_to_real(nthreads, plan, in, out)

call rfftwnd_f77_threads_real_to_complex(nthreads, plan, howmany, in, istride, idist, out, ostride, odist)

call rfftwnd_f77_threads_one_real_to_complex(nthreads, plan, in, out)

call rfftwnd_f77_destroy_plan(plan)

call fftw_f77_threads_init(info)

The FFTW Fortran functions are actually the wrappers to FFTW C functions. So, their functionality and limitations are the same as of the corresponding C wrappers.

See Also


Submit feedback on this help topic

Copyright © 1994 - 2011, Intel Corporation. All rights reserved.