molSimplify is an open source toolkit for the automated, first-principles screening and discovery of new inorganic molecules and intermolecular complexes. molSimplify is developed by the Kulik Group in the Department of Chemical Engineering at MIT. The software can generate a variety of coordination complexes of metals coordinated by ligands in a mono- or multi-dentate fashion. The code can build a coordination complex directly from a central atom or functionalize a more complex structure (e.g. a porphyrin or other metal-ligand complex) by including additional ligands or replacing existing ones. molSimplify also generates inter-molecular complexes for evaluating binding interactions and generating candidate reactants and intermediates for catalyst reaction mechanism screening. molSimplify also ships neural network models that can predict the metal-ligand bond lengths, spin-splitting energy, frontier orbital energies, spin-state dependent reaction energies, and simulation outcomes for octahedral transition metal complexes. See the Tutorials at the Kulik group webpage for a more complete list of jobs molSimplify can do.
We currently recommend installation via the Conda package management system.
-
Prerequisite: have Anaconda or miniconda installed on your system.
-
Clone molSimplify source from github.
git clone https://github.com/hjkgrp/molSimplify.git
-
Go to the folder root folder for molSimplify, create the conda environment from the yaml file (mols.yml). This step will help you get all the dependecies correct in a newly created conda environment named "mols_test". You can specify a different name for this environment at the first line of the yaml file.
cd <root directory to molSimplify>/conda-envs conda env create -f mols.yml
-
Activate the conda environment you just created. Go back to the root directory of molSimplify (where the setup.py file locates). Local install with pip.
cd <root directory to molSimplify> pip install -e .
-
To test your installation, you can run the command below at the root directory of molSimplify. You are good to go if all the tests are passed!
python setup.py test
We also maintain an active docker image on dockerhub for plug-and-play use.
For line by line instructions on an installation via docker, please visit molSimplify installation webpage of Kulik group.
A set of tutorials covering common use cases is available at the Kulik group webpage.
molSimplify is research software. If you use it for work that results in a publication, please cite the following reference:
@Article {molSimplify,
author = {Ioannidis, Efthymios I. and Gani, Terry Z. H. and Kulik, Heather J.},
title = {molSimplify: A toolkit for automating discovery in inorganic chemistry},
journal = {Journal of Computational Chemistry},
volume = {37},
number = {22},
pages = {2106--2117},
issn = {1096-987X},
url = {http://dx.doi.org/10.1002/jcc.24437},
doi = {10.1002/jcc.24437},
year = {2016},
}
@Article{Nandy2018IECR,
author = {Nandy, Aditya and Duan, Chenru and Janet, Jon Paul and Gugler, Stefan and Kulik, Heather J.},
title = {Strategies and Software for Machine Learning Accelerated Discovery in Transition Metal Chemistry},
journal = {Industrial {\&} Engineering Chemistry Research},
volume = {57},
number = {42},
pages = {13973-13986},
issn = {0888-5885},
url = {https://doi.org/10.1021/acs.iecr.8b04015},
doi = {10.1021/acs.iecr.8b04015},
year = {2018},
}
If you use any machine learning (ML) models in molSimplify that results in a publication, please cite the corresponding reference in this MLmodel reference page.