PSCF v1.3
|
A list of c fields stored in both basis and r-grid format. More...
#include <CFieldContainer.h>
Public Types | |
typedef CFieldsReal< D, RField< D >, FieldIo< D > > | Base |
Alias for base class. |
Public Member Functions | |
void | setFieldIo (FieldIo< D > const &fieldIo) |
Create association with FIT (store pointer). | |
void | setNMonomer (int nMonomer) |
Set stored value of nMonomer. | |
void | setWriteUnitCell (UnitCell< D > const &cell) |
Set unit cell used when writing field files. | |
void | allocateRGrid (IntVec< D > const &dimensions) |
Allocate memory for fields in rgrid format. | |
void | allocateBasis (int nBasis) |
Allocate or re-allocate memory for fields in basis format. | |
void | allocate (int nMonomer, int nBasis, IntVec< D > const &dimensions) |
Allocate memory for both r-grid and basis field formats. | |
DArray< DArray< double > > & | basis () |
Get array of all fields in basis format (non-const). | |
DArray< DArray< double > > const & | basis () const |
Get array of all fields in basis format (const) | |
DArray< double > & | basis (int monomerId) |
Get the field for one monomer type in basis format (non-const). | |
DArray< double > const & | basis (int monomerId) const |
Get the field for one monomer type in basis format (const) | |
DArray< RField< D > > & | rgrid () |
Get array of all fields in r-grid format (non-const). | |
DArray< RField< D > > const & | rgrid () const |
Get array of all fields in r-grid format (const). | |
RField< D > & | rgrid (int monomerId) |
Get field for one monomer type in r-grid format (non-const) | |
RField< D > const & | rgrid (int monomerId) const |
Get field for one monomer type in r-grid format (const). | |
bool | isAllocatedRGrid () const |
Has memory been allocated for fields in r-grid format? | |
bool | isAllocatedBasis () const |
Has memory been allocated for fields in basis format? | |
bool | hasData () const |
Does this container have up-to-date fields? | |
bool | isSymmetric () const |
Are the fields invariant under elements of the space group? | |
void | setHasData (bool hasData) |
Set the hasData flag. | |
void | setIsSymmetric (bool isSymmetric) |
Set the isSymmetric flag. | |
Public Member Functions inherited from Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > > | |
CFieldsReal () | |
Constructor. | |
~CFieldsReal () | |
Destructor. | |
void | setFieldIo (FieldIo< D > const &fieldIo) |
Create association with FIT (store pointer). | |
void | setWriteUnitCell (UnitCell< D > const &cell) |
Set unit cell used when writing field files. | |
void | setNMonomer (int nMonomer) |
Set stored value of nMonomer. | |
void | allocateRGrid (IntVec< D > const &dimensions) |
Allocate memory for fields in rgrid format. | |
void | allocateBasis (int nBasis) |
Allocate or re-allocate memory for fields in basis format. | |
void | allocate (int nMonomer, int nBasis, IntVec< D > const &dimensions) |
Allocate memory for both r-grid and basis field formats. | |
DArray< DArray< double > > & | basis () |
Get array of all fields in basis format (non-const). | |
DArray< DArray< double > > const & | basis () const |
Get array of all fields in basis format (const) | |
DArray< double > & | basis (int monomerId) |
Get the field for one monomer type in basis format (non-const). | |
DArray< double > const & | basis (int monomerId) const |
Get the field for one monomer type in basis format (const) | |
DArray< RField< D > > & | rgrid () |
Get array of all fields in r-grid format (non-const). | |
DArray< RField< D > > const & | rgrid () const |
Get array of all fields in r-grid format (const). | |
RField< D > & | rgrid (int monomerId) |
Get field for one monomer type in r-grid format (non-const) | |
RField< D > const & | rgrid (int monomerId) const |
Get field for one monomer type in r-grid format (const). | |
void | writeBasis (std::ostream &out) const |
Write fields to an input stream in symmetrized basis format. | |
void | writeBasis (std::string filename) const |
Write fields to a named file, in symmetrized basis format. | |
void | writeRGrid (std::ostream &out) const |
Writes fields to an input stream in real-space (r-grid) format. | |
void | writeRGrid (std::string filename) const |
Writes fields to a named file in real-space (r-grid) format. | |
bool | isAllocatedRGrid () const |
Has memory been allocated for fields in r-grid format? | |
bool | isAllocatedBasis () const |
Has memory been allocated for fields in basis format? | |
bool | hasData () const |
Does this container have up-to-date fields? | |
bool | isSymmetric () const |
Are the fields invariant under elements of the space group? | |
void | setHasData (bool hasData) |
Set the hasData flag. | |
void | setIsSymmetric (bool isSymmetric) |
Set the isSymmetric flag. |
Protected Member Functions | |
FieldIo< D > const & | fieldIo () const |
Get associated FieldIo object (const reference). | |
Protected Member Functions inherited from Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > > | |
FieldIo< D > const & | fieldIo () const |
Get associated FieldIo object (const reference). |
A list of c fields stored in both basis and r-grid format.
This class is simply a named partial specialization of the base class template Pscf::Prdc::CFieldsReal, designed for use on CPU hardware. Please see documentation of the base class for API documentation.
Definition at line 33 of file rpc/field/CFieldContainer.h.
typedef CFieldsReal<D, RField<D>, FieldIo<D> > Pscf::Rpc::CFieldContainer< D >::Base |
Alias for base class.
Definition at line 39 of file rpc/field/CFieldContainer.h.
void Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::setFieldIo | ( | FieldIo< D > const & | fieldIo | ) |
Create association with FIT (store pointer).
fieldIo | associated FIT (FieldIo) object |
void Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::setNMonomer | ( | int | nMonomer | ) |
Set stored value of nMonomer.
This function may only be called once. The value of nMonomer must be positive.
nMonomer | number of monomer types. |
void Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::setWriteUnitCell | ( | UnitCell< D > const & | cell | ) |
Set unit cell used when writing field files.
This function creates a stored pointer to a UnitCell<D> that is is used by the writeBasis and writeRGrid functions, which each write the unit cell parameters from in this object to a field file header. This function may only be called once.
cell | unit cell that is used by writeBasis and writeRGrid. |
void Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::allocateRGrid | ( | IntVec< D > const & | dimensions | ) |
Allocate memory for fields in rgrid format.
This function may only be called once.
dimensions | dimensions of spatial mesh |
void Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::allocateBasis | ( | int | nBasis | ) |
Allocate or re-allocate memory for fields in basis format.
This function may only be called once.
nBasis | number of basis functions |
void Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::allocate | ( | int | nMonomer, |
int | nBasis, | ||
IntVec< D > const & | dimensions ) |
Allocate memory for both r-grid and basis field formats.
This function may only be called once.
nMonomer | number of monomer types |
nBasis | number of basis functions |
dimensions | dimensions of spatial mesh |
DArray< DArray< double > > & Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::basis | ( | ) |
Get array of all fields in basis format (non-const).
DArray< DArray< double > > const & Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::basis | ( | ) | const |
Get array of all fields in basis format (const)
The array capacity is equal to the number of monomer types.
DArray< double > & Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::basis | ( | int | monomerId | ) |
Get the field for one monomer type in basis format (non-const).
monomerId | integer monomer type index (0, ... ,nMonomer-1) |
DArray< double > const & Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::basis | ( | int | monomerId | ) | const |
Get the field for one monomer type in basis format (const)
monomerId | integer monomer type index (0, ... ,nMonomer-1) |
DArray< RField< D > > & Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::rgrid | ( | ) |
Get array of all fields in r-grid format (non-const).
DArray< RField< D > > const & Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::rgrid | ( | ) | const |
Get array of all fields in r-grid format (const).
RField< D > & Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::rgrid | ( | int | monomerId | ) |
Get field for one monomer type in r-grid format (non-const)
monomerId | integer monomer type index (0,..,nMonomer-1) |
RField< D > const & Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::rgrid | ( | int | monomerId | ) | const |
Get field for one monomer type in r-grid format (const).
monomerId | integer monomer type index (0,..,nMonomer-1) |
bool Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::isAllocatedRGrid | ( | ) | const |
Has memory been allocated for fields in r-grid format?
bool Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::isAllocatedBasis | ( | ) | const |
Has memory been allocated for fields in basis format?
bool Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::hasData | ( | ) | const |
Does this container have up-to-date fields?
bool Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::isSymmetric | ( | ) | const |
Are the fields invariant under elements of the space group?
void Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::setHasData | ( | bool | hasData | ) |
Set the hasData flag.
This should be set true when fields are set to those computed from the current w fields, and false when any input to that calculation changes.
void Pscf::Prdc::CFieldsReal< D, RField< D >, FieldIo< D > >::setIsSymmetric | ( | bool | isSymmetric | ) |
Set the isSymmetric flag.
This should be set true if and only if the fields are known to have been computed from symmetric w fields, and the basis representation exists.
|
protected |
Get associated FieldIo object (const reference).