This repository contains all code for the full FreeQuantum pipeline.
This software is distributed under the BSD 3-clause "New" or "Revised" License.
For more license and copyright information, see the file LICENSE.txt in the
repository.
The repository contains the following subdirectories: - NEQ_switching_ani2x - Contains slurm scripts for running NEQ switching simulations with element embracing ML potentials and the ANI2x potential. - fep - Contains yank scripts and input files to run the classical MM FEP simulations. Note that the initial FEP calculations are not run by the automated pipeline - ml - Contains the Python package that runs the active learning. - plot_energy_distribution - Contains the Python scripts that plot the energy distribution of the QM region. - qm-mm - Contains the Python package that facilitates interfacing with the database. It provides the scripts necessary to add calculations to the database and extract results.
Furthermore, it contains yml configuration files providing easy access to the calculation settings and the database. These files are required by most scripts in the submodules.
- work_distributions - Contains a Python package for plotting the work distributions of the NEQ switching simulations and the final free energy difference.
There is an installer script which installs the entire pipeline: ```bash
./install.sh
Then, to run the pipeline for one of the presupplied systems, execute ```bash
cd slurm/mcl1-19G_complex vim config.sh
Adapt this file to match your local setup; you will have to adapt at least the following variables: - DB_HOSTNAME: The server name (or IP address) of your MongoDB server - DB_PORT: The port on which your MongoDB listens (usually 27017) - DB_NAME: The name of the database you want to use; you can freely configure this - SCRATCH_DIR: A scratch directory accessible to you on your HPC system - PIPELINE_ROOT: The path to the pipeline repository (i.e., the directory in which this README.rst is located) - CONDA_ENV_PATH: The path to the conda environment for the pipeline (this is created during installation)
Next, create all inout files and test your setup: ```bash
./generate_configs.sh ../validate_setup.sh
Then, download the necessary structure files ```bash
cd qm-mm/input_files/structures/mcl1-19G ./download.sh
Finally, you can launch the entire pipeline: ```bash
./run_pipeline.sh full
Alternatively, you can run it step by step: ```bash
./run_pipeline.sh qm-region ./run_pipeline.sh init ./run_pipeline.sh iterate -i 0
When publishing results obtained with the FreeQuantum pipeline, please cite the following article:
Jakob Günther, Thomas Weymuth, Moritz Bensberg, Freek Witteveen, Matthew S. Teynor, F. Emil Thomasen, Valentina Sora, William Bro-Jørgensen, Raphael T. Husistein, Mihael Erakovic, Marek Miller, Leah Weisburn, Minsik Cho, Marco Eckhoff, Aram W. Harrow, Anders Krogh, Troy Van Voorhis, Kresten Lindorff-Larsen Gemma Solomon, Markus Reiher, Matthias Christandl, "How to Use Quantum Computers for Biomolecular Free Energies", J. Chem. Theory Comput., 2026.
In case you should encounter problems or bugs, please write a short message to scine@phys.chem.ethz.ch.