OpenMD 3.0
Molecular Dynamics in the Open
Loading...
Searching...
No Matches
OpenMD::Inversion Class Reference
+ Inheritance diagram for OpenMD::Inversion:

Public Member Functions

 Inversion (Atom *atom1, Atom *atom2, Atom *atom3, Atom *atom4, InversionType *it)
 
virtual void calcForce (RealType &angle, bool doParticlePot)
 
RealType getValue (int snapshotNo)
 Returns the value of this ShortRangeInteraction in specified snapshot.
 
RealType getPotential ()
 
AtomgetAtomA ()
 
AtomgetAtomB ()
 
AtomgetAtomC ()
 
AtomgetAtomD ()
 
InversionTypegetInversionType ()
 
virtual std::string getName ()
 Returns the name of this ShortRangeInteraction.
 
virtual void setName (const std::string &name)
 Sets the name of this inversion for selections.
 
void accept (BaseVisitor *v)
 
virtual RealType getPrevValue ()
 Returns the previous value of this ShortRangeInteraction.
 
virtual RealType getValue ()
 Returns the current value of this ShortRangeInteraction.
 
virtual RealType getValue (int snapshotNo)=0
 Returns the value of this ShortRangeInteraction in specified snapshot.
 
- Public Member Functions inherited from OpenMD::ShortRangeInteraction
int getGlobalIndex ()
 Returns the global index of this ShortRangeInteraction.
 
void setGlobalIndex (int index)
 Sets the global index of this ShortRangeInteraction.
 
int getLocalIndex ()
 Returns the local index of this ShortRangeInteraction.
 
void setLocalIndex (int index)
 Sets the local index of this ShortRangeInteraction.
 
void setSnapshotManager (SnapshotManager *sman)
 Sets the Snapshot Manager of this ShortRangeInteraction.
 
virtual std::vector< Atom * > getAtoms ()
 
void addProperty (std::shared_ptr< GenericData > genData)
 Adds property into property map.
 
void removeProperty (const std::string &propName)
 Removes property from PropertyMap by name.
 
std::vector< std::string > getPropertyNames ()
 Returns all names of properties.
 
std::vector< std::shared_ptr< GenericData > > getProperties ()
 Returns all of the properties in PropertyMap.
 
std::shared_ptr< GenericDatagetPropertyByName (const std::string &propName)
 Returns property.
 

Protected Attributes

InversionTypeinversionType_
 
InversionKey inversionKey_
 
std::string name_
 
RealType potential_
 
- 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 (const ShortRangeInteraction &sri)
 
ShortRangeInteractionoperator= (const ShortRangeInteraction &sri)
 

Detailed Description

Definition at line 74 of file Inversion.hpp.

Constructor & Destructor Documentation

◆ Inversion()

OpenMD::Inversion::Inversion ( Atom * atom1,
Atom * atom2,
Atom * atom3,
Atom * atom4,
InversionType * it )

Definition at line 55 of file Inversion.cpp.

◆ ~Inversion()

virtual OpenMD::Inversion::~Inversion ( )
inlinevirtual

Definition at line 81 of file Inversion.hpp.

Member Function Documentation

◆ accept()

void OpenMD::Inversion::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 131 of file Inversion.hpp.

◆ calcForce()

void OpenMD::Inversion::calcForce ( RealType & angle,
bool doParticlePot )
virtual

Definition at line 68 of file Inversion.cpp.

◆ getAtomA()

Atom * OpenMD::Inversion::getAtomA ( )
inline

Definition at line 118 of file Inversion.hpp.

◆ getAtomB()

Atom * OpenMD::Inversion::getAtomB ( )
inline

Definition at line 120 of file Inversion.hpp.

◆ getAtomC()

Atom * OpenMD::Inversion::getAtomC ( )
inline

Definition at line 122 of file Inversion.hpp.

◆ getAtomD()

Atom * OpenMD::Inversion::getAtomD ( )
inline

Definition at line 124 of file Inversion.hpp.

◆ getInversionType()

InversionType * OpenMD::Inversion::getInversionType ( )
inline

Definition at line 126 of file Inversion.hpp.

◆ getName()

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

Returns the name of this ShortRangeInteraction.

Implements OpenMD::ShortRangeInteraction.

Definition at line 127 of file Inversion.hpp.

◆ getPotential()

RealType OpenMD::Inversion::getPotential ( )
inline

Definition at line 116 of file Inversion.hpp.

◆ getPrevValue()

RealType OpenMD::ShortRangeInteraction::getPrevValue ( )
virtual

Returns the previous value of this ShortRangeInteraction.

Returns
the value of this ShortRangeInteraction

Reimplemented from OpenMD::ShortRangeInteraction.

Definition at line 123 of file ShortRangeInteraction.cpp.

◆ getValue() [1/3]

RealType OpenMD::ShortRangeInteraction::getValue ( )
virtual

Returns the current value of this ShortRangeInteraction.

Returns
the current value of this ShortRangeInteraction

Reimplemented from OpenMD::ShortRangeInteraction.

Definition at line 129 of file ShortRangeInteraction.cpp.

◆ getValue() [2/3]

RealType OpenMD::Inversion::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 84 of file Inversion.hpp.

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

◆ getValue() [3/3]

virtual RealType OpenMD::ShortRangeInteraction::getValue ( int snapshotNo)
virtual

Returns the value of this ShortRangeInteraction in specified snapshot.

Returns
the value of this ShortRangeInteraction
Parameters
snapshotNo

Implements OpenMD::ShortRangeInteraction.

◆ setName()

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

Sets the name of this inversion for selections.

Reimplemented from OpenMD::ShortRangeInteraction.

Definition at line 129 of file Inversion.hpp.

Member Data Documentation

◆ inversionKey_

InversionKey OpenMD::Inversion::inversionKey_
protected

Definition at line 135 of file Inversion.hpp.

◆ inversionType_

InversionType* OpenMD::Inversion::inversionType_
protected

Definition at line 134 of file Inversion.hpp.

◆ name_

std::string OpenMD::Inversion::name_
protected

Definition at line 136 of file Inversion.hpp.

◆ potential_

RealType OpenMD::Inversion::potential_
protected

Definition at line 138 of file Inversion.hpp.


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