Dear Greg, Thank you very much for addressing my macrocycles question.
If this is not to much trouble for you could you give me a short guide how should I proceed with editing RingInfo data structure so it "forgets" that rings above a certain size exist? I am sorry to burden you with this but I only started learning programming around two months ago and my python programming skills are still quite limited. Thanks a lot for all your help! Janusz Petkowski ________________________________ From: Greg Landrum [[email protected]] Sent: Saturday, November 14, 2015 11:37 PM To: Janusz Petkowski Cc: [email protected] Subject: Re: [Rdkit-discuss] defining the size of the ring in the ringMatchesRingOnly and completeRingsOnly methods - the macrocycles case Dear Janusz, This isn't currently possible. The most straightforward way I could think to implement it (maybe someone else has a better idea?) would be to allow the molecule's RingInfo data structure to be edited so that you could, for example, tell it to "forget" that rings above a certain size exist. This would be relatively straightforward to do and I could imagine that functionality being useful in other places as well. -greg On Sun, Nov 15, 2015 at 12:08 AM, Janusz Petkowski <[email protected]<mailto:[email protected]>> wrote: One other question about MCS, in addition to my previous one on hybridization: In the RDKit documentation in the Maximum Common Substructure (MCS) section it is mentioned that one can restrict mapping linear fragments on to rings using two methods: ringMatchesRingOnly and completeRingsOnly. It is an extremely useful method but is there a possibility to restrict execution of this method by defining the size of the rings for which ring bonds will match only ring bonds in a given molecule? But at the same time, for rings of a certain size (let's say for rings that have below 8 atoms) the function is still executed? I am trying to avoid the problem of not finding linear fragments in the macrocycles structures. I want linear fragments to be matched in macrocycles but not in rings of smaller ("regular") size, all within the same molecule of course. Is there a way to do that? Just as an illustration of the problem: Is it possible to find ClCC=C fragment in CC(F)C1CC\C=C(C)\C(Cl)C2C=CC( Br)CC2[C@H](C)[C@]2(O)OC3=C(C)C(=O)C(O)=C([C@@H]4O[C@H]1[C@H](C)[C@H](O)[C@H]4C)C3=C2 but at the same time avoid finding CC(Br)C=C in it, by using the ringMatchesRingOnly and completeRingsOnly methods? With current implementation of ringMatchesRingOnly and completeRingsOnly methods they treat all the rings the same way, no matter the size. If not, how would one do that? Thanks a lot for your help! Have a great weekend! Best regards, Janusz Petkowski ------------------------------------------------------------------------------ _______________________________________________ Rdkit-discuss mailing list [email protected]<mailto:[email protected]> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
------------------------------------------------------------------------------
_______________________________________________ Rdkit-discuss mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

