ls1-MarDyn
ls1-MarDyn molecular dynamics code
|
Base class for ensembles. More...
#include <EnsembleBase.h>
Public Member Functions | |
virtual void | readXML (XMLfileUnits &xmlconfig) |
virtual unsigned long | N ()=0 |
Returns the global number of Molecules of the ensemble. More... | |
virtual double | V ()=0 |
Returns the global volume of the ensemble. More... | |
virtual double | E ()=0 |
Returns the global energy of the ensemble. More... | |
virtual double | mu ()=0 |
Returns the global chemical potential of the ensemble. More... | |
virtual double | p ()=0 |
Returns the global presure of the ensemble. More... | |
virtual double | T ()=0 |
Returns the global Temperature of the ensemble. More... | |
virtual void | updateGlobalVariable (ParticleContainer *particleContainer, GlobalVariable variable)=0 |
Calculate global variables. More... | |
DomainBase *& | domain () |
Component * | getComponent (int cid) |
Component * | getComponent (std::string name) |
std::vector< Component > * | getComponents () |
void | addComponent (Component &component) |
void | setComponentLookUpIDs () |
prepare the _compIDs used by the Vectorized*CellProcessors | |
int | getType () |
virtual std::list< ChemicalPotential > * | getLmu () |
virtual void | initConfigXML (ParticleContainer *moleculeContainer) |
virtual void | prepare_start () |
virtual void | beforeEventNewTimestep (ParticleContainer *moleculeContainer, DomainDecompBase *domainDecomposition, unsigned long simstep) |
virtual void | afterForces (ParticleContainer *moleculeContainer, DomainDecompBase *domainDecomposition, CellProcessor *cellProcessor, unsigned long simstep) |
virtual void | beforeThermostat (unsigned long simstep, unsigned long initStatistics) |
virtual void | storeSample (Molecule *m, uint32_t componentid) |
Protected Attributes | |
std::vector< Component > | _components |
std::map< std::string, int > | _componentnamesToIds |
std::vector< MixingRuleBase * > | _mixingrules |
DomainBase * | _domain |
Type | _type = undefined |
Domain * | _simulationDomain |
Base class for ensembles.
Each ensemble should provide access to extensive (NVE) and intensive (\mu p t) variables as well as a function to update global variables.
|
inlinevirtual |
runs after forces step for GrandCanonical, nothing for canonical
Reimplemented in GrandCanonicalEnsemble.
|
inlinevirtual |
runs simulate step needed in GrandCanonical, nothing for canonical
Reimplemented in GrandCanonicalEnsemble.
|
inlinevirtual |
runs before temperature control is applied, but after force calculations
Reimplemented in CanonicalEnsemble.
|
pure virtual |
Returns the global energy of the ensemble.
Implemented in CanonicalEnsemble, and GrandCanonicalEnsemble.
|
inlinevirtual |
Returns _lmu pointer for processing by external plugins
Reimplemented in GrandCanonicalEnsemble.
|
inline |
get Ensemble Type (NVT or muVT)
|
inlinevirtual |
runs steps only needed in GrandCanonicalEnsemble, does nothing for canonical
Reimplemented in GrandCanonicalEnsemble.
|
pure virtual |
Returns the global chemical potential of the ensemble.
Implemented in CanonicalEnsemble, and GrandCanonicalEnsemble.
|
pure virtual |
Returns the global number of Molecules of the ensemble.
Implemented in CanonicalEnsemble, and GrandCanonicalEnsemble.
|
pure virtual |
Returns the global presure of the ensemble.
Implemented in CanonicalEnsemble, and GrandCanonicalEnsemble.
|
inlinevirtual |
runs steps only needed in GrandCanonicalEnsemble, does nothing for canonical
Reimplemented in GrandCanonicalEnsemble.
|
inlinevirtual |
Store Sample molecule from old input readers in lmu
Reimplemented in GrandCanonicalEnsemble.
|
pure virtual |
Returns the global Temperature of the ensemble.
Implemented in CanonicalEnsemble, and GrandCanonicalEnsemble.
|
pure virtual |
Calculate global variables.
variable | Variable to be updated. |
Implemented in CanonicalEnsemble, and GrandCanonicalEnsemble.
|
pure virtual |
Returns the global volume of the ensemble.
Implemented in CanonicalEnsemble, and GrandCanonicalEnsemble.