OEStarts

class OEStarts

The OEStarts is an abstract base class. This class defines an interface for providing various kinds of Starts for overlay optimization calculations. Most methods in this interface are useful for advanced users that wants to create their own optimization workflow using these starts. For specifying starts for OEOverlay or OEROCS calculations, users merely needs to instantiate the appropriate OEStarts.

../../_images/OEStarts.png
The OEStarts class defines the following public methods:
The following classes derive from this class:

CreateCopy

OEStarts* CreateCopy() const

Returns a new instance of an OEStarts with the same parameters as the inherent starts.

GetNumOfStarts

unsigned int GetNumOfStarts() const

Returns the number of starts currently set. In most cases, the number of starts depends on the reference and the fit object to be used for optimization. Both SetupRef and Setup should be called to setup the reference and fit information prior to accessing the number of starts for any specific optimization.

GetStarts

bool GetStarts(double* argQuats) const

Returns the starting quaternions currently set. In most cases, the number of starts depends on the reference and the fit object to be used for optimization. Both SetupRef and Setup should be called to setup the reference and fit information prior to accessing the number of starts for any specific optimization.

The array passed in for obtaining the starting quaternions must have a length of art least 7*(NumStarts).

Setup

unsigned int Setup(const OEChem::OEMolBase& argFitMol, OEChem::OETrans& argTrans)

This method defines the interface for setting up the fit system for the OEStarts derived instance with a molecule. The second argument returns the transformation required to be applied on the fit molecule prior to starting any optimization. The return value of the method corresponds to the calculated symmetry type of the fit molecule. The reference system information must be set by calling SetupRef prior to calling Setup.

SetupRef

bool SetupRef(const unsigned int symmetry)
bool SetupRef(const OEChem::OEMolBase& argRefMol, const unsigned int symmetry)

These methods define the interface for setting up the reference system for the OEStarts derived instance. The knowledge of the reference molecule is required for some variants of the OEStarts, whereas the others just require the symmetry information for the reference system. The corresponding symmetry values are defined in the OEMomentSymmetry namespace, and can be calculated using the OEOrientByMomentsOfInertia method.