protoms.pyΒΆ
This program is used to setup a ProtoMS simulation. It was made with usability at highest priority. The only input that should be necessary is a couple of prepared PDB files containing the molecules one would like to simulate.
The program will create force field for small molecules, setup the protein and solvate the prepared system. At the moment it can setup the following types of simulations:
- Equilibration
- Sampling
- Dual-topology free energy
- Single-topology free energy
- Grand Canonical Monte Carlo (GCMC)
- Just Add Waters, stage 1 and 2 (JAWS-1, JAWS-2)
The program will create files and inputs based on experience that should work in most situations. However there might be situations where the created settings are not appropriate. One can then use individual tools to make a more custom setup, see this. One might also have to edit the files manually.
Syntax:
protoms.py [-s none|equilibration|sampling|dualtopology|singletopology|gcmc|jaws1|jaws2] [-f folder1 folder2] [-p protein.pdb] [-sc scoop.pdb] [-l lig1.pdb lig2.pdb ...] [-t template1 template2 ...] [-w water.pdb] [-c cmdfile] [-r nrepeats | prefix] [--outfolder folder] [--atomnames namefile] [--watmodel tip4p|tip3p] [--waterbox watbox] [--charge charge1 charge2] [--singlemap mapfile] [--center cent] [--innercut icut] [--outercut ocut] [--flexin sidechain|flexible|rigid] [--flexout sidechain|flexible|rigid] [--scooplimit N] [--capradius radius] [--lambdas nlambdas | lambda1 lambda2 ...] [--adams B1 B2 ...] [--jawsbias bias] [--gcmcwater wat.pdb | N] [--gcmcbox box.pdb | X Y Z A B C] [--nequil N] [--nprod N] [--dumpfreq N] [--absolute] [--dovacuum] [--testrun] [--cleanup]
-s none|equilibration|sampling|dualtopology|singletopology|gcmc|jaws1|jaws2
= the type of simulation to performoptional, default =
none
-f folder1 folder2
= name of folders to search for input filesoptional, no default
-p protein.pdb
= the name of the protein PDB fileoptional, no default
-o scoop.pdb
= the name of a protein scoop PDB fileoptional, no default
-l lig1.pdb lig2.pdb ...
= the name(s) of PDB file(s) containing ligand(s)optional, no default
-t template1 template2 ...
= the name(s) of ProtoMS template file(s) that needs to be loadedoptional, no default
-w water.pdb
= the name of a PDB file with bulk water for the proteinoptional, no default
-c cmdfile
= the prefix for the created ProtoMS command fileoptional, default =
run
-r nrepeats | prefix
= setup independent repeats of the simulationoptional, default = 1
nrepeat
= repeats a created from 1 tonrepeat
prefix
= a single repeat is created, but prefix is appended to folders and files
--outfolder folder
= the ProtoMS output folderoptional, default =
""
(empty string)
--atomnames namefile
= the name of file containing conversion instructionsoptional, no default if not given, takes the one in
$PROTOMSHOME/data
--watermodel tip4p|tip3p
= the water model to useoptional, default =
tip4p
--waterbox watbox
= the name a of a PDB file with a pre-equilibrated water boxoptional, no default if not given, takes one in
$PROTOMSHOME/data
--charge charge1 charge2
... = the charges of the ligandsoptional, default = 0
--singlemap mapfile
= the correspondence map for single-topology setupoptional, no default
--center cent
= the centre of the scoopoptional, default = 0.0,0.0,0.0
--innercut icut
== the inner region cut-off in Angstromsoptional, default = 16.9 A
--outercut ocut
== the outer region cut-off in Angstromsoptional, default = 20.0 A
--flexin sidechain|flexible|rigid
= determine the flexibility of the inner regionoptional, default =
flexible
sidechain
= only the sidechains will be sampled in the simulationflexible
= both sidechain and backbone will be sampled in the simulationrigid
= no residues will be sampled
--flexout sidechain|flexible|rigid
= determine the flexibility of the outer regionoptional, default =
sidechain
sidechain
= only the sidechains will be sampled in the simulationflexible
= both sidechain and backbone will be sampled in the simulationrigid
= no residues will be sampled
--scooplimit N
= the minimum removed number of residues in a scoopoptional, default = 10
--capradius radius
= the radius of the droplet solvating the proteinoptional, default = 30
--lambdas nlambdas | lambda1 lambada2
... = specification of; space for free energy calculations
optional, default = 16 if a single value is given, this number of
-values is created uniformly from 0 to 1 if a list of values are given, this is the
-values to use
--adams B1 B2
... = the Adams parameter for GCMCoptional, default = 0
--jawsbias bias
= the bias to apply in JAWS-2 simulationsoptional, default = 0
--gcmcwater wat.pdb | N
= the name of a PDB file with reservoir waters for GCMC and JAWS-1 or an integeroptional, no default if an integer is given this corresponds to the number of water to add to the GCMC/JAWS-1 box
--gcmcbox box.pdb | X Y X A B C
= the name of a PDB file with GCMC or JAWS-1 simulation box dimension or the box dimensionsoptional, no default if six numbers are given this corresponds to the origin (first three) and the length (last three) of the box
--nequil N
= the number of equilibration movesoptional, default = 5E6
--nprod N
= the number of production movesoptional, default = 40E6
--dumpfreq N
= the frequency with which output is written to discoptional, default = 1E5
--absolute
= turns on the setup of absolute free energiesoptional, default = off
--dovacuum
= turns on the setup of vacuum simulationoptional, default = off
--testrun
= turns on the setup of a short simulations appropiate for testsoptional, default = off
--cleanup
= cleans up extraenous files and put them in a tar-balloptional, default = off
Examples:
protoms.py
protoms.py.py -s sampling -l lig1.pdb --dovacuum --testrun
protoms.py -s dualtopology -l lig1.pdb lig2.pdb -p protein.pdb
protoms.py -s dualtopology -l lig1.pdb --absolute
protoms.py -s gcmc -p protein.pdb --adams -4 -2 0 2 4 6
Notes:
The program will try to locate previously created files for the protein and ligand in the current working directory or any folder specified with the -f
flag. For ligands the program will replace .pdb
with the appropriate ending, such as .prepi
for Amber prepi files and .tem
for ProtoMS template files.
Starting with just the PDB-files of the ligand(s) and the protein, the program will create the following files in the same folder as those PDB-files
lig.prepi
= the z-matrix and atom types of the ligand in Amber formatlig.frcmod
= additional parameters not in GAFFlig.zmat
= the z-matrix of the ligand used to sample it in the MC simulationlig.tem
= the complete template (force field) file for the ligand in ProtoMS formatli1-li2.tem
= the combined template file of all ligandsthe filename is a combination of the residue name of all ligands
lig_box.pdb
= the box of water solvating the ligandprotein_scoop.pdb
= the truncated protein structureprotein_pms.pdb
= the original protein structure with ProtoMS naming conventionif the scoop removes to few residues, this file be created instead
water.pdb
= the cap of water solvating the protein system
In addition, for dual-topology simulations the following files are created: :
lig1_dummy.pdb
= the dummy particle that the ligand will be perturbed toonly created if the –absolute flag is set
In addition, for single-topology simulations the following files are created:
li1-li2_ele.tem
= the ProtoMS template file for electrostatic single-topology perturbationli1-li2_vdw.tem
= the ProtoMS template file for van der Waals single-topology perturbationli1-li2_comb.tem
= the ProtoMS template file for combined/single-step single-topology perturbationsettings.singlemap
= the created correspondance map for single topologyonly named like this if the –singlemap argument is not set
In addition, for GCMC / JAWS-1 simulations the following files are created:
gcmc_box.pdb
/jaws1_box.pdb
= the GCMC / JAWS-1 simulation boxgcmc_wat.pdb
= the GCMC / JAWS-1 reservoire waterswater_clr.pdb
= the cap of water solvating the protein system, cleared from the GCMC / JAWS-1 simulation box
In addition, for JAWS-2 simulations the following files are created:
jaws2_watN.pdb
= the JAWS-2 watereach of the water given with the
--gcmc_water
flag will be written to an individual file
jaws2_notN.pdb
= the rest of the JAWS-2 waterwater_clr.pdb
= the cap of water solvating the protein system, cleared from the GCMC / JAWS-1 simulation box
It will create at most three ProtoMS command files, one for the protein simulation, one for the ligand simulation and one for the gas-phase simulation. These can be used to run ProtoMS, e.g.
$PROTOMS/protoms3 run_free.cmd
Prerequisites:
The program assumes that both the ligand and the protein is prepared before. This includes for instance protonation. At the moment only Amber naming convention is supported.
The progam requires AmberTools to make force field for small molecules.