xyz2mol for transition metal complexes
February 6, 2026 · View on GitHub
Repo for the publication : SMILES All Around: Structure to SMILES conversion for Transition Metal Complexes
SMILES_csvs
Folder with TMC SMILES datasets
xyz2mol_tm
Code for converting TMC xyz files into TMC SMILES.
huckel_to_smiles
Code for the Huckel to SMILES approach.

NBO_to_smiles
Code for the NBO to SMILES approach.

CSD_to_valid_smiles
Code for the CSD SMILES fix approach.

comparing_smiles
Contains two notebooks comparing the three SMILES sets and highlighting different issues with parts of the SMILES sets.
Notebook comparing the three SMILES sets:
Notebook going through important issues and differences in the SMILES sets:
highlight_smiles_problems.ipynb
ML
All code used for Machine Learning experiments on the SMILES sets.
⚙️ Setup environment:
We provide to separate conda environment files that reflect the environments that were used to perform the xyz to SMILES and ML approaches respectively.
The conda environment used for creating the SMILES has fewer dependencies and is found at: xyz2mol_tmc.yml.
The ML environment file : ml_environment.yml.
Key dependencies are:
- RDKit
- pytorch
- pytorch_geometric
- scikit-learn
- lightgbm
- optuna
- wandb
- scipy
- numpy
Beware that conda environments with pytorch and pytorch_geometric can have issues with detecting a GPU and it is possible that other versions of the packages are needed if installed on other hardware due to mismatch in cuda versions / drivers. The given .yaml file is exported from an environment that worked with our hardware setup.
After a conda environment has been setup based on one of the .yml file, install the modules in this repo into the environment by running the following from this directory:
pip install -e .
For instructions how to run individual scripts see the corresponding README files in the different modules.