cannam@95: cannam@95: cannam@95: Guru Real-to-real Transforms - FFTW 3.3.3 cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95:
cannam@95: cannam@95: cannam@95:

cannam@95: Next: , cannam@95: Previous: Guru Real-data DFTs, cannam@95: Up: Guru Interface cannam@95:


cannam@95:
cannam@95: cannam@95:

4.5.5 Guru Real-to-real Transforms

cannam@95: cannam@95:
     fftw_plan fftw_plan_guru_r2r(int rank, const fftw_iodim *dims,
cannam@95:                                   int howmany_rank,
cannam@95:                                   const fftw_iodim *howmany_dims,
cannam@95:                                   double *in, double *out,
cannam@95:                                   const fftw_r2r_kind *kind,
cannam@95:                                   unsigned flags);
cannam@95: 
cannam@95:

cannam@95: Plan a real-to-real (r2r) multi-dimensional FFTW_FORWARD cannam@95: transform with transform dimensions given by (rank, dims) cannam@95: over a multi-dimensional vector (loop) of dimensions cannam@95: (howmany_rank, howmany_dims). dims and cannam@95: howmany_dims should point to fftw_iodim arrays of length cannam@95: rank and howmany_rank, respectively. cannam@95: cannam@95:

The transform kind of each dimension is given by the kind cannam@95: parameter, which should point to an array of length rank. Valid cannam@95: fftw_r2r_kind constants are given in Real-to-Real Transform Kinds. cannam@95: cannam@95:

in and out point to the real input and output arrays; they cannam@95: may be the same, indicating an in-place transform. cannam@95: cannam@95:

flags is a bitwise OR (‘|’) of zero or more planner flags, cannam@95: as defined in Planner Flags. cannam@95: cannam@95: cannam@95: cannam@95: