RDCode: ForceFields::UFF::AngleBendContrib Class Reference

# ForceFields::UFF::AngleBendContrib Class Reference

The angle-bend term for the Universal Force Field. More...

`#include <AngleBend.h>`

Inheritance diagram for ForceFields::UFF::AngleBendContrib:

List of all members.

## Public Member Functions
| AngleBendContrib ()
| AngleBendContrib (ForceField *owner, unsigned int idx1, unsigned int idx2, unsigned int idx3, double bondOrder12, double bondOrder23, const AtomicParams *at1Params, const AtomicParams *at2Params, const AtomicParams *at3Params, unsigned int order=0)
| Constructor.
double | getEnergy (double *pos) const
| returns our contribution to the energy of a position
void | getGrad (double *pos, double *grad) const
| calculates our contribution to the gradients of a position

## Detailed Description

The angle-bend term for the Universal Force Field.

Definition at line 17 of file AngleBend.h.

## Constructor & Destructor Documentation

ForceFields::UFF::AngleBendContrib::AngleBendContrib | ( |  | ) | `[inline]`

Definition at line 19 of file AngleBend.h.

ForceFields::UFF::AngleBendContrib::AngleBendContrib | ( | ForceField * | owner,
|  | unsigned int | idx1,
|  | unsigned int | idx2,
|  | unsigned int | idx3,
|  | double | bondOrder12,
|  | double | bondOrder23,
|  | const AtomicParams * | at1Params,
|  | const AtomicParams * | at2Params,
|  | const AtomicParams * | at3Params,
|  | unsigned int | order = `0` |
| ) |  |  |

Constructor.

The angle is between atom1 - 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
  | bondOrder12 | order of the bond between atoms 1 and 2 (as a double)
  | bondOrder23 | order of the bond between atoms 2 and 3 (as a double)
  | at1Params | pointer to the parameters for atom 1
  | at2Params | pointer to the parameters for atom 2
  | at3Params | pointer to the parameters for atom 3
  | order | (optional) the order of the angle term, this is for special cases and should adopt values: 0: not a special case, use the `theta0` value from `at2Params` 2: linear coordination 3: trigonal planar coordination 4: square planar or tetrahedral coordination

## Member Function Documentation

double ForceFields::UFF::AngleBendContrib::getEnergy | ( | double * | pos | ) | const`[virtual]`

returns our contribution to the energy of a position

Implements ForceFields::ForceFieldContrib.

void ForceFields::UFF::AngleBendContrib::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:

- AngleBend.h