DOCK/PIERR: ProteinProtein Docking

DOCK/PIERR model (yellow) superposed with crystal structure of complex 3asy (red) 
The DOCK/PIERR algorithm is a rigid proteinprotein docking algorithm that calculates the structure of a complex given the PDB structures of the unbound chains. Consider using our server here.
A brief description of the algorithm is given below.
Surfaces of the input proteins are calculated using MSMS and an exhaustive FFTbased grid search is performed for each complex. The scoring function in the FFT search is based on a residue contact potential learnt using SVMstyle framework to minimize false positive rates, along with an FFTbased approximation of OPLS van der waals energy.
The top scoring 524,288 FFTbased transformations for each complex are stored and clustered in rigid body space. Subsequently, the top scoring cluster centers are filtered for clashes, and clustered again using interface RMSD.
Refinement is performed on the top 1000 models from the previous step of rigid docking. First, side chains are reconstructed using SCWRL4 for interface residues. This is followed by a short invacuum energy minimization using OPLS force field in MOIL MD package. Refined models are reranked using a combination of residue and atomic potentials. The server uses the potential C3 mentioned in the Proteins (2013) paper.
Source code and executables for scoring functions
PISA (atomic potential)
Download the source code and Linux executables for calculating the atomic score, PISA, for a given PDB structure of a complex.
PIE (residue potential)
Download the source code and Linux executables for calculating the residue score, PIE, for a given PDB structure of a complex.
Note that PIE, unlike PISA and the hydrogen bond potential outputs a score instead of energy. That is, higher the PIE score, better the model.
Hydrogen bond potentials NEW!
Download the source code and Linux executables for calculating the interface hydrogen bond energy for a given PDB structure of a complex. Two sets of code/executables are available: one potential from Linear Programming and one from Neural Networks .
All potentials NEW!
Download the source code and Linux executables for PIE (residue potential), PISA (atomic potential), HBLP (hydrogen bond potential from Linear Programming) and HBNN(hydrogen bond potential from Neural Networks). Also included are scripts to calculate the combination energies, which are given by:
 C3 = 0.8 * PIE + 0.1 * PISA + PIE * PISA (C3 is the combination of atomic and residue potentials)
 C3_HBLP = C3 + 4.0 * HBLP (C3_HBLP is the combination of C3 with the hydrogen bond potential from Linear Programming)
 C3_HBNN = C3 + 3.3 * HBNN (C3_HBNN is the combination of C3 with the hydrogen bond potential from Neural Networks)
Membrane energy NEW!
Download the script for calculating membrane energy of a model in a lipid bilayer. This is based on the reference MacCallum, Benett and Tieleman, J. Gen Physiology, 2007.