-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmolecule_structures.py
More file actions
32 lines (23 loc) · 1.26 KB
/
molecule_structures.py
File metadata and controls
32 lines (23 loc) · 1.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
from rdkit import Chem
from rdkit.Chem import Draw
moleculas = {
"Agua": "O", # H2O, pero el SMILES para el agua es simplemente "O" porque el hidrógeno se asume implícitamente.
"Metano": "C", # CH4, pero el SMILES para el metano es simplemente "C" porque los hidrógenos se asumen implícitamente.
"Etanol": "CCO", # C2H5OH
"Glucosa": "C(C1C(C(C(C(O1)O)O)O)O)O", # C6H12O6
}
for nombre, smi in moleculas.items():
mol = Chem.MolFromSmiles(smi)
img = Draw.MolToImage(mol, size=(300, 300))
img.show()
""" Representación Molecular (SMILES)
Las estructuras moleculares de este programa se definen mediante **SMILES (Simplified Molecular Input Line Entry System)**.
SMILES es una notación que representa estructuras químicas como cadenas de texto.
Por ejemplo:
- `"O"` representa el agua (H₂O), donde los átomos de hidrógeno son implícitos.
- `"C"` representa el metano (CH₄).
- Las moléculas más complejas, como la glucosa, se representan mediante:
- paréntesis `()` para ramificaciones.
- números para cierres de anillo.
- átomos como C, O, N de forma explícita.
Esta codificación permite que bibliotecas como RDKit reconstruyan y visualicen estructuras moleculares mediante programación. """