RDKit
Open-source cheminformatics and machine learning.
|
the torsion term for the Universal Force Field More...
#include <TorsionAngle.h>
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 | |
the torsion term for the Universal Force Field
Definition at line 29 of file UFF/TorsionAngle.h.
|
inline |
Definition at line 31 of file UFF/TorsionAngle.h.
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)
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:
|
|
inlineoverridevirtual |
return a copy
Implements ForceFields::ForceFieldContrib.
Definition at line 72 of file UFF/TorsionAngle.h.
|
overridevirtual |
returns our contribution to the energy of a position
Implements ForceFields::ForceFieldContrib.
|
overridevirtual |
calculates our contribution to the gradients of a position
Implements ForceFields::ForceFieldContrib.
|
inline |
Definition at line 69 of file UFF/TorsionAngle.h.