OEMedChem TK 0.9.4¶
The OEMatchedPairAnalyzer::AddMol return value has been changed. Negative return values no longer indicate a duplicate record ID in the index, but instead return various status values to indicate specific details of an indexing failure.
The interpretation of return values from this method in user-coded scripts may need to be altered.
- The indexing of structures now supports the specification of a zero or positive integer record ID to be used for referencing the input structures. This simplifies cross-referencing to externally maintained or managed data structures. For example, see changes to following:
- Prioritization of matched pair index nodes is now performed based on the size of the MCS for the indexed pair(s). This results in a significant reduction of redundant and less interesting transformations extracted from the index. The ChEMBL solubility data was reanalyzed with this optimization and results in approximately 1/3 fewer (redundant) transformations to be applied via OEApplyChEMBL18SolubilityTransforms.
- A function has been provided to allow extraction and inspection of transformations based on the matched molecular pairs found during indexing as well as the specific matched pairs and data associated with those transformations. For example, see changes to the following:
- A new overload of OEMatchedPairGetTransforms now provides the ability to retrieve related transformations and matched molecular pairs based on a probe molecule. The probe molecule is fragmented based on the analyzer indexing strategy; matched pair index nodes that have common cores to the provided probe are used to retrieve related matched pair transformations.
Major bug fixes¶
- Stereoisomers are now indexed properly by OEMatchedPairAnalyzer. Previously, stereoisomers were incorrectly considered duplicates and were rejected during indexing.
- The perceived regions from OEGetRingChainFragments and OEGetRingLinkerSideChainFragments are based on the heavy atoms in the molecule. If the molecule contains explicit hydrogen atoms, those atoms will be returned in the same perception set(s) as their alpha-heavy atom neighbors. The documentation for these functions has been altered to reflect the new behavior as well as noting the requirement of the OEFindRingAtomsAndBonds perception activity prior to use of these functions.
- A crash in OETotalMolecularComplexity for highly bridged ring systems has been fixed. An issue that caused OEDetermineSymmetryComplexity to crash when the required call to OEPerceiveChiral had not been performed on the input molecule has also been fixed.
- The complexity computation functions have been altered to verify that the required perceptions have been performed. Due to the const arguments to these functions, the perceptions cannot be performed internally and will now throw an error if the perception state is out of date for the provided input molecule. The functions affected are:
- New examples have been added to demonstrate the new API functions.
- New examples have been added for C++, Python, Java, and C#.
- Minor naming changes to constants for the beta matched pair API were made for consistency.
- Minor fixes have been made to the complexity function documentation to reflect the correct API points.