Scine::Swoose
2.1.0
This is the SCINE module Swoose.
|
Class evaluating improper dihedral interaction for four given atoms. More...
#include <ImproperDihedralTerm.h>
Public Types | |
using | AtomIndex = int |
Public Member Functions | |
ImproperDihedralTerm (AtomIndex firstAtom, AtomIndex secondAtom, AtomIndex centralAtom, AtomIndex fourthAtom, const ImproperDihedral &improperDihedral, const ImproperDihedralType &typeOfImproperDihedral) | |
Constructor from four atoms and instances of an ImproperDihedral and an ImproperDihedralType. | |
~ImproperDihedralTerm () | |
Destructor. | |
double | evaluateImproperDihedralTerm (const Utils::PositionCollection &positions, Utils::AtomicSecondDerivativeCollection &derivatives) const |
Evaluates energy contribution and adds the derivatives. | |
ImproperDihedralType | getTypeOfImproperDihedral () const |
Getter for the improper dihedral type. | |
int | getFirstAtom () const |
Getter for first atom. | |
int | getSecondAtom () const |
Getter for second atom. | |
int | getCentralAtom () const |
Getter for central atom. | |
int | getFourthAtom () const |
Getter for fourth atom. | |
Public Member Functions inherited from Scine::MolecularMechanics::InteractionTermBase | |
void | disable () |
Disable this term. If it is disabled, the interaction is included in the MM model. Needed for the QM/MM calculator to switch specific interactions off and on. | |
void | enable () |
Enable this term. If it is enabled, the interaction is included in the MM model. Needed for the QM/MM calculator to switch specific interactions off and on. | |
Static Public Member Functions | |
static double | getTheta (const Eigen::Vector3d &A, const Eigen::Vector3d &B, const Eigen::Vector3d &G) |
Calculates and returns the improper dihedral angle theta from the three essential vectors A, B and G. | |
Additional Inherited Members | |
Protected Attributes inherited from Scine::MolecularMechanics::InteractionTermBase | |
bool | disabled_ = false |
Class evaluating improper dihedral interaction for four given atoms.
This class is very similar to the DihedralTerm class. Here, instead of the third atom, we have the central atom. For future development: Combine classes in a smart way.