ForceFields::CrystalFF::TorsionAngleContribM6 Class Reference

the torsion term for multiplicity m = 1 - 6 More...

`#include <TorsionAngleM6.h>`

Inheritance diagram for ForceFields::CrystalFF::TorsionAngleContribM6:

## Public Member Functions

| TorsionAngleContribM6 ()
| TorsionAngleContribM6 (ForceFields::ForceField *owner, unsigned int idx1, unsigned int idx2, unsigned int idx3, unsigned int idx4, const std::vector< double > &V, const std::vector< int > &signs)
| Constructor. More...
double | getEnergy (double *pos) const
| returns our contribution to the energy of a position More...
void | getGrad (double *pos, double *grad) const
| calculates our contribution to the gradients of a position More...
virtual TorsionAngleContribM6 * | copy () const
| return a copy More...
Public Member Functions inherited from ForceFields::ForceFieldContrib
| ForceFieldContrib ()
| ForceFieldContrib (ForceFields::ForceField *owner)
virtual | ~ForceFieldContrib ()

## Additional Inherited Members

Protected Attributes inherited from ForceFields::ForceFieldContrib
ForceField * | dp_forceField
| our owning ForceField More...

## Detailed Description

the torsion term for multiplicity m = 1 - 6

Definition at line 32 of file TorsionAngleM6.h.

## Constructor & Destructor Documentation

## TorsionAngleContribM6() [1/2]

ForceFields::CrystalFF::TorsionAngleContribM6::TorsionAngleContribM6 | ( |  | ) |

inline

Definition at line 34 of file TorsionAngleM6.h.

## TorsionAngleContribM6() [2/2]

ForceFields::CrystalFF::TorsionAngleContribM6::TorsionAngleContribM6 | ( | ForceFields::ForceField * | owner,
|  | unsigned int | idx1,
|  | unsigned int | idx2,
|  | unsigned int | idx3,
|  | unsigned int | idx4,
|  | const std::vector< double > & | V,
|  | const std::vector< int > & | signs
| ) |  |

Constructor.

The torsion is between atom1 - atom2 - atom3 - atom4 (i.e the angle between bond atom1-atom2 and bond atom3-atom4 while looking down bond atom2-atom3)

Parameters

  owner | pointer to the owning ForceField
  idx1 | index of atom1 in the ForceField's positions
  idx2 | index of atom2 in the ForceField's positions
  idx3 | index of atom3 in the ForceField's positions
  idx4 | index of atom4 in the ForceField's positions
  V | list of 6 force constants
  signs | list of 6 signs (+1 or -1)

## Member Function Documentation

## copy()

virtual TorsionAngleContribM6* ForceFields::CrystalFF::TorsionAngleContribM6::copy | ( |  | ) | const

inline virtual

return a copy

Implements ForceFields::ForceFieldContrib.

Definition at line 56 of file TorsionAngleM6.h.

References ForceFields::CrystalFF::calcTorsionEnergyM6().

## getEnergy()

double ForceFields::CrystalFF::TorsionAngleContribM6::getEnergy | ( | double * | pos | ) | const

virtual

returns our contribution to the energy of a position

Implements ForceFields::ForceFieldContrib.

## getGrad()

void ForceFields::CrystalFF::TorsionAngleContribM6::getGrad | ( | double * | pos,
|  | double * | grad
| ) |  | const

virtual

calculates our contribution to the gradients of a position

Implements ForceFields::ForceFieldContrib.

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

- TorsionAngleM6.h