On Thu, Jul 8, 2010 at 10:13 AM, Noel O'Boyle <baoille...@gmail.com> wrote: > On 8 July 2010 08:08, Hans De Winter <hans.dewin...@silicos.com> wrote: >>> On Wed, Jul 7, 2010 at 6:54 PM, Geoffrey Hutchison >>> <ge...@geoffhutchison.net> wrote: >>>>> >>>>> isomorph code (identity checking), so in the meanwhile we would have >>>>> to specify a convention such as all molecules with the same title are >>>>> the same. >>>> >>>> I've been thinking about this for a while. The easiest detection is that: >>>> a) The number of atoms is the same >>>> b) The element list is the same (and in the same order) >>> >>> Another option is to keep track of canonical smiles. a & b don't >>> guarantee the molecules are the same (especially binding). However, >>> the symmetry classes encode a variety of properties (connectivity, >>> element, aromaticity, formal charge, in ring, bond orders) and can be >>> used for this purpose. >> >> I agree that keeping track of the canonical smiles would be the most robust >> way of doing it, and also easy to implement >> if one imposes the requirement that different conformers of the same >> molecule should be subsequent to each other in >> the input file. > > Not to prolong this thread, but I think regular SMILES is more > appropriate here. We want to keep the atoms in the input order.
Yes, since the atom order will be the same for conformers, a regular smiles should also work... >> >>> >>> We actually have an implementation using a & b in avogadro. It's in >>> the ReafFileThread in libavogadro/src/moleculefile.cpp >>> >>> (http://github.com/cryos/avogadro/blob/master/libavogadro/src/moleculefile.cpp). >>> This implementation assumes you have a file with different molecules >>> or all the same. It doesn't support N conformers of different >>> molecules in the same file but this should not be hard to write. There >>> is much extra code here though. >>> >>> My suggestion would be to add an option to OBConversion to enable >>> conformer reading. When enabled, a Read call will read the same >>> molecules until it finds a different molecule. The first molecule is >>> kept and coordinates of the following conformers are added to it. >> >> Right >> >>> >>>> I don't think I'd want it to be automatic, though. There has to be a >>>> mechanism to "turn off" (or "turn on") the feature in case you want to >>>> splice out a particular frame or conformer, much like we do with >>>> multi-molecule files. >>> >>> Yes, usually when you need it the user will know. Or a program that >>> uses it (e.g. obspectrophore) can always enable it. >> >> Yes >> >> Bye, >> Hans >> >> > ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss