The FastROCS TK search algorithm performs an optimization to maximize the overlap between the query and the database molecule. This namespace defines a set of initial orientations for the optimization that are also referred to as alternative starts. The default orientation is OEFastROCSOrientation.Inertial. As the optimization has a limited number of iterations, it may be beneficial to use alternative starting coordinates for some molecular systems. To set an alternative initial orientation use OEShapeDatabaseOptions.SetInitialOrientation.
If attempting to use OEShapeDatabaseOptions.SetNumInertialStarts with OEShapeDatabaseOptions.SetInitialOrientation please ensure the number of inertial starts is set after the initial orientation otherwise the number of inertial starts will be overridden with the default value of 4.
At present there are 5 initial orientations available:
The default orientation is OEFastROCSOrientation.Inertial.
The query and the database molecule are aligned to the inertial frame and optimizations are performed for 4 inertial orientations of the database molecule, by rotating about its 2 major moments of inertia.
The database molecule is translated to each user-defined starting position and optimizations are performed for 4 inertial starts for each translation. See OEShapeDatabaseOptions.SetInitialOrientation and OEShapeDatabaseOptions.SetUserStarts for more details on setting the starting coordinates.
Currently, error checking is not performed for user-defined starting coordinates that fall out of scope of the molecule’s coordinate range therefore, bad starting coordinates will yield zero shape/color overlap.
The database molecule is translated to each heavy atom of the query molecule and optimizations are performed for 4 inertial starts for each translation. See OEShapeDatabaseOptions.SetInitialOrientation and OEShapeDatabaseOptions.GetInitialOrientation
The database molecule is translated to each color atom of the query molecule and optimizations are performed for 4 inertial starts for each translation. This method works for combo and shape-only searches. The only requirement is that the query molecule has color atoms. If the query molecule does not have color atoms the search will default to OEFastROCSOrientation.Inertial. See OEShapeDatabaseOptions.SetInitialOrientation, OEShapeDatabaseOptions.GetInitialOrientation and OEShapeDatabaseOptions.GetNumColorAtomStarts.
The query and database molecules are left AsIs. It is presumed that the conformers are already positioned in space (perhaps through docking) therefore they are not centered or set to the inertial frame of reference. This method carries out a single optimization at the query and database molecule’s original coordinates. No inertial orientations are optimized.
In order to use this method on a database the entire database is required to be reloaded with the OEShapeDatabase.Open routine using unsigned int orient=OEFastROCSOrientation::AsIs as the last argument.
In order to use the OEShapeDatabaseScore.Constructors with this method it is required that the final argument to the constructor be unsigned int orient=OEFastROCSOrientation::AsIs.
See the Starting positions for optimization section in the Shape TK theory documentation for a description of alternative starts.