 |
RDKit
Open-source cheminformatics and machine learning.
|
Go to the documentation of this file.
13 #ifndef __RD_MMFFANGLEBEND_H__
14 #define __RD_MMFFANGLEBEND_H__
41 unsigned int idx3,
const MMFFAngle *mmffAngleParams,
42 const MMFFProp *mmffPropParamsCentralAtom);
44 void getGrad(
double *pos,
double *grad)
const;
51 int d_at1Idx, d_at2Idx, d_at3Idx;
52 double d_ka, d_theta0;
70 const double cosTheta);
72 double **g,
double &dE_dTheta,
The angle-bend term for MMFF.
double getEnergy(double *pos) const
returns our contribution to the energy of a position
RDKIT_FORCEFIELD_EXPORT void calcAngleBendGrad(RDGeom::Point3D *r, double *dist, double **g, double &dE_dTheta, double &cosTheta, double &sinTheta)
void getGrad(double *pos, double *grad) const
calculates our contribution to the gradients of a position
class to store MMFF parameters for bond stretching
virtual AngleBendContrib * copy() const
return a copy
A class to store forcefields and handle minimization.
RDKIT_FORCEFIELD_EXPORT double calcAngleRestValue(const MMFFAngle *mmffAngleParams)
returns the MMFF rest value for an angle
abstract base class for contributions to ForceFields
class to store MMFF Properties
#define RDKIT_FORCEFIELD_EXPORT
RDKIT_FORCEFIELD_EXPORT double calcAngleBendEnergy(const double theta0, const double ka, bool isLinear, const double cosTheta)
calculates and returns the angle bending MMFF energy
class to store MMFF parameters for angle bending
RDKIT_FORCEFIELD_EXPORT double calcAngleForceConstant(const MMFFAngle *mmffAngleParams)
returns the MMFF force constant for an angle
AngleBendContrib(ForceField *owner, unsigned int idx1, unsigned int idx2, unsigned int idx3, const MMFFAngle *mmffAngleParams, const MMFFProp *mmffPropParamsCentralAtom)
Constructor.
RDKIT_FORCEFIELD_EXPORT double calcCosTheta(RDGeom::Point3D p1, RDGeom::Point3D p2, RDGeom::Point3D p3, double dist1, double dist2)
calculates and returns the cosine of the angle between points p1, p2, p3