JDFTx  1.7.0
complexScalarFieldData Struct Reference

Real space complex scalar field data Do not use this data structure directly or from a simple pointer complexScalarFieldData*; work only with complexScalarField's. The public functions of complexScalarFieldData can be accessed with -> from the complexScalarField. More...

#include <ScalarField.h>

Inheritance diagram for complexScalarFieldData:
FieldData< complex > ManagedMemory< complex >

Public Types

typedef complex DataType
 Type of data in container (useful for templating)
 

Public Member Functions

complexScalarField clone () const
 clone the data (NOTE: assigning complexScalarField's makes a new reference to the same data)
 
 complexScalarFieldData (const GridInfo &gInfo, bool onGpu, PrivateTag)
 called only by complexScalarFieldData::alloc()
 
matrix toMatrix () const
 convert to matrix
 
- Public Member Functions inherited from FieldData< complex >
 FieldData (const GridInfo &gInfo, string category, int nElem, bool onGpu=false)
 
void copyData (const FieldData< complex > &other)
 Copy data and scale (used by clone())
 
void absorbScale () const
 Absorb scale factor into data.
 
complex * data (bool shouldAbsorbScale=true)
 get a pointer to the actual data (after absorbing the scale factor, unless otherwise specified)
 
const complex * data (bool shouldAbsorbScale=true) const
 get a const pointer to the actual data (after absorbing the scale factor, unless otherwise specified)
 
complex * dataGpu (bool shouldAbsorbScale=true)
 get a pointer to the actual data (after absorbing the scale factor, unless otherwise specified)
 
const complex * dataGpu (bool shouldAbsorbScale=true) const
 get a const pointer to the actual data (after absorbing the scale factor, unless otherwise specified)
 
complex * dataPref (bool shouldAbsorbScale=true)
 
const complex * dataPref (bool shouldAbsorbScale=true) const
 
void zero ()
 initialize to zero
 
bool isOnGpu () const
 Check where the data is (for #ifdef simplicity exposed even when no GPU_ENABLED)
 
void sendData (const MPIUtil *mpiUtil, int dest, int tag, MPIUtil::Request *request=0) const
 
void recvData (const MPIUtil *mpiUtil, int dest, int tag, MPIUtil::Request *request=0)
 
void bcastData (const MPIUtil *mpiUtil, int root=0, MPIUtil::Request *request=0)
 
void allReduceData (const MPIUtil *mpiUtil, MPIUtil::ReduceOp op, bool safeMode=false, MPIUtil::Request *request=0)
 
void reduceData (const MPIUtil *mpiUtil, MPIUtil::ReduceOp op, int root=0, MPIUtil::Request *request=0)
 

Static Public Member Functions

static complexScalarField alloc (const GridInfo &gInfo, bool onGpu=false)
 Create real space data.
 

Additional Inherited Members

- Public Attributes inherited from FieldData< complex >
const int nElem
 number of elements
 
double scale
 overall scale factor of the data array
 
const GridInfo & gInfo
 simulation grid info
 

Detailed Description

Real space complex scalar field data Do not use this data structure directly or from a simple pointer complexScalarFieldData*; work only with complexScalarField's. The public functions of complexScalarFieldData can be accessed with -> from the complexScalarField.


The documentation for this struct was generated from the following file: