Re: [Open Babel] stereo config question
is it right that you don't support R and S? I'm new to openbabel like two days old only but I have already seen that facade.GetTetrahedralStereo(atom.GetId()) will return OBTetrahedralConfig (java) wich contain a Config structure/object with a winding property that has two possible values: clockwise and anticlockwise. These are R ans S to me! I came across this post because I have spent the last four hours trying to print this out and I can't. I'm using the java binding not the C++ directly and I don't know how to use the stdout or an alternative. -- View this message in context: http://forums.openbabel.org/stereo-config-question-tp4656879p4656982.html Sent from the General discussion mailing list archive at Nabble.com. -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
...and in relation to this, I've just checked and I'm afraid that access to the stereo object is missing in the Java bindings. I will add it to my TODO list. - Noel On 3 December 2013 19:15, Yoel yoe...@gmail.com wrote: Thank Noel, I found the docs pretty clear. My problem isn’t with open babel directly but with understanding how to, for example, use standard out to write my object using the java bindings… the lit example: converting this std::cout facade.GetTetrahedralStereo(atom-GetId()) std::endl; to this java System.out.print(facade.GetTetrahedralStereo(atom.GetId()));” does not print the object but only memory reference of the object Tried System.out.print(facade.GetTetrahedralStereo(atom.GetId()).GetConfig().winding)” and other way to access the winding property without luck -- View this message in context: http://forums.openbabel.org/stereo-config-question-tp4656879p4656990.html Sent from the General discussion mailing list archive at Nabble.com. -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
Yes, this is due to the fact that SWIG doesn't expose nested classes. I've fixed this for python so this should hopefully also be possible for java. On Thu, Dec 5, 2013 at 10:15 PM, Yoel yoe...@gmail.com wrote: Thanks Noel On 5 December 2013 16:12, Noel O'Boyle baoille...@gmail.com wrote: ...and in relation to this, I've just checked and I'm afraid that access to the stereo object is missing in the Java bindings. I will add it to my TODO list. - Noel On 3 December 2013 19:15, Yoel yoe...@gmail.com wrote: Thank Noel, I found the docs pretty clear. My problem isn’t with open babel directly but with understanding how to, for example, use standard out to write my object using the java bindings… the lit example: converting this std::cout facade.GetTetrahedralStereo(atom-GetId()) std::endl; to this java System.out.print(facade.GetTetrahedralStereo(atom.GetId()));” does not print the object but only memory reference of the object Tried System.out.print(facade.GetTetrahedralStereo(atom.GetId()).GetConfig().winding)” and other way to access the winding property without luck -- View this message in context: http://forums.openbabel.org/stereo-config-question-tp4656879p4656990.html Sent from the General discussion mailing list archive at Nabble.com. -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
Thanks Noel, Sure I agree and thanks for answering the original question. For Dimitri and I that are looking for assigning R and S your original answer was also the correct one since this winding property bears no relation to R/S because there are no guarantees that atom 1 is the smallest in priority. If 1 was the smallest in priority then clockwise would correspond to S because we are looking in the direction from 1 to 2. I apologise to Craig and Geoff and to the readers for my contribution to the confusion. On 4 December 2013 04:32, Noel O'Boyle [via Open Babel] ml-node+s957263n4657010...@n4.nabble.com wrote: Let me just answer the original question as this is getting somewhat out of hand. :-) Open Babel stores tetrahedral stereochemistry in a Config object. A typical Config object associated with a tetrahedral center may have the following fields and values: winding: Clockwise center: 2 from: 1 refs: 3 4 5 This means that looking from atom 1 towards 2, the atoms 3, 4, 5 should be arranged clockwise. I hope you agree that this perfectly specifies the stereochemistry at atom 2. - Noel On 4 December 2013 03:44, Yoel [hidden email] wrote: Hum! I’m pretty confident with what I know but the issue here is that you answer isn’t contributing to clarifying the question. The question is how to we determine the chirality of a centre regardless of how you may choose to represent it at a later point. And this problem inevitable will come down to applying the CIP rules. Do you disagree with that? On 3 December 2013 22:34, Craig James [hidden email] wrote: On Tue, Dec 3, 2013 at 1:11 PM, Yoel [hidden email] wrote: Craig, Thanks a lot for this. I do not know the smile notation in details however as a chemist I’m pretty sure I understand chirality. If I understood your article I see that explains how chirality is represented in smile notations but I still don’t see how do you know what chirality to represent starting from a mol file lets say. The reason that Dave Weininger invented SMILES' way of representing chirality is that it's much more sensible from a mathematical/graph-theoretical perspective than R/S and E/Z representation. R/S and E/Z are potentially time-consuming to compute. They are usually illustrated with trivial examples, such as Cl/C=C/Cl, where it's obvious that it's trans. But what is CCC/C(\CCO)=C(/CCCl)\CCBr -- E or Z? There is a formal definition, but most chemists probably couldn't tell you at a glance whether this molecule should be called E or Z. The same goes for R/S naming conventions. With SMILES, the algorithm only has to look out one atom from the chiral center, or one atom out from the double-bonded atoms, to figure out how to write the SMILES (with the caveat that it first has to do a symmetry analysis). Cheers, Craig -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/openbabel-discuss -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/openbabel-discuss If you reply to this email, your message will be added to the discussion below: http://forums.openbabel.org/stereo-config-question-tp4656879p4657010.html To unsubscribe from stereo config question, click here. NAML -- View this message in context: http://forums.openbabel.org/stereo-config-question-tp4656879p4657012.html Sent from the General discussion mailing list archive at Nabble.com. -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
On Wed, Dec 4, 2013 at 5:27 AM, Yoel yoe...@gmail.com wrote: Thanks Noel, Sure I agree and thanks for answering the original question. For Dimitri and I that are looking for assigning R and S your original answer was also the correct one since this winding property bears no relation to R/S because there are no guarantees that atom 1 is the smallest in priority. If 1 was the smallest in priority then clockwise would correspond to S because we are looking in the direction from 1 to 2. I apologise to Craig and Geoff and to the readers for my contribution to the confusion. No need. It's an interesting discussion. One of the disconnects between computer scientists (that would be me) and chemists is that the fundamental concepts we use are different. Computer science is an abstract discipline, essentially a branch of mathematics. When you represent a real-world object as a mathematical construct, the representation is imperfect and loses information. It also gains properties in the mathematical world that aren't present in the real-world object. We need to discuss these topics from time to time to have a meeting of the minds. Craig -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
On 2013-12-03 22:28, Geoffrey Hutchison wrote: Craig's point is not that CIP is impossible, but rather from a practical implementation side, it's easier to use other local stereo designations. I might be wrong, but the codes that I can think of with CIP implementations are all commercial, and as part of structure - name features. Both CIP and IUPAC name generation are really painful. Painful or not, RDKit has CIP. From software dependencies POV I'd prefer to not have to use 2 different kits, but until you guys convince your peers CIP is sooo last century and everybody changes their data models, I'll take what works. OE has it too, apparently, but they won't let me check their code out because I'm in .edu and not a PI. (Plus we're a public database, they seem to have an issue with those.) Dima -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
Hi all, Interesting discussion. I have been facing this problem recently and I did not know that RDKit could do it. I developed an algorithm to classify stereocenters as R/S and double bonds as E/Z using CIP rules and the information provided by openbabel. There is only one CIP rule that for now is not implemented: cases where only configurational differences between ligands are detected, due to the ambiguity of this rule, which was also described by Paulina Mata (already mentioned by Yoel). In summary, to determine the chirality according to the R-S notation the steps are: (1) identify the stereocenters, (2) number the atoms in the molecule skeleton, (3) assign the priority of each ligand according to the CIP rules, (4) map the ligands into the skeleton groups which results in a permutation and finally (5) determine the parity of the permutation and compare it to the initial sense of rotation given by openbabel (clockwise or anticlockwise) which allows the classification of the stereocenter(s) in R or S. The algorithm is described in detail in the following technical report: http://docs.di.fc.ul.pt/jspui/bitstream/10455/6894/1/TR_stereo.pdf and was implemented in a webtool: http://nams.lasige.di.fc.ul.pt/tools.php source code (in python): https://pypi.python.org/pypi/NAMS/0.9.2 Ana Teixeira On Wed, Dec 4, 2013 at 3:44 PM, Dimitri Maziuk dmaz...@bmrb.wisc.eduwrote: On 2013-12-03 22:28, Geoffrey Hutchison wrote: Craig's point is not that CIP is impossible, but rather from a practical implementation side, it's easier to use other local stereo designations. I might be wrong, but the codes that I can think of with CIP implementations are all commercial, and as part of structure - name features. Both CIP and IUPAC name generation are really painful. Painful or not, RDKit has CIP. From software dependencies POV I'd prefer to not have to use 2 different kits, but until you guys convince your peers CIP is sooo last century and everybody changes their data models, I'll take what works. OE has it too, apparently, but they won't let me check their code out because I'm in .edu and not a PI. (Plus we're a public database, they seem to have an issue with those.) Dima -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
The ability to determine CIP rules is a nice feature to have but not really necessary for most cheminformatics applications. If someone donates this code it would certainly be considered a valuable addition. I rewrote most of the sterochemistry code for OB a few years ago and never got around to implementing CIP since it has limited applications (i.e. naming). The OpenBabel system was inspired by this paper: M. Perdih, M. Razinger, Stereochemistry and sequence rules: a proposal for modification of the Cahn-Ingold-Prelog system, Tetrahedron: Asymmetry, 1994, Volume 5, Issue 5, 835-861 On Wed, Dec 4, 2013 at 5:20 PM, Ana Teixeira analinoteixe...@gmail.comwrote: Hi all, Interesting discussion. I have been facing this problem recently and I did not know that RDKit could do it. I developed an algorithm to classify stereocenters as R/S and double bonds as E/Z using CIP rules and the information provided by openbabel. There is only one CIP rule that for now is not implemented: cases where only configurational differences between ligands are detected, due to the ambiguity of this rule, which was also described by Paulina Mata (already mentioned by Yoel). In summary, to determine the chirality according to the R-S notation the steps are: (1) identify the stereocenters, (2) number the atoms in the molecule skeleton, (3) assign the priority of each ligand according to the CIP rules, (4) map the ligands into the skeleton groups which results in a permutation and finally (5) determine the parity of the permutation and compare it to the initial sense of rotation given by openbabel (clockwise or anticlockwise) which allows the classification of the stereocenter(s) in R or S. The algorithm is described in detail in the following technical report: http://docs.di.fc.ul.pt/jspui/bitstream/10455/6894/1/TR_stereo.pdf and was implemented in a webtool: http://nams.lasige.di.fc.ul.pt/tools.php source code (in python): https://pypi.python.org/pypi/NAMS/0.9.2 Ana Teixeira On Wed, Dec 4, 2013 at 3:44 PM, Dimitri Maziuk dmaz...@bmrb.wisc.eduwrote: On 2013-12-03 22:28, Geoffrey Hutchison wrote: Craig's point is not that CIP is impossible, but rather from a practical implementation side, it's easier to use other local stereo designations. I might be wrong, but the codes that I can think of with CIP implementations are all commercial, and as part of structure - name features. Both CIP and IUPAC name generation are really painful. Painful or not, RDKit has CIP. From software dependencies POV I'd prefer to not have to use 2 different kits, but until you guys convince your peers CIP is sooo last century and everybody changes their data models, I'll take what works. OE has it too, apparently, but they won't let me check their code out because I'm in .edu and not a PI. (Plus we're a public database, they seem to have an issue with those.) Dima -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
We don't support generation of R and S labels. However, we do store the stereochemistry. It's all stored in that config object. Clockwise and Anticlockwise are with respect to the stereo refs in the config. It should be clear enough from the docs (googling openbabel stereochemistry): http://openbabel.org/api/2.3.0/group__stereo.shtml If you are still confused let us know... - Noel On 3 December 2013 18:19, Yoel yoe...@gmail.com wrote: Is it right that you don't support R and S? I'm new to openbabel like two days old only but I have already seen that facade.GetTetrahedralStereo(atom.GetId()) will return OBTetrahedralConfig (java) wich contain a Config structure/object with a winding property that has two possible values: clockwise and anticlockwise. These are R ans S to me! I came across this post because I have spent the last four hours trying to print this out and I can't. I'm using the java binding not the C++ directly and I don't know how to use the stdout or an alternative. -- View this message in context: http://forums.openbabel.org/stereo-config-question-tp4656879p4656985.html Sent from the General discussion mailing list archive at Nabble.com. -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
On 12/03/2013 12:54 PM, Noel O'Boyle wrote: We don't support generation of R and S labels. However, we do store the stereochemistry. It's all stored in that config object. Clockwise and Anticlockwise are with respect to the stereo refs in the config. It should be clear enough from the docs (googling openbabel stereochemistry): http://openbabel.org/api/2.3.0/group__stereo.shtml If you are still confused let us know... Sorry Noel, I'm not a chemist. I know that if I need to unscrew a bolt and I'm looking at it from the front, I need to turn the spanner one way and if I'm looking from the back I need to turn it the other way. What I don't know is how you can tell rectal from withershins when you don't know which way you're looking. I'm confused. -- Dimitri Maziuk Programmer/sysadmin BioMagResBank, UW-Madison -- http://www.bmrb.wisc.edu signature.asc Description: OpenPGP digital signature -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351iu=/4140/ostg.clktrk___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
Thank Noel, I found the docs pretty clear. My problem isn’t with open babel directly but with understanding how to, for example, use standard out to write my object using the java bindings… the lit example: converting this std::cout facade.GetTetrahedralStereo(atom-GetId()) std::endl; to this java System.out.print(facade.GetTetrahedralStereo(atom.GetId()));” does not print the object but only memory reference of the object Tried System.out.print(facade.GetTetrahedralStereo(atom.GetId()).GetConfig().winding)” and other way to access the winding property without luck -- View this message in context: http://forums.openbabel.org/stereo-config-question-tp4656879p4656990.html Sent from the General discussion mailing list archive at Nabble.com. -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
Dimitri, In this case you do know which way you are looking. For brevity let's consider a tetrahedral carbon atom with four different substituents... the first thing you do is to assign them priorities based on there atomic numbers then you place the smallest priority backward... this gives you the point of reference you need to say clockwise and anticlockwise... The algorithm may take a different form but these are the general rules. I hope it helps. -- View this message in context: http://forums.openbabel.org/stereo-config-question-tp4656879p4656991.html Sent from the General discussion mailing list archive at Nabble.com. -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
On 12/03/2013 01:28 PM, Yoel wrote: Dimitri, In this case you do know which way you are looking. For brevity let's consider a tetrahedral carbon atom with four different substituents... the first thing you do is to assign them priorities based on there atomic numbers then you place the smallest priority backward... this gives you the point of reference you need to say clockwise and anticlockwise... The algorithm may take a different form but these are the general rules. I hope it helps. No it doesn't, sorry. I have a message from Craig James here: http://forums.openbabel.org/stereo-config-td4656861.html that says it's based on local connectivity around a single atom or bond. Please define atomic numbers in terms of local connectivity around a single atom or bond. How is it different from the pikiwedia's explanation of CIP? -- Dimitri Maziuk Programmer/sysadmin BioMagResBank, UW-Madison -- http://www.bmrb.wisc.edu signature.asc Description: OpenPGP digital signature -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351iu=/4140/ostg.clktrk___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
It shouldn't be any different to CIP since those are the rules I was talking about however I was being super short! There very interesting research papers on the topic that I came across quite sometime ago. I am sure that with time I could get one for you. However, the local connectivity should be a broad terms to refer to the atoms bounded to the central atom. Of course this is more complex because if the atoms immediately bounded to the central atom are equal then you need to go further down the chain until you have different atoms and the priority is given according the the atomic number. I haven't checked the wiki page but it should say something similar to this. Also, I have never written an algorithm like this so I'm speaking from a chemist point of view meaning that I don't use the term local connectivity -- View this message in context: http://forums.openbabel.org/stereo-config-question-tp4656879p4656993.html Sent from the General discussion mailing list archive at Nabble.com. -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
I find you one of the most interesting paper I know regarding this topic http://pubs.acs.org/doi/abs/10.1021/ci990090v The principle author P. Matos has several other papers on implementing CIP algorithms I have never tackle this problem myself but she is quite convinced that the CIP are a most without alterations. If you haven't got access to the paper I might be able to get you a copy if you are interested in reading it -- View this message in context: http://forums.openbabel.org/stereo-config-question-tp4656879p4656994.html Sent from the General discussion mailing list archive at Nabble.com. -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
On Tue, Dec 3, 2013 at 11:43 AM, Dimitri Maziuk dmaz...@bmrb.wisc.eduwrote: On 12/03/2013 01:28 PM, Yoel wrote: Dimitri, In this case you do know which way you are looking. For brevity let's consider a tetrahedral carbon atom with four different substituents... the first thing you do is to assign them priorities based on there atomic numbers then you place the smallest priority backward... this gives you the point of reference you need to say clockwise and anticlockwise... The algorithm may take a different form but these are the general rules. I hope it helps. No it doesn't, sorry. I have a message from Craig James here: http://forums.openbabel.org/stereo-config-td4656861.html that says it's based on local connectivity around a single atom or bond. Please define atomic numbers in terms of local connectivity around a single atom or bond. Try this; the section entitled Tetrahedral Centers has an explanation of the concept of an atom-centered stereochemistry specification. http://opensmiles.org/opensmiles.html#_tetrahedral_centers Craig -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
On 12/03/2013 03:11 PM, Yoel wrote: Craig, Thanks a lot for this. I do not know the smile notation in details however as a chemist I’m pretty sure I understand chirality. If I understood your article I see that explains how chirality is represented in smile notations but I still don’t see how do you know what chirality to represent starting from a mol file lets say. I thought that was what Dimitri was asking. Thank you Yoel. Yes, my problem is, if I knew where R/S E/Z are already I wouldn't be asking OB to find them for me. -- Dimitri Maziuk Programmer/sysadmin BioMagResBank, UW-Madison -- http://www.bmrb.wisc.edu signature.asc Description: OpenPGP digital signature -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
On Tue, Dec 3, 2013 at 1:11 PM, Yoel yoe...@gmail.com wrote: Craig, Thanks a lot for this. I do not know the smile notation in details however as a chemist I’m pretty sure I understand chirality. If I understood your article I see that explains how chirality is represented in smile notations but I still don’t see how do you know what chirality to represent starting from a mol file lets say. The reason that Dave Weininger invented SMILES' way of representing chirality is that it's much more sensible from a mathematical/graph-theoretical perspective than R/S and E/Z representation. R/S and E/Z are potentially time-consuming to compute. They are usually illustrated with trivial examples, such as Cl/C=C/Cl, where it's obvious that it's trans. But what is CCC/C(\CCO)=C(/CCCl)\CCBr -- E or Z? There is a formal definition, but most chemists probably couldn't tell you at a glance whether this molecule should be called E or Z. The same goes for R/S naming conventions. With SMILES, the algorithm only has to look out one atom from the chiral center, or one atom out from the double-bonded atoms, to figure out how to write the SMILES (with the caveat that it first has to do a symmetry analysis). Cheers, Craig -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
Hum! I’m pretty confident with what I know but the issue here is that you answer isn’t contributing to clarifying the question. The question is how to we determine the chirality of a centre regardless of how you may choose to represent it at a later point. And this problem inevitable will come down to applying the CIP rules. Do you disagree with that? On 3 December 2013 22:34, Craig James cja...@emolecules.com wrote: On Tue, Dec 3, 2013 at 1:11 PM, Yoel yoe...@gmail.com wrote: Craig, Thanks a lot for this. I do not know the smile notation in details however as a chemist I’m pretty sure I understand chirality. If I understood your article I see that explains how chirality is represented in smile notations but I still don’t see how do you know what chirality to represent starting from a mol file lets say. The reason that Dave Weininger invented SMILES' way of representing chirality is that it's much more sensible from a mathematical/graph-theoretical perspective than R/S and E/Z representation. R/S and E/Z are potentially time-consuming to compute. They are usually illustrated with trivial examples, such as Cl/C=C/Cl, where it's obvious that it's trans. But what is CCC/C(\CCO)=C(/CCCl)\CCBr -- E or Z? There is a formal definition, but most chemists probably couldn't tell you at a glance whether this molecule should be called E or Z. The same goes for R/S naming conventions. With SMILES, the algorithm only has to look out one atom from the chiral center, or one atom out from the double-bonded atoms, to figure out how to write the SMILES (with the caveat that it first has to do a symmetry analysis). Cheers, Craig -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
inevitable will come down to applying the CIP rules. Do you disagree with that? No, I disagree. Yes, there are implementations of the CIP rules in code. Generally these are used when generating IUPAC names, and that's about it. If I take a structure to a colleague to synthesize, I only need a 2D or 3D depiction of the stereochemistry. Heck, if I asked any of my organic colleagues, they'd be hard pressed to apply CIP rules to anything mildly complicated. If someone submits to JACS or JOC or similar publications and requires an IUPAC name, then it's generated. For day-to-day transmission of stereochemical information, it's simply not needed. Go look at PubChem. How many of those compounds have CIP designations assigned? The same could be said for most chemical databases. Craig's point is not that CIP is impossible, but rather from a practical implementation side, it's easier to use other local stereo designations. I might be wrong, but the codes that I can think of with CIP implementations are all commercial, and as part of structure - name features. Both CIP and IUPAC name generation are really painful. Cheers, -Geoff -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
Indeed it is hard but I have to STRONGLY disagree that we chemists assign R and S configuration in any other way that by applying the CIP rules… and for those molecules that are more complex we usually take more time. Neither during my PhD years or my postgrad years I saw any organic chemist that couldn’t do it! On 3 December 2013 23:29, Geoff Hutchison [via Open Babel] ml-node+s957263n4657002...@n4.nabble.com wrote: inevitable will come down to applying the CIP rules. Do you disagree with that? No, I disagree. Yes, there are implementations of the CIP rules in code. Generally these are used when generating IUPAC names, and that's about it. If I take a structure to a colleague to synthesize, I only need a 2D or 3D depiction of the stereochemistry. Heck, if I asked any of my organic colleagues, they'd be hard pressed to apply CIP rules to anything mildly complicated. If someone submits to JACS or JOC or similar publications and requires an IUPAC name, then it's generated. For day-to-day transmission of stereochemical information, it's simply not needed. Go look at PubChem. How many of those compounds have CIP designations assigned? The same could be said for most chemical databases. Craig's point is not that CIP is impossible, but rather from a practical implementation side, it's easier to use other local stereo designations. I might be wrong, but the codes that I can think of with CIP implementations are all commercial, and as part of structure - name features. Both CIP and IUPAC name generation are really painful. Cheers, -Geoff -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/openbabel-discuss If you reply to this email, your message will be added to the discussion below: http://forums.openbabel.org/stereo-config-question-tp4656879p4657002.html To unsubscribe from stereo config question, click here. NAML -- View this message in context: http://forums.openbabel.org/stereo-config-question-tp4656879p4657003.html Sent from the General discussion mailing list archive at Nabble.com. -- Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] stereo config question
On 2013-11-19 03:09, Noel O'Boyle wrote: We neither have R/S perception nor E/Z. OK, thanks. Dima -- Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss