We are excited to announce the release of MOFSynth-ADV, a significant leap forward in our commitment to speed, accessibility, and scientific reproducibility.
This new version is fully powered by open-source software, eliminating dependencies on proprietary packages and streamlining deployment across systems.
-
Multiple Calculators: Seamlessly switch between xTB and MACE Machine Learning Potentials (
mace_mp,mace_off)for rapid energy calculations. -
Choice of Optimizers: Select from a range of leading geometry optimizers including LBFGS, FIRE, BFGS, and Sella.
-
Global Config: Set up your SLURM templates once with our new
~/.mofsynth/slurm_template.shapproach and run anywhere. -
Open Science Ready: All dependencies are now open source, making MOFSynth-ADV fully transparent and reproducible.
Open source, and faster!
MOFSynth is a Python package for MOF synthesizability evaluation, with emphasis on reticular chemistry.
In materials science, especially in the synthesis of metal-organic frameworks (MOFs), a significant portion of time and effort is spent on the experimental process of synthesizing and evaluating the viability of MOFs.
MOFSynth aims to provide a simple and efficient interface for evaluating the synthesizability of metal-organic frameworks (MOFs) in an experiment-ready format, minimizing the time and labor traditionally required for these experimental preprocessing steps. This allows researchers to focus more on innovative synthesis and experimental validation rather than on preparatory tasks.
Because MOFSynth-ADV relies on computational chemistry tools that require compiled Fortran and C libraries (like tblite), it is strongly recommended to use Conda to manage your environment. Using a standard Python venv with pure pip may result in missing Fortran runtime errors.
If you are installing from the source repository, we provide an environment file that perfectly configures all complex dependencies.
# Clone the repository
git clone https://github.com/livaschar/mofsynth_adv.git
cd mofsynth_adv
# Create the environment and install all dependencies
conda env create -f environment.yml
# Activate the environment
conda activate mofsynth_adv_envIf you are installing directly from PyPI, please ensure you install tblite via conda-forge before running pip.
# 1. Create and activate a new conda environment
conda create -n mmofsynth_adv_env python=3.13
conda activate mofsynth_adv_env
# 2. Install tblite via conda-forge to ensure Fortran libraries are linked
conda install -c conda-forge tblite tblite-python
# 3. Install MOFSynth-ADV and the rest of the dependencies
pip install mofsynth_advTo run MOFSynth-ADV, the following modules and tools must be present in your system:
- mofid: A Python library for MOF identification and characterization.
Make sure to check installation document if you encounter any problems.
Easy to use Web version of the tool.
Check the tutorial.
Also check the examples folder for ready to use python scripts.
You can start by opening an issue or communicate via email.
Please consider citing this publication or use the following BibTex.
Show BibTex entry
@article{doi:10.1021/acs.jcim.4c01298,
author = {Livas, Charalampos G. and Trikalitis, Pantelis N. and Froudakis, George E.},
title = {MOFSynth: A Computational Tool toward Synthetic Likelihood Predictions of MOFs},
journal = {Journal of Chemical Information and Modeling},
volume = {64},
number = {21},
pages = {8193-8200},
year = {2024},
doi = {10.1021/acs.jcim.4c01298},
note ={PMID: 39481084},
URL = {https://doi.org/10.1021/acs.jcim.4c01298},
eprint = {https://doi.org/10.1021/acs.jcim.4c01298}
}We welcome contributions to expand the capabilities of MOFSynth-ADV! Whether you are fixing bugs, adding new features, or integrating new physics engines, your help is appreciated.
To add a new model:
- Open src/mofsynth_adv/modules/ase_worker.py.
- Find the get_calculator(name) function.
- Add a new elif block to initialize your desired ASE calculator.
- Ensure any additional Python dependencies (like fairchem-core for UMA) are installed in your environment.
Submitting Changes
- Fork the repository.
- Create a feature branch (git checkout -b feature/NewCalculator).
- Commit your changes.
- Push to the branch and open a Pull Request
MOFSynth-ADV is released under the GNU General Public License v3.0 only.
