13 #ifndef __RD_UFFINVERSION_H__ 14 #define __RD_UFFINVERSION_H__ 16 #include <boost/tuple/tuple.hpp> 40 unsigned int idx3,
unsigned int idx4,
int at2AtomicNum,
41 bool isCBoundToO,
double oobForceScalingFactor = 1.0);
43 double getEnergy(
double *pos)
const;
45 void getGrad(
double *pos,
double *grad)
const;
51 int d_at1Idx, d_at2Idx, d_at3Idx, d_at4Idx;
52 double d_forceConstant, d_C0, d_C1, d_C2;
RDKIT_FORCEFIELD_EXPORT double calculateCosY(const RDGeom::Point3D &iPoint, const RDGeom::Point3D &jPoint, const RDGeom::Point3D &kPoint, const RDGeom::Point3D &lPoint)
RDKIT_FORCEFIELD_EXPORT boost::tuple< double, double, double, double > calcInversionCoefficientsAndForceConstant(int at2AtomicNum, bool isCBoundToO)
calculates and returns the UFF force constant for an improper torsion
The inversion term for the Universal Force Field.
abstract base class for contributions to ForceFields
virtual InversionContrib * copy() const
return a copy
#define RDKIT_FORCEFIELD_EXPORT
A class to store forcefields and handle minimization.