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

#include <Buckingham.hpp>

Inheritance diagram for OpenMD::Buckingham:
OpenMD::VanDerWaalsInteraction OpenMD::NonBondedInteraction

Public Member Functions

 Buckingham ()
 
void setForceField (ForceField *ff)
 
void setSimulatedAtomTypes (set< AtomType *> &simtypes)
 
void addExplicitInteraction (AtomType *atype1, AtomType *atype2, RealType A, RealType B, RealType C, BuckinghamType bt)
 
void addExplicitInteraction (AtomType *atype1, AtomType *atype2, RealType A, RealType B, RealType C, RealType sigma, RealType epsilon, BuckinghamType bt)
 
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 ()
 

Private Attributes

bool initialized_
 
set< int > Btypes
 
vector< int > Btids
 
vector< vector< BuckinghamInteractionData > > MixingMap
 
ForceFieldforceField_
 
set< AtomType * > simTypes_
 
string name_
 

Detailed Description

Definition at line 64 of file Buckingham.hpp.

Constructor & Destructor Documentation

◆ Buckingham()

OpenMD::Buckingham::Buckingham ( )

Definition at line 55 of file Buckingham.cpp.

Member Function Documentation

◆ addExplicitInteraction() [1/2]

void OpenMD::Buckingham::addExplicitInteraction ( AtomType atype1,
AtomType atype2,
RealType  A,
RealType  B,
RealType  C,
BuckinghamType  bt 
)

◆ addExplicitInteraction() [2/2]

void OpenMD::Buckingham::addExplicitInteraction ( AtomType atype1,
AtomType atype2,
RealType  A,
RealType  B,
RealType  C,
RealType  sigma,
RealType  epsilon,
BuckinghamType  bt 
)

◆ calcForce()

◆ getHash()

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

Implements OpenMD::NonBondedInteraction.

Definition at line 74 of file Buckingham.hpp.

References OpenMD::BUCKINGHAM_INTERACTION.

◆ getName()

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

Implements OpenMD::NonBondedInteraction.

Definition at line 73 of file Buckingham.hpp.

◆ getSuggestedCutoffRadius()

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

Implements OpenMD::NonBondedInteraction.

Definition at line 291 of file Buckingham.cpp.

References Btids, initialize(), and initialized_.

◆ initialize()

◆ setForceField()

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

Definition at line 68 of file Buckingham.hpp.

◆ setSimulatedAtomTypes()

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

Definition at line 69 of file Buckingham.hpp.

References OpenMD::epsilon.

Member Data Documentation

◆ Btids

vector<int> OpenMD::Buckingham::Btids
private

The mapping from AtomType ident -> Buckingham type ident

Definition at line 81 of file Buckingham.hpp.

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

◆ Btypes

set<int> OpenMD::Buckingham::Btypes
private

The set of AtomType idents that are Buckingham types

Definition at line 80 of file Buckingham.hpp.

Referenced by addExplicitInteraction(), and initialize().

◆ forceField_

ForceField* OpenMD::Buckingham::forceField_
private

Definition at line 85 of file Buckingham.hpp.

Referenced by initialize().

◆ initialized_

bool OpenMD::Buckingham::initialized_
private

Definition at line 79 of file Buckingham.hpp.

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

◆ MixingMap

vector<vector<BuckinghamInteractionData> > OpenMD::Buckingham::MixingMap
private

The mixing parameters between two Buckingham types

Definition at line 82 of file Buckingham.hpp.

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

◆ name_

string OpenMD::Buckingham::name_
private

Definition at line 87 of file Buckingham.hpp.

◆ simTypes_

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

Definition at line 86 of file Buckingham.hpp.


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