Python API
This package contains 3 submodules and a utils module, that implements functions needed for the 3 submodules. It also relies on two datastructures to sort the input and keep everything neat and clear.
UmbrellaPipeline Module
This is the main module provided. It combines the submodules listed below, and makes quick and easy use of this tool possible. Of course, you don’t need to use this tool like this, but you can use the sub-modules how you want.
Sub-Modules
The path_finding sub-module contains the EscapeRoom Classes, which implement the Escape Room Algorithm, that is used for pathway generation.
Two versions are currently supported, the Grid and the Tree version, of which the use of the TreeEscapeRoom is highly encouraged, since it is much faster
and more memory efficient.
The sampling submodule contains everything to run the umbrella sampling. It uses the OpenMM python api to run any simulations. The ligand restraints are
realized using the OpenMM CustomCentroidBondForce. Different input flags can be given to the Sampling classes, to bring the simulation parameters in accordance
with your needs.
In the analysis part, the Potential of Mean force is calculated from the trajectories generatd. The MBAR method is employed and the equations are solved using the pymbar solver.
Utilitary functions
These are functions and exceptions that are accessed by multiple of the above sub-modules.
Input Data Structures
To structure the various input data needed by this tool, two handy data structures are supplied, that simplify the handling of said input.
The SimulationParameters data structure holds all information like temperature, pressure, etc. that is deployed in the umbrella sampling.
The SystemInfo class contains all the information about the system that is simulated, as the force field data, ligand name, starting conformation etc.