MaMiCo 1.2
Loading...
Searching...
No Matches
coupling::interface::Molecule< dim > Class Template Referenceabstract

interface to access a single molecule in the MD simulation. More...

#include <Molecule.h>

Inheritance diagram for coupling::interface::Molecule< dim >:

Public Member Functions

virtual ~Molecule ()
 
virtual tarch::la::Vector< dim, double > getVelocity () const =0
 
virtual void setVelocity (const tarch::la::Vector< dim, double > &velocity)=0
 
virtual tarch::la::Vector< dim, double > getPosition () const =0
 
virtual void setPosition (const tarch::la::Vector< dim, double > &position)=0
 
virtual void setForce (const tarch::la::Vector< dim, double > &force)=0
 
virtual tarch::la::Vector< dim, double > getForce () const =0
 
virtual double getPotentialEnergy () const =0
 
virtual void setPotentialEnergy (const double &potentialEnergy)=0
 

Detailed Description

template<unsigned int dim>
class coupling::interface::Molecule< dim >

interface to access a single molecule in the MD simulation.

This class provides interface to access a single molecule in the MD simulation. The MaMiCo molecule in datastructures also inherits from this class.

Template Parameters
dimNumber of dimensions; it can be 1, 2 or 3
Author
Philipp Neumann

Constructor & Destructor Documentation

◆ ~Molecule()

template<unsigned int dim>
virtual coupling::interface::Molecule< dim >::~Molecule ( )
inlinevirtual

Destructor

Reimplemented in coupling::datastructures::Molecule< dim >.

Member Function Documentation

◆ getForce()

template<unsigned int dim>
virtual tarch::la::Vector< dim, double > coupling::interface::Molecule< dim >::getForce ( ) const
pure virtual

returns the force acting on this molecule.

See also
setForce

Implemented in coupling::datastructures::Molecule< dim >.

◆ getPosition()

template<unsigned int dim>
virtual tarch::la::Vector< dim, double > coupling::interface::Molecule< dim >::getPosition ( ) const
pure virtual

returns the position of the molecule

Implemented in coupling::datastructures::Molecule< dim >.

◆ getPotentialEnergy()

template<unsigned int dim>
virtual double coupling::interface::Molecule< dim >::getPotentialEnergy ( ) const
pure virtual

returns the potential energy of the molecule

Implemented in coupling::datastructures::Molecule< dim >.

◆ getVelocity()

template<unsigned int dim>
virtual tarch::la::Vector< dim, double > coupling::interface::Molecule< dim >::getVelocity ( ) const
pure virtual

returnsthe velocity of the molecule

Implemented in coupling::datastructures::Molecule< dim >.

◆ setForce()

template<unsigned int dim>
virtual void coupling::interface::Molecule< dim >::setForce ( const tarch::la::Vector< dim, double > & force)
pure virtual

sets the force acting on this molecule. This function is only called in the USHER scheme so far If you want to set the force of a newly created molecule, you need to implement this function.

Parameters
force

Implemented in coupling::datastructures::Molecule< dim >.

◆ setPosition()

template<unsigned int dim>
virtual void coupling::interface::Molecule< dim >::setPosition ( const tarch::la::Vector< dim, double > & position)
pure virtual

sets the position of the molecule

Parameters
position

Implemented in coupling::datastructures::Molecule< dim >.

◆ setPotentialEnergy()

template<unsigned int dim>
virtual void coupling::interface::Molecule< dim >::setPotentialEnergy ( const double & potentialEnergy)
pure virtual

sets the potential energy of the molecule

Parameters
potentialEnergy

Implemented in coupling::datastructures::Molecule< dim >.

◆ setVelocity()

template<unsigned int dim>
virtual void coupling::interface::Molecule< dim >::setVelocity ( const tarch::la::Vector< dim, double > & velocity)
pure virtual

sets the velocity of the molecule

Parameters
velocity

Implemented in coupling::datastructures::Molecule< dim >.


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