|
OpenMD 3.2
Molecular Dynamics in the Open
|
Classes | |
| struct | HBondDonor |
Public Types | |
| using | AtomIterator = std::vector<Atom*>::iterator |
| using | BondIterator = std::vector<Bond*>::iterator |
| using | BendIterator = std::vector<Bend*>::iterator |
| using | TorsionIterator = std::vector<Torsion*>::iterator |
| using | InversionIterator = std::vector<Inversion*>::iterator |
| using | RigidBodyIterator = std::vector<RigidBody*>::iterator |
| using | CutoffGroupIterator = std::vector<CutoffGroup*>::iterator |
| using | IntegrableObjectIterator = std::vector<StuntDouble*>::iterator |
| using | ConstraintPairIterator = std::vector<ConstraintPair*>::iterator |
| using | ConstraintElemIterator = std::vector<ConstraintElem*>::iterator |
| using | FluctuatingChargeIterator = std::vector<Atom*>::iterator |
| using | HBondDonorIterator = std::vector<HBondDonor*>::iterator |
| using | HBondAcceptorIterator = std::vector<Atom*>::iterator |
Public Member Functions | |
| Molecule (int globalIndex, MoleculeStamp *molStamp) | |
| int | getGlobalIndex () |
| Returns the global index of this molecule. | |
| int | getStampId () |
| Returns the stamp id of this molecule. | |
| int | getRegion () |
| MoleculeStamp * | getMolStamp () const |
| std::string | getType () |
| Returns the name of the molecule. | |
| void | setGlobalIndex (int index) |
| Sets the global index of this molecule. | |
| void | setConstrainTotalCharge (bool ctc) |
| bool | constrainTotalCharge () |
| void | addAtom (Atom *atom) |
| add an atom into this molecule | |
| void | addBond (Bond *bond) |
| add a bond into this molecule | |
| void | addBend (Bend *bend) |
| add a bend into this molecule | |
| void | addTorsion (Torsion *torsion) |
| add a torsion into this molecule | |
| void | addInversion (Inversion *inversion) |
| add an improper torsion into this molecule | |
| void | addRigidBody (RigidBody *rb) |
| add a rigidbody into this molecule | |
| void | addCutoffGroup (CutoffGroup *cp) |
| add a cutoff group into this molecule | |
| void | addConstraintPair (ConstraintPair *consPair) |
| void | addConstraintElem (ConstraintElem *consElem) |
| void | complete () |
| size_t | getNAtoms () |
| Returns the total number of atoms in this molecule. | |
| size_t | getNBonds () |
| Returns the total number of bonds in this molecule. | |
| size_t | getNBends () |
| Returns the total number of bends in this molecule. | |
| size_t | getNTorsions () |
| Returns the total number of torsions in this molecule. | |
| size_t | getNInversions () |
| Returns the total number of improper torsions in this molecule. | |
| size_t | getNRigidBodies () |
| Returns the total number of rigid bodies in this molecule. | |
| size_t | getNIntegrableObjects () |
| Returns the total number of integrable objects in this molecule. | |
| size_t | getNCutoffGroups () |
| Returns the total number of cutoff groups in this molecule. | |
| size_t | getNConstraintPairs () |
| Returns the total number of constraints in this molecule. | |
| size_t | getNFluctuatingCharges () |
| Returns the total number of fluctuating charges in this molecule. | |
| size_t | getNHBondDonors () |
| Returns the total number of Hydrogen Bond donors in this molecule. | |
| size_t | getNHBondAcceptors () |
| Returns the total number of Hydrogen Bond acceptors in this molecule. | |
| Atom * | getAtomAt (unsigned int i) |
| RigidBody * | getRigidBodyAt (unsigned int i) |
| Atom * | beginAtom (std::vector< Atom * >::iterator &i) |
| Atom * | nextAtom (std::vector< Atom * >::iterator &i) |
| Bond * | beginBond (std::vector< Bond * >::iterator &i) |
| Bond * | nextBond (std::vector< Bond * >::iterator &i) |
| Bend * | beginBend (std::vector< Bend * >::iterator &i) |
| Bend * | nextBend (std::vector< Bend * >::iterator &i) |
| Torsion * | beginTorsion (std::vector< Torsion * >::iterator &i) |
| Torsion * | nextTorsion (std::vector< Torsion * >::iterator &i) |
| Inversion * | beginInversion (std::vector< Inversion * >::iterator &i) |
| Inversion * | nextInversion (std::vector< Inversion * >::iterator &i) |
| RigidBody * | beginRigidBody (std::vector< RigidBody * >::iterator &i) |
| RigidBody * | nextRigidBody (std::vector< RigidBody * >::iterator &i) |
| StuntDouble * | beginIntegrableObject (std::vector< StuntDouble * >::iterator &i) |
| StuntDouble * | nextIntegrableObject (std::vector< StuntDouble * >::iterator &i) |
| CutoffGroup * | beginCutoffGroup (std::vector< CutoffGroup * >::iterator &i) |
| CutoffGroup * | nextCutoffGroup (std::vector< CutoffGroup * >::iterator &i) |
| ConstraintPair * | beginConstraintPair (std::vector< ConstraintPair * >::iterator &i) |
| ConstraintPair * | nextConstraintPair (std::vector< ConstraintPair * >::iterator &i) |
| ConstraintElem * | beginConstraintElem (std::vector< ConstraintElem * >::iterator &i) |
| ConstraintElem * | nextConstraintElem (std::vector< ConstraintElem * >::iterator &i) |
| Atom * | beginFluctuatingCharge (std::vector< Atom * >::iterator &i) |
| Atom * | nextFluctuatingCharge (std::vector< Atom * >::iterator &i) |
| HBondDonor * | beginHBondDonor (std::vector< HBondDonor * >::iterator &i) |
| HBondDonor * | nextHBondDonor (std::vector< HBondDonor * >::iterator &i) |
| Atom * | beginHBondAcceptor (std::vector< Atom * >::iterator &i) |
| Atom * | nextHBondAcceptor (std::vector< Atom * >::iterator &i) |
| RealType | getPotential () |
| Returns the total potential energy of short range interaction of this molecule. | |
| RealType | getMass () |
| get total mass of this molecule | |
| RealType | getFixedCharge () |
| get total fixed charge of this molecule | |
| Vector3d | getPrevCom () |
| Returns the center of mass position of this molecule in the previous snapshot. | |
| Vector3d | getCom () |
| Returns the current center of mass position of this molecule. | |
| Vector3d | getCom (int snapshotNo) |
| Returns the center of mass position of this molecule in specified snapshot. | |
| void | setCom (const Vector3d &newCom) |
| Sets the center of this molecule. | |
| void | moveCom (const Vector3d &delta) |
| Moves the center of this molecule. | |
| Vector3d | getComVel () |
| Returns the velocity of center of mass of this molecule. | |
| void | addProperty (std::shared_ptr< GenericData > genData) |
| Adds property into property map. | |
| void | removeProperty (const std::string &propName) |
| Removes property from PropertyMap by name. | |
| std::vector< std::string > | getPropertyNames () |
| Returns all names of properties. | |
| std::vector< std::shared_ptr< GenericData > > | getProperties () |
| Returns all of the properties in PropertyMap. | |
| std::shared_ptr< GenericData > | getPropertyByName (const std::string &propName) |
| Returns property. | |
Friends | |
| std::ostream & | operator<< (std::ostream &o, Molecule &mol) |
Definition at line 81 of file Molecule.hpp.
| using OpenMD::Molecule::AtomIterator = std::vector<Atom*>::iterator |
Definition at line 88 of file Molecule.hpp.
| using OpenMD::Molecule::BendIterator = std::vector<Bend*>::iterator |
Definition at line 90 of file Molecule.hpp.
| using OpenMD::Molecule::BondIterator = std::vector<Bond*>::iterator |
Definition at line 89 of file Molecule.hpp.
| using OpenMD::Molecule::ConstraintElemIterator = std::vector<ConstraintElem*>::iterator |
Definition at line 97 of file Molecule.hpp.
| using OpenMD::Molecule::ConstraintPairIterator = std::vector<ConstraintPair*>::iterator |
Definition at line 96 of file Molecule.hpp.
| using OpenMD::Molecule::CutoffGroupIterator = std::vector<CutoffGroup*>::iterator |
Definition at line 94 of file Molecule.hpp.
| using OpenMD::Molecule::FluctuatingChargeIterator = std::vector<Atom*>::iterator |
Definition at line 98 of file Molecule.hpp.
| using OpenMD::Molecule::HBondAcceptorIterator = std::vector<Atom*>::iterator |
Definition at line 100 of file Molecule.hpp.
| using OpenMD::Molecule::HBondDonorIterator = std::vector<HBondDonor*>::iterator |
Definition at line 99 of file Molecule.hpp.
| using OpenMD::Molecule::IntegrableObjectIterator = std::vector<StuntDouble*>::iterator |
Definition at line 95 of file Molecule.hpp.
| using OpenMD::Molecule::InversionIterator = std::vector<Inversion*>::iterator |
Definition at line 92 of file Molecule.hpp.
| using OpenMD::Molecule::RigidBodyIterator = std::vector<RigidBody*>::iterator |
Definition at line 93 of file Molecule.hpp.
| using OpenMD::Molecule::TorsionIterator = std::vector<Torsion*>::iterator |
Definition at line 91 of file Molecule.hpp.
| OpenMD::Molecule::Molecule | ( | int | globalIndex, |
| MoleculeStamp * | molStamp ) |
Definition at line 67 of file Molecule.cpp.
|
virtual |
Definition at line 71 of file Molecule.cpp.
| void OpenMD::Molecule::addAtom | ( | Atom * | atom | ) |
add an atom into this molecule
Definition at line 88 of file Molecule.cpp.
References addAtom().
Referenced by addAtom().
| void OpenMD::Molecule::addBend | ( | Bend * | bend | ) |
add a bend into this molecule
Definition at line 100 of file Molecule.cpp.
References addBend().
Referenced by addBend().
| void OpenMD::Molecule::addBond | ( | Bond * | bond | ) |
add a bond into this molecule
Definition at line 94 of file Molecule.cpp.
References addBond().
Referenced by addBond().
| void OpenMD::Molecule::addConstraintElem | ( | ConstraintElem * | consElem | ) |
Definition at line 141 of file Molecule.cpp.
| void OpenMD::Molecule::addConstraintPair | ( | ConstraintPair * | consPair | ) |
Definition at line 134 of file Molecule.cpp.
| void OpenMD::Molecule::addCutoffGroup | ( | CutoffGroup * | cp | ) |
add a cutoff group into this molecule
Definition at line 127 of file Molecule.cpp.
References addCutoffGroup().
Referenced by addCutoffGroup().
| void OpenMD::Molecule::addInversion | ( | Inversion * | inversion | ) |
add an improper torsion into this molecule
Definition at line 113 of file Molecule.cpp.
References addInversion().
Referenced by addInversion().
| void OpenMD::Molecule::addProperty | ( | std::shared_ptr< GenericData > | genData | ) |
Adds property into property map.
| genData | GenericData to be added into PropertyMap |
Definition at line 421 of file Molecule.cpp.
References addProperty().
Referenced by addProperty().
| void OpenMD::Molecule::addRigidBody | ( | RigidBody * | rb | ) |
add a rigidbody into this molecule
Definition at line 120 of file Molecule.cpp.
References addRigidBody().
Referenced by addRigidBody().
| void OpenMD::Molecule::addTorsion | ( | Torsion * | torsion | ) |
add a torsion into this molecule
Definition at line 106 of file Molecule.cpp.
References addTorsion().
Referenced by addTorsion().
Definition at line 209 of file Molecule.hpp.
Definition at line 229 of file Molecule.hpp.
Definition at line 219 of file Molecule.hpp.
|
inline |
Definition at line 301 of file Molecule.hpp.
|
inline |
Definition at line 289 of file Molecule.hpp.
|
inline |
Definition at line 279 of file Molecule.hpp.
Definition at line 313 of file Molecule.hpp.
Definition at line 333 of file Molecule.hpp.
|
inline |
Definition at line 323 of file Molecule.hpp.
|
inline |
Definition at line 269 of file Molecule.hpp.
Definition at line 249 of file Molecule.hpp.
Definition at line 259 of file Molecule.hpp.
Definition at line 239 of file Molecule.hpp.
| void OpenMD::Molecule::complete | ( | ) |
Definition at line 148 of file Molecule.cpp.
|
inline |
Definition at line 134 of file Molecule.hpp.
|
inline |
Definition at line 199 of file Molecule.hpp.
| Vector3d OpenMD::Molecule::getCom | ( | ) |
Returns the current center of mass position of this molecule.
Definition at line 315 of file Molecule.cpp.
References getCom(), OpenMD::StuntDouble::getMass(), and OpenMD::StuntDouble::getPos().
Referenced by OpenMD::Thermo::getAngularMomentum(), getCom(), getCom(), OpenMD::Thermo::getCom(), OpenMD::Thermo::getComAll(), OpenMD::Thermo::getComVel(), and setCom().
| Vector3d OpenMD::Molecule::getCom | ( | int | snapshotNo | ) |
Returns the center of mass position of this molecule in specified snapshot.
| snapshotNo |
Definition at line 334 of file Molecule.cpp.
References getCom(), OpenMD::StuntDouble::getMass(), and OpenMD::StuntDouble::getPos().
| Vector3d OpenMD::Molecule::getComVel | ( | ) |
Returns the velocity of center of mass of this molecule.
Definition at line 368 of file Molecule.cpp.
References getComVel(), OpenMD::StuntDouble::getMass(), and OpenMD::StuntDouble::getVel().
Referenced by OpenMD::Thermo::getAngularMomentum(), OpenMD::Thermo::getComAll(), getComVel(), and OpenMD::Thermo::getComVel().
| RealType OpenMD::Molecule::getFixedCharge | ( | ) |
get total fixed charge of this molecule
Definition at line 281 of file Molecule.cpp.
References OpenMD::Atom::getAtomType(), and getFixedCharge().
Referenced by getFixedCharge().
|
inline |
Returns the global index of this molecule.
Definition at line 109 of file Molecule.hpp.
Referenced by OpenMD::SimInfo::addMolecule(), and OpenMD::SimInfo::removeMolecule().
| RealType OpenMD::Molecule::getMass | ( | ) |
get total mass of this molecule
Definition at line 268 of file Molecule.cpp.
References getMass(), and OpenMD::StuntDouble::getMass().
Referenced by OpenMD::Thermo::getAngularMomentum(), OpenMD::Thermo::getCom(), OpenMD::Thermo::getComAll(), OpenMD::Thermo::getComVel(), and getMass().
|
inline |
Definition at line 121 of file Molecule.hpp.
|
inline |
Returns the total number of atoms in this molecule.
Definition at line 165 of file Molecule.hpp.
Referenced by OpenMD::SimInfo::addMolecule(), and OpenMD::SimInfo::removeMolecule().
|
inline |
Returns the total number of bends in this molecule.
Definition at line 171 of file Molecule.hpp.
Referenced by OpenMD::SimInfo::addMolecule(), and OpenMD::SimInfo::removeMolecule().
|
inline |
Returns the total number of bonds in this molecule.
Definition at line 168 of file Molecule.hpp.
Referenced by OpenMD::SimInfo::addMolecule(), and OpenMD::SimInfo::removeMolecule().
|
inline |
Returns the total number of constraints in this molecule.
Definition at line 189 of file Molecule.hpp.
Referenced by OpenMD::SimInfo::addMolecule(), and OpenMD::SimInfo::removeMolecule().
|
inline |
Returns the total number of cutoff groups in this molecule.
Definition at line 186 of file Molecule.hpp.
Referenced by OpenMD::SimInfo::addMolecule(), and OpenMD::SimInfo::removeMolecule().
|
inline |
Returns the total number of fluctuating charges in this molecule.
Definition at line 192 of file Molecule.hpp.
|
inline |
Returns the total number of Hydrogen Bond acceptors in this molecule.
Definition at line 197 of file Molecule.hpp.
|
inline |
Returns the total number of Hydrogen Bond donors in this molecule.
Definition at line 194 of file Molecule.hpp.
|
inline |
Returns the total number of integrable objects in this molecule.
Definition at line 183 of file Molecule.hpp.
Referenced by OpenMD::SimInfo::addMolecule(), and OpenMD::SimInfo::removeMolecule().
|
inline |
Returns the total number of improper torsions in this molecule.
Definition at line 177 of file Molecule.hpp.
Referenced by OpenMD::SimInfo::addMolecule(), and OpenMD::SimInfo::removeMolecule().
|
inline |
Returns the total number of rigid bodies in this molecule.
Definition at line 180 of file Molecule.hpp.
Referenced by OpenMD::SimInfo::addMolecule(), and OpenMD::SimInfo::removeMolecule().
|
inline |
Returns the total number of torsions in this molecule.
Definition at line 174 of file Molecule.hpp.
Referenced by OpenMD::SimInfo::addMolecule(), and OpenMD::SimInfo::removeMolecule().
| RealType OpenMD::Molecule::getPotential | ( | ) |
Returns the total potential energy of short range interaction of this molecule.
Definition at line 387 of file Molecule.cpp.
References getPotential().
Referenced by getPotential().
| Vector3d OpenMD::Molecule::getPrevCom | ( | ) |
Returns the center of mass position of this molecule in the previous snapshot.
Definition at line 296 of file Molecule.cpp.
References OpenMD::StuntDouble::getMass(), getPrevCom(), and OpenMD::StuntDouble::getPrevPos().
Referenced by getPrevCom().
| std::vector< std::shared_ptr< GenericData > > OpenMD::Molecule::getProperties | ( | ) |
Returns all of the properties in PropertyMap.
Definition at line 433 of file Molecule.cpp.
References getProperties().
Referenced by getProperties().
| std::shared_ptr< GenericData > OpenMD::Molecule::getPropertyByName | ( | const std::string & | propName | ) |
Returns property.
| propName | name of property |
Definition at line 437 of file Molecule.cpp.
References getPropertyByName().
Referenced by getPropertyByName().
| std::vector< std::string > OpenMD::Molecule::getPropertyNames | ( | ) |
Returns all names of properties.
Definition at line 429 of file Molecule.cpp.
References getPropertyNames().
Referenced by getPropertyNames().
|
inline |
Definition at line 119 of file Molecule.hpp.
|
inline |
Definition at line 204 of file Molecule.hpp.
|
inline |
Returns the stamp id of this molecule.
Definition at line 118 of file Molecule.hpp.
|
inline |
Returns the name of the molecule.
Definition at line 124 of file Molecule.hpp.
| void OpenMD::Molecule::moveCom | ( | const Vector3d & | delta | ) |
Moves the center of this molecule.
Definition at line 358 of file Molecule.cpp.
References OpenMD::StuntDouble::getPos(), moveCom(), and OpenMD::StuntDouble::setPos().
Definition at line 214 of file Molecule.hpp.
Definition at line 234 of file Molecule.hpp.
Definition at line 224 of file Molecule.hpp.
|
inline |
Definition at line 307 of file Molecule.hpp.
|
inline |
Definition at line 295 of file Molecule.hpp.
|
inline |
Definition at line 284 of file Molecule.hpp.
Definition at line 318 of file Molecule.hpp.
Definition at line 338 of file Molecule.hpp.
|
inline |
Definition at line 328 of file Molecule.hpp.
|
inline |
Definition at line 274 of file Molecule.hpp.
Definition at line 254 of file Molecule.hpp.
Definition at line 264 of file Molecule.hpp.
Definition at line 244 of file Molecule.hpp.
| void OpenMD::Molecule::removeProperty | ( | const std::string & | propName | ) |
Removes property from PropertyMap by name.
| propName | the name of property to be removed |
Definition at line 425 of file Molecule.cpp.
References removeProperty().
Referenced by removeProperty().
| void OpenMD::Molecule::setCom | ( | const Vector3d & | newCom | ) |
|
inline |
Definition at line 132 of file Molecule.hpp.
|
inline |
Sets the global index of this molecule.
| index | new global index to be set |
Definition at line 130 of file Molecule.hpp.
|
friend |
Definition at line 442 of file Molecule.cpp.