This is a preliminary API and may be improved based on user feedback. It is currently available in C++ and Python.

class OEFlexiOverlapFunc : public OEMolPotential::OEMolFunc1

The OEFlexiOverlapFunc class defines an interface for static overlap calculation between a reference and a fit molecule. The OEFlexiOverlapFunc extends the OEMolFunc1 class to allow setting up a reference molecule and the underlying functions defining interactions based on shape and color overlaps along with intra-molecular force field of the fit molecule.

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 OEFlexiOverlapFunc class defines the following public methods:


bool Overlap(const double*, OEFlexiOverlapResults&)
bool Overlap(const OEChem::OEMolBase, OEFlexiOverlapResults&)

These methods calculate the staitc overlap between the reference and the fit molecule using shape, color, and force field. The reference object must be set using the SetupRef method. The first overload assumes that the fit molecule has been set using the Setup method and uses the specified coordinates for the fit molecule. The second overlap takes the specified fit molecule and its current coordinates.


bool SetupRef(const OEChem::OEMolBase&)
bool SetupRef(const OEShape::OEShapeQueryBase&)

This method defines the interface for setting up the reference system for the OEFlexiOverlapFunc instance with a molecule or a shape query.


bool UpdateColorCoords(const double* coords, std::vector<double>& updatedCoord)

This method takes the coordinate of fit molecule and updates the coordinate of color atoms based on the modified coordinate of their parent atoms. The fit molecule must be set using the Setup method which assigns color atoms to the passed moleucle.