FFT< SineTransform, Dim, T > Class Template Reference

#include <FFT.h>

Inheritance diagram for FFT< SineTransform, Dim, T >:

Inheritance graph
[legend]
Collaboration diagram for FFT< SineTransform, Dim, T >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef FieldLayout< Dim > Layout_t
typedef BareField< T, Dim > RealField_t
typedef LField< T, Dim > RealLField_t
typedef complex Complex_t
typedef BareField< Complex_t,
Dim > 
ComplexField_t
typedef LField< Complex_t,
Dim > 
ComplexLField_t
typedef FFTBase< Dim, T
>::Domain_t 
Domain_t

Public Member Functions

 FFT (const Domain_t &rdomain, const Domain_t &cdomain, const bool transformTheseDims[Dim], const bool sineTransformDims[Dim], const bool &compressTemps=false)
 FFT (const Domain_t &rdomain, const Domain_t &cdomain, const bool sineTransformDims[Dim], const bool &compressTemps=false)
 FFT (const Domain_t &rdomain, const bool sineTransformDims[Dim], const bool &compressTemps=false)
 FFT (const Domain_t &rdomain, const bool &compressTemps=false)
 ~FFT (void)
void transform (int direction, RealField_t &f, ComplexField_t &g, const bool &constInput=false)
void transform (const char *directionName, RealField_t &f, ComplexField_t &g, const bool &constInput=false)
void transform (int direction, ComplexField_t &f, RealField_t &g, const bool &constInput=false)
void transform (const char *directionName, ComplexField_t &f, RealField_t &g, const bool &constInput=false)
void transform (int direction, RealField_t &f, RealField_t &g, const bool &constInput=false)
void transform (const char *directionName, RealField_t &f, RealField_t &g, const bool &constInput=false)
void transform (int direction, RealField_t &f)
void transform (const char *directionName, RealField_t &f)

Detailed Description

template<unsigned Dim, class T>
class FFT< SineTransform, Dim, T >

sine transform class

Definition at line 673 of file FFT.h.


Member Typedef Documentation

template<unsigned Dim, class T>
typedef complex FFT< SineTransform, Dim, T >::Complex_t
 

Definition at line 684 of file FFT.h.

template<unsigned Dim, class T>
typedef BareField<Complex_t,Dim> FFT< SineTransform, Dim, T >::ComplexField_t
 

Definition at line 686 of file FFT.h.

template<unsigned Dim, class T>
typedef LField<Complex_t,Dim> FFT< SineTransform, Dim, T >::ComplexLField_t
 

Definition at line 687 of file FFT.h.

template<unsigned Dim, class T>
typedef FFTBase<Dim,T>::Domain_t FFT< SineTransform, Dim, T >::Domain_t
 

Reimplemented from FFTBase< Dim, T >.

Definition at line 688 of file FFT.h.

template<unsigned Dim, class T>
typedef FieldLayout<Dim> FFT< SineTransform, Dim, T >::Layout_t
 

Definition at line 678 of file FFT.h.

template<unsigned Dim, class T>
typedef BareField<T,Dim> FFT< SineTransform, Dim, T >::RealField_t
 

Definition at line 679 of file FFT.h.

template<unsigned Dim, class T>
typedef LField<T,Dim> FFT< SineTransform, Dim, T >::RealLField_t
 

Definition at line 680 of file FFT.h.


Constructor & Destructor Documentation

template<unsigned Dim, class T>
FFT< SineTransform, Dim, T >::FFT const Domain_t rdomain,
const Domain_t cdomain,
const bool  transformTheseDims[Dim],
const bool  sineTransformDims[Dim],
const bool compressTemps = false
 

Constructor for doing sine transform(s) followed by RC FFT Create a new FFT object with the given domains for input/output Fields Specify which dimensions to transform along. Also specify which of these are sine transforms Optional argument compress indicates whether or not to compress temporary Fields in between uses.

template<unsigned Dim, class T>
FFT< SineTransform, Dim, T >::FFT const Domain_t rdomain,
const Domain_t cdomain,
const bool  sineTransformDims[Dim],
const bool compressTemps = false
 

Same as above, but transform all dims:

template<unsigned Dim, class T>
FFT< SineTransform, Dim, T >::FFT const Domain_t rdomain,
const bool  sineTransformDims[Dim],
const bool compressTemps = false
 

Separate constructors for doing only sine transforms Create a new FFT object with the given domain for input/output Field Specify which dimensions to transform along. Optional argument compress indicates whether or not to compress temporary Fields in between uses.

template<unsigned Dim, class T>
FFT< SineTransform, Dim, T >::FFT const Domain_t rdomain,
const bool compressTemps = false
 

Same as above, but transform all dims:

template<unsigned Dim, class T>
FFT< SineTransform, Dim, T >::~FFT void   ) 
 

Definition at line 2331 of file FFT.cpp.

References CT, FFTBase< Dim, T >::numTransformDims(), TAU_FFT, TAU_PROFILE, and TAU_TYPE_STRING.

Here is the call graph for this function:


Member Function Documentation

template<unsigned Dim, class T>
void FFT< SineTransform, Dim, T >::transform const char *  directionName,
RealField_t f
 

template<unsigned Dim, class T>
void FFT< SineTransform, Dim, T >::transform int  direction,
RealField_t f
 

In-place version of real-to-real transform

template<unsigned Dim, class T>
void FFT< SineTransform, Dim, T >::transform const char *  directionName,
RealField_t f,
RealField_t g,
const bool constInput = false
 

template<unsigned Dim, class T>
void FFT< SineTransform, Dim, T >::transform int  direction,
RealField_t f,
RealField_t g,
const bool constInput = false
 

These transforms are for doing sine transforms only sine transform: specify +1 or -1 to indicate forward or inverse transform, or specify the user-defined name string for the direction. Supply a second BareField to store the output. optional argument constInput indicates whether or not to treat the input Field argument f as const. If not, we can use it as a temporary in order to avoid an additional data transpose.

template<unsigned Dim, class T>
void FFT< SineTransform, Dim, T >::transform const char *  directionName,
ComplexField_t f,
RealField_t g,
const bool constInput = false
 

template<unsigned Dim, class T>
void FFT< SineTransform, Dim, T >::transform int  direction,
ComplexField_t f,
RealField_t g,
const bool constInput = false
 

complex-to-real FFT, followed by sine transform(s) Same as above, but with input and output field types reversed.

template<unsigned Dim, class T>
void FFT< SineTransform, Dim, T >::transform const char *  directionName,
RealField_t f,
ComplexField_t g,
const bool constInput = false
 

template<unsigned Dim, class T>
void FFT< SineTransform, Dim, T >::transform int  direction,
RealField_t f,
ComplexField_t g,
const bool constInput = false
 

These transforms are for combinations of sine transforms and RC FFTs

Do the FFT: specify +1 or -1 to indicate forward or inverse transform, or specify the user-defined name string for the direction. Supply a second BareField to store the output. optional argument constInput indicates whether or not to treat the input Field argument f as const. If not, we can use it as a temporary in order to avoid an additional data transpose.


The documentation for this class was generated from the following files:
Generated on Mon Jan 16 14:38:35 2006 for IPPL by  doxygen 1.4.6