Is it possible to build or embed the SMILES representation of compounds in 3D?Is there an energy cost associated with flipping the spin of an electron?How are Organic Compounds named?Converting cyclic compounds to linear compounds (possible ?)What would be SMILES notation for a compound with delocalized bonding?Oxygen Preventing the Formation of Large Organic Compounds?Predicting reaction among compoundsPubchem, InChI, SMILES, and uniquenessWhat are some factors that influence the voltage of voltaic/galvanic cells and why?How can I find the parent chains in these two compounds?In general, are carbonyl compounds (ketones/aldehydes) more susceptible to a nucleophilic attack then alkynes?

how to add 1 milliseconds on a datetime string?

What is "ass door"?

What was the rationale behind 36 bit computer architectures?

What Is the Meaning of "you has the wind of me"?

Travelling from Venice to Budapest, making a stop in Croatia

Where is this photo of a group of hikers taken? Is it really in the Ural?

Can I pay with HKD in Macau or Shenzhen?

Is there a way to factor age into the mass-luminosity relationship for stars?

Is it possible to eat quietly in Minecraft?

The 50,000 row query limit is not actually a "per APEX call" as widely believed

How to write a sincerely religious protagonist without preaching or affirming or judging their worldview?

Sci-fi short story: plants attracting spaceship and using them as a agents of pollination between two planets

Alternative methods for solving a system of one linear one non linear simultaneous equations

Why is DC so, so, so Democratic?

Are symplectomorphisms of Weil–Petersson symplectic form induced from surface diffeomorphisms?

Are rockets faster than airplanes?

How to repair basic cable/wire issue for household appliances

What is the spanish equivalent of "the boys are sitting"?

Can't understand how static works exactly

Can you drop a weapon/item when it is not your turn?

Short story about a group of sci-fi writers sitting around discussing their profession

Can 々 stand for a duplicated kanji with a different reading?

How can I tell if there was a power cut when I was out?

Why did modems have speakers?



Is it possible to build or embed the SMILES representation of compounds in 3D?


Is there an energy cost associated with flipping the spin of an electron?How are Organic Compounds named?Converting cyclic compounds to linear compounds (possible ?)What would be SMILES notation for a compound with delocalized bonding?Oxygen Preventing the Formation of Large Organic Compounds?Predicting reaction among compoundsPubchem, InChI, SMILES, and uniquenessWhat are some factors that influence the voltage of voltaic/galvanic cells and why?How can I find the parent chains in these two compounds?In general, are carbonyl compounds (ketones/aldehydes) more susceptible to a nucleophilic attack then alkynes?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








3












$begingroup$


I would like to know if there is a proper way to get the 3D information from a SMILES string.



  1. Is there a standard way to do it?

  2. Are there other representations of compounds which include their spatial information too?









share|improve this question











