OPAL (Object Oriented Parallel Accelerator Library)
2021.1.99
OPAL
|
#include <FFT.h>
Public Types | |
typedef FieldLayout< 1U > | Layout_t |
typedef BareField< T, 1U > | RealField_t |
typedef LField< T, 1U > | RealLField_t |
typedef FFTBase< 1U, T >::Domain_t | Domain_t |
Public Types inherited from FFTBase< 1U, T > | |
enum | |
enum | FFT_e |
typedef T | Precision_t |
typedef NDIndex< Dim > | Domain_t |
typedef FFTPACK< T > | InternalFFT_t |
Public Member Functions | |
FFT (const Domain_t &rdomain, const bool sineTransformDims[1U], const bool &compressTemps=false) | |
FFT (const Domain_t &rdomain, const bool &compressTemps=false) | |
~FFT (void) | |
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) |
Public Member Functions inherited from FFTBase< 1U, T > | |
FFTBase () | |
FFTBase (FFT_e transform, const Domain_t &domain, const bool transformTheseDims[Dim], bool compressTemps) | |
FFTBase (FFT_e transform, const Domain_t &domain, bool compressTemps) | |
virtual | ~FFTBase (void) |
void | write (std::ostream &out) const |
void | setDirectionName (int direction, const char *directionName) |
void | setNormFact (Precision_t nf) |
int | transVnodes () const |
Private Member Functions | |
void | setup (void) |
Private Attributes | |
Layout_t * | tempRLayouts_m |
RealField_t * | tempRFields_m |
Additional Inherited Members | |
Protected Member Functions inherited from FFTBase< 1U, T > | |
int | getDirection (const char *directionName) const |
translate direction name string into dimension number More... | |
bool | transformDim (unsigned d) const |
query whether this dimension is to be transformed More... | |
unsigned | numTransformDims (void) const |
query number of transform dimensions More... | |
unsigned | activeDimension (unsigned d) const |
get dimension number from list of transformed dimensions More... | |
InternalFFT_t & | getEngine (void) |
access the internal FFT Engine More... | |
Precision_t & | getNormFact (void) |
get the FFT normalization factor More... | |
const Domain_t & | getDomain (void) const |
get our domain More... | |
bool | checkDomain (const Domain_t &dom1, const Domain_t &dom2) const |
compare indexes of two domains More... | |
bool | compressTemps (void) const |
do we compress temps? More... | |
Static Protected Attributes inherited from FFTBase< 1U, T > | |
static GuardCellSizes< Dim > | nullGC |
null GuardCellSizes object for checking BareField arguments to transform More... | |
1D sine transform class
typedef FFTBase<1U,T>::Domain_t FFT< SineTransform, 1U, T >::Domain_t |
typedef FieldLayout<1U> FFT< SineTransform, 1U, T >::Layout_t |
typedef BareField<T,1U> FFT< SineTransform, 1U, T >::RealField_t |
typedef LField<T,1U> FFT< SineTransform, 1U, T >::RealLField_t |
FFT< SineTransform, 1U, T >::FFT | ( | const Domain_t & | rdomain, |
const bool | sineTransformDims[1U], | ||
const bool & | compressTemps = false |
||
) |
FFT< SineTransform, 1U, T >::FFT | ( | const Domain_t & | rdomain, |
const bool & | compressTemps = false |
||
) |
Same as above, but transform all dims:
FFT< SineTransform, 1U, T >::~FFT | ( | void | ) |
|
private |
setup performs all the initializations necessary after the transform directions have been specified.
Definition at line 3052 of file FFT.hpp.
References FFTBase< Dim, T >::compressTemps(), FFTBase< Dim, T >::getDomain(), and PARALLEL.
void FFT< SineTransform, 1U, T >::transform | ( | const char * | directionName, |
RealField_t & | f | ||
) |
void FFT< SineTransform, 1U, T >::transform | ( | const char * | directionName, |
RealField_t & | f, | ||
RealField_t & | g, | ||
const bool & | constInput = false |
||
) |
void FFT< SineTransform, 1U, T >::transform | ( | int | direction, |
RealField_t & | f | ||
) |
In-place version of real-to-real transform
void FFT< SineTransform, 1U, T >::transform | ( | int | direction, |
RealField_t & | f, | ||
RealField_t & | g, | ||
const bool & | constInput = false |
||
) |
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.
|
private |
|
private |