This API is currently available in C++ and Python.
class OESmirnoffInterVdw : public OESmirnoffVdw
The OESmirnoffInterVdw class is used for calculating intermolecular VdW interactions using the SMIRNOFF force field (see SMIRNOFF). This type of calculation is particularly useful in the cases where a small molecule interacts with a macromolecule that is rigid or partially flexible.
- The following methods are publicly inherited from OEFunc0:
- The following methods are publicly inherited from OEFunc1:
- The following methods are publicly inherited from OEFunc2:
- The following methods are publicly inherited from OEMolFunc:
- The following methods are publicly inherited from OESmirnoffVdw:
- The OESmirnoffInterVdw class defines the following public methods:
OESmirnoffInterVdw(const OEChem::OEMolBase& host, const OESmirnoffParams& params, const double rcut=0.0)
Constructs an OESmirnoffInterVdw object for a host molecule using the specified set of parameters (OESmirnoffParams). The rcut sets the vdW cutoff distance. Its default value of 0.0 indicates that no cutoff is used.
bool SetHostFlex(const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>& pred)
Sets predicate (OEUnaryPredicate) that defines the flexible atoms of the host molecule (usually a macromolecule). Host atoms that pass the predicate (OEUnaryPredicate) will be subject to optimization along with the ligand atoms for which a Setup method is called.
void GetVar(double* var, const double* x);
Takes the complete set coordinates of the host-ligand system (x) and transforms them to a subset of coordinates to be optimized (var).
bool AdaptHostCoords(double *coords, const double *var) const;
Produces the complete host coordinates (coords) from a set of host coordinates representing the flexible part of the host (var).