RDKit: ForceFields::UFF::TorsionAngleContrib Class Reference

| RDKit Open-source cheminformatics and machine learning.

Loading...
Searching...
No Matches
Public Member Functions | List of all members
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.
double | getEnergy (double *pos) const override
| returns our contribution to the energy of a position
void | getGrad (double *pos, double *grad) const override
| calculates our contribution to the gradients of a position
void | scaleForceConstant (unsigned int count)
TorsionAngleContrib * | copy () const override
| return a copy
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 {nullptr}
| our owning ForceField

## Detailed Description

the torsion term for the Universal Force Field

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

## Constructor & Destructor Documentation

## ◆ TorsionAngleContrib() [1/2]

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

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

Referenced by copy().

## ◆ TorsionAngleContrib() [2/2]

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

References ForceFields::ForceFieldContrib::ForceField.

## Member Function Documentation

## ◆ copy()

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

return a copy

Implements ForceFields::ForceFieldContrib.

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

References TorsionAngleContrib().

## ◆ getEnergy()

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

returns our contribution to the energy of a position

Implements ForceFields::ForceFieldContrib.

## ◆ getGrad()

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

calculates our contribution to the gradients of a position

Implements ForceFields::ForceFieldContrib.

## ◆ scaleForceConstant()

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

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

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

- UFF/TorsionAngle.h