11#ifndef RD_MMFFTORSIONANGLE_H
12#define RD_MMFFTORSIONANGLE_H
45 void addTerm(
unsigned int idx1,
unsigned int idx2,
unsigned int idx3,
46 unsigned int idx4,
const MMFFTor *mmffTorParams);
48 void getGrad(
double *pos,
double *grad)
const override;
54 std::vector<int16_t> d_at1Idx;
55 std::vector<int16_t> d_at2Idx;
56 std::vector<int16_t> d_at3Idx;
57 std::vector<int16_t> d_at4Idx;
58 std::vector<double> d_V1;
59 std::vector<double> d_V2;
60 std::vector<double> d_V3;
71calcTorsionForceConstant(
const MMFFTor *mmffTorParams);
79 double **g,
double &sinTerm,
abstract base class for contributions to ForceFields
A class to store forcefields and handle minimization.
class to store MMFF parameters for torsions
the torsion term for MMFF
void getGrad(double *pos, double *grad) const override
calculates our contribution to the gradients of a position
TorsionAngleContrib(ForceField *owner)
Constructor.
double getEnergy(double *pos) const override
returns our contribution to the energy of a position
void addTerm(unsigned int idx1, unsigned int idx2, unsigned int idx3, unsigned int idx4, const MMFFTor *mmffTorParams)
TorsionAngleContrib * copy() const override
return a copy
#define RDKIT_FORCEFIELD_EXPORT