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

#include <Bend.hpp>

Inheritance diagram for OpenMD::Bend:
OpenMD::ShortRangeInteraction OpenMD::GhostBend OpenMD::SDKBend OpenMD::UreyBradleyBend

Public Member Functions

 Bend (Atom *atom1, Atom *atom2, Atom *atom3, BendType *bt)
 
virtual ~Bend ()
 
virtual void calcForce (RealType &angle, bool doParticlePot)
 
RealType getValue (int snapshotNo)
 
RealType getPotential ()
 
AtomgetAtomA ()
 
AtomgetAtomB ()
 
AtomgetAtomC ()
 
BendTypegetBendType ()
 
virtual std::string getName ()
 
virtual void setName (const std::string &name)
 
void accept (BaseVisitor *v)
 
- Public Member Functions inherited from OpenMD::ShortRangeInteraction
virtual ~ShortRangeInteraction ()
 
int getGlobalIndex ()
 
void setGlobalIndex (int index)
 
int getLocalIndex ()
 
void setLocalIndex (int index)
 
void setSnapshotManager (SnapshotManager *sman)
 
virtual RealType getPrevValue ()
 
virtual RealType getValue ()
 
virtual std::vector< Atom * > getAtoms ()
 
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)
 

Protected Attributes

RealType potential_
 
BendTypebendType_
 
std::string name_
 
- Protected Attributes inherited from OpenMD::ShortRangeInteraction
SnapshotManagersnapshotMan_
 
std::vector< Atom * > atoms_
 
int globalIndex_
 
int localIndex_
 

Additional Inherited Members

- Protected Member Functions inherited from OpenMD::ShortRangeInteraction
 ShortRangeInteraction ()
 
 ShortRangeInteraction (const ShortRangeInteraction &sri)
 
ShortRangeInteractionoperator= (const ShortRangeInteraction &sri)
 

Detailed Description

Definition at line 70 of file Bend.hpp.

Constructor & Destructor Documentation

◆ Bend()

OpenMD::Bend::Bend ( Atom atom1,
Atom atom2,
Atom atom3,
BendType bt 
)
inline

Definition at line 74 of file Bend.hpp.

◆ ~Bend()

virtual OpenMD::Bend::~Bend ( )
inlinevirtual

Definition at line 82 of file Bend.hpp.

References OpenMD::BendData::angle.

Member Function Documentation

◆ accept()

void OpenMD::Bend::accept ( BaseVisitor v)
inlinevirtual

The purpose of the Visitor Pattern is to encapsulate an operation that you want to perform on the elements of a data structure. In this way, you can change the operation being performed on a structure without the need of changing the classes of the elements that you are operating on. Using a Visitor pattern allows you to decouple the classes for the data structure and the algorithms used upon them

Parameters
vvisitor

Implements OpenMD::ShortRangeInteraction.

Definition at line 135 of file Bend.hpp.

References OpenMD::BaseVisitor::visit().

◆ calcForce()

◆ getAtomA()

◆ getAtomB()

◆ getAtomC()

◆ getBendType()

BendType* OpenMD::Bend::getBendType ( )
inline

Definition at line 127 of file Bend.hpp.

◆ getName()

virtual std::string OpenMD::Bend::getName ( )
inlinevirtual

Returns the name of this ShortRangeInteraction

Implements OpenMD::ShortRangeInteraction.

Definition at line 131 of file Bend.hpp.

Referenced by OpenMD::NameFinder::loadNames().

◆ getPotential()

RealType OpenMD::Bend::getPotential ( )
inline

◆ getValue()

RealType OpenMD::Bend::getValue ( int  snapshotNo)
inlinevirtual

Returns the value of this ShortRangeInteraction in specified snapshot

Returns
the value of this ShortRangeInteraction
Parameters
snapshotNo

Implements OpenMD::ShortRangeInteraction.

Definition at line 85 of file Bend.hpp.

References OpenMD::dot(), and OpenMD::Vector< Real, Dim >::length().

◆ setName()

virtual void OpenMD::Bend::setName ( const std::string &  name)
inlinevirtual

Sets the name of this bend for selections

Reimplemented from OpenMD::ShortRangeInteraction.

Definition at line 133 of file Bend.hpp.

Referenced by OpenMD::MoleculeCreator::createBend().

Member Data Documentation

◆ bendType_

BendType* OpenMD::Bend::bendType_
protected

◆ name_

std::string OpenMD::Bend::name_
protected

Definition at line 143 of file Bend.hpp.

◆ potential_

RealType OpenMD::Bend::potential_
protected

Definition at line 141 of file Bend.hpp.

Referenced by OpenMD::GhostBend::calcForce(), and calcForce().


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