Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
PLMD::multicolvar::AtomValuePack Class Reference

#include <AtomValuePack.h>

Public Member Functions

 AtomValuePack (MultiValue &vals, MultiColvarBase const *mcolv)
 
void addBoxDerivatives (const unsigned &, const Tensor &)
 
void addComDerivatives (const int &, const Vector &, const CatomPack &)
 
void addDerivative (const unsigned &, const unsigned &, const double &)
 
void addTemporyBoxDerivatives (const Tensor &vir)
 
void addValue (const unsigned &ival, const double &vv)
 
AtomNumber getAbsoluteIndex (const unsigned &j) const
 Get the absolute index of the ith atom in the list. More...
 
unsigned getIndex (const unsigned &j) const
 
unsigned getNumberOfAtoms () const
 
unsigned getNumberOfDerivatives () const
 
VectorgetPosition (const unsigned &)
 Get the position of the ith atom. More...
 
MultiValuegetUnderlyingMultiValue ()
 
double getValue (const unsigned &) const
 
void setAtom (const unsigned &j, const unsigned &ind)
 
void setAtomIndex (const unsigned &j, const unsigned &ind)
 
void setIndex (const unsigned &, const unsigned &)
 Set the index for one of the atoms. More...
 
void setNumberOfAtoms (const unsigned &)
 Set the number of atoms. More...
 
unsigned setupAtomsFromLinkCells (const std::vector< unsigned > &cind, const Vector &cpos, const LinkCells &linkcells)
 
void setValue (const unsigned &, const double &)
 
void updateDynamicList ()
 
void updateUsingIndices ()
 

Private Member Functions

void addAtomsDerivatives (const unsigned &, const unsigned &, const Vector &)
 
void addTemporyAtomsDerivatives (const unsigned &jder, const Vector &der)
 

Private Attributes

std::vector< unsigned > cells_required
 This is stuff for link cells. More...
 
std::vector< unsigned > & indices
 Atom indices. More...
 
std::vector< Vector > & myatoms
 This holds atom positions. More...
 
const MultiColvarBasemycolv
 Copy of the underlying multicolvar. More...
 
MultiValuemyvals
 Copy of the values that we are adding to. More...
 
unsigned natoms
 Number of atoms at the moment. More...
 
std::vector< unsigned > & sort_vector
 This is used to sort the atom indices. More...
 

Friends

class LocalAverage
 
class MultiColvarBase
 

Constructor & Destructor Documentation

◆ AtomValuePack()

PLMD::multicolvar::AtomValuePack::AtomValuePack ( MultiValue vals,
MultiColvarBase const *  mcolv 
)

Member Function Documentation

◆ addAtomsDerivatives()

void PLMD::multicolvar::AtomValuePack::addAtomsDerivatives ( const unsigned &  ival,
const unsigned &  jder,
const Vector der 
)
inlineprivate

◆ addBoxDerivatives()

void PLMD::multicolvar::AtomValuePack::addBoxDerivatives ( const unsigned &  ival,
const Tensor vir 
)
inline

◆ addComDerivatives()

void PLMD::multicolvar::AtomValuePack::addComDerivatives ( const int &  ind,
const Vector der,
const CatomPack catom_der 
)

◆ addDerivative()

void PLMD::multicolvar::AtomValuePack::addDerivative ( const unsigned &  ival,
const unsigned &  jder,
const double &  der 
)
inline

◆ addTemporyAtomsDerivatives()

void PLMD::multicolvar::AtomValuePack::addTemporyAtomsDerivatives ( const unsigned &  jder,
const Vector der 
)
inlineprivate

◆ addTemporyBoxDerivatives()

void PLMD::multicolvar::AtomValuePack::addTemporyBoxDerivatives ( const Tensor vir)
inline

◆ addValue()

void PLMD::multicolvar::AtomValuePack::addValue ( const unsigned &  ival,
const double &  vv 
)
inline

◆ getAbsoluteIndex()

AtomNumber PLMD::multicolvar::AtomValuePack::getAbsoluteIndex ( const unsigned &  j) const
inline

Get the absolute index of the ith atom in the list.

◆ getIndex()

unsigned PLMD::multicolvar::AtomValuePack::getIndex ( const unsigned &  j) const
inline

◆ getNumberOfAtoms()

unsigned PLMD::multicolvar::AtomValuePack::getNumberOfAtoms ( ) const
inline

◆ getNumberOfDerivatives()

unsigned PLMD::multicolvar::AtomValuePack::getNumberOfDerivatives ( ) const
inline

◆ getPosition()

Vector & PLMD::multicolvar::AtomValuePack::getPosition ( const unsigned &  iatom)
inline

Get the position of the ith atom.

◆ getUnderlyingMultiValue()

MultiValue & PLMD::multicolvar::AtomValuePack::getUnderlyingMultiValue ( )
inline

◆ getValue()

double PLMD::multicolvar::AtomValuePack::getValue ( const unsigned &  ival) const
inline

◆ setAtom()

void PLMD::multicolvar::AtomValuePack::setAtom ( const unsigned &  j,
const unsigned &  ind 
)
inline

◆ setAtomIndex()

void PLMD::multicolvar::AtomValuePack::setAtomIndex ( const unsigned &  j,
const unsigned &  ind 
)
inline

◆ setIndex()

void PLMD::multicolvar::AtomValuePack::setIndex ( const unsigned &  j,
const unsigned &  ind 
)
inline

Set the index for one of the atoms.

◆ setNumberOfAtoms()

void PLMD::multicolvar::AtomValuePack::setNumberOfAtoms ( const unsigned &  nat)
inline

Set the number of atoms.

◆ setupAtomsFromLinkCells()

unsigned PLMD::multicolvar::AtomValuePack::setupAtomsFromLinkCells ( const std::vector< unsigned > &  cind,
const Vector cpos,
const LinkCells linkcells 
)

◆ setValue()

void PLMD::multicolvar::AtomValuePack::setValue ( const unsigned &  ival,
const double &  vv 
)
inline

◆ updateDynamicList()

void PLMD::multicolvar::AtomValuePack::updateDynamicList ( )
inline

◆ updateUsingIndices()

void PLMD::multicolvar::AtomValuePack::updateUsingIndices ( )

Friends And Related Function Documentation

◆ LocalAverage

friend class LocalAverage
friend

◆ MultiColvarBase

friend class MultiColvarBase
friend

Member Data Documentation

◆ cells_required

std::vector<unsigned> PLMD::multicolvar::AtomValuePack::cells_required
private

This is stuff for link cells.

◆ indices

std::vector<unsigned>& PLMD::multicolvar::AtomValuePack::indices
private

Atom indices.

◆ myatoms

std::vector<Vector>& PLMD::multicolvar::AtomValuePack::myatoms
private

This holds atom positions.

◆ mycolv

const MultiColvarBase* PLMD::multicolvar::AtomValuePack::mycolv
private

Copy of the underlying multicolvar.

◆ myvals

MultiValue& PLMD::multicolvar::AtomValuePack::myvals
private

Copy of the values that we are adding to.

◆ natoms

unsigned PLMD::multicolvar::AtomValuePack::natoms
private

Number of atoms at the moment.

◆ sort_vector

std::vector<unsigned>& PLMD::multicolvar::AtomValuePack::sort_vector
private

This is used to sort the atom indices.


The documentation for this class was generated from the following files: