Re: [Rdkit-discuss] identify anti-aromatic bonds
Greg, Thanks. Yingfeng On Fri, Aug 28, 2015 at 6:13 AM, Greg Landrum greg.land...@gmail.com wrote: Well, here's a way to find the rings where all of the bonds are conjugated: In [1]: from rdkit import Chem In [2]: m = Chem.MolFromSmiles('C1CC1CC(=O)c1nnc2cc(-c3ccc(OC)cc3)nn2c1CC') In [3]: ri = m.GetRingInfo() In [4]: brs = ri.BondRings() In [5]: conjugatedRings = [] In [6]: for i,br in enumerate(brs): conj=True for b in br: if not m.GetBondWithIdx(b).GetIsConjugated(): conj=False break if conj: conjugatedRings.append(i) ...: Then, using those indices, you can find the lists of atoms that are in each of those conjugated rings: In [7]: ars = ri.AtomRings() In [8]: conjugatedAtomRings = [ars[x] for x in conjugatedRings] In [9]: len(ars) Out[9]: 4 In [10]: len(conjugatedAtomRings) Out[10]: 3 In [11]: conjugatedAtomRings Out[11]: [(7, 8, 9, 21, 22, 6), (10, 9, 21, 20, 11), (13, 14, 15, 18, 19, 12)] From this point it's a matter of deciding how you want to count electrons from each atom. The approach used in the RDKit C++ code is described, more or less accurately, here: http://rdkit.org/docs/RDKit_Book.html#aromaticity -greg On Thu, Aug 27, 2015 at 5:36 PM, Yingfeng Wang ywang...@gmail.com wrote: Greg, Thanks. I believe identifying anti-aromatic bonds even just with simple rings will be very helpful to my project. Could you please give me some links or sample codes about identifying all the conjugated simple rings and do an electron count? Would you also like to share me some relevant rules you think could be reasonable? By the way, if there is a hard way to identify all anti-aromatic bonds, could you also please give me some hints? If fortunately I can implement it, I will share it by posting my code in this mailing list. Thanks. Yingfeng On Thu, Aug 27, 2015 at 10:08 AM, Greg Landrum greg.land...@gmail.com wrote: Hi Yingfeng, Non-aromatic is not a problem, but there's no easy way I can think of off the top of my head for identifying anti-aromatic systems without making C++ code changes. If you were willing to limit yourself to simple rings, you could write some python code to identify all the conjugated simple rings and do an electron count according to whatever rules you think are relevant. -greg On Thu, Aug 27, 2015 at 1:52 PM, Yingfeng Wang ywang...@gmail.com wrote: Could anyone please share your experience with identifying non-aromatic bonds using RDKit? I would greatly appreciate your help. Yingfeng On Mon, Aug 24, 2015 at 9:42 PM, Yingfeng Wang ywang...@gmail.com wrote: Sorry, my previous email has a typo. According to the following link, http://www.rdkit.org/docs/RDKit_Book.html I get sample code for identifying aromatic bonds like from rdkit import Chem m=Chem.MolFromSmiles('O=C1C=CC(=O)C2=C1OC=CO2') m.GetBondBetweenAtoms(6,7).GetIsAromatic() Is there a way to identify anti-aromatic bonds using Rdkit? Thanks. Yingfeng On Mon, Aug 24, 2015 at 9:38 PM, Yingfeng Wang ywang...@gmail.com wrote: According to the following link, http://www.rdkit.org/docs/RDKit_Book.html I get sample code for identifying identify anti-aromatic bonds like from rdkit import Chem m=Chem.MolFromSmiles('O=C1C=CC(=O)C2=C1OC=CO2') m.GetBondBetweenAtoms(6,7).GetIsAromatic() Is there a way to identify anti-aromatic bonds using Rdkit? Thanks. Yingfeng -- ___ 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
Re: [Rdkit-discuss] identify anti-aromatic bonds
Hi Yingfeng, Non-aromatic is not a problem, but there's no easy way I can think of off the top of my head for identifying anti-aromatic systems without making C++ code changes. If you were willing to limit yourself to simple rings, you could write some python code to identify all the conjugated simple rings and do an electron count according to whatever rules you think are relevant. -greg On Thu, Aug 27, 2015 at 1:52 PM, Yingfeng Wang ywang...@gmail.com wrote: Could anyone please share your experience with identifying non-aromatic bonds using RDKit? I would greatly appreciate your help. Yingfeng On Mon, Aug 24, 2015 at 9:42 PM, Yingfeng Wang ywang...@gmail.com wrote: Sorry, my previous email has a typo. According to the following link, http://www.rdkit.org/docs/RDKit_Book.html I get sample code for identifying aromatic bonds like from rdkit import Chem m=Chem.MolFromSmiles('O=C1C=CC(=O)C2=C1OC=CO2') m.GetBondBetweenAtoms(6,7).GetIsAromatic() Is there a way to identify anti-aromatic bonds using Rdkit? Thanks. Yingfeng On Mon, Aug 24, 2015 at 9:38 PM, Yingfeng Wang ywang...@gmail.com wrote: According to the following link, http://www.rdkit.org/docs/RDKit_Book.html I get sample code for identifying identify anti-aromatic bonds like from rdkit import Chem m=Chem.MolFromSmiles('O=C1C=CC(=O)C2=C1OC=CO2') m.GetBondBetweenAtoms(6,7).GetIsAromatic() Is there a way to identify anti-aromatic bonds using Rdkit? Thanks. Yingfeng -- ___ 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
Re: [Rdkit-discuss] identify anti-aromatic bonds
Could anyone please share your experience with identifying non-aromatic bonds using RDKit? I would greatly appreciate your help. Yingfeng On Mon, Aug 24, 2015 at 9:42 PM, Yingfeng Wang ywang...@gmail.com wrote: Sorry, my previous email has a typo. According to the following link, http://www.rdkit.org/docs/RDKit_Book.html I get sample code for identifying aromatic bonds like from rdkit import Chem m=Chem.MolFromSmiles('O=C1C=CC(=O)C2=C1OC=CO2') m.GetBondBetweenAtoms(6,7).GetIsAromatic() Is there a way to identify anti-aromatic bonds using Rdkit? Thanks. Yingfeng On Mon, Aug 24, 2015 at 9:38 PM, Yingfeng Wang ywang...@gmail.com wrote: According to the following link, http://www.rdkit.org/docs/RDKit_Book.html I get sample code for identifying identify anti-aromatic bonds like from rdkit import Chem m=Chem.MolFromSmiles('O=C1C=CC(=O)C2=C1OC=CO2') m.GetBondBetweenAtoms(6,7).GetIsAromatic() Is there a way to identify anti-aromatic bonds using Rdkit? Thanks. Yingfeng -- ___ Rdkit-discuss mailing list Rdkit-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
[Rdkit-discuss] identify anti-aromatic bonds
According to the following link, http://www.rdkit.org/docs/RDKit_Book.html I get sample code for identifying identify anti-aromatic bonds like from rdkit import Chem m=Chem.MolFromSmiles('O=C1C=CC(=O)C2=C1OC=CO2') m.GetBondBetweenAtoms(6,7).GetIsAromatic() Is there a way to identify anti-aromatic bonds using Rdkit? Thanks. Yingfeng -- ___ Rdkit-discuss mailing list Rdkit-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
Re: [Rdkit-discuss] identify anti-aromatic bonds
Sorry, my previous email has a typo. According to the following link, http://www.rdkit.org/docs/RDKit_Book.html I get sample code for identifying aromatic bonds like from rdkit import Chem m=Chem.MolFromSmiles('O=C1C=CC(=O)C2=C1OC=CO2') m.GetBondBetweenAtoms(6,7).GetIsAromatic() Is there a way to identify anti-aromatic bonds using Rdkit? Thanks. Yingfeng On Mon, Aug 24, 2015 at 9:38 PM, Yingfeng Wang ywang...@gmail.com wrote: According to the following link, http://www.rdkit.org/docs/RDKit_Book.html I get sample code for identifying identify anti-aromatic bonds like from rdkit import Chem m=Chem.MolFromSmiles('O=C1C=CC(=O)C2=C1OC=CO2') m.GetBondBetweenAtoms(6,7).GetIsAromatic() Is there a way to identify anti-aromatic bonds using Rdkit? Thanks. Yingfeng -- ___ Rdkit-discuss mailing list Rdkit-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rdkit-discuss