On Fri, May 25, 2012 at 2:20 AM, Noel O'Boyle <baoille...@gmail.com> wrote:

> It takes under 2 minutes to run the tests before committing...hint hint :-)
>
> Commit by cjames53 :: r4763
> /openbabel/trunk/src/formats/smilesformat.cpp: (link)
> - Causes graphsym and tautomer tests to fail.
>

It's the graphsym test itself that's wrong.  It makes assumptions that
aren't true.  The SMILES canonicalizer adds a hydrogen to tetrahedral
centers as needed so that every tetrahedral center that's marked as '@' or
'@@' has four real bonds.  It makes the code a lot simpler.  But that's the
source of the graphsym test's failure.

Specifically, graphsym.cpp assumes that if you write a SMILES and then read
that SMILES back in, you'll get the same number of atoms.  That's a false
assumption if there are explicit H atoms in the original molecule.  Those H
atoms don't become part of the SMILES, so when you read that SMILES back
in, the new molecule will have fewer atoms than the original.  That means
the symmetry classes in the original molecule will be different than the
copy created from the SMILES.  They're not wrong, just different. The
molecule is being represented correctly in both cases.

Craig
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
OpenBabel-Devel mailing list
OpenBabel-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbabel-devel

Reply via email to