Getting Started¶
Get and Run ProMod3¶
Either utilize containers or start from source code:
Fetch the source code from https://git.scicore.unibas.ch/schwede/ProMod3.git. Or directly pull it with git:
$ git clone https://git.scicore.unibas.ch/schwede/ProMod3.git <DIR>
Obtain all dependencies and compile ProMod3 with
cmake
andmake
(see here).Ensure that you have a
stage/bin
folder which includes apm
executable. For convenience, add the folder to yourPATH
env. variable.You can now execute ProMod3 by running the following in your terminal:
$ pm <COMMAND>Here
<COMMAND>
can be:
a predefined “action” (see here)
the path to a python script, such as the following example:
from ost import io from promod3 import loop # generate backbone with dihedrals of a helix and store it sequence = "HELLYEAH" bb_list = loop.BackboneList(sequence) io.SavePDB(bb_list.ToEntity(), "test.pdb")The execution of this script should generate a
test.pdb
file, which you can visualize with any pdb reader (e.g.dng
from OST).
Modelling pipeline¶
ProMod3 is meant to help you perform operations for protein homology modelling. Commonly, your input is a template structure and an alignment of the template to the desired target sequence. The modelling steps then are:
Build a raw model from a template by copying the part of the template which is conserved
Perform loop modelling to close all gaps (see
loop
module)Reconstruct sidechains (using
sidechain
module)Minimize energy of final model using molecular mechanics (using
ost.mol.mm
from OST)
Since a good amount of time is spent in OpenMM routines to minimize energy, we
try to use the fast and multi-threaded “CPU” platform of OpenMM (should be
included and working on any hardware supported by OpenMM). If the platform is
not available, we use the slower “Reference” platform. For the “CPU” platform,
multiple CPU threads can be used by setting the env. variable
PM3_OPENMM_CPU_THREADS
to the number of desired threads. If the variable is
not set, 1 thread will be used by default.