This API is currently available in C++ and Python.

class OEInterMolFunc1 : public OEMolFunc1

The OEInterMolFunc1 is an abstract base class. It extends OEMolFunc1 to 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 OEMolFunc:
The OEInterMolFunc1 class defines the following public methods:
The following classes derive from this class:


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).


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 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.


bool SetupHost(const OEChem::OEMolBase& host)

Sets a macromolecule as host.