Version 1.3.1¶
OEChem 1.3.1¶
Major bug fixes¶
Fix cis/trans bond stereochemistry perception when reading MDL MOL and SD files via
OEReadMDLFile
. We were overly aggressive when marking double bonds in rings as cis vs. trans due to a missing call toOEFindRingAtomsAndBonds
. We also no longer attempt to attribute E/Z stereochemistry to connection tables without coordinates, or when any of the relevant bond lengths are zero.
Minor bug fixes¶
Accidentally OEChem*`s zmatrix handling functions were documented in the *OEChem documentation but were missing from the distributed list of header files. This oversight has been corrected and the classes OEChem::OECartesianToInternal and OEChem::OEInternalToCartesian and the functions
OECalcCartesianCoord
andOECalcInternalCoord
are now publicly available.Handle (and optimize) the case where
OECanonicalOrderAtoms
orOECanonicalOrderBonds
is called with less then two atoms.Fixes
OEGetSmallestSubtree
to correctly return the smallest set of atoms on either side of a given bond when the molecule contains disconnected components.Performance improvements to OEGraphMolParameter, to avoid using OEIsomericConfTest when loading single conformer molecules.
Bug fix to
DeleteConf
that could occasionally result in that multi-conformer molecule’s active conformer being corrupted.Tweak to
OEMDLPerceiveBondStereo
to preferentially place the wedge or hash bond on the bond to an explicit hydrogen, for chiral stereo centers of degree three.Enhancements to
OEMDLPerceiveParity
to support chiral atoms with two heavy atom neighbors and an explicit hydrogen. These aren’t supported by MDL software (including ISIS/Draw) but this allows OEChem to convertX[N@H]Y
to an MDL mol file and back to isomeric SMILES without loss of information.Improvements to
OEMDLStereoFromParity
to set OEChem’s atomic chirality for the MDL stereo parity flag for both degree three and degree four atom stereo centers.Correct problem in OEChem::OEMiniAtom::Copy where duplicating an atom would preserve the explicit degree of the original, as returned by
OEAtomBase::GetExplicitDegree
.Fixes to both OEChem::OEMiniBond::SetOrder and OEChem::OEMiniBond::SetIntType that would incorrectly reset the aromaticity and in-ring flags of a bond as a side-effect.
Miscellaneous fixes and improvements to OEChem::OEMiniMol::Copy.
Fix to
oemolostream::openstring
to allow an oemolostream to be reused multiple times, rather than constructed and destructed for each use.OEPerceiveSymmetry
would previously segmentation fault on some platforms if passed a molecule with no atoms. This routine has now been idiot-proofed.Maintenance updates to
OEReadPDBFile
to handle PDB files deposited at RCSB, up to July 2004. For example, correctly handling the hetero atoms of theNZQ
residue of pdb1oj7.ent.A serious performance regression in
OERMSD
has been addressed. A change toOERMSD
for OEChem 1.3 unexpectedly resulted in a significant drop in superposition speed. This has now been resolved andOERMSD
is as fast as (or faster than) it was in OEChem 1.2.The string reference argument to
OESetComment
is now correctly marked as const. This value is never modified by this function.The sanity checking in
OESetTorsion
has been improved such that we now return false for dubious calls to that function. For example, when the first and four atom pointers refer to the same atom. Previously, we’d do nothing, but not indicate a failure with the return value.Improvements to match limit test in OESubSearch that prevent excessive run-times for pathological substructure search patterns. Previously, substructure searching of
*.*.*.*
wouldn’t honor the match limit setting, and spew multiple match limit reached warnings.Enhancement to
OEWritePDBFile
to allow it to honor theOEOFlavor::PDB::RADIUS
flag to write an atom’s radius in the PDB occupancy field, even when writing a molecule without residue information.Better handling of out of range coordinates in
OEWriteMDLFile
,OEWritePDBFile
andOEWriteMacroModelFile
. Previously, a Cartesian coordinate larger than these file format’s fixed width fields would corrupt the following fields on the same line.
OESystem 1.3.1¶
Minor bug fixes¶
A fix to the function
OECheckHelp
that prevents displaying on-line help forHIDDEN
command line interface options.Fixed a bug in
OEInterface::GetInterface
that would fail to find the correct interface by name.Correct the return value for
OEInterface::DeleteInterface
. We now return false if we failed to delete the given interface.Fixed an off-by-one error with the OEPredVectorPtrIter::ToLast method on some kinds of iterators (specifically, OESystem::OEPredVectorPtrIter s).