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

#include <BuckinghamInteractionType.hpp>

Inheritance diagram for OpenMD::BuckinghamInteractionType:
OpenMD::NonBondedInteractionType

Public Member Functions

 BuckinghamInteractionType (RealType myA, RealType myB, RealType myC, BuckinghamType myType)
 
 BuckinghamInteractionType (RealType myA, RealType myB, RealType myC, RealType mySigma, RealType myEpsilon, BuckinghamType myType)
 
RealType getA ()
 
RealType getB ()
 
RealType getC ()
 
RealType getSigma ()
 
RealType getEpsilon ()
 
BuckinghamType getInteractionType ()
 
- Public Member Functions inherited from OpenMD::NonBondedInteractionType
 NonBondedInteractionType ()
 
virtual ~NonBondedInteractionType ()
 
void setLennardJones ()
 
bool isLennardJones ()
 
void setMorse ()
 
bool isMorse ()
 
void setMAW ()
 
bool isMAW ()
 
void setEAMTable ()
 
bool isEAMTable ()
 
void setEAMZhou ()
 
bool isEAMZhou ()
 
bool isSC ()
 
void setSC ()
 
bool isMetal ()
 
void setRepulsivePower ()
 
bool isRepulsivePower ()
 
void setMie ()
 
bool isMie ()
 
void setBuckingham ()
 
bool isBuckingham ()
 
void setAtomTypes (std::pair< AtomType *, AtomType *> ats)
 
std::pair< AtomType *, AtomType * > getAtomTypes ()
 
void addProperty (GenericData *genData)
 
void removeProperty (const std::string &propName)
 
void clearProperties ()
 
std::vector< std::string > getPropertyNames ()
 
std::vector< GenericData * > getProperties ()
 
GenericDatagetPropertyByName (const std::string &propName)
 

Private Attributes

RealType A
 
RealType B
 
RealType C
 
RealType sigma
 
RealType epsilon
 
BuckinghamType interactionType
 

Additional Inherited Members

- Protected Attributes inherited from OpenMD::NonBondedInteractionType
NonBondedInteractionTypeProperties nbitp
 
std::pair< AtomType *, AtomType * > atomTypes_
 

Detailed Description

BuckinghamInteractionType is one of the basic non-bonded interactions for representing the non-Coulombic contribution in ionic and networked solids like silica and alumina. The Traditional form has an exponential-6 form, which diverges to negative infinity at short distances. The modified form corrects the divergence with a short range 30-6 potential.

Traditional:

\[ V = A \exp( -B r) - \frac{C}{r^6} \]

Modified:

\[ V = A \exp( -B r) - \frac{C}{r^6} + 4 \epsilon \left( \left( \frac{\sigma}{r} \right)^30 - \left( \frac{\sigma}{r} \right)^6 \right) \]

Definition at line 74 of file BuckinghamInteractionType.hpp.

Constructor & Destructor Documentation

◆ BuckinghamInteractionType() [1/2]

OpenMD::BuckinghamInteractionType::BuckinghamInteractionType ( RealType  myA,
RealType  myB,
RealType  myC,
BuckinghamType  myType 
)
inline

◆ BuckinghamInteractionType() [2/2]

OpenMD::BuckinghamInteractionType::BuckinghamInteractionType ( RealType  myA,
RealType  myB,
RealType  myC,
RealType  mySigma,
RealType  myEpsilon,
BuckinghamType  myType 
)
inline

Member Function Documentation

◆ getA()

RealType OpenMD::BuckinghamInteractionType::getA ( )
inline

Definition at line 100 of file BuckinghamInteractionType.hpp.

References A.

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

◆ getB()

RealType OpenMD::BuckinghamInteractionType::getB ( )
inline

Definition at line 104 of file BuckinghamInteractionType.hpp.

References B.

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

◆ getC()

RealType OpenMD::BuckinghamInteractionType::getC ( )
inline

Definition at line 108 of file BuckinghamInteractionType.hpp.

References C.

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

◆ getEpsilon()

RealType OpenMD::BuckinghamInteractionType::getEpsilon ( )
inline

Definition at line 116 of file BuckinghamInteractionType.hpp.

References epsilon.

◆ getInteractionType()

BuckinghamType OpenMD::BuckinghamInteractionType::getInteractionType ( )
inline

Definition at line 120 of file BuckinghamInteractionType.hpp.

References interactionType.

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

◆ getSigma()

RealType OpenMD::BuckinghamInteractionType::getSigma ( )
inline

Definition at line 112 of file BuckinghamInteractionType.hpp.

References sigma.

Member Data Documentation

◆ A

RealType OpenMD::BuckinghamInteractionType::A
private

Definition at line 125 of file BuckinghamInteractionType.hpp.

Referenced by BuckinghamInteractionType(), and getA().

◆ B

RealType OpenMD::BuckinghamInteractionType::B
private

Definition at line 126 of file BuckinghamInteractionType.hpp.

Referenced by BuckinghamInteractionType(), and getB().

◆ C

RealType OpenMD::BuckinghamInteractionType::C
private

Definition at line 127 of file BuckinghamInteractionType.hpp.

Referenced by BuckinghamInteractionType(), and getC().

◆ epsilon

RealType OpenMD::BuckinghamInteractionType::epsilon
private

Definition at line 129 of file BuckinghamInteractionType.hpp.

Referenced by BuckinghamInteractionType(), and getEpsilon().

◆ interactionType

BuckinghamType OpenMD::BuckinghamInteractionType::interactionType
private

Definition at line 130 of file BuckinghamInteractionType.hpp.

Referenced by BuckinghamInteractionType(), and getInteractionType().

◆ sigma

RealType OpenMD::BuckinghamInteractionType::sigma
private

Definition at line 128 of file BuckinghamInteractionType.hpp.

Referenced by BuckinghamInteractionType(), and getSigma().


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