OpenMD  2.5
Molecular Dynamics in the Open
OpenMD::RepulsivePower Class Reference

#include <RepulsivePower.hpp>

Inheritance diagram for OpenMD::RepulsivePower:
OpenMD::VanDerWaalsInteraction OpenMD::NonBondedInteraction

Public Member Functions

 RepulsivePower ()
 
void setForceField (ForceField *ff)
 
void setSimulatedAtomTypes (set< AtomType *> &simtypes)
 
void addExplicitInteraction (AtomType *atype1, AtomType *atype2, RealType sigma, RealType epsilon, int nRep)
 
virtual void calcForce (InteractionData &idat)
 
virtual string getName ()
 
virtual int getHash ()
 
virtual RealType getSuggestedCutoffRadius (pair< AtomType *, AtomType *> atypes)
 
- Public Member Functions inherited from OpenMD::VanDerWaalsInteraction
 VanDerWaalsInteraction ()
 
virtual ~VanDerWaalsInteraction ()
 
virtual InteractionFamily getFamily ()
 
- Public Member Functions inherited from OpenMD::NonBondedInteraction
 NonBondedInteraction ()
 
virtual ~NonBondedInteraction ()
 

Private Member Functions

void initialize ()
 
void getNRepulsionFunc (const RealType &r, int &n, RealType &pot, RealType &deriv)
 

Private Attributes

bool initialized_
 
set< int > RPtypes
 
vector< int > RPtids
 
vector< vector< RPInteractionData > > MixingMap
 
ForceFieldforceField_
 
set< AtomType * > simTypes_
 
string name_
 

Detailed Description

Definition at line 61 of file RepulsivePower.hpp.

Constructor & Destructor Documentation

◆ RepulsivePower()

OpenMD::RepulsivePower::RepulsivePower ( )

Definition at line 55 of file RepulsivePower.cpp.

Member Function Documentation

◆ addExplicitInteraction()

void OpenMD::RepulsivePower::addExplicitInteraction ( AtomType atype1,
AtomType atype2,
RealType  sigma,
RealType  epsilon,
int  nRep 
)

◆ calcForce()

◆ getHash()

virtual int OpenMD::RepulsivePower::getHash ( )
inlinevirtual

Implements OpenMD::NonBondedInteraction.

Definition at line 70 of file RepulsivePower.hpp.

References OpenMD::REPULSIVEPOWER_INTERACTION.

◆ getName()

virtual string OpenMD::RepulsivePower::getName ( )
inlinevirtual

Implements OpenMD::NonBondedInteraction.

Definition at line 69 of file RepulsivePower.hpp.

◆ getNRepulsionFunc()

void OpenMD::RepulsivePower::getNRepulsionFunc ( const RealType &  r,
int &  n,
RealType &  pot,
RealType &  deriv 
)
private

Definition at line 207 of file RepulsivePower.cpp.

Referenced by calcForce().

◆ getSuggestedCutoffRadius()

RealType OpenMD::RepulsivePower::getSuggestedCutoffRadius ( pair< AtomType *, AtomType *>  atypes)
virtual

◆ initialize()

◆ setForceField()

void OpenMD::RepulsivePower::setForceField ( ForceField ff)
inline

Definition at line 65 of file RepulsivePower.hpp.

Referenced by OpenMD::InteractionManager::initialize().

◆ setSimulatedAtomTypes()

void OpenMD::RepulsivePower::setSimulatedAtomTypes ( set< AtomType *> &  simtypes)
inline

Definition at line 66 of file RepulsivePower.hpp.

References OpenMD::epsilon.

Referenced by OpenMD::InteractionManager::initialize().

Member Data Documentation

◆ forceField_

ForceField* OpenMD::RepulsivePower::forceField_
private

Definition at line 86 of file RepulsivePower.hpp.

Referenced by initialize().

◆ initialized_

bool OpenMD::RepulsivePower::initialized_
private

Definition at line 77 of file RepulsivePower.hpp.

Referenced by calcForce(), getSuggestedCutoffRadius(), and initialize().

◆ MixingMap

vector<vector<RPInteractionData> > OpenMD::RepulsivePower::MixingMap
private

The mixing parameters between two RP types

Definition at line 81 of file RepulsivePower.hpp.

Referenced by addExplicitInteraction(), calcForce(), getSuggestedCutoffRadius(), and initialize().

◆ name_

string OpenMD::RepulsivePower::name_
private

Definition at line 88 of file RepulsivePower.hpp.

◆ RPtids

vector<int> OpenMD::RepulsivePower::RPtids
private

The mapping from AtomType ident -> RP type ident

Definition at line 80 of file RepulsivePower.hpp.

Referenced by addExplicitInteraction(), calcForce(), getSuggestedCutoffRadius(), and initialize().

◆ RPtypes

set<int> OpenMD::RepulsivePower::RPtypes
private

The set of AtomType idents that are RP types

Definition at line 79 of file RepulsivePower.hpp.

Referenced by addExplicitInteraction(), and initialize().

◆ simTypes_

set<AtomType*> OpenMD::RepulsivePower::simTypes_
private

Definition at line 87 of file RepulsivePower.hpp.


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