PSCF v1.1
|
Descriptor for a FilmIterator object. More...
#include <FilmIteratorBase.h>
Public Member Functions | |
FilmIteratorBase (System< D > &system) | |
Constructor. More... | |
~FilmIteratorBase () | |
Destructor. More... | |
void | readParameters (std::istream &in) |
Read and initialize. More... | |
int | solve (bool isContinuation=false) |
Iterate to a solution. More... | |
IteratorType const & | iterator () const |
Return const reference to the real iterator within this FilmIterator. More... | |
virtual void | setFlexibleParams ()=0 |
Modifies flexibleParams_ to be compatible with thin film constraint. More... | |
virtual void | checkLatticeVectors () const =0 |
Check that lattice vectors are compatible with thin film constraint. More... | |
void | generateWallFields () |
Generates mask and external field for the walls and stores in System. More... | |
void | updateWallFields () |
Updates the mask and external fields for the walls if needed. More... | |
void | checkSpaceGroup () const |
Check that space group is compatible with the thin film constraint. More... | |
bool | isSymmetric () const |
Are the walls chemically identical? More... | |
bool | isAthermal () const |
Are the walls athermal? More... | |
void | setChiBottom (int s, double chi) |
Set the value of chi between species s and the bottom wall. More... | |
void | setChiTop (int s, double chi) |
Set the value of chi between species s and the top wall. More... | |
int | normalVecId () const |
Get value of normalVecId. More... | |
double | interfaceThickness () const |
Get value of interfaceThickness. More... | |
double | wallThickness () const |
Get value of wallThickness. More... | |
DArray< double > const & | chiTop () const |
Get const chiBottom matrix by reference. More... | |
DArray< double > const & | chiBottom () const |
Get const chiTop array by reference. More... | |
double | chiBottom (int s) const |
Get the chi parameter between the bottom wall and species s. More... | |
double | chiTop (int s) const |
Get the chi parameter between the top wall and species s. More... | |
![]() | |
Iterator () | |
Default constructor. More... | |
Iterator (System< D > &system) | |
Constructor. More... | |
~Iterator () | |
Destructor. More... | |
virtual int | solve (bool isContinuation)=0 |
Iterate to solution. More... | |
bool | isFlexible () const |
Return true iff unit cell has any flexible lattice parameters. More... | |
FSArray< bool, 6 > | flexibleParams () const |
Get the array indicating which lattice parameters are flexible. More... | |
int | nFlexibleParams () const |
Get the number of flexible lattice parameters. More... | |
![]() | |
ParamComposite () | |
Constructor. More... | |
ParamComposite (const ParamComposite &other) | |
Copy constructor. More... | |
ParamComposite (int capacity) | |
Constructor. More... | |
virtual | ~ParamComposite () |
Virtual destructor. More... | |
void | resetParam () |
Resets ParamComposite to its empty state. More... | |
virtual void | readParam (std::istream &in) |
Read the parameter file block. More... | |
virtual void | readParamOptional (std::istream &in) |
Read optional parameter file block. More... | |
virtual void | writeParam (std::ostream &out) const |
Write all parameters to an output stream. More... | |
virtual void | load (Serializable::IArchive &ar) |
Load all parameters from an input archive. More... | |
virtual void | loadOptional (Serializable::IArchive &ar) |
Load an optional ParamComposite. More... | |
virtual void | loadParameters (Serializable::IArchive &ar) |
Load state from archive, without adding Begin and End lines. More... | |
virtual void | save (Serializable::OArchive &ar) |
Saves all parameters to an archive. More... | |
void | saveOptional (Serializable::OArchive &ar) |
Saves isActive flag, and then calls save() iff isActive is true. More... | |
void | readParamComposite (std::istream &in, ParamComposite &child, bool next=true) |
Add and read a required child ParamComposite. More... | |
void | readParamCompositeOptional (std::istream &in, ParamComposite &child, bool next=true) |
Add and attempt to read an optional child ParamComposite. More... | |
template<typename Type > | |
ScalarParam< Type > & | read (std::istream &in, const char *label, Type &value) |
Add and read a new required ScalarParam < Type > object. More... | |
template<typename Type > | |
ScalarParam< Type > & | readOptional (std::istream &in, const char *label, Type &value) |
Add and read a new optional ScalarParam < Type > object. More... | |
template<typename Type > | |
CArrayParam< Type > & | readCArray (std::istream &in, const char *label, Type *value, int n) |
Add and read a required C array parameter. More... | |
template<typename Type > | |
CArrayParam< Type > & | readOptionalCArray (std::istream &in, const char *label, Type *value, int n) |
Add and read an optional C array parameter. More... | |
template<typename Type > | |
DArrayParam< Type > & | readDArray (std::istream &in, const char *label, DArray< Type > &array, int n) |
Add and read a required DArray < Type > parameter. More... | |
template<typename Type > | |
DArrayParam< Type > & | readOptionalDArray (std::istream &in, const char *label, DArray< Type > &array, int n) |
Add and read an optional DArray < Type > parameter. More... | |
template<typename Type , int N> | |
FArrayParam< Type, N > & | readFArray (std::istream &in, const char *label, FArray< Type, N > &array) |
Add and read a required FArray < Type, N > array parameter. More... | |
template<typename Type , int N> | |
FArrayParam< Type, N > & | readOptionalFArray (std::istream &in, const char *label, FArray< Type, N > &array) |
Add and read an optional FArray < Type, N > array parameter. More... | |
template<typename Type , int N> | |
FSArrayParam< Type, N > & | readFSArray (std::istream &in, const char *label, FSArray< Type, N > &array, int size) |
Add and read a required FSArray < Type, N > array parameter. More... | |
template<typename Type , int N> | |
FSArrayParam< Type, N > & | readOptionalFSArray (std::istream &in, const char *label, FSArray< Type, N > &array, int size) |
Add and read an optional FSArray < Type, N > array parameter. More... | |
template<typename Type > | |
CArray2DParam< Type > & | readCArray2D (std::istream &in, const char *label, Type *value, int m, int n, int np) |
Add and read a required CArray2DParam < Type > 2D C-array. More... | |
template<typename Type > | |
CArray2DParam< Type > & | readOptionalCArray2D (std::istream &in, const char *label, Type *value, int m, int n, int np) |
Add and read an optional CArray2DParam < Type > 2D C-array parameter. More... | |
template<typename Type > | |
DMatrixParam< Type > & | readDMatrix (std::istream &in, const char *label, DMatrix< Type > &matrix, int m, int n) |
Add and read a required DMatrix < Type > matrix parameter. More... | |
template<typename Type > | |
DMatrixParam< Type > & | readOptionalDMatrix (std::istream &in, const char *label, DMatrix< Type > &matrix, int m, int n) |
Add and read an optional DMatrix < Type > matrix parameter. More... | |
template<typename Type > | |
DSymmMatrixParam< Type > & | readDSymmMatrix (std::istream &in, const char *label, DMatrix< Type > &matrix, int n) |
Add and read a required symmetrix DMatrix. More... | |
template<typename Type > | |
DSymmMatrixParam< Type > & | readOptionalDSymmMatrix (std::istream &in, const char *label, DMatrix< Type > &matrix, int n) |
Add and read an optional DMatrix matrix parameter. More... | |
Begin & | readBegin (std::istream &in, const char *label, bool isRequired=true) |
Add and read a class label and opening bracket. More... | |
End & | readEnd (std::istream &in) |
Add and read the closing bracket. More... | |
Blank & | readBlank (std::istream &in) |
Add and read a new Blank object, representing a blank line. More... | |
void | loadParamComposite (Serializable::IArchive &ar, ParamComposite &child, bool next=true) |
Add and load a required child ParamComposite. More... | |
void | loadParamCompositeOptional (Serializable::IArchive &ar, ParamComposite &child, bool next=true) |
Add and load an optional child ParamComposite if isActive. More... | |
template<typename Type > | |
ScalarParam< Type > & | loadParameter (Serializable::IArchive &ar, const char *label, Type &value, bool isRequired) |
Add and load a new ScalarParam < Type > object. More... | |
template<typename Type > | |
ScalarParam< Type > & | loadParameter (Serializable::IArchive &ar, const char *label, Type &value) |
Add and load new required ScalarParam < Type > object. More... | |
template<typename Type > | |
CArrayParam< Type > & | loadCArray (Serializable::IArchive &ar, const char *label, Type *value, int n, bool isRequired) |
Add a C array parameter and load its elements. More... | |
template<typename Type > | |
CArrayParam< Type > & | loadCArray (Serializable::IArchive &ar, const char *label, Type *value, int n) |
Add and load a required CArrayParam< Type > array parameter. More... | |
template<typename Type > | |
DArrayParam< Type > & | loadDArray (Serializable::IArchive &ar, const char *label, DArray< Type > &array, int n, bool isRequired) |
Add an load a DArray < Type > array parameter. More... | |
template<typename Type > | |
DArrayParam< Type > & | loadDArray (Serializable::IArchive &ar, const char *label, DArray< Type > &array, int n) |
Add and load a required DArray< Type > array parameter. More... | |
template<typename Type , int N> | |
FArrayParam< Type, N > & | loadFArray (Serializable::IArchive &ar, const char *label, FArray< Type, N > &array, bool isRequired) |
Add and load an FArray < Type, N > fixed-size array parameter. More... | |
template<typename Type , int N> | |
FArrayParam< Type, N > & | loadFArray (Serializable::IArchive &ar, const char *label, FArray< Type, N > &array) |
Add and load a required FArray < Type > array parameter. More... | |
template<typename Type , int N> | |
FSArrayParam< Type, N > & | loadFSArray (Serializable::IArchive &ar, const char *label, FSArray< Type, N > &array, int size, bool isRequired) |
Add and load an FSArray < Type, N > array parameter. More... | |
template<typename Type , int N> | |
FSArrayParam< Type, N > & | loadFSArray (Serializable::IArchive &ar, const char *label, FSArray< Type, N > &array, int size) |
Add and load a required FSArray < Type > array parameter. More... | |
template<typename Type > | |
CArray2DParam< Type > & | loadCArray2D (Serializable::IArchive &ar, const char *label, Type *value, int m, int n, int np, bool isRequired) |
Add and load a CArray2DParam < Type > C 2D array parameter. More... | |
template<typename Type > | |
CArray2DParam< Type > & | loadCArray2D (Serializable::IArchive &ar, const char *label, Type *value, int m, int n, int np) |
Add and load a required < Type > matrix parameter. More... | |
template<typename Type > | |
DMatrixParam< Type > & | loadDMatrix (Serializable::IArchive &ar, const char *label, DMatrix< Type > &matrix, int m, int n, bool isRequired) |
Add and load a DMatrixParam < Type > matrix parameter. More... | |
template<typename Type > | |
DMatrixParam< Type > & | loadDMatrix (Serializable::IArchive &ar, const char *label, DMatrix< Type > &matrix, int m, int n) |
Add and load a required DMatrixParam < Type > matrix parameter. More... | |
template<typename Type > | |
DSymmMatrixParam< Type > & | loadDSymmMatrix (Serializable::IArchive &ar, const char *label, DMatrix< Type > &matrix, int n, bool isRequired) |
Add and load a symmetric DSymmMatrixParam < Type > matrix parameter. More... | |
template<typename Type > | |
DSymmMatrixParam< Type > & | loadDSymmMatrix (Serializable::IArchive &ar, const char *label, DMatrix< Type > &matrix, int n) |
Add and load a required DSymmMatrixParam < Type > matrix parameter. More... | |
void | addParamComposite (ParamComposite &child, bool next=true) |
Add a child ParamComposite object to the format array. More... | |
Begin & | addBegin (const char *label) |
Add a Begin object representing a class name and bracket. More... | |
End & | addEnd () |
Add a closing bracket. More... | |
Blank & | addBlank () |
Create and add a new Blank object, representing a blank line. More... | |
std::string | className () const |
Get class name string. More... | |
bool | isRequired () const |
Is this ParamComposite required in the input file? More... | |
bool | isActive () const |
Is this parameter active? More... | |
![]() | |
virtual | ~ParamComponent () |
Destructor. More... | |
virtual void | readParam (std::istream &in)=0 |
Read parameter(s) from file. More... | |
virtual void | writeParam (std::ostream &out) const =0 |
Read parameter(s) to file. More... | |
virtual void | load (Serializable::IArchive &ar) |
Load internal state from an archive. More... | |
virtual void | save (Serializable::OArchive &ar) |
Save internal state to an archive. More... | |
virtual void | resetParam () |
Nontrivial implementation provided by ParamComposite subclass. More... | |
void | setIndent (const ParamComponent &parent, bool next=true) |
Set indent level. More... | |
std::string | indent () const |
Return indent string for this object (string of spaces). More... | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Serialize this ParamComponent as a string. More... | |
![]() | |
virtual | ~Serializable () |
Destructor. More... | |
virtual void | save (OArchive &ar)=0 |
Save to an archive. More... | |
virtual void | load (IArchive &ar)=0 |
Load from an archive. More... | |
![]() | |
MpiFileIo () | |
Constructor. More... | |
MpiFileIo (const MpiFileIo &other) | |
Copy constructor. More... | |
bool | isIoProcessor () const |
Can this processor do file I/O ? More... | |
void | setIoCommunicator (MPI::Intracomm &communicator) |
Set the communicator. More... | |
void | clearCommunicator () |
Clear (nullify) the communicator. More... | |
bool | hasIoCommunicator () const |
Does this object have an associated MPI communicator? More... | |
MPI::Intracomm & | ioCommunicator () const |
Get the MPI communicator by reference. More... | |
Protected Member Functions | |
void | setup () |
Initialize just before entry to iterative loop. More... | |
IteratorType & | iterator () |
Return reference to the real iterator within this FilmIterator. More... | |
void | generateExternalFields () |
Generate external fields for the walls. More... | |
template<typename Type > | |
ScalarParam< Type > & | read (std::istream &in, const char *label, Type &value) |
Add and read a new required ScalarParam < Type > object. More... | |
template<typename Type > | |
ScalarParam< Type > & | readOptional (std::istream &in, const char *label, Type &value) |
Add and read a new optional ScalarParam < Type > object. More... | |
template<typename Type > | |
DArrayParam< Type > & | readDArray (std::istream &in, const char *label, DArray< Type > &array, int n) |
Add and read a required DArray < Type > parameter. More... | |
void | setParent (ParamComponent ¶m, bool next=true) |
Set this to the parent of a child component. More... | |
void | addComponent (ParamComponent ¶m, bool isLeaf=true) |
Add a new ParamComponent object to the format array. More... | |
![]() | |
System< D > const & | system () const |
Get parent system by const reference. More... | |
System< D > & | system () |
Get parent system by non-const reference. More... | |
void | setFlexibleParams (FSArray< bool, 6 > const &flexParams) |
Set the array indicating which lattice parameters are flexible. More... | |
![]() | |
void | setClassName (const char *className) |
Set class name string. More... | |
void | setIsRequired (bool isRequired) |
Set or unset the isActive flag. More... | |
void | setIsActive (bool isActive) |
Set or unset the isActive flag. More... | |
void | setParent (ParamComponent ¶m, bool next=true) |
Set this to the parent of a child component. More... | |
void | addComponent (ParamComponent ¶m, bool isLeaf=true) |
Add a new ParamComponent object to the format array. More... | |
template<typename Type > | |
ScalarParam< Type > & | add (std::istream &in, const char *label, Type &value, bool isRequired=true) |
Add a new required ScalarParam < Type > object. More... | |
template<typename Type > | |
CArrayParam< Type > & | addCArray (std::istream &in, const char *label, Type *value, int n, bool isRequired=true) |
Add (but do not read) a required C array parameter. More... | |
template<typename Type > | |
DArrayParam< Type > & | addDArray (std::istream &in, const char *label, DArray< Type > &array, int n, bool isRequired=true) |
Add (but do not read) a DArray < Type > parameter. More... | |
template<typename Type , int N> | |
FArrayParam< Type, N > & | addFArray (std::istream &in, const char *label, FArray< Type, N > &array, bool isRequired=true) |
Add (but do not read) a FArray < Type, N > array parameter. More... | |
template<typename Type , int N> | |
FSArrayParam< Type, N > & | addFSArray (std::istream &in, const char *label, FSArray< Type, N > &array, int size, bool isRequired=true) |
Add (but do not read) a FSArray < Type, N > array parameter. More... | |
template<typename Type > | |
CArray2DParam< Type > & | addCArray2D (std::istream &in, const char *label, Type *value, int m, int n, int np, bool isRequired=true) |
Add (but do not read) a CArray2DParam < Type > 2D C-array. More... | |
template<typename Type > | |
DMatrixParam< Type > & | addDMatrix (std::istream &in, const char *label, DMatrix< Type > &matrix, int m, int n, bool isRequired=true) |
Add and read a required DMatrix < Type > matrix parameter. More... | |
![]() | |
ParamComponent () | |
Constructor. More... | |
ParamComponent (const ParamComponent &other) | |
Copy constructor. More... | |
Additional Inherited Members | |
![]() | |
typedef BinaryFileOArchive | OArchive |
Type of output archive used by save method. More... | |
typedef BinaryFileIArchive | IArchive |
Type of input archive used by load method. More... | |
![]() | |
static void | initStatic () |
Initialize static echo member to false. More... | |
static void | setEcho (bool echo=true) |
Enable or disable echoing for all subclasses of ParamComponent. More... | |
static bool | echo () |
Get echo parameter. More... | |
![]() | |
bool | isFlexible_ |
Are any lattice parameters flexible during iteration? More... | |
FSArray< bool, 6 > | flexibleParams_ |
Array of indices of the lattice parameters that are flexible. More... | |
Descriptor for a FilmIterator object.
This base class template defines all traits of a FilmIterator that do not depend on D, the dimension of the system. The subclasses of FilmIteratorBase are the partial specializations of FilmIterator for 1D, 2D, and 3D.
If the user chooses a FilmIterator as their iterator, then the system will contain two parallel hard surfaces ("walls"), confining the polymers/solvents to a "thin film" region of the unit cell. This only affects the iterator, not the rest of SCFT, so we isolate the imposition of the thin film constraint to this subclass of iterator. This is essentially a wrapper for any other type of iterator (e.g., AmIterator), that adds the additional functionality required to impose the thin film constraint properly.
FilmIterator is generalized to be compatible with any iterator within it, as long as the iterator can impose 1) a mask that confines the polymers/solvents to a certain region of space, and 2) an external field. A FilmIterator object in the param file is created by appending "Film" to the end of the name of the iterator that is stored inside of FilmIterator (e.g., "AmIteratorFilm{" will create a FilmIterator with an AmIterator object inside of it).
Definition at line 51 of file FilmIteratorBase.h.
Pscf::Pspc::FilmIteratorBase< D, IteratorType >::FilmIteratorBase | ( | System< D > & | system | ) |
Constructor.
Definition at line 34 of file FilmIteratorBase.tpp.
References Util::ParamComposite::setClassName(), and Pscf::Pspc::Iterator< D >::system().
Pscf::Pspc::FilmIteratorBase< D, IteratorType >::~FilmIteratorBase |
Destructor.
Definition at line 56 of file FilmIteratorBase.tpp.
|
virtual |
Read and initialize.
in | input parameter stream |
Reimplemented from Util::ParamComposite.
Definition at line 63 of file FilmIteratorBase.tpp.
|
virtual |
Iterate to a solution.
isContinuation | true iff continuation within a sweep |
Implements Pscf::Pspc::Iterator< D >.
Definition at line 156 of file FilmIteratorBase.tpp.
|
inline |
Return const reference to the real iterator within this FilmIterator.
Definition at line 289 of file FilmIteratorBase.h.
Referenced by Pscf::Pspc::FilmIterator< 1, IteratorType >::FilmIterator(), Pscf::Pspc::FilmIterator< 2, IteratorType >::FilmIterator(), and Pscf::Pspc::FilmIterator< 3, IteratorType >::FilmIterator().
|
pure virtual |
Modifies flexibleParams_ to be compatible with thin film constraint.
Modifies the flexibleParams_ array to be compatible with the thin film constraint. Stores resulting array in flexibleParams_ member of this object, as well as the flexibleParams_ member of the iterator within this object.
This function varies depending on D, the dimensionality of the system. Therefore, it is implemented in the partial class specializations in FilmIterator, rather than in this base class.
Implemented in Pscf::Pspc::FilmIterator< 1, IteratorType >, Pscf::Pspc::FilmIterator< 2, IteratorType >, and Pscf::Pspc::FilmIterator< 3, IteratorType >.
|
pure virtual |
Check that lattice vectors are compatible with thin film constraint.
Check that user-defined lattice basis vectors (stored in the Domain<D> object associated with this FilmIterator class) are compatible with the thin film constraint. All lattice basis vectors must be either parallel or perpendicular to the walls.
This function varies depending on D, the dimensionality of the system. Therefore, it is implemented in the partial class specializations in FilmIterator, rather than in this base class.
Implemented in Pscf::Pspc::FilmIterator< 1, IteratorType >, Pscf::Pspc::FilmIterator< 2, IteratorType >, and Pscf::Pspc::FilmIterator< 3, IteratorType >.
void Pscf::Pspc::FilmIteratorBase< D, IteratorType >::generateWallFields |
Generates mask and external field for the walls and stores in System.
Generates the field representation of the walls, based on the values of wallThickness and interfaceThickness that were input by the user. Then, stores this wall field in system().mask() to be used as a mask during iteration, and also passes the corresponding external potential fields into system().h() if isAthermal() = false.
Definition at line 173 of file FilmIteratorBase.tpp.
References Pscf::Pspc::RField< D >::allocate(), and UTIL_CHECK.
void Pscf::Pspc::FilmIteratorBase< D, IteratorType >::updateWallFields |
Updates the mask and external fields for the walls if needed.
Checks whether the lattice parameters have been updated since the last call of generateWallFields(), and if the parameters have changed then calls generateWallFields() again to update them.
Also updates the external fields if the wall/polymer chi parameters have been updated since external fields were last generated.
Definition at line 250 of file FilmIteratorBase.tpp.
References Util::FSArray< Data, Capacity >::size(), and UTIL_CHECK.
void Pscf::Pspc::FilmIteratorBase< D, IteratorType >::checkSpaceGroup |
Check that space group is compatible with the thin film constraint.
Definition at line 376 of file FilmIteratorBase.tpp.
References Util::Log::file(), Pscf::SymmetryGroup< Symmetry >::makeCompleteGroup(), Pscf::makeGroupFileName(), Pscf::SymmetryGroup< Symmetry >::size(), UTIL_CHECK, and UTIL_THROW.
bool Pscf::Pspc::FilmIteratorBase< D, IteratorType >::isSymmetric |
Are the walls chemically identical?
This is the case when chiBottom is equal to chiTop.
Definition at line 444 of file FilmIteratorBase.tpp.
References UTIL_CHECK.
bool Pscf::Pspc::FilmIteratorBase< D, IteratorType >::isAthermal |
Are the walls athermal?
This is only true if all values in chiBottom and chiTop are zero.
Definition at line 465 of file FilmIteratorBase.tpp.
References UTIL_CHECK.
|
inline |
Set the value of chi between species s and the bottom wall.
s | species index, 0 <= id < nVertex |
chi | value of chi(s,w) |
Definition at line 295 of file FilmIteratorBase.h.
|
inline |
Set the value of chi between species s and the top wall.
s | species index, 0 <= id < nVertex |
chi | value of chi(s,w) |
Definition at line 301 of file FilmIteratorBase.h.
|
inline |
Get value of normalVecId.
Definition at line 306 of file FilmIteratorBase.h.
|
inline |
Get value of interfaceThickness.
Definition at line 311 of file FilmIteratorBase.h.
|
inline |
Get value of wallThickness.
Definition at line 317 of file FilmIteratorBase.h.
|
inline |
Get const chiBottom matrix by reference.
Definition at line 330 of file FilmIteratorBase.h.
|
inline |
Get const chiTop array by reference.
Definition at line 323 of file FilmIteratorBase.h.
|
inline |
Get the chi parameter between the bottom wall and species s.
s | species index, 0 <= id < nVertex |
Definition at line 336 of file FilmIteratorBase.h.
|
inline |
Get the chi parameter between the top wall and species s.
s | species index, 0 <= id < nVertex |
Definition at line 342 of file FilmIteratorBase.h.
|
protected |
Initialize just before entry to iterative loop.
Allocate required memory, perform necessary checks to ensure user input is compatible with a film constraint, and create the mask / external fields that will be used to represent the walls during iteration.
Definition at line 116 of file FilmIteratorBase.tpp.
References UTIL_CHECK.
|
inlineprotected |
Return reference to the real iterator within this FilmIterator.
Definition at line 283 of file FilmIteratorBase.h.
|
protected |
Generate external fields for the walls.
Generate external fields only, and pass them into System for use during calculation. This is called by generateWallFields().
Definition at line 289 of file FilmIteratorBase.tpp.
References Util::DArray< Data >::allocate(), and UTIL_CHECK.
|
protected |
Add and read a new required ScalarParam < Type > object.
This is equivalent to ScalarParam<Type>(in, label, value, true).
in | input stream for reading |
label | Label string |
value | reference to new ScalarParam< Type > |
Definition at line 305 of file ParamComposite.h.
Referenced by pscfpp.param.Composite::__init__(), pscfpp.field.Field::__init__(), pscfpp.command.Script::__init__(), pscfpp.output.Thermo::__init__(), pscfpp.param.Matrix::__init__(), and pscfpp.param.Array::__init__().
|
inlineprotected |
Add and read a new optional ScalarParam < Type > object.
This is equivalent to ScalarParam<Type>(in, label, value, false).
in | input stream for reading |
label | Label string |
value | reference to new ScalarParam< Type > |
Definition at line 319 of file ParamComposite.h.
|
inlineprotected |
Add and read a required DArray < Type > parameter.
in | input stream for reading |
label | Label string for new array |
array | DArray object |
n | number of elements |
Definition at line 359 of file ParamComposite.h.
|
protected |
Set this to the parent of a child component.
This function sets the indent and (ifdef UTIL_MPI) the ioCommunicator of the child component.
param | child ParamComponent |
next | if true, set indent level one higher than for parent. |
Definition at line 929 of file ParamComposite.cpp.
|
protected |
Add a new ParamComponent object to the format array.
param | Parameter object |
isLeaf | Is this a leaf or a ParamComposite node? |
Definition at line 937 of file ParamComposite.cpp.