ForceFields::UFF::TorsionAngleContrib Class Reference

the torsion term for the Universal Force Field More...

`#include <TorsionAngle.h>`

Inheritance diagram for ForceFields::UFF::TorsionAngleContrib:

## Public Member Functions

| TorsionAngleContrib ()
| TorsionAngleContrib (ForceField *owner, unsigned int idx1, unsigned int idx2, unsigned int idx3, unsigned int idx4, double bondOrder23, int atNum2, int atNum3, RDKit::Atom::HybridizationType hyb2, RDKit::Atom::HybridizationType hyb3, const AtomicParams *at2Params, const AtomicParams *at3Params, bool endAtomIsSP2=false)
| 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...
void | scaleForceConstant (unsigned int count)
virtual TorsionAngleContrib * | copy () const
| return a copy More...
Public Member Functions inherited from ForceFields::ForceFieldContrib
| ForceFieldContrib ()
virtual | ~ForceFieldContrib ()

## Additional Inherited Members

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

## Detailed Description

the torsion term for the Universal Force Field

Definition at line 28 of file UFF/TorsionAngle.h.

## Constructor & Destructor Documentation

ForceFields::UFF::TorsionAngleContrib::TorsionAngleContrib | ( |  | ) |

inline

Definition at line 30 of file UFF/TorsionAngle.h.

Referenced by copy().

ForceFields::UFF::TorsionAngleContrib::TorsionAngleContrib | ( | ForceField * | owner,
|  | unsigned int | idx1,
|  | unsigned int | idx2,
|  | unsigned int | idx3,
|  | unsigned int | idx4,
|  | double | bondOrder23,
|  | int | atNum2,
|  | int | atNum3,
|  | RDKit::Atom::HybridizationType | hyb2,
|  | RDKit::Atom::HybridizationType | hyb3,
|  | const AtomicParams * | at2Params,
|  | const AtomicParams * | at3Params,
|  | bool | endAtomIsSP2 = `false`
| ) |  |

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
  bondOrder23 | order of the torsional bond between atoms 2 and 3 (as a double)
  atNum2 | atomic number of atom2
  atNum3 | atomic number of atom3
  hyb2 | hybridization of atom2
  hyb3 | hybridization of atom3
  at2Params | pointer to the parameters for atom 2
  at3Params | pointer to the parameters for atom 3

  endAtomIsSP2

  (optional) This boolean is used to signal whether either atom1 or atom4 are RDKit::Atom::SP2 hybridized. This triggers a special case when either of these cases holds:
  - atom1 is RDKit::Atom::SP2, atom2 is RDKit::Atom::SP2 and atom3 is RDKit::Atom::SP3
  - atom4 is RDKit::Atom::SP2, atom3 is RDKit::Atom::SP2 and atom2 is RDKit::Atom::SP3

## Member Function Documentation

virtual TorsionAngleContrib* ForceFields::UFF::TorsionAngleContrib::copy | ( |  | ) | const

inline virtual

return a copy

Implements ForceFields::ForceFieldContrib.

Definition at line 71 of file UFF/TorsionAngle.h.

References TorsionAngleContrib().

double ForceFields::UFF::TorsionAngleContrib::getEnergy | ( | double * | pos | ) | const

virtual

returns our contribution to the energy of a position

Implements ForceFields::ForceFieldContrib.

void ForceFields::UFF::TorsionAngleContrib::getGrad | ( | double * | pos,
|  | double * | grad
| ) |  | const

virtual

calculates our contribution to the gradients of a position

Implements ForceFields::ForceFieldContrib.

void ForceFields::UFF::TorsionAngleContrib::scaleForceConstant | ( | unsigned int | count | ) |

inline

Definition at line 70 of file UFF/TorsionAngle.h.

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

- UFF/TorsionAngle.h