This Protein-Protein docking method was developped for the Meet-U competition. A sampling method was selected from one of the participating sampling teams, while we developped our own scoring method, using the followings:
- Checking for shape complementarity and steric clashes.
- Knowledge based scoring on amino-acids interactions.
- Electrostatic and Van der Waals interactions scoring.
- Adjusting the weights of the different scoring functions by machine learning.
1- download the latest release of MeetDock here
unzip 2017-2018_Equipe1-*
cd 2017-2018_Equipe1-*
To ensure the cross-platform reproducibility of this method, we choose to work with a conda environment.
The environment file is available here as environment.yml.
conda env create -f environment.yml
source activate meetu
The default method to compute the solvant accessible surface is msms.
However, it is really slow and will not work for big complexes, but it will run out of the box and is included in MeetDockOne.
To solve this issue, it is also possible to run MeetDockOne with Naccess (see Documentation section of this readme), a faster and more reliable method.
To do so, you will first need to install Naccess yourself.
The compilation of Naccess requires a Fortran compiler.
Ubuntu/Debian Linux
sudo apt-get install gfortran
csh lib/NACCESS/install.scr
cp lib/NACCESS/* /usr/local/bin
OS X
- Download and install the fortran compiler for your system here
csh lib/NACCESS/macinstall.scr
cp lib/NACCESS/* /usr/local/bin
There are two programs you can use from the root directory of the project
meetdockAZ
: meetdockAZ is our full program that includes the work of team sampling n°6 and our scoring.
meetdockAZ is our full implementation from sampling to scoring.
Just type
(meetu)$ python meetdockAZ.py
The program will then ask you if you want to run a demo on a preconfigured ligand+receptor (without minimizer) and very little amount of ligand rotations
If you say no, then it will ask you to manually specify your inputs (receptor, chain, outputdir, minimizer, nb of rotations)
- By default, output is in ./out/
(meetu)$ ./meetdock path/to/meetdock/data -recChain A -ligChain B -shape -electro -jones -proba
- The dictory
path/to/meetdockone/data
contains pdb complexes to score. - The receptor is Chain A (
-recChain A
). - The ligand is Chain B (
-LigChain B
). - The following methods will be computed on the complexes :
- shape complementarity (
-shape
) - electrostatic energy (``-electro`)
- Leenard-Jones interactions (
-jones
) - A knowledge based scoring function (
-proba
)
- shape complementarity (
MeetDockOne_results.csv
: a .csv file summarizing your results, sorted by decreasing predicted Tm score.- pdb: name of the pdb file
- electrostatic: Electrostatic energy
- shape: Shape complementarity, similar to Chen et al.
- vdw: Van der Waals interactions
- tm_score_prediction: Predicted Tm score with our Machine learning model
- interpretations: Tm score > 0.8 Excellent || 0.8 > Tm score >= 0.6 Moyen || 0.6 > Tm score >= 0.4 Passable || 0.4 > Tm score mauvais
Example:
pdb | electro | shape | statpot | vdw | tm_score_prediction | interpretations |
---|---|---|---|---|---|---|
4LW4.pdb | 1,2875610561314053e-25 | -15964,0 | 26,619999999999997 | -210,20280214660673 | 0,5681633333333332 | passable |
2za4.pdb | 1,5077200870763863e-25 | -1982,0 | 29,1 | 21,831874052394138 | 0,5578466666666666 | passable |
4H03.pdb | -3,2388259307234537e-26 | -3307,0 | 19,75 | 27,762327090226467 | 0,5353899999999999 | passable |
2IDO.pdb | -0,0 | -4082,0 | 14,41 | -81,43243931391687 | 0,52383 | passable |
MeetDockOne_results.png
: a plot of the different scores distributions
Example:
(meetu)$ ./meetdock -h
usage: meetdock [-h] [-shape] [-electro] [-jones] [-proba] [-outdir OUTDIR]
[-recChain RECCHAIN] [-ligChain LIGCHAIN] [-depth DEPTH]
[-pH PH] [-dist DIST] [-thread THREAD]
pdbpath
MeetDockOne scores a protein complex docking
positional arguments:
pdbpath absolute path to pdb complex directory. Each pdb file
must contain the receptor and the ligand as separated
chains.
optional arguments:
-h, --help show this help message and exit
-shape compute shape complementarity
-electro compute Electrostatic interactions
-jones compute Lennard-Jones interactions
-proba Compute knowledge based interactions
-outdir OUTDIR path to (existing) output directory
-recChain RECCHAIN receptor Chain ID. If there more than one, separate by a
','. Default = 'A'
-ligChain LIGCHAIN ligand Chain ID. If there more than one, separate by a
','. Default = 'B'
-depth DEPTH Method for residue depth/solvant accessibility. [msms |
naccess]. Default = msms
-pH PH pH for electrostatic interactions. Default = 7
-dist DIST Threshold for interface determination (Angstrom).
Default = 8.5
-thread THREAD Number of threads for MultiThreading. Default: automatic
detection