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 SeeReal-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 SeePlanner Flags.