Hi David, Thanks for the tip! I just found it in the documentation; the syntax is [r{12-20}]. See http://rdkit.org/docs_temp/RDKit_Book.html#smarts-support-and-extensions
Note that this doesn't suffer from the hard-coded limitation I mentioned, and you can even specify open ranges such as [r{12-}]. Ivan On Wed, Oct 9, 2019 at 12:35 PM David Cosgrove <davidacosgrov...@gmail.com> wrote: > Hi Ivan, > There is an RDKit extension to SMARTS that allows something like [r12-20]. > I can’t check the exact syntax at the moment. You might want to check that > atoms are not in smaller rings as well, so as not to pull up things like > anthracene which might not be something you’d want to class as a macrocycle. > Cheers, > Dave > > On Wed, 9 Oct 2019 at 14:39, Ivan Tubert-Brohman < > ivan.tubert-broh...@schrodinger.com> wrote: > >> Hi Thomas, >> >> I don't know of an RDKit function that directly recognizes macrocycles, >> but you could find the size of the largest ring this way: >> >> ri = mol.GetRingInfo() >> largest_ring_size = max((len(r) for r in ri.AtomRings()), default=0) >> if largest_ring_size > 12: >> ... >> >> You can also find if a molecule has a ring of a certain size using >> SMARTS, but only for rings up to size 20 at the moment (this is an >> RDKit-specific limit). For example, if you are happy with finding rings of >> size 12-20, you could use SMARTS [r12,r13,r14,r15,r16,r17,r18,r19,r20]. >> It's ugly but can be handy if you already have SMARTS-based tools to reuse. >> >> Ivan >> >> On Wed, Oct 9, 2019 at 7:25 AM Thomas Evangelidis <teva...@gmail.com> >> wrote: >> >>> Greetings, >>> >>> Is there an automatic way to distinguish the macrocyclic molecules >>> within a large chemical library using RDKit? For example, according to this >>> definition: Macrocycles are ring structures composed of at least twelve >>> atoms in the central cyclic framework [1,2,3]. Maybe someone here has a >>> better definition. Could anyone give me some hints on how to program this? >>> >>> I thank you in advance. >>> Thomas >>> >>> 1. Yudin AK (2015) Macrocycles: lessons from the distant past, recent >>> developments, and future directions. Chem Sci 6:30–49. >>> 2. Marsault E, Peterson ML (2011) Macrocycles are great cycles: >>> applications, opportunities, and challenges of synthetic macrocycles in >>> drug discovery. J Med Chem 54:1961–2004. >>> 3. Heinis C (2014) Drug discovery: tools and rules for macrocycles. Nat >>> Chem Biol 10:696–698. >>> >>> >>> -- >>> >>> ====================================================================== >>> >>> Dr. Thomas Evangelidis >>> >>> Research Scientist >>> >>> IOCB - Institute of Organic Chemistry and Biochemistry of the Czech >>> Academy of Sciences <https://www.uochb.cz/web/structure/31.html?lang=en> >>> , Prague, Czech Republic >>> & >>> CEITEC - Central European Institute of Technology >>> <https://www.ceitec.eu/>, Brno, Czech Republic >>> >>> email: teva...@gmail.com, Twitter: tevangelidis >>> <https://twitter.com/tevangelidis>, LinkedIn: Thomas Evangelidis >>> <https://www.linkedin.com/in/thomas-evangelidis-495b45125/> >>> >>> website: https://sites.google.com/site/thomasevangelidishomepage/ >>> >>> >>> >>> _______________________________________________ >>> Rdkit-discuss mailing list >>> Rdkit-discuss@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss >>> >> _______________________________________________ >> Rdkit-discuss mailing list >> Rdkit-discuss@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss >> > -- > David Cosgrove > Freelance computational chemistry and chemoinformatics developer > http://cozchemix.co.uk > >
_______________________________________________ Rdkit-discuss mailing list Rdkit-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rdkit-discuss