raw_mol = Chem.MolFromXYZFile('acetate.xyz')
mol = Chem.Mol(raw_mol)
rdDetermineBonds.DetermineBonds(mol,charge=-1)
Dadas las coordenadas cartesianas en forma de archivo .xyz
, el código construye una lista de uno o más gráficos moleculares. En los casos en los que hay varias formas de resonancia posibles, xyz2mol devuelve una lista de todas; de lo contrario, solo una lista de una.
Este código está basado en el trabajo de DOI: 10.1002/bkcs.10334
Yeonjoon Kim and Woo Youn Kim
"Universal Structure Conversion Method for Organic Molecules:
From Atomic Connectivity to Three-Dimensional Geometry"
Bull. Korean Chem. Soc.
2015, Vol. 36, 1769-1777
Depende de rdkit
, numpy
y networkx
. Más fácil de configurar mediante anaconda/conda:
conda install -c conda-forge xyz2mol
La configuración para un entorno independiente está disponible a través de Makefile
. Para configurar y probar, simplemente clone el proyecto y cree.
git clone https://github.com/jensengroup/xyz2mol
y luego ejecute lo siguiente en la carpeta xyz2mol
make
make test
Tenga en cuenta que también es posible ejecutar el código sin las dependencias networkx
, pero es más lento.
Lea el archivo xyz e imprima las SONRISAS, pero no codifique la quiralidad.
xyz2mol.py examples/chiral_stereo_test.xyz --ignore-chiral
Lea el archivo xyz e imprima el formato SDF, guárdelo en un archivo
xyz2mol.py examples/chiral_stereo_test.xyz -o sdf > save_file.sdf
Leer en archivo xyz con un cargo e imprimir las SONRISAS
xyz2mol.py examples/acetate.xyz --charge -1
rdkit # (version 2019.9.1 or later needed for huckel option)
networkx