10#ifndef __RD_MMFFOopBend_H__
11#define __RD_MMFFOopBend_H__
36 void addTerm(
unsigned int idx1,
unsigned int idx2,
37 unsigned int idx3,
unsigned int idx4,
41 void getGrad(
double *pos,
double *grad)
const override;
44 void getSingleGrad(
double* pos,
double* grad,
unsigned int termIdx)
const;
47 std::vector<int> d_at1Idxs, d_at2Idxs, d_at3Idxs, d_at4Idxs;
48 std::vector<double> d_koop;
abstract base class for contributions to ForceFields
A class to store forcefields and handle minimization.
class to store MMFF parameters for out-of-plane bending
the out-of-plane term for MMFF
void addTerm(unsigned int idx1, unsigned int idx2, unsigned int idx3, unsigned int idx4, const MMFFOop *mmffOopParams)
void getSingleGrad(double *pos, double *grad, unsigned int termIdx) const
void getGrad(double *pos, double *grad) const override
calculates our contribution to the gradients of a position
OopBendContrib(ForceField *owner)
Constructor.
double getEnergy(double *pos) const override
returns our contribution to the energy of a position
OopBendContrib * copy() const override
return a copy
#define RDKIT_FORCEFIELD_EXPORT