Spruce TK 1.0.0¶
New features¶
The
OEExtractBioUnits
function has become a stable API. The final implementation includes an options class, OEBioUnitExtractionOptions, to control its behavior.A new function,
OEMakeDesignUnits
, has been added that generates OEDesignUnit from structures read from PDB or mmCIF files. The function takes a number of options to control its behavior; therefore, the following options classes have been defined:OEMakeDesignUnitOptions: a high-level options class that holds the options classes below.
OEDesignUnitPrepOptions: a high-level options class that holds other options classes, determining how a design unit is prepped.
OEDesignUnitBuildOptions: a low-level class that sets whether to build caps and missing sidechains.
OEProtonateDesignUnitOptions: a low-level class that sets whether and how to protonate the design unit, including whether to generate tautomers.
OEDesignUnitSplitOptions: a low-level class that determines how to handle alternate locations, how a system is split, locating the ligand, etc.
The
OEMakeDesignUnits
function also takes the OEStructureMetadata class as input. The OEStructureMetadata class holds experimental data if known and can be used to indicate which is the ligand, what the sequence of the protein is, and other relevant pieces of information.The function
OEMakeDesignUnits
is a high-level function that works on the two intermediate functions,OEMakeBioDesignUnits
andOEEnumerateSites
, which can be run separately if intermediate results are desired. The high-levelOEMakeDesignUnits
function has a deduplication step built in; this function is highly recommended.A new function,
OEMakeDesignUnit
, has been added that creates an OEDesignUnit.A new function,
OEProtonateDesignUnit
, has been added that ensures that protons in an OEDesignUnit are optimized. The high-level functionOEMakeDesignUnits
calls this by default unless it is turned off in options.The
OEBuildSidechains
function has been updated to allow building all possible clusters even if one fails due to clashes. The function still returnsfalse
in this case.
Major bug fixes¶
An issue in the
OEExtractBioUnits
function that caused a segfault due to an improper PDB header format has been fixed.An issue in the alternate location expansion that left atoms on top of each other due to unconventional location definitions has been fixed.
Minor bug fixes¶
An issue with
OECapTermini
preventing caps from being built in some very specific instances has been fixed.OEBuildSidechains
no longer builds sidechains on packing residues.
Documentation changes¶
A new example, Creating OEDesignUnits from a PDB file, has been added that illustrates the usage of the high-level
OEMakeDesignUnits
function for biomolecular structure preparation. This example takes a PDB file as input and outputs a set of fully prepared OEDesignUnit objects to a temporary file.