Made OEMol and OEMCMolBase
contain a separate dimensionality (e.g. - the value returned by
OEMolBase::GetDimension) for each conformer rather than
a single value for the molecule. This allows depictions and conformers to be stored
on the same molecules and still be handled correctly by the .sd writers.
Numerous improvements/enhancements to OEChem‘s PDB file reader. The
list of exceptional residue names has been updated to match the May 2004
list of public PDB files from RCSB.
The MDL mol file reader is tweaked to record unrecognized atomic
symbols (just like we do for 3-letter superatom codes) storing them in the
atom’s name property/field.
The routine OEMDLPerceiveParity (and thereby the MDL mol file
writer) is improved to record chiral centers that don’t have stereo
specified as the MDL parity value 3 (unspecified chiral center).
Fixed bug in OECalcCartesianCoord when rotating around the y
axis. Prior implementation would give wildly incorrect results.
Removed dangerous allocation of too small a temporary array for use
in writing conformer coordinates to OEBinary files.
Fixed bug in .mol2 file format reader that resulted in connection
tables occasionally being skipped when reading files from stdin, pipes
and/or sockets. The OEReadMol2File function no longer requires the
use of tell and seek on its input stream.
Modified the heuristic in OERMSD for recognizing and dealing with
degenerate roots. When the heuristic fails, inappropriate rotation matrices
Fixed bug in OESet3DHydrogenGeom where memcmp was comparing
coordinates of type double, but using sizeof(float), so only a
partial comparison was being carried out.
Modifications which provide the ability to read OEBinary v2 files which
contain unrecognized data, without losing the data.
Added 1 byte at the end of OEMolCT record for molecules with >255 &&
<65536 bonds to store the endianness of short integers which are used to store
bond records. The extra byte won’t break old format readers, although oeb
files written with old version writers won’t be portable. This change doesn’t
break anything either direction, but does allow for portability of oeb files.
Fixed OESet3DHydrogenGeom to return an appropriate boolean
value rather than always returning true.
In boolOERMSD(constOEMolBase&,constOEMCMolBase&,double*rmsdArray,constOEMatchBase&match,booloverlay=false,double*rot=0,double*trans=0) fixed bug that the first conformer of the
OEMCMolBase was used repeatedly rather than using
each conformer in succession.
Corrected behavior of OESubsetMol in the case when a
ring bond it the only item removed from the original molecule.
Fixed a bug in OEChem‘s default OEAtomBase implementation that
caused problems for an atom after 65536 neighboring bonds had been deleted.
This occurred in codes repeatedly created temporary bonds then deleted them
without calling OEAtomBase::Sweep.
Fixes to atom naming bugs in OEChem‘s peptide reside perception
routines. Also adds support for the PTR residue, representing
phosphotyrosine. Additional fixes to tie splitting of C-terminal serine
residues. Use `` H’ `` to name C-terminal aldehyde hydrogens (`` H `` denotes
the backbone amide nitrogen’s hydrogen).