On Mon, Jun 21, 2010 at 11:14 PM, Craig A. James <[email protected]> wrote:
> On 6/21/10 1:21 PM, Tim Vandermeersch wrote:
>
>>> For most "ordinary" molecules, the LSSR is the same as the SSSR.  The
>>> LSSR and
>>>  SSSR only differ with "cage" structures, where the rings themselves form
>>> rings,
>>> i.e. when there exists a set of R rings that "covers" all atoms, but R is
>>> fewer
>>>  than the number of bonds that must be broken to make the structure
>>> acyclic.  And
>>> in these cases, the choice of rings for the SSSR is arbitrary, whereas
>>> the LSSR is not.
>>
>> I don't follow the part about number of bonds that must be broken to
>> make the structure acyclic. Do you mean closure bonds?  Regardless, we
>> probably mean the same thing with LSSR.
>
> By "rings form rings," I mean structures like cubane.  For cubane you can
> find four rings that together include every atom and bond, but you have to
> break at least five bonds to make the structure acyclic.  Any structure that
> can be constructed by creating a "ring of rings" has this problem.  For
> example, with cubane you can imagine laying out four rectangles side by side
> (SSSR=4), and then folding it into a cube.  You've made a ring out of a set
> of existing rings.
>
> The LSSR algorithm is simple:
>
>  for S in (3, 4, 5, 6, ...)
>    find all rings of size S, add to LSSR
>    if all cyclic atoms and bonds are included in at
>      least one ring in the LSSR, quit

This would give 10 rings for cubane with a 6 ring attached:
(structure image: http://imagebin.org/102164)

    ring: 1 2 3 4
    ring: 5 6 3 4
    ring: 1 4 5 8
    ring: 7 8 5 6
    ring: 2 3 6 7
    ring: 1 2 7 8
    ring: 7 2 1 4 5 6
    ring: 1 4 5 6 3 2
    ring: 4 3 6 7 2 1
    ring: 9 10 11 12 13 14

The first three 6 rings are found in the cubane part of the molecule.
I know these rings are unexpected but they are found and should be
removed (for use in substructure search).

The algorithm would be:

  for S in (3, 4, 5, 6, ...)
    find all rings of size S, add to LSSR if not contained in the
union of all smaller rings
    if all cyclic atoms and bonds are included in at
      least one ring in the LSSR, quit

The first 3 6-rings are now found in the union of the 3-rings. The
final, attached cyclohexane ring is still found. This might not be
important for aromaticity but having a single canonical ring set is
better IMHO. The small change shouldn't affect the results you
require.

> It's nice because a breadth-first ring-finder algorithm naturally finds
> rings from smallest to largest.  You don't waste any time finding even one
> ring larger than the largest ring in the LSSR.
>
> The other nice thing about an LSSR is that there is only one possible set of
> rings, so canonicalizing the order within the set is easy:
> smallest-to-largest, and within each size, use the atom labeling that
> canon.c provides (you don't even need to run the full SMILES canonicalizer,
> just the atom labeler).
>
> Craig
>
>

------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
OpenBabel-Devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbabel-devel

Reply via email to