The AToM logo © Solmaz Azimi, 2023
AToM-OpenMM is a molecular modeling application built on the OpenMM MD library to estimate absolute and relative alchemical binding free energies of molecular complexes alchemically. AToM's protocol is based on the Alchemical Transfer Method (ATM) and a Parallel Asynchronous Hamiltonian Replica Exchange conformational sampling algorithm. Alchemical Transfer is unique in that it encodes binding as a coordinate rather than a force field parameter transformation. The ligand is transferred directly from the solution to the binding site.
The method targets difficult ligand transformations in drug design involving scaffold-hopping and charge-changing transformations that are not well supported by traditional algorithms. AToM's overarching philosophy is to deploy powerful and rigorous free energy estimation algorithms with simple processes for developers and end users.
Free energies are calculated from only one molecular simulation in a single explicit solvent box using standard molecular topologies. The method does not require custom pair potentials. And because it transforms coordinates only, it supports all energy functions available in OpenMM or provided by plugins without customizations. This includes long-range electrostatics and future polarizable and quantum-mechanical energy functions and neural network potentials.
Being based on OpenMM, AToM is highly performant on GPU devices. AToM run on any hardware platform supported by OpenMM, including CUDA, CPUs, and accelerators supported by third-party plugins such as AMD's HIP OpenMM platform.
Installation and Tutorials
AToM-OpenMM has backend and frontend components:
Backend: The OpenMM molecular dynamics package with the ATM Meta Force Plugin, which is easily installed from conda-forge.
Frontend: The AToM-OpenMM middleware, written in Python, interfaces with the backend and manages alchemical states, replica exchanges, and GPU devices. It is installed directly from the GitHub repository.
conda create -n atm -c conda-forge openmm-atmmetaforce-plugin configobj setproctitle
conda activate atm
git clone https://github.com/Gallicchio-Lab/AToM-OpenMM.git
python setup.py install
That's it. Then run AToM-OpenMM applications using python after activating the conda atm environment. For example:
source ~/miniconda3/bin/activate atm
python rbfe_explicit.py jobname.cntl
where jobname.cntl is the AToM-OpenMM control file. More on the control file later.
Once installation is finished, head to the AToM-OpenMM Tutorials to start computing binding free energies.