RDKit
Open-source cheminformatics and machine learning.
ForceFields::MMFF::Utils Namespace Reference

Functions

double calcAngleRestValue (const MMFFAngle *mmffAngleParams)
 returns the MMFF rest value for an angle More...
 
double calcAngleForceConstant (const MMFFAngle *mmffAngleParams)
 returns the MMFF force constant for an angle More...
 
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 More...
 
double calcAngleBendEnergy (const double theta0, const double ka, bool isLinear, const double cosTheta)
 calculates and returns the angle bending MMFF energy More...
 
void calcAngleBendGrad (RDGeom::Point3D *r, double *dist, double **g, double &dE_dTheta, double &cosTheta, double &sinTheta)
 
double calcBondRestLength (const MMFFBond *mmffBondParams)
 returns the MMFF rest length for a bond More...
 
double calcBondForceConstant (const MMFFBond *mmffBondParams)
 returns the MMFF force constant for a bond More...
 
double calcBondStretchEnergy (const double r0, const double kb, const double distance)
 calculates and returns the bond stretching MMFF energy More...
 
double calcUnscaledVdWMinimum (MMFFVdWCollection *mmffVdW, const MMFFVdW *mmffVdWParamsAtom1, const MMFFVdW *mmffVdWParamsAtom2)
 calculates and returns the unscaled minimum distance (R*ij) for a MMFF VdW More...
 
double calcUnscaledVdWWellDepth (double R_star_ij, const MMFFVdW *mmffVdWParamsIAtom, const MMFFVdW *mmffVdWParamsJAtom)
 calculates and returns the unscaled well depth (epsilon) for a MMFF VdW More...
 
void scaleVdWParams (double &R_star_ij, double &wellDepth, MMFFVdWCollection *mmffVdW, const MMFFVdW *mmffVdWParamsIAtom, const MMFFVdW *mmffVdWParamsJAtom)
 scales the VdW parameters More...
 
double calcVdWEnergy (const double dist, const double R_star_ij, const double wellDepth)
 calculates and returns the Van der Waals MMFF energy More...
 
double calcEleEnergy (unsigned int idx1, unsigned int idx2, double dist, double chargeTerm, boost::uint8_t dielModel, bool is1_4)
 calculates and returns the electrostatic MMFF energy More...
 
double calcOopChi (const RDGeom::Point3D &iPoint, const RDGeom::Point3D &jPoint, const RDGeom::Point3D &kPoint, const RDGeom::Point3D &lPoint)
 calculates and returns the Wilson angle (in degrees) More...
 
double calcOopBendForceConstant (const MMFFOop *mmffOopParams)
 returns the out-of-plane force constant koop More...
 
double calcOopBendEnergy (const double chi, const double koop)
 calculates and returns the out-of-plane MMFF energy More...
 
std::pair< double, double > calcStbnForceConstants (const MMFFStbn *mmffStbnParams)
 returns the std::pair of stretch-bend force constants for an angle More...
 
std::pair< double, double > calcStretchBendEnergy (const double deltaDist1, const double deltaDist2, const double deltaTheta, const std::pair< double, double > forceConstants)
 calculates and returns the stretch-bending MMFF energy More...
 
double calcTorsionCosPhi (const RDGeom::Point3D &iPoint, const RDGeom::Point3D &jPoint, const RDGeom::Point3D &kPoint, const RDGeom::Point3D &lPoint)
 calculates and returns the cosine of a torsion angle More...
 
boost::tuple< double, double, double > calcTorsionForceConstant (const MMFFTor *mmffTorParams)
 returns the 3-tuple of a torsion angle force constants More...
 
double calcTorsionEnergy (const double V1, const double V2, const double V3, const double cosPhi)
 calculates and returns the torsional MMFF energy More...
 
void calcTorsionGrad (RDGeom::Point3D *r, RDGeom::Point3D *t, double *d, double **g, double &sinTerm, double &cosPhi)
 

Function Documentation

double ForceFields::MMFF::Utils::calcAngleBendEnergy ( const double  theta0,
const double  ka,
bool  isLinear,
const double  cosTheta 
)

calculates and returns the angle bending MMFF energy

void ForceFields::MMFF::Utils::calcAngleBendGrad ( RDGeom::Point3D r,
double *  dist,
double **  g,
double &  dE_dTheta,
double &  cosTheta,
double &  sinTheta 
)
double ForceFields::MMFF::Utils::calcAngleForceConstant ( const MMFFAngle mmffAngleParams)

returns the MMFF force constant for an angle

double ForceFields::MMFF::Utils::calcAngleRestValue ( const MMFFAngle mmffAngleParams)

returns the MMFF rest value for an angle

double ForceFields::MMFF::Utils::calcBondForceConstant ( const MMFFBond mmffBondParams)

returns the MMFF force constant for a bond

