Re: [Open Babel] Openbabel 2.4.1 reading MOL file with radicals failed
There is a more recent build of the docs at https://open-babel.readthedocs.io/en/latest/, but it really should be available on our main website. On 27 April 2018 at 01:49, dfjk-123wrote: > Thanks for your reply. > When I read openbabel document, I just find the 2.3.1 version. ( > http://openbabel.org/docs/current/ ) > So, where can I get the document of 2.4.1? > > Best, > Baohua > > At 2018-04-26 22:16:44, "Craig James" wrote: > > The problem is that there is no "correct" answer to your question. The > specifications for the MOL format doesn't include a clear definition of the > assumed valence of each atomic element. So when you specify 5 hydrogens in > the file instead of six, but no "M RAD" line, does it mean it's a radical? > Or does it mean that you just specified 5 hydrogens for some other reason? > The MOL specification is ambiguous. > > That is why the "M RAD" line is necessary when specifying radicals. > Consider this example: You draw a molecule with one stereo center, and in > order to get the stereochemistry right, your MOL file contains one H atom. > Does that mean that all of the other carbon atoms in your molecule are > radicals? No, of course not. Specifying one H atom in a MOL file *does > not* mean that you have specified *all* hydrogens. > > The OpenBabel 2.4.1 interpretation of your MOL file is more correct than > the 2.3.1 interpretation. Use "M RAD" if you are specifying radicals. > > By contrast, the SMILES specification is very clear about valence > assumptions and the meaning of hydrogen atoms. If you want to specify a > radical, you have to put the hydrogen inside the carbon atom's brackets, > e.g. "C[CH2]". When you put a hydrogen as a separate atom, e.g. > "CC([H])[H]", it is not a radical, and the canonical SMILES is "CC". When > Weininger wrote the original SMILES specification, he recognized this > deficiency in the MOL specification and wanted to make sure SMILES didn't > have this ambiguity. > > Best, > Craig > > > On Wed, Apr 25, 2018 at 8:52 PM, dfjk-123 wrote: > >> Hi, there >> Now, I'm using openbabel 2.4.1 to convert mol file with radicals to >> smiles. Accordting to the openbabel document, I use the exmaple showed in >> this page (http://openbabel.org/docs/2.3.0/Features/Radicals.html), but >> when I try to convert the MOL file with explicit hydrogen to SMILES, >> it give me wrong result. >> >> The MOL file is as follows, which is named as test.mol : >> >> openbabel command is "obabel -imol test.mol -ocan " , however, it >> returns the SMILES as "CC" >> >> ethyl radical >> OpenBabel04010617172D >> Has explicit hydrogen and implicit spin multiplicity >> 7 6 0 0 0 0 0 0 0 0999 V2000 >> 0.0.0. C 0 0 0 0 0 >> 0.0.0. C 0 0 0 0 0 >> 0.0.0. H 0 0 0 0 0 >> 0.0.0. H 0 0 0 0 0 >> 0.0.0. H 0 0 0 0 0 >> 0.0.0. H 0 0 0 0 0 >> 0.0.0. H 0 0 0 0 0 >> 1 2 1 0 0 0 >> 1 3 1 0 0 0 >> 1 4 1 0 0 0 >> 1 5 1 0 0 0 >> 2 6 1 0 0 0 >> 2 7 1 0 0 0 >> M END >> >> But ,if the mol file is this: >> >> ethyl radical >> OpenBabel04010617192D >> Has explicit spin multiplicity and implicit hydrogen >> 2 1 0 0 0 0 0 0 0 0999 V2000 >> 0.0.0. C 0 0 0 0 0 >> 0.0.0. C 0 0 0 0 0 >> 1 2 1 0 0 0 >> M RAD 1 2 2 >> M END >> >> openbabel 2.4.1 can give me correct SMILES code, C[CH2] >> >> When I change openbabel to 2.3.1, both two MOL files can convert to >> correct SMILES radicals. >> >> So, Can you tell me if I make something wrong when using openbabel 2.4.1? >> How can I get correct SMILES for radicals when I used the explicit >> hydrogen in MOL files ? >> >> Thanks in advance. >> >> Yours, >> Baohua Zhang >> >> >> >> >> >> >> >> >> >> >> >> >> -- >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> ___ >> OpenBabel-discuss mailing list >> OpenBabel-discuss@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/openbabel-discuss >> >> > > > -- > - > Craig A. James > Chief Technology Officer > eMolecules, Inc. > - > > > > > > > -- > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > ___ > OpenBabel-discuss mailing list > OpenBabel-discuss@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] Openbabel 2.4.1 reading MOL file with radicals failed
In relation to the original question, I've just checked, and the current behaviour of Open Babel is in keeping with the current behaviour of BIOVIA Draw, the inheritors of the MOL file format. Regards, - Noel On 29 April 2018 at 08:06, Noel O'Boylewrote: > There is a more recent build of the docs at https://open-babel. > readthedocs.io/en/latest/, but it really should be available on our main > website. > > On 27 April 2018 at 01:49, dfjk-123 wrote: > >> Thanks for your reply. >> When I read openbabel document, I just find the 2.3.1 version. ( >> http://openbabel.org/docs/current/ ) >> So, where can I get the document of 2.4.1? >> >> Best, >> Baohua >> >> At 2018-04-26 22:16:44, "Craig James" wrote: >> >> The problem is that there is no "correct" answer to your question. The >> specifications for the MOL format doesn't include a clear definition of the >> assumed valence of each atomic element. So when you specify 5 hydrogens in >> the file instead of six, but no "M RAD" line, does it mean it's a radical? >> Or does it mean that you just specified 5 hydrogens for some other reason? >> The MOL specification is ambiguous. >> >> That is why the "M RAD" line is necessary when specifying radicals. >> Consider this example: You draw a molecule with one stereo center, and in >> order to get the stereochemistry right, your MOL file contains one H atom. >> Does that mean that all of the other carbon atoms in your molecule are >> radicals? No, of course not. Specifying one H atom in a MOL file *does >> not* mean that you have specified *all* hydrogens. >> >> The OpenBabel 2.4.1 interpretation of your MOL file is more correct than >> the 2.3.1 interpretation. Use "M RAD" if you are specifying radicals. >> >> By contrast, the SMILES specification is very clear about valence >> assumptions and the meaning of hydrogen atoms. If you want to specify a >> radical, you have to put the hydrogen inside the carbon atom's brackets, >> e.g. "C[CH2]". When you put a hydrogen as a separate atom, e.g. >> "CC([H])[H]", it is not a radical, and the canonical SMILES is "CC". When >> Weininger wrote the original SMILES specification, he recognized this >> deficiency in the MOL specification and wanted to make sure SMILES didn't >> have this ambiguity. >> >> Best, >> Craig >> >> >> On Wed, Apr 25, 2018 at 8:52 PM, dfjk-123 wrote: >> >>> Hi, there >>> Now, I'm using openbabel 2.4.1 to convert mol file with radicals to >>> smiles. Accordting to the openbabel document, I use the exmaple showed in >>> this page (http://openbabel.org/docs/2.3.0/Features/Radicals.html), but >>> when I try to convert the MOL file with explicit hydrogen to SMILES, >>> it give me wrong result. >>> >>> The MOL file is as follows, which is named as test.mol : >>> >>> openbabel command is "obabel -imol test.mol -ocan " , however, it >>> returns the SMILES as "CC" >>> >>> ethyl radical >>> OpenBabel04010617172D >>> Has explicit hydrogen and implicit spin multiplicity >>> 7 6 0 0 0 0 0 0 0 0999 V2000 >>> 0.0.0. C 0 0 0 0 0 >>> 0.0.0. C 0 0 0 0 0 >>> 0.0.0. H 0 0 0 0 0 >>> 0.0.0. H 0 0 0 0 0 >>> 0.0.0. H 0 0 0 0 0 >>> 0.0.0. H 0 0 0 0 0 >>> 0.0.0. H 0 0 0 0 0 >>> 1 2 1 0 0 0 >>> 1 3 1 0 0 0 >>> 1 4 1 0 0 0 >>> 1 5 1 0 0 0 >>> 2 6 1 0 0 0 >>> 2 7 1 0 0 0 >>> M END >>> >>> But ,if the mol file is this: >>> >>> ethyl radical >>> OpenBabel04010617192D >>> Has explicit spin multiplicity and implicit hydrogen >>> 2 1 0 0 0 0 0 0 0 0999 V2000 >>> 0.0.0. C 0 0 0 0 0 >>> 0.0.0. C 0 0 0 0 0 >>> 1 2 1 0 0 0 >>> M RAD 1 2 2 >>> M END >>> >>> openbabel 2.4.1 can give me correct SMILES code, C[CH2] >>> >>> When I change openbabel to 2.3.1, both two MOL files can convert to >>> correct SMILES radicals. >>> >>> So, Can you tell me if I make something wrong when using openbabel >>> 2.4.1? How can I get correct SMILES for radicals when I used the explicit >>> hydrogen in MOL files ? >>> >>> Thanks in advance. >>> >>> Yours, >>> Baohua Zhang >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> -- >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>> ___ >>> OpenBabel-discuss mailing list >>> OpenBabel-discuss@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/openbabel-discuss >>> >>> >> >> >> -- >> - >> Craig A. James >> Chief Technology Officer >> eMolecules, Inc. >>
Re: [Open Babel] Openbabel 2.4.1 reading MOL file with radicals failed
Thanks for your reply. When I read openbabel document, I just find the 2.3.1 version. (http://openbabel.org/docs/current/ ) So, where can I get the document of 2.4.1? Best, Baohua At 2018-04-26 22:16:44, "Craig James"wrote: The problem is that there is no "correct" answer to your question. The specifications for the MOL format doesn't include a clear definition of the assumed valence of each atomic element. So when you specify 5 hydrogens in the file instead of six, but no "M RAD" line, does it mean it's a radical? Or does it mean that you just specified 5 hydrogens for some other reason? The MOL specification is ambiguous. That is why the "M RAD" line is necessary when specifying radicals. Consider this example: You draw a molecule with one stereo center, and in order to get the stereochemistry right, your MOL file contains one H atom. Does that mean that all of the other carbon atoms in your molecule are radicals? No, of course not. Specifying one H atom in a MOL file does not mean that you have specified all hydrogens. The OpenBabel 2.4.1 interpretation of your MOL file is more correct than the 2.3.1 interpretation. Use "M RAD" if you are specifying radicals. By contrast, the SMILES specification is very clear about valence assumptions and the meaning of hydrogen atoms. If you want to specify a radical, you have to put the hydrogen inside the carbon atom's brackets, e.g. "C[CH2]". When you put a hydrogen as a separate atom, e.g. "CC([H])[H]", it is not a radical, and the canonical SMILES is "CC". When Weininger wrote the original SMILES specification, he recognized this deficiency in the MOL specification and wanted to make sure SMILES didn't have this ambiguity. Best, Craig On Wed, Apr 25, 2018 at 8:52 PM, dfjk-123 wrote: Hi, there Now, I'm using openbabel 2.4.1 to convert mol file with radicals to smiles. Accordting to the openbabel document, I use the exmaple showed in this page (http://openbabel.org/docs/2.3.0/Features/Radicals.html), but when I try to convert the MOL file with explicit hydrogen to SMILES, it give me wrong result. The MOL file is as follows, which is named as test.mol : openbabel command is "obabel -imol test.mol -ocan " , however, it returns the SMILES as "CC" ethyl radical OpenBabel04010617172D Has explicit hydrogen and implicit spin multiplicity 7 6 0 0 0 0 0 0 0 0999 V2000 0.0.0. C 0 0 0 0 0 0.0.0. C 0 0 0 0 0 0.0.0. H 0 0 0 0 0 0.0.0. H 0 0 0 0 0 0.0.0. H 0 0 0 0 0 0.0.0. H 0 0 0 0 0 0.0.0. H 0 0 0 0 0 1 2 1 0 0 0 1 3 1 0 0 0 1 4 1 0 0 0 1 5 1 0 0 0 2 6 1 0 0 0 2 7 1 0 0 0 M END But ,if the mol file is this: ethyl radical OpenBabel04010617192D Has explicit spin multiplicity and implicit hydrogen 2 1 0 0 0 0 0 0 0 0999 V2000 0.0.0. C 0 0 0 0 0 0.0.0. C 0 0 0 0 0 1 2 1 0 0 0 M RAD 1 2 2 M END openbabel 2.4.1 can give me correct SMILES code, C[CH2] When I change openbabel to 2.3.1, both two MOL files can convert to correct SMILES radicals. So, Can you tell me if I make something wrong when using openbabel 2.4.1? How can I get correct SMILES for radicals when I used the explicit hydrogen in MOL files ? Thanks in advance. Yours, Baohua Zhang -- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot ___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss -- - Craig A. James Chief Technology Officer eMolecules, Inc. - -- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss
Re: [Open Babel] Openbabel 2.4.1 reading MOL file with radicals failed
The problem is that there is no "correct" answer to your question. The specifications for the MOL format doesn't include a clear definition of the assumed valence of each atomic element. So when you specify 5 hydrogens in the file instead of six, but no "M RAD" line, does it mean it's a radical? Or does it mean that you just specified 5 hydrogens for some other reason? The MOL specification is ambiguous. That is why the "M RAD" line is necessary when specifying radicals. Consider this example: You draw a molecule with one stereo center, and in order to get the stereochemistry right, your MOL file contains one H atom. Does that mean that all of the other carbon atoms in your molecule are radicals? No, of course not. Specifying one H atom in a MOL file *does not* mean that you have specified *all* hydrogens. The OpenBabel 2.4.1 interpretation of your MOL file is more correct than the 2.3.1 interpretation. Use "M RAD" if you are specifying radicals. By contrast, the SMILES specification is very clear about valence assumptions and the meaning of hydrogen atoms. If you want to specify a radical, you have to put the hydrogen inside the carbon atom's brackets, e.g. "C[CH2]". When you put a hydrogen as a separate atom, e.g. "CC([H])[H]", it is not a radical, and the canonical SMILES is "CC". When Weininger wrote the original SMILES specification, he recognized this deficiency in the MOL specification and wanted to make sure SMILES didn't have this ambiguity. Best, Craig On Wed, Apr 25, 2018 at 8:52 PM, dfjk-123wrote: > Hi, there > Now, I'm using openbabel 2.4.1 to convert mol file with radicals to > smiles. Accordting to the openbabel document, I use the exmaple showed in > this page (http://openbabel.org/docs/2.3.0/Features/Radicals.html), but > when I try to convert the MOL file with explicit hydrogen to SMILES, it > give me wrong result. > > The MOL file is as follows, which is named as test.mol : > > openbabel command is "obabel -imol test.mol -ocan " , however, it returns > the SMILES as "CC" > > ethyl radical > OpenBabel04010617172D > Has explicit hydrogen and implicit spin multiplicity > 7 6 0 0 0 0 0 0 0 0999 V2000 > 0.0.0. C 0 0 0 0 0 > 0.0.0. C 0 0 0 0 0 > 0.0.0. H 0 0 0 0 0 > 0.0.0. H 0 0 0 0 0 > 0.0.0. H 0 0 0 0 0 > 0.0.0. H 0 0 0 0 0 > 0.0.0. H 0 0 0 0 0 > 1 2 1 0 0 0 > 1 3 1 0 0 0 > 1 4 1 0 0 0 > 1 5 1 0 0 0 > 2 6 1 0 0 0 > 2 7 1 0 0 0 > M END > > But ,if the mol file is this: > > ethyl radical > OpenBabel04010617192D > Has explicit spin multiplicity and implicit hydrogen > 2 1 0 0 0 0 0 0 0 0999 V2000 > 0.0.0. C 0 0 0 0 0 > 0.0.0. C 0 0 0 0 0 > 1 2 1 0 0 0 > M RAD 1 2 2 > M END > > openbabel 2.4.1 can give me correct SMILES code, C[CH2] > > When I change openbabel to 2.3.1, both two MOL files can convert to > correct SMILES radicals. > > So, Can you tell me if I make something wrong when using openbabel 2.4.1? > How can I get correct SMILES for radicals when I used the explicit > hydrogen in MOL files ? > > Thanks in advance. > > Yours, > Baohua Zhang > > > > > > > > > > > > > -- > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > ___ > OpenBabel-discuss mailing list > OpenBabel-discuss@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/openbabel-discuss > > -- - Craig A. James Chief Technology Officer eMolecules, Inc. - -- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot___ OpenBabel-discuss mailing list OpenBabel-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-discuss