fftw3: Guru Real-to-real Transforms
4.5.5 Guru Real-to-real Transforms
----------------------------------
fftw_plan fftw_plan_guru_r2r(int rank, const fftw_iodim *dims,
int howmany_rank,
const fftw_iodim *howmany_dims,
double *in, double *out,
const fftw_r2r_kind *kind,
unsigned flags);
Plan a real-to-real (r2r) multi-dimensional 'FFTW_FORWARD' transform
with transform dimensions given by ('rank', 'dims') over a
multi-dimensional vector (loop) of dimensions ('howmany_rank',
'howmany_dims'). 'dims' and 'howmany_dims' should point to 'fftw_iodim'
arrays of length 'rank' and 'howmany_rank', respectively.
The transform kind of each dimension is given by the 'kind'
parameter, which should point to an array of length 'rank'. Valid
'fftw_r2r_kind' constants are given in Real-to-Real Transform
Kinds.
'in' and 'out' point to the real input and output arrays; they may be
the same, indicating an in-place transform.
'flags' is a bitwise OR ('|') of zero or more planner flags, as
defined in Planner Flags.