$endgroup$


















    3












    $begingroup$


    I would like to know if there is a proper way to get the 3D information from a SMILES string.



    1. Is there a standard way to do it?

    2. Are there other representations of compounds which include their spatial information too?









    share|improve this question











    $endgroup$














      3












      3








      3





      $begingroup$


      I would like to know if there is a proper way to get the 3D information from a SMILES string.



      1. Is there a standard way to do it?

      2. Are there other representations of compounds which include their spatial information too?









      share|improve this question











      $endgroup$




      I would like to know if there is a proper way to get the 3D information from a SMILES string.



      1. Is there a standard way to do it?

      2. Are there other representations of compounds which include their spatial information too?






      organic-chemistry physical-chemistry






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited 2 hours ago







      0x90

















      asked 9 hours ago









      0x900x90

      2691 silver badge13 bronze badges




      2691 silver badge13 bronze badges




















          1 Answer
          1






          active

          oldest

          votes


















          5












          $begingroup$

          SMILES is insufficient



          SMILES strings do not encode 3D structure information. They only convey atom type, connectivity and bond types. InChI is like SMILES in this regard.



          Thus, you will need either (a) an algorithm to infer or guess a plausible 3D conformation of a molecule or (b) a file type that has already specified the 3D arrangement of the molecule.



          File types for storing, reading, and showing 3D conformations



          Probably the most standard way to represent the 3D conformation of a molecules is with a *.mol file. There are many tools to read such files. You can read more about the format on Wikipedia.



          Estimating a conformation from SMILES



          You can also use computational tools to estimate a 3D conformation from a SMILES string. Note I say a conformation rather than the conformation; molecules can in general have many valid conformations. Also, tools for generating conformations rely on molecular force fields, etc. These have many implicit assumptions; there is no guarantee that a computationally generated conformation will be the real conformation of a real molecule in the real world.



          Here is some code for generating a plausible conformation from a SMILES string using rdkit



          from rdkit import Chem
          from rdkit.Chem import AllChem
          from rdkit.Chem import Draw
          from rdkit.Chem.Draw import IPythonConsole

          my_mol = Chem.MolFromSmiles('NC(=N)N1CCC[C@H]1Cc2onc(n2)c3ccc(Nc4nc(cs4)c5ccc(Br)cc5)cc3')

          my_mol

          my_mol_with_H=Chem.AddHs(my_mol)

          AllChem.EmbedMolecule(my_mol_with_H)
          AllChem.MMFFOptimizeMolecule(my_mol_with_H)

          my_embedded_mol = Chem.RemoveHs(my_mol_with_H)

          my_embedded_mol

          print(Chem.MolToMolBlock(my_embedded_mol))


          The printed result is:



           RDKit 3D

          33 37 0 0 0 0 0 0 0 0999 V2000
          -8.0789 -0.7261 -1.9565 N 0 0 0 0 0 0 0 0 0 0 0 0
          -8.3618 -0.9375 -0.6556 C 0 0 0 0 0 0 0 0 0 0 0 0
          -9.4453 -1.5737 -0.3799 N 0 0 0 0 0 0 0 0 0 0 0 0
          -7.4690 -0.4468 0.2422 N 0 0 0 0 0 0 0 0 0 0 0 0
          -7.8136 -0.1283 1.6244 C 0 0 0 0 0 0 0 0 0 0 0 0
          -6.7632 0.8908 2.0392 C 0 0 0 0 0 0 0 0 0 0 0 0
          -5.5246 0.3855 1.3227 C 0 0 0 0 0 0 0 0 0 0 0 0
          -6.0688 -0.0733 -0.0461 C 0 0 1 0 0 0 0 0 0 0 0 0
          -5.2554 -1.2432 -0.6177 C 0 0 0 0 0 0 0 0 0 0 0 0
          -3.8658 -0.8320 -0.9216 C 0 0 0 0 0 0 0 0 0 0 0 0
          -3.6647 -0.1417 -2.0770 O 0 0 0 0 0 0 0 0 0 0 0 0
          -2.3059 0.1587 -2.1237 N 0 0 0 0 0 0 0 0 0 0 0 0
          -1.8139 -0.3885 -1.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
          -2.7692 -1.0082 -0.2227 N 0 0 0 0 0 0 0 0 0 0 0 0
          -0.4078 -0.3427 -0.6136 C 0 0 0 0 0 0 0 0 0 0 0 0
          0.0488 -1.0902 0.4772 C 0 0 0 0 0 0 0 0 0 0 0 0
          1.3984 -1.0569 0.8486 C 0 0 0 0 0 0 0 0 0 0 0 0
          2.3307 -0.2688 0.1543 C 0 0 0 0 0 0 0 0 0 0 0 0
          3.6731 -0.3282 0.5615 N 0 0 0 0 0 0 0 0 0 0 0 0
          4.8291 -0.0477 -0.0843 C 0 0 0 0 0 0 0 0 0 0 0 0
          5.9334 0.1757 0.5968 N 0 0 0 0 0 0 0 0 0 0 0 0
          7.0123 0.4129 -0.2413 C 0 0 0 0 0 0 0 0 0 0 0 0
          6.7153 0.3213 -1.5854 C 0 0 0 0 0 0 0 0 0 0 0 0
          5.0623 -0.0682 -1.7942 S 0 0 0 0 0 0 0 0 0 0 0 0
          8.3378 0.7031 0.3040 C 0 0 0 0 0 0 0 0 0 0 0 0
          9.3324 1.3464 -0.4485 C 0 0 0 0 0 0 0 0 0 0 0 0
          10.5913 1.6060 0.1057 C 0 0 0 0 0 0 0 0 0 0 0 0
          10.8633 1.2259 1.4171 C 0 0 0 0 0 0 0 0 0 0 0 0
          12.5638 1.5736 2.1593 Br 0 0 0 0 0 0 0 0 0 0 0 0
          9.8883 0.5951 2.1844 C 0 0 0 0 0 0 0 0 0 0 0 0
          8.6313 0.3380 1.6284 C 0 0 0 0 0 0 0 0 0 0 0 0
          1.8659 0.4742 -0.9343 C 0 0 0 0 0 0 0 0 0 0 0 0
          0.5160 0.4406 -1.3141 C 0 0 0 0 0 0 0 0 0 0 0 0
          1 2 1 0
          2 3 2 0
          2 4 1 0
          4 5 1 0
          5 6 1 0
          6 7 1 0
          7 8 1 0
          8 9 1 1
          9 10 1 0
          10 11 1 0
          11 12 1 0
          12 13 2 0
          13 14 1 0
          13 15 1 0
          15 16 2 0
          16 17 1 0
          17 18 2 0
          18 19 1 0
          19 20 1 0
          20 21 2 0
          21 22 1 0
          22 23 2 0
          23 24 1 0
          22 25 1 0
          25 26 2 0
          26 27 1 0
          27 28 2 0
          28 29 1 0
          28 30 1 0
          30 31 2 0
          18 32 1 0
          32 33 2 0
          8 4 1 0
          14 10 2 0
          33 15 1 0
          24 20 1 0
          31 25 1 0
          M END


          A semi-interpretable 2D image of this 3D conformation, also generated by rdkit, is shown below. For comparsion, the "un-embedded" molecule, optimized to look nice on a 2D display, is also shown.



          rdkit images



          From the admittedly not-great 2D depiction of the embedded molecule, you can at least tell that the various aromatic rings are not coplanar. For better visualization of 3D conformations, you would want to use a tool like py3dmol.






          share|improve this answer











          $endgroup$












          • $begingroup$
            What about Standard InChI?
            $endgroup$
            – 0x90
            8 hours ago






          • 1




            $begingroup$
            InChI has the same limitations as SMILES. It does not encode the 3D arrangement of atoms, only the atom types and bond types between them.
            $endgroup$
            – Curt F.
            8 hours ago










          • $begingroup$
            Good answer. For the sake of completeness, I'd mention Open Babel, especially if you just need a 'conversion' tool.
            $endgroup$
            – Martin - マーチン
            2 hours ago










          • $begingroup$
            So what does SMILE give? Is it the molecular configuration or chemical confirmation?
            $endgroup$
            – 0x90
            1 hour ago







          • 2




            $begingroup$
            @0x90 SMILES provide constitution, bond order (single, double (=), triple (#) bond and aromaticity with C, N, O, S (C1CCCCC1 is not the same as c1ccccc1)) and may indicate molecular configuration (cis / trans double bond by / or backslash ; S or R atom centered chirality by @ or @@). It is less frequent to see the notation including configuration, but it is present.
            $endgroup$
            – Buttonwood
            1 hour ago














          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "431"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fchemistry.stackexchange.com%2fquestions%2f118460%2fis-it-possible-to-build-or-embed-the-smiles-representation-of-compounds-in-3d%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          5












          $begingroup$

          SMILES is insufficient



          SMILES strings do not encode 3D structure information. They only convey atom type, connectivity and bond types. InChI is like SMILES in this regard.



          Thus, you will need either (a) an algorithm to infer or guess a plausible 3D conformation of a molecule or (b) a file type that has already specified the 3D arrangement of the molecule.



          File types for storing, reading, and showing 3D conformations



          Probably the most standard way to represent the 3D conformation of a molecules is with a *.mol file. There are many tools to read such files. You can read more about the format on Wikipedia.



          Estimating a conformation from SMILES



          You can also use computational tools to estimate a 3D conformation from a SMILES string. Note I say a conformation rather than the conformation; molecules can in general have many valid conformations. Also, tools for generating conformations rely on molecular force fields, etc. These have many implicit assumptions; there is no guarantee that a computationally generated conformation will be the real conformation of a real molecule in the real world.



          Here is some code for generating a plausible conformation from a SMILES string using rdkit



          from rdkit import Chem
          from rdkit.Chem import AllChem
          from rdkit.Chem import Draw
          from rdkit.Chem.Draw import IPythonConsole

          my_mol = Chem.MolFromSmiles('NC(=N)N1CCC[C@H]1Cc2onc(n2)c3ccc(Nc4nc(cs4)c5ccc(Br)cc5)cc3')

          my_mol

          my_mol_with_H=Chem.AddHs(my_mol)

          AllChem.EmbedMolecule(my_mol_with_H)
          AllChem.MMFFOptimizeMolecule(my_mol_with_H)

          my_embedded_mol = Chem.RemoveHs(my_mol_with_H)

          my_embedded_mol

          print(Chem.MolToMolBlock(my_embedded_mol))


          The printed result is:



           RDKit 3D

          33 37 0 0 0 0 0 0 0 0999 V2000
          -8.0789 -0.7261 -1.9565 N 0 0 0 0 0 0 0 0 0 0 0 0
          -8.3618 -0.9375 -0.6556 C 0 0 0 0 0 0 0 0 0 0 0 0
          -9.4453 -1.5737 -0.3799 N 0 0 0 0 0 0 0 0 0 0 0 0
          -7.4690 -0.4468 0.2422 N 0 0 0 0 0 0 0 0 0 0 0 0
          -7.8136 -0.1283 1.6244 C 0 0 0 0 0 0 0 0 0 0 0 0
          -6.7632 0.8908 2.0392 C 0 0 0 0 0 0 0 0 0 0 0 0
          -5.5246 0.3855 1.3227 C 0 0 0 0 0 0 0 0 0 0 0 0
          -6.0688 -0.0733 -0.0461 C 0 0 1 0 0 0 0 0 0 0 0 0
          -5.2554 -1.2432 -0.6177 C 0 0 0 0 0 0 0 0 0 0 0 0
          -3.8658 -0.8320 -0.9216 C 0 0 0 0 0 0 0 0 0 0 0 0
          -3.6647 -0.1417 -2.0770 O 0 0 0 0 0 0 0 0 0 0 0 0
          -2.3059 0.1587 -2.1237 N 0 0 0 0 0 0 0 0 0 0 0 0
          -1.8139 -0.3885 -1.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
          -2.7692 -1.0082 -0.2227 N 0 0 0 0 0 0 0 0 0 0 0 0
          -0.4078 -0.3427 -0.6136 C 0 0 0 0 0 0 0 0 0 0 0 0
          0.0488 -1.0902 0.4772 C 0 0 0 0 0 0 0 0 0 0 0 0
          1.3984 -1.0569 0.8486 C 0 0 0 0 0 0 0 0 0 0 0 0
          2.3307 -0.2688 0.1543 C 0 0 0 0 0 0 0 0 0 0 0 0
          3.6731 -0.3282 0.5615 N 0 0 0 0 0 0 0 0 0 0 0 0
          4.8291 -0.0477 -0.0843 C 0 0 0 0 0 0 0 0 0 0 0 0
          5.9334 0.1757 0.5968 N 0 0 0 0 0 0 0 0 0 0 0 0
          7.0123 0.4129 -0.2413 C 0 0 0 0 0 0 0 0 0 0 0 0
          6.7153 0.3213 -1.5854 C 0 0 0 0 0 0 0 0 0 0 0 0
          5.0623 -0.0682 -1.7942 S 0 0 0 0 0 0 0 0 0 0 0 0
          8.3378 0.7031 0.3040 C 0 0 0 0 0 0 0 0 0 0 0 0
          9.3324 1.3464 -0.4485 C 0 0 0 0 0 0 0 0 0 0 0 0
          10.5913 1.6060 0.1057 C 0 0 0 0 0 0 0 0 0 0 0 0
          10.8633 1.2259 1.4171 C 0 0 0 0 0 0 0 0 0 0 0 0
          12.5638 1.5736 2.1593 Br 0 0 0 0 0 0 0 0 0 0 0 0
          9.8883 0.5951 2.1844 C 0 0 0 0 0 0 0 0 0 0 0 0
          8.6313 0.3380 1.6284 C 0 0 0 0 0 0 0 0 0 0 0 0
          1.8659 0.4742 -0.9343 C 0 0 0 0 0 0 0 0 0 0 0 0
          0.5160 0.4406 -1.3141 C 0 0 0 0 0 0 0 0 0 0 0 0
          1 2 1 0
          2 3 2 0
          2 4 1 0
          4 5 1 0
          5 6 1 0
          6 7 1 0
          7 8 1 0
          8 9 1 1
          9 10 1 0
          10 11 1 0
          11 12 1 0
          12 13 2 0
          13 14 1 0
          13 15 1 0
          15 16 2 0
          16 17 1 0
          17 18 2 0
          18 19 1 0
          19 20 1 0
          20 21 2 0
          21 22 1 0
          22 23 2 0
          23 24 1 0
          22 25 1 0
          25 26 2 0
          26 27 1 0
          27 28 2 0
          28 29 1 0
          28 30 1 0
          30 31 2 0
          18 32 1 0
          32 33 2 0
          8 4 1 0
          14 10 2 0
          33 15 1 0
          24 20 1 0
          31 25 1 0
          M END


          A semi-interpretable 2D image of this 3D conformation, also generated by rdkit, is shown below. For comparsion, the "un-embedded" molecule, optimized to look nice on a 2D display, is also shown.



          rdkit images



          From the admittedly not-great 2D depiction of the embedded molecule, you can at least tell that the various aromatic rings are not coplanar. For better visualization of 3D conformations, you would want to use a tool like py3dmol.






          share|improve this answer











          $endgroup$












          • $begingroup$
            What about Standard InChI?
            $endgroup$
            – 0x90
            8 hours ago






          • 1




            $begingroup$
            InChI has the same limitations as SMILES. It does not encode the 3D arrangement of atoms, only the atom types and bond types between them.
            $endgroup$
            – Curt F.
            8 hours ago










          • $begingroup$
            Good answer. For the sake of completeness, I'd mention Open Babel, especially if you just need a 'conversion' tool.
            $endgroup$
            – Martin - マーチン
            2 hours ago










          • $begingroup$
            So what does SMILE give? Is it the molecular configuration or chemical confirmation?
            $endgroup$
            – 0x90
            1 hour ago







          • 2




            $begingroup$
            @0x90 SMILES provide constitution, bond order (single, double (=), triple (#) bond and aromaticity with C, N, O, S (C1CCCCC1 is not the same as c1ccccc1)) and may indicate molecular configuration (cis / trans double bond by / or backslash ; S or R atom centered chirality by @ or @@). It is less frequent to see the notation including configuration, but it is present.
            $endgroup$
            – Buttonwood
            1 hour ago
















          5












          $begingroup$

          SMILES is insufficient



          SMILES strings do not encode 3D structure information. They only convey atom type, connectivity and bond types. InChI is like SMILES in this regard.



          Thus, you will need either (a) an algorithm to infer or guess a plausible 3D conformation of a molecule or (b) a file type that has already specified the 3D arrangement of the molecule.



          File types for storing, reading, and showing 3D conformations



          Probably the most standard way to represent the 3D conformation of a molecules is with a *.mol file. There are many tools to read such files. You can read more about the format on Wikipedia.



          Estimating a conformation from SMILES



          You can also use computational tools to estimate a 3D conformation from a SMILES string. Note I say a conformation rather than the conformation; molecules can in general have many valid conformations. Also, tools for generating conformations rely on molecular force fields, etc. These have many implicit assumptions; there is no guarantee that a computationally generated conformation will be the real conformation of a real molecule in the real world.



          Here is some code for generating a plausible conformation from a SMILES string using rdkit



          from rdkit import Chem
          from rdkit.Chem import AllChem
          from rdkit.Chem import Draw
          from rdkit.Chem.Draw import IPythonConsole

          my_mol = Chem.MolFromSmiles('NC(=N)N1CCC[C@H]1Cc2onc(n2)c3ccc(Nc4nc(cs4)c5ccc(Br)cc5)cc3')

          my_mol

          my_mol_with_H=Chem.AddHs(my_mol)

          AllChem.EmbedMolecule(my_mol_with_H)
          AllChem.MMFFOptimizeMolecule(my_mol_with_H)

          my_embedded_mol = Chem.RemoveHs(my_mol_with_H)

          my_embedded_mol

          print(Chem.MolToMolBlock(my_embedded_mol))


          The printed result is:



           RDKit 3D

          33 37 0 0 0 0 0 0 0 0999 V2000
          -8.0789 -0.7261 -1.9565 N 0 0 0 0 0 0 0 0 0 0 0 0
          -8.3618 -0.9375 -0.6556 C 0 0 0 0 0 0 0 0 0 0 0 0
          -9.4453 -1.5737 -0.3799 N 0 0 0 0 0 0 0 0 0 0 0 0
          -7.4690 -0.4468 0.2422 N 0 0 0 0 0 0 0 0 0 0 0 0
          -7.8136 -0.1283 1.6244 C 0 0 0 0 0 0 0 0 0 0 0 0
          -6.7632 0.8908 2.0392 C 0 0 0 0 0 0 0 0 0 0 0 0
          -5.5246 0.3855 1.3227 C 0 0 0 0 0 0 0 0 0 0 0 0
          -6.0688 -0.0733 -0.0461 C 0 0 1 0 0 0 0 0 0 0 0 0
          -5.2554 -1.2432 -0.6177 C 0 0 0 0 0 0 0 0 0 0 0 0
          -3.8658 -0.8320 -0.9216 C 0 0 0 0 0 0 0 0 0 0 0 0
          -3.6647 -0.1417 -2.0770 O 0 0 0 0 0 0 0 0 0 0 0 0
          -2.3059 0.1587 -2.1237 N 0 0 0 0 0 0 0 0 0 0 0 0
          -1.8139 -0.3885 -1.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
          -2.7692 -1.0082 -0.2227 N 0 0 0 0 0 0 0 0 0 0 0 0
          -0.4078 -0.3427 -0.6136 C 0 0 0 0 0 0 0 0 0 0 0 0
          0.0488 -1.0902 0.4772 C 0 0 0 0 0 0 0 0 0 0 0 0
          1.3984 -1.0569 0.8486 C 0 0 0 0 0 0 0 0 0 0 0 0
          2.3307 -0.2688 0.1543 C 0 0 0 0 0 0 0 0 0 0 0 0
          3.6731 -0.3282 0.5615 N 0 0 0 0 0 0 0 0 0 0 0 0
          4.8291 -0.0477 -0.0843 C 0 0 0 0 0 0 0 0 0 0 0 0
          5.9334 0.1757 0.5968 N 0 0 0 0 0 0 0 0 0 0 0 0
          7.0123 0.4129 -0.2413 C 0 0 0 0 0 0 0 0 0 0 0 0
          6.7153 0.3213 -1.5854 C 0 0 0 0 0 0 0 0 0 0 0 0
          5.0623 -0.0682 -1.7942 S 0 0 0 0 0 0 0 0 0 0 0 0
          8.3378 0.7031 0.3040 C 0 0 0 0 0 0 0 0 0 0 0 0
          9.3324 1.3464 -0.4485 C 0 0 0 0 0 0 0 0 0 0 0 0
          10.5913 1.6060 0.1057 C 0 0 0 0 0 0 0 0 0 0 0 0
          10.8633 1.2259 1.4171 C 0 0 0 0 0 0 0 0 0 0 0 0
          12.5638 1.5736 2.1593 Br 0 0 0 0 0 0 0 0 0 0 0 0
          9.8883 0.5951 2.1844 C 0 0 0 0 0 0 0 0 0 0 0 0
          8.6313 0.3380 1.6284 C 0 0 0 0 0 0 0 0 0 0 0 0
          1.8659 0.4742 -0.9343 C 0 0 0 0 0 0 0 0 0 0 0 0
          0.5160 0.4406 -1.3141 C 0 0 0 0 0 0 0 0 0 0 0 0
          1 2 1 0
          2 3 2 0
          2 4 1 0
          4 5 1 0
          5 6 1 0
          6 7 1 0
          7 8 1 0
          8 9 1 1
          9 10 1 0
          10 11 1 0
          11 12 1 0
          12 13 2 0
          13 14 1 0
          13 15 1 0
          15 16 2 0
          16 17 1 0
          17 18 2 0
          18 19 1 0
          19 20 1 0
          20 21 2 0
          21 22 1 0
          22 23 2 0
          23 24 1 0
          22 25 1 0
          25 26 2 0
          26 27 1 0
          27 28 2 0
          28 29 1 0
          28 30 1 0
          30 31 2 0
          18 32 1 0
          32 33 2 0
          8 4 1 0
          14 10 2 0
          33 15 1 0
          24 20 1 0
          31 25 1 0
          M END


          A semi-interpretable 2D image of this 3D conformation, also generated by rdkit, is shown below. For comparsion, the "un-embedded" molecule, optimized to look nice on a 2D display, is also shown.



          rdkit images



          From the admittedly not-great 2D depiction of the embedded molecule, you can at least tell that the various aromatic rings are not coplanar. For better visualization of 3D conformations, you would want to use a tool like py3dmol.






          share|improve this answer











          $endgroup$












          • $begingroup$
            What about Standard InChI?
            $endgroup$
            – 0x90
            8 hours ago






          • 1




            $begingroup$
            InChI has the same limitations as SMILES. It does not encode the 3D arrangement of atoms, only the atom types and bond types between them.
            $endgroup$
            – Curt F.
            8 hours ago










          • $begingroup$
            Good answer. For the sake of completeness, I'd mention Open Babel, especially if you just need a 'conversion' tool.
            $endgroup$
            – Martin - マーチン
            2 hours ago










          • $begingroup$
            So what does SMILE give? Is it the molecular configuration or chemical confirmation?
            $endgroup$
            – 0x90
            1 hour ago







          • 2




            $begingroup$
            @0x90 SMILES provide constitution, bond order (single, double (=), triple (#) bond and aromaticity with C, N, O, S (C1CCCCC1 is not the same as c1ccccc1)) and may indicate molecular configuration (cis / trans double bond by / or backslash ; S or R atom centered chirality by @ or @@). It is less frequent to see the notation including configuration, but it is present.
            $endgroup$
            – Buttonwood
            1 hour ago














          5












          5








          5





          $begingroup$

          SMILES is insufficient



          SMILES strings do not encode 3D structure information. They only convey atom type, connectivity and bond types. InChI is like SMILES in this regard.



          Thus, you will need either (a) an algorithm to infer or guess a plausible 3D conformation of a molecule or (b) a file type that has already specified the 3D arrangement of the molecule.



          File types for storing, reading, and showing 3D conformations



          Probably the most standard way to represent the 3D conformation of a molecules is with a *.mol file. There are many tools to read such files. You can read more about the format on Wikipedia.



          Estimating a conformation from SMILES



          You can also use computational tools to estimate a 3D conformation from a SMILES string. Note I say a conformation rather than the conformation; molecules can in general have many valid conformations. Also, tools for generating conformations rely on molecular force fields, etc. These have many implicit assumptions; there is no guarantee that a computationally generated conformation will be the real conformation of a real molecule in the real world.



          Here is some code for generating a plausible conformation from a SMILES string using rdkit



          from rdkit import Chem
          from rdkit.Chem import AllChem
          from rdkit.Chem import Draw
          from rdkit.Chem.Draw import IPythonConsole

          my_mol = Chem.MolFromSmiles('NC(=N)N1CCC[C@H]1Cc2onc(n2)c3ccc(Nc4nc(cs4)c5ccc(Br)cc5)cc3')

          my_mol

          my_mol_with_H=Chem.AddHs(my_mol)

          AllChem.EmbedMolecule(my_mol_with_H)
          AllChem.MMFFOptimizeMolecule(my_mol_with_H)

          my_embedded_mol = Chem.RemoveHs(my_mol_with_H)

          my_embedded_mol

          print(Chem.MolToMolBlock(my_embedded_mol))


          The printed result is:



           RDKit 3D

          33 37 0 0 0 0 0 0 0 0999 V2000
          -8.0789 -0.7261 -1.9565 N 0 0 0 0 0 0 0 0 0 0 0 0
          -8.3618 -0.9375 -0.6556 C 0 0 0 0 0 0 0 0 0 0 0 0
          -9.4453 -1.5737 -0.3799 N 0 0 0 0 0 0 0 0 0 0 0 0
          -7.4690 -0.4468 0.2422 N 0 0 0 0 0 0 0 0 0 0 0 0
          -7.8136 -0.1283 1.6244 C 0 0 0 0 0 0 0 0 0 0 0 0
          -6.7632 0.8908 2.0392 C 0 0 0 0 0 0 0 0 0 0 0 0
          -5.5246 0.3855 1.3227 C 0 0 0 0 0 0 0 0 0 0 0 0
          -6.0688 -0.0733 -0.0461 C 0 0 1 0 0 0 0 0 0 0 0 0
          -5.2554 -1.2432 -0.6177 C 0 0 0 0 0 0 0 0 0 0 0 0
          -3.8658 -0.8320 -0.9216 C 0 0 0 0 0 0 0 0 0 0 0 0
          -3.6647 -0.1417 -2.0770 O 0 0 0 0 0 0 0 0 0 0 0 0
          -2.3059 0.1587 -2.1237 N 0 0 0 0 0 0 0 0 0 0 0 0
          -1.8139 -0.3885 -1.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
          -2.7692 -1.0082 -0.2227 N 0 0 0 0 0 0 0 0 0 0 0 0
          -0.4078 -0.3427 -0.6136 C 0 0 0 0 0 0 0 0 0 0 0 0
          0.0488 -1.0902 0.4772 C 0 0 0 0 0 0 0 0 0 0 0 0
          1.3984 -1.0569 0.8486 C 0 0 0 0 0 0 0 0 0 0 0 0
          2.3307 -0.2688 0.1543 C 0 0 0 0 0 0 0 0 0 0 0 0
          3.6731 -0.3282 0.5615 N 0 0 0 0 0 0 0 0 0 0 0 0
          4.8291 -0.0477 -0.0843 C 0 0 0 0 0 0 0 0 0 0 0 0
          5.9334 0.1757 0.5968 N 0 0 0 0 0 0 0 0 0 0 0 0
          7.0123 0.4129 -0.2413 C 0 0 0 0 0 0 0 0 0 0 0 0
          6.7153 0.3213 -1.5854 C 0 0 0 0 0 0 0 0 0 0 0 0
          5.0623 -0.0682 -1.7942 S 0 0 0 0 0 0 0 0 0 0 0 0
          8.3378 0.7031 0.3040 C 0 0 0 0 0 0 0 0 0 0 0 0
          9.3324 1.3464 -0.4485 C 0 0 0 0 0 0 0 0 0 0 0 0
          10.5913 1.6060 0.1057 C 0 0 0 0 0 0 0 0 0 0 0 0
          10.8633 1.2259 1.4171 C 0 0 0 0 0 0 0 0 0 0 0 0
          12.5638 1.5736 2.1593 Br 0 0 0 0 0 0 0 0 0 0 0 0
          9.8883 0.5951 2.1844 C 0 0 0 0 0 0 0 0 0 0 0 0
          8.6313 0.3380 1.6284 C 0 0 0 0 0 0 0 0 0 0 0 0
          1.8659 0.4742 -0.9343 C 0 0 0 0 0 0 0 0 0 0 0 0
          0.5160 0.4406 -1.3141 C 0 0 0 0 0 0 0 0 0 0 0 0
          1 2 1 0
          2 3 2 0
          2 4 1 0
          4 5 1 0
          5 6 1 0
          6 7 1 0
          7 8 1 0
          8 9 1 1
          9 10 1 0
          10 11 1 0
          11 12 1 0
          12 13 2 0
          13 14 1 0
          13 15 1 0
          15 16 2 0
          16 17 1 0
          17 18 2 0
          18 19 1 0
          19 20 1 0
          20 21 2 0
          21 22 1 0
          22 23 2 0
          23 24 1 0
          22 25 1 0
          25 26 2 0
          26 27 1 0
          27 28 2 0
          28 29 1 0
          28 30 1 0
          30 31 2 0
          18 32 1 0
          32 33 2 0
          8 4 1 0
          14 10 2 0
          33 15 1 0
          24 20 1 0
          31 25 1 0
          M END


          A semi-interpretable 2D image of this 3D conformation, also generated by rdkit, is shown below. For comparsion, the "un-embedded" molecule, optimized to look nice on a 2D display, is also shown.



          rdkit images



          From the admittedly not-great 2D depiction of the embedded molecule, you can at least tell that the various aromatic rings are not coplanar. For better visualization of 3D conformations, you would want to use a tool like py3dmol.






          share|improve this answer











          $endgroup$



          SMILES is insufficient



          SMILES strings do not encode 3D structure information. They only convey atom type, connectivity and bond types. InChI is like SMILES in this regard.



          Thus, you will need either (a) an algorithm to infer or guess a plausible 3D conformation of a molecule or (b) a file type that has already specified the 3D arrangement of the molecule.



          File types for storing, reading, and showing 3D conformations



          Probably the most standard way to represent the 3D conformation of a molecules is with a *.mol file. There are many tools to read such files. You can read more about the format on Wikipedia.



          Estimating a conformation from SMILES



          You can also use computational tools to estimate a 3D conformation from a SMILES string. Note I say a conformation rather than the conformation; molecules can in general have many valid conformations. Also, tools for generating conformations rely on molecular force fields, etc. These have many implicit assumptions; there is no guarantee that a computationally generated conformation will be the real conformation of a real molecule in the real world.



          Here is some code for generating a plausible conformation from a SMILES string using rdkit



          from rdkit import Chem
          from rdkit.Chem import AllChem
          from rdkit.Chem import Draw
          from rdkit.Chem.Draw import IPythonConsole

          my_mol = Chem.MolFromSmiles('NC(=N)N1CCC[C@H]1Cc2onc(n2)c3ccc(Nc4nc(cs4)c5ccc(Br)cc5)cc3')

          my_mol

          my_mol_with_H=Chem.AddHs(my_mol)

          AllChem.EmbedMolecule(my_mol_with_H)
          AllChem.MMFFOptimizeMolecule(my_mol_with_H)

          my_embedded_mol = Chem.RemoveHs(my_mol_with_H)

          my_embedded_mol

          print(Chem.MolToMolBlock(my_embedded_mol))


          The printed result is:



           RDKit 3D

          33 37 0 0 0 0 0 0 0 0999 V2000
          -8.0789 -0.7261 -1.9565 N 0 0 0 0 0 0 0 0 0 0 0 0
          -8.3618 -0.9375 -0.6556 C 0 0 0 0 0 0 0 0 0 0 0 0
          -9.4453 -1.5737 -0.3799 N 0 0 0 0 0 0 0 0 0 0 0 0
          -7.4690 -0.4468 0.2422 N 0 0 0 0 0 0 0 0 0 0 0 0
          -7.8136 -0.1283 1.6244 C 0 0 0 0 0 0 0 0 0 0 0 0
          -6.7632 0.8908 2.0392 C 0 0 0 0 0 0 0 0 0 0 0 0
          -5.5246 0.3855 1.3227 C 0 0 0 0 0 0 0 0 0 0 0 0
          -6.0688 -0.0733 -0.0461 C 0 0 1 0 0 0 0 0 0 0 0 0
          -5.2554 -1.2432 -0.6177 C 0 0 0 0 0 0 0 0 0 0 0 0
          -3.8658 -0.8320 -0.9216 C 0 0 0 0 0 0 0 0 0 0 0 0
          -3.6647 -0.1417 -2.0770 O 0 0 0 0 0 0 0 0 0 0 0 0
          -2.3059 0.1587 -2.1237 N 0 0 0 0 0 0 0 0 0 0 0 0
          -1.8139 -0.3885 -1.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
          -2.7692 -1.0082 -0.2227 N 0 0 0 0 0 0 0 0 0 0 0 0
          -0.4078 -0.3427 -0.6136 C 0 0 0 0 0 0 0 0 0 0 0 0
          0.0488 -1.0902 0.4772 C 0 0 0 0 0 0 0 0 0 0 0 0
          1.3984 -1.0569 0.8486 C 0 0 0 0 0 0 0 0 0 0 0 0
          2.3307 -0.2688 0.1543 C 0 0 0 0 0 0 0 0 0 0 0 0
          3.6731 -0.3282 0.5615 N 0 0 0 0 0 0 0 0 0 0 0 0
          4.8291 -0.0477 -0.0843 C 0 0 0 0 0 0 0 0 0 0 0 0
          5.9334 0.1757 0.5968 N 0 0 0 0 0 0 0 0 0 0 0 0
          7.0123 0.4129 -0.2413 C 0 0 0 0 0 0 0 0 0 0 0 0
          6.7153 0.3213 -1.5854 C 0 0 0 0 0 0 0 0 0 0 0 0
          5.0623 -0.0682 -1.7942 S 0 0 0 0 0 0 0 0 0 0 0 0
          8.3378 0.7031 0.3040 C 0 0 0 0 0 0 0 0 0 0 0 0
          9.3324 1.3464 -0.4485 C 0 0 0 0 0 0 0 0 0 0 0 0
          10.5913 1.6060 0.1057 C 0 0 0 0 0 0 0 0 0 0 0 0
          10.8633 1.2259 1.4171 C 0 0 0 0 0 0 0 0 0 0 0 0
          12.5638 1.5736 2.1593 Br 0 0 0 0 0 0 0 0 0 0 0 0
          9.8883 0.5951 2.1844 C 0 0 0 0 0 0 0 0 0 0 0 0
          8.6313 0.3380 1.6284 C 0 0 0 0 0 0 0 0 0 0 0 0
          1.8659 0.4742 -0.9343 C 0 0 0 0 0 0 0 0 0 0 0 0
          0.5160 0.4406 -1.3141 C 0 0 0 0 0 0 0 0 0 0 0 0
          1 2 1 0
          2 3 2 0
          2 4 1 0
          4 5 1 0
          5 6 1 0
          6 7 1 0
          7 8 1 0
          8 9 1 1
          9 10 1 0
          10 11 1 0
          11 12 1 0
          12 13 2 0
          13 14 1 0
          13 15 1 0
          15 16 2 0
          16 17 1 0
          17 18 2 0
          18 19 1 0
          19 20 1 0
          20 21 2 0
          21 22 1 0
          22 23 2 0
          23 24 1 0
          22 25 1 0
          25 26 2 0
          26 27 1 0
          27 28 2 0
          28 29 1 0
          28 30 1 0
          30 31 2 0
          18 32 1 0
          32 33 2 0
          8 4 1 0
          14 10 2 0
          33 15 1 0
          24 20 1 0
          31 25 1 0
          M END


          A semi-interpretable 2D image of this 3D conformation, also generated by rdkit, is shown below. For comparsion, the "un-embedded" molecule, optimized to look nice on a 2D display, is also shown.



          rdkit images



          From the admittedly not-great 2D depiction of the embedded molecule, you can at least tell that the various aromatic rings are not coplanar. For better visualization of 3D conformations, you would want to use a tool like py3dmol.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited 7 hours ago

























          answered 8 hours ago









          Curt F.Curt F.

          17k2 gold badges41 silver badges94 bronze badges




          17k2 gold badges41 silver badges94 bronze badges











          • $begingroup$
            What about Standard InChI?
            $endgroup$
            – 0x90
            8 hours ago






          • 1




            $begingroup$
            InChI has the same limitations as SMILES. It does not encode the 3D arrangement of atoms, only the atom types and bond types between them.
            $endgroup$
            – Curt F.
            8 hours ago










          • $begingroup$
            Good answer. For the sake of completeness, I'd mention Open Babel, especially if you just need a 'conversion' tool.
            $endgroup$
            – Martin - マーチン
            2 hours ago










          • $begingroup$
            So what does SMILE give? Is it the molecular configuration or chemical confirmation?
            $endgroup$
            – 0x90
            1 hour ago







          • 2




            $begingroup$
            @0x90 SMILES provide constitution, bond order (single, double (=), triple (#) bond and aromaticity with C, N, O, S (C1CCCCC1 is not the same as c1ccccc1)) and may indicate molecular configuration (cis / trans double bond by / or backslash ; S or R atom centered chirality by @ or @@). It is less frequent to see the notation including configuration, but it is present.
            $endgroup$
            – Buttonwood
            1 hour ago

















          • $begingroup$
            What about Standard InChI?
            $endgroup$
            – 0x90
            8 hours ago






          • 1




            $begingroup$
            InChI has the same limitations as SMILES. It does not encode the 3D arrangement of atoms, only the atom types and bond types between them.
            $endgroup$
            – Curt F.
            8 hours ago










          • $begingroup$
            Good answer. For the sake of completeness, I'd mention Open Babel, especially if you just need a 'conversion' tool.
            $endgroup$
            – Martin - マーチン
            2 hours ago










          • $begingroup$
            So what does SMILE give? Is it the molecular configuration or chemical confirmation?
            $endgroup$
            – 0x90
            1 hour ago







          • 2




            $begingroup$
            @0x90 SMILES provide constitution, bond order (single, double (=), triple (#) bond and aromaticity with C, N, O, S (C1CCCCC1 is not the same as c1ccccc1)) and may indicate molecular configuration (cis / trans double bond by / or backslash ; S or R atom centered chirality by @ or @@). It is less frequent to see the notation including configuration, but it is present.
            $endgroup$
            – Buttonwood
            1 hour ago
















          $begingroup$
          What about Standard InChI?
          $endgroup$
          – 0x90
          8 hours ago




          $begingroup$
          What about Standard InChI?
          $endgroup$
          – 0x90
          8 hours ago




          1




          1




          $begingroup$
          InChI has the same limitations as SMILES. It does not encode the 3D arrangement of atoms, only the atom types and bond types between them.
          $endgroup$
          – Curt F.
          8 hours ago




          $begingroup$
          InChI has the same limitations as SMILES. It does not encode the 3D arrangement of atoms, only the atom types and bond types between them.
          $endgroup$
          – Curt F.
          8 hours ago












          $begingroup$
          Good answer. For the sake of completeness, I'd mention Open Babel, especially if you just need a 'conversion' tool.
          $endgroup$
          – Martin - マーチン
          2 hours ago




          $begingroup$
          Good answer. For the sake of completeness, I'd mention Open Babel, especially if you just need a 'conversion' tool.
          $endgroup$
          – Martin - マーチン
          2 hours ago












          $begingroup$
          So what does SMILE give? Is it the molecular configuration or chemical confirmation?
          $endgroup$
          – 0x90
          1 hour ago





          $begingroup$
          So what does SMILE give? Is it the molecular configuration or chemical confirmation?
          $endgroup$
          – 0x90
          1 hour ago





          2




          2




          $begingroup$
          @0x90 SMILES provide constitution, bond order (single, double (=), triple (#) bond and aromaticity with C, N, O, S (C1CCCCC1 is not the same as c1ccccc1)) and may indicate molecular configuration (cis / trans double bond by / or backslash ; S or R atom centered chirality by @ or @@). It is less frequent to see the notation including configuration, but it is present.
          $endgroup$
          – Buttonwood
          1 hour ago





          $begingroup$
          @0x90 SMILES provide constitution, bond order (single, double (=), triple (#) bond and aromaticity with C, N, O, S (C1CCCCC1 is not the same as c1ccccc1)) and may indicate molecular configuration (cis / trans double bond by / or backslash ; S or R atom centered chirality by @ or @@). It is less frequent to see the notation including configuration, but it is present.
          $endgroup$
          – Buttonwood
          1 hour ago


















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Chemistry Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          Use MathJax to format equations. MathJax reference.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fchemistry.stackexchange.com%2fquestions%2f118460%2fis-it-possible-to-build-or-embed-the-smiles-representation-of-compounds-in-3d%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Sahara Skak | Bilen | Luke uk diar | NawigatsjuunCommonskategorii: SaharaWikivoyage raisfeerer: Sahara26° N, 13° O

          The fall designs the understood secretary. Looking glass Science Shock Discovery Hot Everybody Loves Raymond Smile 곳 서비스 성실하다 Defas Kaloolon Definition: To combine or impregnate with sulphur or any of its compounds as to sulphurize caoutchouc in vulcanizing Flame colored Reason Useful Thin Help 갖다 유명하다 낙엽 장례식 Country Iron Definition: A fencer a gladiator one who exhibits his skill in the use of the sword Definition: The American black throated bunting Spiza Americana Nostalgic Needy Method to my madness 시키다 평가되다 전부 소설가 우아하다 Argument Tin Feeling Representative Gym Music Gaur Chicken 일쑤 코치 편 학생증 The harbor values the sugar. Vasagle Yammoe Enstatite Definition: Capable of being limited Road Neighborly Five Refer Built Kangaroo 비비다 Degree Release Bargain Horse 하루 형님 유교 석 동부 괴롭히다 경제력

          19. јануар Садржај Догађаји Рођења Смрти Празници и дани сећања Види још Референце Мени за навигацијуу