FastROCS TK 1.7.0¶
OEShapeDatabasenow consumes approximately 50% less main memory. This improvement was gained by compressing color information in a more concise way. There should be negligible difference in color Tanimoto scores (only seen in the 4th decimal place).
Tversky similarity scoring is now available in FastROCS TK in addition to the default Tanimoto scoring. The following APIs have been added to support this new scoring:
OEShapeDatabaseOptions::SetTverskyCoeffsmethod has been included to allow custom tuning of the alpha and beta coefficients.
OEShapeDatabaseOptions::GetTverskyBetamethods have been added to retrieve the coefficients.
OEShapeDatabaseScore::GetScoremethods have been provided for retrieving Tversky scores.
For more details about Tversky similarity scoring, see the Molecular Shape section of the Shape TK theory documentation.
OEFastROCSIsGPUReadyfunction has been added to easily determine if the GPU is ready to accept FastROCS TK queries. It returns
OEShapeDatabasecan successfully execute queries on a supported accelerator device, and otherwise returns
false. This function checks for the presence and status of GPU devices on the system, throwing an error message if the GPU is not ready for use. This function allows for any potential GPU issues to be caught prior to loading large databases.
Driver support has been extended to include driver
361.*. A list of currently supported NVIDIA drivers for FastROCS TK can be found in the fastrocs_nvidia_drivers section.
Major bug fixes¶
OEShapeDatabase::GetSortedScoreswill no longer add color atoms to queries passed as
OEConfBaseobjects. Previously, the following code would yield non-deterministic color scores and bugs:
for conf in mol.GetConfs(): for score in shapedb.GetScores(conf): ...
Users were previously instructed to make a temporary copy of the conformer into a new
OEGraphMolbefore passing it to the methods that should have been logically
const. This is no longer necessary.
OEShapeDatabaseScore::Transformwill now only change the coordinates of the molecule as the name implies. The method will transform hydrogens and color atoms in the molecule.
ShapeDatabaseServer.py will now remove hydrogens from hit lists so that results from a cached OEB file (
OEPrepareFastROCSMol) are identical to when the server is started on a non-cached OEB file.
Minor bug fixes¶
OEShapeDatabaseScoremethods will no longer release the Python global interpreter lock.
ShapeDatabasePrep.py example now has an optional argument to trim to a desired lower number of conformers.
BestShapeOverlay.py example will now output the proper filenames when a problem occurs while opening them.
Bugs in ShapeDatabaseServer.py, ShapeDatabaseClient.py, and ShapeDatabaseHistogram.py that were exposed when tested using Python 3.5 have been fixed. Python 3.5 now has a more efficient caching system in which file objects are required to be explicitly closed to ensure data writes are flushed.