Reciprocal space complex scalar field data Do not use this data structure directly or from a simple pointer complexScalarFieldTildeData*; work only with complexScalarFieldTilde's. The public functions of complexScalarFieldTildeData can be accessed with -> from the complexScalarFieldTilde. More...
#include <ScalarField.h>
Public Types | |
typedef complex | DataType |
Type of data in container (useful for templating) | |
![]() | |
typedef void | DataType |
this base class has no specific data type | |
Public Member Functions | |
DECLARE_DATA_ACCESS DECLARE_DATA_PREF_ACCESS complexScalarFieldTilde | clone () const |
clone the data (NOTE: assigning complexScalarFieldTilde's makes a new reference to the same data) | |
complexScalarFieldTildeData (const GridInfo &gInfo, bool onGpu, PrivateTag) | |
called only by complexScalarFieldTildeData::alloc() | |
![]() | |
void | absorbScale () const |
absorb scale factor into data | |
void | zero () |
initialize to zero | |
void * | data (bool shouldAbsorbScale=true) |
get a pointer to the actual data (after absorbing the scale factor, unless otherwise specified) | |
const void * | data (bool shouldAbsorbScale=true) const |
get a const pointer to the actual data (after absorbing the scale factor, unless otherwise specified) | |
void * | dataGpu (bool shouldAbsorbScale=true) |
get a pointer to the actual data (after absorbing the scale factor, unless otherwise specified) | |
const void * | dataGpu (bool shouldAbsorbScale=true) const |
get a const pointer to the actual data (after absorbing the scale factor, unless otherwise specified) | |
DECLARE_DATA_PREF_ACCESS bool | isOnGpu () const |
Check where the data is (for #ifdef simplicity exposed even when no GPU_ENABLED) | |
FieldData (const GridInfo &gInfo, string category, int nElem, int nDoublesPerElem=1, bool onGpu=false) | |
void | copyData (const FieldData &other) |
copy data and scale (used by clone()) | |
void | send (int dest, int tag=0) const |
send to another process | |
void | recv (int src, int tag=0) |
receive from another process | |
void | bcast (int root=0) |
synchronize across processes (using value on specified root process) | |
void | allReduce (MPIUtil::ReduceOp op, bool safeMode=false) |
apply all-to-all reduction | |
Static Public Member Functions | |
static complexScalarFieldTilde | alloc (const GridInfo &gInfo, bool onGpu=false) |
Create reciprocal space data. | |
Additional Inherited Members | |
![]() | |
int | nElem |
number of elements = #gInfo.nr | |
double | scale |
overall scale factor of the data array | |
const GridInfo & | gInfo |
simulation grid info | |
Reciprocal space complex scalar field data Do not use this data structure directly or from a simple pointer complexScalarFieldTildeData*; work only with complexScalarFieldTilde's. The public functions of complexScalarFieldTildeData can be accessed with -> from the complexScalarFieldTilde.