Skip to content

Commit 1182287

Browse files
Added: PPM option, Examples
1 parent c36594e commit 1182287

23 files changed

+122962
-166
lines changed

Diff for: README.md

+150-141
Original file line numberDiff line numberDiff line change
@@ -1,141 +1,150 @@
1-
PyModSim Version 1.0
2-
================================================================================
3-
4-
PyModSim is a standalone *Python* package to create protein homology models from
5-
a sequence using **AlphaFold**, refine protein models using **MODELLER**, and
6-
standardize the orientation of protein models using **PPM**.
7-
8-
**PyModSim** is hosted in GitHub at:
9-
10-
<https://github.com/rlvandenbroek/pymodsim>
11-
12-
You can download any version of **PyModSim** by cloning the repository to your
13-
local machine using git.
14-
15-
You will need to create a free personal account at github and send
16-
and e-mail to: [r.l.van.den.broek@umail.leidenuniv.nl](r.l.van.den.broek@umail.leidenuniv.nl)
17-
requesting access to the code. After request processing from us you will be
18-
given access to the free repository.
19-
20-
To install **PyModSim** follow these steps:
21-
22-
0. Install/prepare all **PyModSim** dependencies:
23-
24-
Python 3.X (extensively tested on Python 3.10)
25-
Python modules:
26-
- modeller 10.2 - (https://salilab.org/modeller/release.html)
27-
AlphaFold 2.0 - (https://github.com/deepmind/alphafold)
28-
PPM 3.0 - (https://console.cloud.google.com/storage/browser/opm-assets/ppm3_code)
29-
30-
1. Clone **PyModSim** for Python 3.X with the *modeller* module:
31-
32-
git clone https://username@github.com/rlvandenbroek/pymodsim.git
33-
34-
Make sure to change *username* to the one you have created at
35-
github.
36-
37-
2. The previous command will create a *pymodsim* directory. Now you
38-
have to tell your operating system how to find that folder. You
39-
achieve this by declaring the location of the directory in a .bashrc
40-
file .cshrc or .zshrc file in your home folder. An example of what you will
41-
have to include in your .bashrc file follows:
42-
43-
export PYMODSIM=/home/username/software/pymodsim
44-
export PATH=$PYMODSIM:$PATH
45-
46-
or if your shell is csh then in your .cshrc file you can add:
47-
48-
setenv PYMODSIM /home/username/software/pymodsim
49-
set path = ($path $PYMODSIM)
50-
51-
Notice that I have cloned *pymodsim* in the software folder in my
52-
home folder, you will have to adapt this to wherever it is that you
53-
downloaded your *pymodsim* to.
54-
55-
After including the route to your *pymodsim* directory in your
56-
.bashrc file make sure to issue the command:
57-
58-
source .bashrc
59-
60-
or open a new terminal.
61-
62-
To check if you have defined the route to the *pymodsim* directory
63-
correctly try to run the main program called pymodsim in a terminal:
64-
65-
pymodsim -h
66-
67-
You should obtain the following help output:
68-
69-
usage: pymodsim [-h] [-v] [-n NSTEP] [-s SEQUENCE] [-p PDB] [-N NTERM] [-C CTERM] [-l LOOP] [-f LOOP_FILL]
70-
[-t TOPOLOGY]
71-
72-
== Create prepared homology models given a sequence. ==
73-
74-
options:
75-
-h, --help show this help message and exit
76-
-v, --version show program's version number and exit
77-
-n NSTEP, --nstep NSTEP
78-
PyModSim steps you wish to execute. This allowes you modify the model preparation steps -
79-
see documentation Options: (0) Full, (1) Homology|AlphaFold, (2) ModPrep|MODELLER, (3)
80-
Orientation|PPM
81-
-s SEQUENCE, --seq SEQUENCE
82-
Name of the sequence for which to create an homology model. -s is only required if -n = 0,
83-
1 or 2. Use the fasta extension. (example: -s myseq.fasta)
84-
-p PDB, --pdb PDB Name of the protein to process. -p is only required if -n = 2 or 3. Use the pdb extension.
85-
(example: -p myprot.pdb)
86-
-N NTERM, --Nterm NTERM
87-
Residue number at which to cut the N-terminus. Note: the chain up AND including the given
88-
residue will be removed. -N is only used if -n = 2. If you wish to use the default cutoff,
89-
don't specify -N. If you wish not to cut the N-term: set -N = 0
90-
-C CTERM, --Cterm CTERM
91-
Residue number at which to cut the C-terminus. Note: the chain from AND including the given
92-
residue will be removed. -C is only used if -n = 2. If you wish to use the default cutoff,
93-
don't specify -C. If you wish not to cut the C-term: set -C = 0
94-
-l LOOP, --loop LOOP Residue numbers at which to cut loop(s). Define the first and last residue of the loop you
95-
wish to cut ('-' delimited) If there are multiple loops to cut, delimit the loop cuts with
96-
a ',' (example: -l 101-131,230-250). If you do not with to cut any loops: set -l = 0
97-
-f LOOP_FILL, --loop_fill LOOP_FILL
98-
Amount of Å per AA to fill cut loops. The total distance is calculated from the coordinates
99-
of the remaining residues. The AA contour length is 3.4-4.0 Å, To allow for flexibility in
100-
the loop, 2.0 Å/AA (default) is suggested. (example: -f 2.0)
101-
-t TOPOLOGY, --topology TOPOLOGY
102-
Indicate the topology of the N-term within the protein structure. 'out': extracellular
103-
N-term (default), 'in': intracellular N-term.
104-
105-
3. Updates are very easy thanks to the git versioning system. Once
106-
**PyModSim** has been downloaded (cloned) into its own *pymodsim* folder
107-
you just have to move to it and pull the newest changes:
108-
109-
cd /home/username/software/pymodsim
110-
git pull
111-
112-
5. To make sure that your AlphaFold and PPM installation is understood by
113-
**PyModSim** you will need to specify the path to where the sofware is
114-
installed in your system. To do this you will need to edit the
115-
settings.py file with any text editor (“vi” and “emacs” are common
116-
options in the unix environment). Make sure that only one line is
117-
uncommented, looking like: PPM_PATH = /apps/PPM_3.0 Provided that in
118-
your case PPM is installed in /apps. The program
119-
will prepend this line to the binaries names, so calling
120-
“/apps/PPM_3.0/immers should point to that binary.
121-
122-
123-
### Auxiliary Modules
124-
125-
- **recipes.py**. Applies step by step instructions for carrying a
126-
modeling step.
127-
- **broker.py**. Proxy for printing messages
128-
- **settings.py**. This modules sets up the main environment variables needed
129-
to run the calculation, for example, the path to the AlphaFold and PPM binaries.
130-
131-
132-
### Execution Modules
133-
134-
- **commands.py**. Defines the Commands and Wrapper objects. Commands will
135-
load the objects, recipes, and run them. Wrapper is a proxy for the
136-
commands. When a recipe entry is sent to it this returns the command to be run.
137-
- **modprep.py**. Runs commands using the *modeller* module.
138-
139-
### Executable
140-
141-
- **pymodsim** The main program to call which sends the run to a cluster.
1+
PyModSim Version 1.0
2+
================================================================================
3+
4+
PyModSim is a standalone *Python* package to create protein homology models from
5+
a sequence using **AlphaFold**, refine protein models using **MODELLER**, and
6+
standardize the orientation of protein models using **PPM**.
7+
8+
**PyModSim** is hosted in GitHub at:
9+
10+
<https://github.com/rlvandenbroek/pymodsim>
11+
12+
You can download any version of **PyModSim** by cloning the repository to your
13+
local machine using git.
14+
15+
You will need to create a free personal account at github and send
16+
and e-mail to: [r.l.van.den.broek@umail.leidenuniv.nl](r.l.van.den.broek@umail.leidenuniv.nl)
17+
requesting access to the code. After request processing from us you will be
18+
given access to the free repository.
19+
20+
To install **PyModSim** follow these steps:
21+
22+
0. Install/prepare all **PyModSim** dependencies:
23+
24+
Python 3.X (extensively tested on Python 3.10)
25+
Python modules:
26+
- modeller 10.2 (https://salilab.org/modeller/release.html)
27+
AlphaFold 2.0 - (https://github.com/deepmind/alphafold)
28+
PPM 3.0 - (https://console.cloud.google.com/storage/browser/opm-assets/ppm3_code)
29+
30+
1. Clone **PyModSim** for Python 3.X with the *modeller* module:
31+
32+
git clone https://username@github.com/rlvandenbroek/pymodsim.git
33+
34+
Make sure to change *username* to the one you have created at
35+
github.
36+
37+
2. The previous command will create a *pymodsim* directory. Now you
38+
have to tell your operating system how to find that folder. You
39+
achieve this by declaring the location of the directory in a .bashrc
40+
file .cshrc or .zshrc file in your home folder. An example of what you will
41+
have to include in your .bashrc file follows:
42+
43+
export PYMODSIM=/home/username/software/pymodsim
44+
export PATH=$PYMODSIM:$PATH
45+
46+
or if your shell is csh then in your .cshrc file you can add:
47+
48+
setenv PYMODSIM /home/username/software/pymodsim
49+
set path = ($path $PYMODSIM)
50+
51+
Notice that I have cloned *pymodsim* in the software folder in my
52+
home folder, you will have to adapt this to wherever it is that you
53+
downloaded your *pymodsim* to.
54+
55+
After including the route to your *pymodsim* directory in your
56+
.bashrc file make sure to issue the command:
57+
58+
source .bashrc
59+
60+
or open a new terminal.
61+
62+
To check if you have defined the route to the *pymodsim* directory
63+
correctly try to run the main program called pymodsim in a terminal:
64+
65+
pymodsim -h
66+
67+
You should obtain the following help output:
68+
69+
usage: pymodsim [-h] [-v] [-n NSTEP] [-s SEQUENCE] [-p PDB] [-N NTERM] [-C CTERM] [-l LOOP]
70+
[-f LOOP_FILL] [-t TOPOLOGY] [-c CHAIN]
71+
72+
== Create prepared homology models given a sequence. ==
73+
74+
options:
75+
-h, --help show this help message and exit
76+
-v, --version show program's version number and exit
77+
-n NSTEP, --nstep NSTEP
78+
PyModSim steps you wish to execute. This allowes you modify the
79+
model preparation steps - see documentation Options: (0) Full, (1)
80+
Homology|AlphaFold, (2) ModPrep|MODELLER, (3) Orientation|PPM, and
81+
(23) ModPrep+Orientation
82+
-s SEQUENCE, --seq SEQUENCE
83+
Name of the sequence for which to create an homology model. -s is
84+
only required if -n = 0, 1 or 2. Use the fasta extension. (example:
85+
-s myseq.fasta)
86+
-p PDB, --pdb PDB Name of the protein to process. -p is only required if -n = 2 or 3.
87+
Use the pdb extension. (example: -p myprot.pdb)
88+
-N NTERM, --Nterm NTERM
89+
Residue number at which to cut the N-terminus. Note: the chain up
90+
AND including the given residue will be removed. -N is only used if
91+
-n = 2. If you wish to use the default cutoff, don't specify -N. If
92+
you wish not to cut the N-term: set -N = 0
93+
-C CTERM, --Cterm CTERM
94+
Residue number at which to cut the C-terminus. Note: the chain from
95+
AND including the given residue will be removed. -C is only used if
96+
-n = 2. If you wish to use the default cutoff, don't specify -C. If
97+
you wish not to cut the C-term: set -C = 0
98+
-l LOOP, --loop LOOP Residue numbers at which to cut loop(s). Define the first and last
99+
residue of the loop you wish to cut ('-' delimited) If there are
100+
multiple loops to cut, delimit the loop cuts with a ',' (example: -l
101+
101-131,230-250). If you do not with to cut any loops: set -l = 0
102+
-f LOOP_FILL, --loop_fill LOOP_FILL
103+
Amount of Å per AA to fill cut loops. The total distance is
104+
calculated from the coordinates of the remaining residues. The AA
105+
contour length is 3.4-4.0 Å, To allow for flexibility in the loop,
106+
2.0 Å/AA (default) is suggested. (example: -f 2.0)
107+
-t TOPOLOGY, --topology TOPOLOGY
108+
Indicate the topology of the N-term within the protein structure.
109+
'out': extracellular N-term (default), 'in': intracellular N-term.
110+
-c CHAIN, --chain CHAIN
111+
Only use if -n = 3 (i.e. only PPM). If more than 1 chain, add a
112+
comma-seperated list of the chain identifiers. (example: -c A,B,C)
113+
114+
3. Updates are very easy thanks to the git versioning system. Once
115+
**PyModSim** has been downloaded (cloned) into its own *pymodsim* folder
116+
you just have to move to it and pull the newest changes:
117+
118+
cd /home/username/software/pymodsim
119+
git pull
120+
121+
5. To make sure that your AlphaFold and PPM installation is understood by
122+
**PyModSim** you will need to specify the path to where the sofware is
123+
installed in your system. To do this you will need to edit the
124+
settings.py file with any text editor (“vi” and “emacs” are common
125+
options in the unix environment). Make sure that only one line is
126+
uncommented, looking like: PPM_PATH = /apps/PPM_3.0 Provided that in
127+
your case PPM is installed in /apps. The program
128+
will prepend this line to the binaries names, so calling
129+
“/apps/PPM_3.0/immers should point to that binary.
130+
131+
132+
### Auxiliary Modules
133+
134+
- **recipes.py**. Applies step by step instructions for carrying a
135+
modeling step.
136+
- **broker.py**. Proxy for printing messages
137+
- **settings.py**. This modules sets up the main environment variables needed
138+
to run the calculation, for example, the path to the AlphaFold and PPM binaries.
139+
140+
141+
### Execution Modules
142+
143+
- **commands.py**. Defines the Commands and Wrapper objects. Commands will
144+
load the objects, recipes, and run them. Wrapper is a proxy for the
145+
commands. When a recipe entry is sent to it this returns the command to be run.
146+
- **modprep.py**. Runs commands using the *modeller* module.
147+
148+
### Executable
149+
150+
- **pymodsim** The main program to call which sends the run to a cluster.

0 commit comments

Comments
 (0)