FFT< CCTransform, Dim, T > Class Template Reference

#include <FFT.h>

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

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

Collaboration graph
[legend]
List of all members.

Public Types

typedef FieldLayout< Dim > Layout_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 &cdomain, const bool transformTheseDims[Dim], const bool &compressTemps=false)
 FFT (const Domain_t &cdomain, const bool &compressTemps=false)
 ~FFT (void)
void transform (int direction, ComplexField_t &f, ComplexField_t &g, const bool &constInput=false)
void transform (const char *directionName, ComplexField_t &f, ComplexField_t &g, const bool &constInput=false)
void transform (int direction, ComplexField_t &f)
void transform (const char *directionName, ComplexField_t &f)

Detailed Description

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

complex-to-complex FFT class

Definition at line 58 of file FFT.h.


Member Typedef Documentation

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

Definition at line 67 of file FFT.h.

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

Definition at line 69 of file FFT.h.

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

Definition at line 70 of file FFT.h.

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

Reimplemented from FFTBase< Dim, T >.

Definition at line 71 of file FFT.h.

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

Definition at line 63 of file FFT.h.


Constructor & Destructor Documentation

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

Create a new FFT object with the given domain for the input Field. Specify which dimensions to transform along. Optional argument compressTemps indicates whether or not to compress temporary Fields in between uses.

template<unsigned Dim, class T>
FFT< CCTransform, Dim, T >::FFT const Domain_t cdomain,
const bool compressTemps = false
[inline]
 

Create a new FFT object of type CCTransform, with a given domain. Default case of transforming along all dimensions. Note this was formerly in the .cpp file, but the IBM linker could not find it!

Definition at line 87 of file FFT.h.

References FFTBase< Dim, T >::getNormFact().

Here is the call graph for this function:

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

Definition at line 149 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< CCTransform, Dim, T >::transform const char *  directionName,
ComplexField_t f
[inline]
 

Definition at line 133 of file FFT.h.

References FieldLayout< Dim >::getDistribution(), FieldLayout< Dim >::getDomain(), BareField< T, Dim >::getGC(), BareField< T, Dim >::getLayout(), PAssert, SERIAL, and TAU_PROFILE_START.

Here is the call graph for this function:

template<unsigned Dim, class T>
void FFT< CCTransform, Dim, T >::transform int  direction,
ComplexField_t f
 

overloaded versions which perform the FFT "in place"

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

invoke using string for direction name

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

Do the FFT: specify +1 or -1 to indicate forward or inverse transform, or specify the user-defined name string for the direction. User provides separate input and output fields 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:31 2006 for IPPL by  doxygen 1.4.6