cannam@95: cannam@95: cannam@95: 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: Real-data DFT Array Format, cannam@95: Up: Basic Interface cannam@95:


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

4.3.5 Real-to-Real Transforms

cannam@95: cannam@95:

cannam@95:

     fftw_plan fftw_plan_r2r_1d(int n, double *in, double *out,
cannam@95:                                 fftw_r2r_kind kind, unsigned flags);
cannam@95:      fftw_plan fftw_plan_r2r_2d(int n0, int n1, double *in, double *out,
cannam@95:                                 fftw_r2r_kind kind0, fftw_r2r_kind kind1,
cannam@95:                                 unsigned flags);
cannam@95:      fftw_plan fftw_plan_r2r_3d(int n0, int n1, int n2,
cannam@95:                                 double *in, double *out,
cannam@95:                                 fftw_r2r_kind kind0,
cannam@95:                                 fftw_r2r_kind kind1,
cannam@95:                                 fftw_r2r_kind kind2,
cannam@95:                                 unsigned flags);
cannam@95:      fftw_plan fftw_plan_r2r(int rank, const int *n, double *in, double *out,
cannam@95:                              const fftw_r2r_kind *kind, unsigned flags);
cannam@95: 
cannam@95:

cannam@95: Plan a real input/output (r2r) transform of various kinds in zero or cannam@95: more dimensions, returning an fftw_plan (see Using Plans). cannam@95: cannam@95:

Once you have created a plan for a certain transform type and cannam@95: parameters, then creating another plan of the same type and parameters, cannam@95: but for different arrays, is fast and shares constant data with the cannam@95: first plan (if it still exists). cannam@95: cannam@95:

The planner returns NULL if the plan cannot be created. A cannam@95: non-NULL plan is always returned by the basic interface unless cannam@95: you are using a customized FFTW configuration supporting a restricted cannam@95: set of transforms, or for size-1 FFTW_REDFT00 kinds (which are cannam@95: not defined). cannam@95: cannam@95: cannam@95:

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