You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/README.md
+231-11
Original file line number
Diff line number
Diff line change
@@ -78,13 +78,13 @@ We found reasonable those values for number of swarms and glowworms per swarm in
78
78
79
79
Below there is a description of the rest of accepted paramenters of `lightdock_setup`:
80
80
81
-
-**seed_points***STARTING_POINTS_SEED*: An integer can be specified as the seed used in the random number generator of the initial random poses of the ligand.
82
-
-**ft***ftdock_file*: LightDock can read the output of the venerable [FTDock](http://www.sbg.bio.ic.ac.uk/docking/ftdock.html) software in order to use the FTDock rigid-body predictions as the starting poses of the LightDock simulation. In order to do so, `lightdock_setup` classifies the different FTDock predictions according to its translation into the corresponding swarm over the surface of the receptor.
83
-
-**noxt**: If this option is enabled, LightDock ignores OXT atoms. This is useful for several scoring functions which don't understand this special type of atom.
84
-
-**anm**: If this option is enabled, the ANM mode is activated and backbone flexibility is modeled using ANM (via ProDy).
85
-
-**seed_anm***ANM_SEED*: An integer can be specified as the seed used in the random number generator of ANM normal modes extents.
86
-
-**anm_rec***ANM_REC*: The number of non-trivial normal modes calculated for the recepetor in the ANM mode.
87
-
-**anm_lig***ANM_LIG*: The number of non-trivial normal modes calculated for the ligand in the ANM mode.
81
+
-**--seed_points***STARTING_POINTS_SEED*: An integer can be specified as the seed used in the random number generator of the initial random poses of the ligand.
82
+
-**--ft***ftdock_file*: LightDock can read the output of the venerable [FTDock](http://www.sbg.bio.ic.ac.uk/docking/ftdock.html) software in order to use the FTDock rigid-body predictions as the starting poses of the LightDock simulation. In order to do so, `lightdock_setup` classifies the different FTDock predictions according to its translation into the corresponding swarm over the surface of the receptor.
83
+
-**--noxt**: If this option is enabled, LightDock ignores OXT atoms. This is useful for several scoring functions which don't understand this special type of atom.
84
+
-**--anm**: If this option is enabled, the ANM mode is activated and backbone flexibility is modeled using ANM (via ProDy).
85
+
-**--seed_anm***ANM_SEED*: An integer can be specified as the seed used in the random number generator of ANM normal modes extents.
86
+
-**--anm_rec***ANM_REC*: The number of non-trivial normal modes calculated for the recepetor in the ANM mode.
87
+
-**--anm_lig***ANM_LIG*: The number of non-trivial normal modes calculated for the ligand in the ANM mode.
88
88
89
89
### 2.1. Results of the setup
90
90
@@ -111,19 +111,239 @@ After the execution of `lightdock_setup` script, several files and directories w
111
111
112
112
## 3. Run a simulation
113
113
114
-
TBC
114
+
### 3.1. Parameters
115
+
116
+
In order to run a LightDock simulation, the `lightdock` script has to be executed. If the script is executed without arguments, a list of accepted options is displayed:
The simplest way to execute a LightDock simulation is:
127
+
128
+
```bash
129
+
lightdock setup.json 10
130
+
```
131
+
132
+
The first parameter is the configuration file generated on the setup step, the second is the number of steps of the simulation.
133
+
134
+
The rest of possible arguments which `lightdock` accepts is:
135
+
136
+
-**-f***configuration_file*: This is a special file containing the different parameters of the GSO algorithm. By default, this is not necessary to change, but advanced users might change some of the values. Here it is an example of the content of this file:
These are the parameters used in the LightDock publication, many of them inherited from the original GSO publication. Please refer to the [Kaipa, Krishnanand N. and Ghose, Debasish](https://www.springer.com/gp/book/9783319515946) for more details.
170
+
171
+
-**-s***SCORING_FUNCTION*: Probably one of the most important parameters of the simulation. The user is able to change the default scoring function (DFIRE) using this flag. A name of a scoring function or a file containing the name and weight of multiple scoring functions are accepted. See section 3.2 for a complete list of accepted scoring functions and how to combine them.
172
+
-**-c***CORES*: By default, LightDock makes use of the total number of available CPU cores on the hardware to run the simulation, but a different number of CPU cores can be specified via this option.
173
+
-**-mpi**: If this flag is activated, LightDock will make use of the MPI4py library in order to spread to diffeerent nodes.
174
+
-**--profile**: This is a experimental flag and it is intended for profiling computation time and memory used by LightDock.
175
+
-**-sg***GSO_SEED*: It is the integer used as a seed for the random number generator in charge of running the simulation. Different seeds will incur in different simulation outputs.
176
+
-**-t***TRANSLATION_STEP*: When the translation part of the optimization vector is interpolated, this parameter controls the interpolation point. By default is set to 0.5.
177
+
-**-r***ROTATION_STEP*: When the rotation part of the optimization vector is interpolated (using [quaternion SLERP](https://en.wikipedia.org/wiki/Slerp#Quaternion_Slerp)), this parameter controls the interpolation point. By default is set to 0.5.
178
+
-**-ns***NMODES_STEP*: When the ANM normal modes extent part of the optimization vector is interpolated, this parameter controls the interpolation point. By default is set to 0.5.
179
+
-**-min**: If this option is enabled, a local minimization of the best glowworm in terms of scoring is performed for each step, at each swarm. The algorithm used is the Powell ([fmin_powell](https://docs.scipy.org/doc/scipy-0.18.1/reference/generated/scipy.optimize.fmin_powell.html)) implementation from the scipy.optimize library.
180
+
-**-V**: displays the LightDock version.
181
+
182
+
183
+
### 3.2. Available scoring functions
184
+
185
+
The complete list of scoring functions implemented in LightDock is:
186
+
187
+
-`cpydock`: Implementation in C of the [pyDock](https://www.ncbi.nlm.nih.gov/pubmed/17444519) scoring function
188
+
-`dfire`: Implementation of the [DFIRE](https://www.ncbi.nlm.nih.gov/pubmed/15162489) scoring function in Cython.
189
+
-`fastdfire`: Implementation of the DFIRE scoring function using the Python C-API, faster than `dfire`.
190
+
-`dfire2`: Implementation of the [DFIRE2](https://www.ncbi.nlm.nih.gov/pubmed/18469178) scoring function using the Python C-API, despite a Cython version is also included for demonstrational purposes.
191
+
-`dna`: Implementation of the pyDockDNA scoring function (no desolvation) and custom Van der Waals weight for protein-DNA docking. Implemented using the Python C-API.
192
+
-`mj3h`: Pairwise contact energies for 20 types of residues, [Mj3h](https://www.ncbi.nlm.nih.gov/pubmed/10336383).
193
+
-`pisa`: A statistical potential from the [Improving ranking of models for protein complexes with side chain modeling and atomic potentials](https://onlinelibrary.wiley.com/doi/abs/10.1002/prot.24214) publication.
194
+
-`sd`: An electrostatics and Van der Waals based scoring function as described in the [SwarmDock publication](https://www.ncbi.nlm.nih.gov/pubmed/21152290), but using AMBER94 force-field charges and parameters.
195
+
-`sipper`: Intermolecular pairwise propensities of exposed residues, [SIPPER](https://www.ncbi.nlm.nih.gov/pubmed/21214199).
-`vdw`: A truncated Van der Waals (Lennard-Jones potential) as described in the original [pyDock](https://www.ncbi.nlm.nih.gov/pubmed/17444519) publication.
198
+
199
+
### 3.2.1. Multiple scoring functions
200
+
201
+
Several scoring functions can be used simultaneously by LightDock during the minimization. Each glowworm in the simulation will count on a model for each different scoring function, thus physical memory could be a limit on the number of simultaneous scoring functions.
202
+
203
+
A file containing the name of the scoring function and its weight can be defined as this example:
204
+
205
+
```bash
206
+
cat socring.conf
207
+
sipper 0.5
208
+
dfire 0.8
209
+
```
210
+
211
+
For each pose, the scoring would be in this example the linear combination of both functions:
212
+
213
+
```Scoring = 0.5*SIPPER + 0.8*DFIRE```
214
+
215
+
216
+
### 3.3. Tips and tricks
217
+
218
+
- All the available scoring fundtions can be found at the path `$LIGHTDOCK_HOME/lightdock/scoring`. Each scoring function has its own directory.
219
+
115
220
116
221
117
222
## 4. Generate models
118
223
119
-
TBC
224
+
Once the simulation has completed, the predicted models can be generated as PDB structure files. In order to do so, execute the `lgd_generate_conformations.py` command:
225
+
226
+
```bash
227
+
lgd_generate_conformations.py
228
+
usage: conformer_conformations [-h]
229
+
receptor_structure ligand_structure
230
+
lightdock_output glowworms
231
+
conformer_conformations: error: too few arguments
232
+
```
233
+
234
+
For example, to generate the 10 models predicted in the step 5 in a swarm populated by 10 glowworms of the 2UUY example:
**IMPORTANT:** note that the structures used by this command are the originals used in the `lightdock_setup` command.
121
243
122
244
## 5. Clustering
123
245
124
-
TBC
246
+
There are two different methods for clustering the predicted models implemented: *BSAS* and *hierarchical*. At the moment, *hierarchical* is deprecated and the *BSAS* method is the preferred one.
125
247
248
+
For each swarm, you can execute the `lgd_cluster_bsas.py` command. For example:
New scoring functions can be added to the LightDock framework. Every different scoring function called by `lighdock` using the `-s` flag represents a directory in the `$LGITHDOCK_HOME/lightdock/scoring` path.
346
+
347
+
There is a template available to use as a skeleton in the `$LGITHDOCK_HOME/lightdock/scoring/template` directory.
348
+
349
+
This section will be completed with more details in the future. In the meantime, you can look to the implementation of the different scoring functions already coded in the framework.
0 commit comments