Referenced by ForceFields::MMFF::BondStretchContrib::copy().

double ForceFields::MMFF::Utils::calcBondRestLength ( const MMFFBond mmffBondParams)

returns the MMFF rest length for a bond

Referenced by ForceFields::MMFF::BondStretchContrib::copy().

double ForceFields::MMFF::Utils::calcBondStretchEnergy ( const double  r0,
const double  kb,
const double  distance 
)

calculates and returns the bond stretching MMFF energy

Referenced by ForceFields::MMFF::BondStretchContrib::copy().

double ForceFields::MMFF::Utils::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

double ForceFields::MMFF::Utils::calcEleEnergy ( unsigned int  idx1,
unsigned int  idx2,
double  dist,
double  chargeTerm,
boost::uint8_t  dielModel,
bool  is1_4 
)

calculates and returns the electrostatic MMFF energy

Referenced by ForceFields::MMFF::EleContrib::copy().

double ForceFields::MMFF::Utils::calcOopBendEnergy ( const double  chi,
const double  koop 
)

calculates and returns the out-of-plane MMFF energy

Referenced by ForceFields::MMFF::OopBendContrib::copy().

double ForceFields::MMFF::Utils::calcOopBendForceConstant ( const MMFFOop mmffOopParams)

returns the out-of-plane force constant koop

Referenced by ForceFields::MMFF::OopBendContrib::copy().

double ForceFields::MMFF::Utils::calcOopChi ( const RDGeom::Point3D iPoint,
const RDGeom::Point3D jPoint,
const RDGeom::Point3D kPoint,
const RDGeom::Point3D lPoint 
)

calculates and returns the Wilson angle (in degrees)

Referenced by ForceFields::MMFF::OopBendContrib::copy().

std::pair<double, double> ForceFields::MMFF::Utils::calcStbnForceConstants ( const MMFFStbn mmffStbnParams)

returns the std::pair of stretch-bend force constants for an angle

Referenced by ForceFields::MMFF::StretchBendContrib::copy().

std::pair<double, double> ForceFields::MMFF::Utils::calcStretchBendEnergy ( const double  deltaDist1,
const double  deltaDist2,
const double  deltaTheta,
const std::pair< double, double >  forceConstants 
)

calculates and returns the stretch-bending MMFF energy

Referenced by ForceFields::MMFF::StretchBendContrib::copy().

double ForceFields::MMFF::Utils::calcTorsionCosPhi ( const RDGeom::Point3D iPoint,
const RDGeom::Point3D jPoint,
const RDGeom::Point3D kPoint,
const RDGeom::Point3D lPoint 
)

calculates and returns the cosine of a torsion angle

Referenced by ForceFields::MMFF::TorsionAngleContrib::copy().

double ForceFields::MMFF::Utils::calcTorsionEnergy ( const double  V1,
const double  V2,
const double  V3,
const double  cosPhi 
)

calculates and returns the torsional MMFF energy

Referenced by ForceFields::MMFF::TorsionAngleContrib::copy().

boost::tuple<double, double, double> ForceFields::MMFF::Utils::calcTorsionForceConstant ( const MMFFTor mmffTorParams)

returns the 3-tuple of a torsion angle force constants

Referenced by ForceFields::MMFF::TorsionAngleContrib::copy().

void ForceFields::MMFF::Utils::calcTorsionGrad ( RDGeom::Point3D r,
RDGeom::Point3D t,
double *  d,
double **  g,
double &  sinTerm,
double &  cosPhi 
)
double ForceFields::MMFF::Utils::calcUnscaledVdWMinimum ( MMFFVdWCollection mmffVdW,
const MMFFVdW mmffVdWParamsAtom1,
const MMFFVdW mmffVdWParamsAtom2 
)

calculates and returns the unscaled minimum distance (R*ij) for a MMFF VdW

Referenced by ForceFields::MMFF::EleContrib::copy().

double ForceFields::MMFF::Utils::calcUnscaledVdWWellDepth ( double  R_star_ij,
const MMFFVdW mmffVdWParamsIAtom,
const MMFFVdW mmffVdWParamsJAtom 
)

calculates and returns the unscaled well depth (epsilon) for a MMFF VdW

Referenced by ForceFields::MMFF::EleContrib::copy().

double ForceFields::MMFF::Utils::calcVdWEnergy ( const double  dist,
const double  R_star_ij,
const double  wellDepth 
)

calculates and returns the Van der Waals MMFF energy

Referenced by ForceFields::MMFF::EleContrib::copy().

void ForceFields::MMFF::Utils::scaleVdWParams ( double &  R_star_ij,
double &  wellDepth,
MMFFVdWCollection mmffVdW,
const MMFFVdW mmffVdWParamsIAtom,
const MMFFVdW mmffVdWParamsJAtom 
)

scales the VdW parameters

Referenced by ForceFields::MMFF::EleContrib::copy().