SBG

FRODOCK - "Fast Rotational DOCKing tool"

This tool performs an exhaustive 6D docking between two protein structures. This approximation is able to generates very efficiently many potential predictions of how these two proteins could interact. Although, this is an initial stage exhaustive docking a hence a second refinement or scoring stages is expected, the excellent accuracy results obtained with standard benchmarks permit its usage directly as a first protein-protein docking approach. Since it is a rigid-body approximation, this is valid only when reduced conformational changes upon binding are expected.


FRODOCK: a new approach for fast rotational protein-protein docking JI Garzon, JR Lopéz-Blanco, C. Pons, J. Kovacs, R. Abagyan, J. Fernandez-Recio, P. Chacon. Bioinformatics. 25(19):p. 2544-2551

 

Here we give a brief overview of the necessary commands to run FRODOCK, but we strongly encourage to follow the tutorials. Right now, there are four different executables:

    • frodockgrid to pre-calculate the protein potential maps.
    • frodock to perform the protein protein docking 6D exhaustive search.
    • frodockcluster  for clustering frodock's raw predictions.
    • frodockview for displaying solutions and creating pdb solutions.

This user guide describes the usage of these FRODOCK components.

FRODOCKGRID - precomputing potential maps


To create the potential maps that will be used for scoring during the docking process, enter the following command at the prompt:

frodockgrid <pdb>   -m <int>

where:

pdb The initial model structure to be fitted (PDB format)
−m <int> Type map to generate:
  • 0: [default] van der Waals potential map.
  • 1: Electrostatic potential map.
  • 2: Charge projection map.
  • 3: Desolvation potential + PDB file with ASA in Occupancy column + ASA projection map.

    Basic Options


    In this section, the basic options to customize the potential maps are detailed. Just add them after the minimum command shown above.

    −o <string> Volume output filename (default: frodockgrid.ccp4).
    −−gs <float> Volume output grid size in amstrongs (default: 1.0).
    −t <float> Absolute threshold limit for the electrostatic potential values. To be used only when -m=1 (default: no threshold)
    −−pr <float> Probe radius in amstrongs. To be used only when -m={0,4} (default: 1.4).
    −h Displays usage information and exits.

    Advanced options


    Only for real expert users!

    −−hyd Consider hydrogen in the creation of the potential map.
    −−fp <int> Forcefield parameters:
    • 0: [default] CHARMM
    • 1: ICM
    −−an <int> Atom name convention:
    • 0: [default] IUPAC
    • 1: PDB


FRODOCK - Docking process


To perform a basic shape (van de Waals) docking enter the following command at the prompt:
frodock <recept_pdb> <ligand_pdb> --E 0

Alternatively, by removing the --E flag the electrostaics can be considered. You could include the vdW and electrostatics precalculated maps using -w and -e <string> options, respectively. These simple docking alternatives can be useful as a first aproximation.The recommended option is include vdw, electrostatic and desolvation terms, i.e.:

frodock rec_ASA.pdb lig_ASA.pdb âˆ’d lig_sol.cpp4,rec_sol.cpp4  

It is madatory that ligand and receptor pdb input files inlude the atom ASA values in the Occupancy column. These files are standard output of frodockgrid, please do not forget to use them instead of the original ones. Exploiting pre-calculations to gain efficiency, an equivalent command line will be:

frodock rec_ASA.pdb lig_ASA.pdb  −w rec_vdw.cpp4 −e rec_ele.cpp4 −d lig_solv.cpp4,rec_solv.cpp4 


where:

<recept_pdb> The receptor structure PDB.
<ligand_pdb> The ligand structure PDB (the smallest one recommended).
−w <string> vdW receptor potential file (default: Created from receptor pdb file).
−e <string> Electrostatic receptor map
−−E <float> Electrostatic term weight (default: 0.3)
−d <string> Desolvation potential maps for receptor and ligand (syntax: -d receptor_map.ccp4,ligand_map.ccp4).
−−D <float> Desolvation term weight (default: 0.5)

    Basic Options


    In this section, the basic options to customize the docking process are detailed.

    −o <string> Solutions output filename (default: frodock_output.dat).
    −−bw <float> Bandwidth in spherical harmonic representation. Define rotational stepsize (default: 32. Rotational stepsize ~6°)
    −−lmax <float> External Mask reduction ratio. (default: 0.23)
    −−lmin <float> Internal Mask reduction ratio. (default: 0.43)
    −−th <float> Electrostatic map threshold. (default: 10.0)
    −−lw <float> Width between spherical layers in amstrongs. (default: 1.0)
    −−st <float> Translational search stepsize in amstrongs. (default: 2.0)
    −h Displays usage information and exits.

    Advanced options


    Only for real expert users!

    −−np <int> Number of solutions stored per traslational position. (default: 4)
    −−rd <float> Minimal rotational distance allowed between close solutions in degrees. (default: 12.0)
    −−nt <int> Number of solutions stored in the search. (default: unlimited)
    −−td <float> Maximal translational distance to consider close solutions in grid units. (default: 0)
    −a<string> Receptor and ligand ASA maps (default: created from receptor and ligand pdb files if Desolvation potential used. Syntax: -a asa_receptor,asa_ligand).
    −−around <string> translational search restricted to a region around a point defined in "x,y,z" format.
    −−nover Show no messages.  


FRODOCKCLUSTER - Sort and cluster frodock output file


To sort and cluster the docking solutions, enter the following command at the prompt:

frodockcluster <data> <pdb


where:

<data> Frodock solutions data filename. (required)
<pdb> Ligand pdb filename. (required

    −o <string> Clustered solution output Frodock filename (default: frodockcluster.dat)
    −d <float> RMSD distance between clusters (default: 5.0).
    −n <int> Maximum number of clusters to generate (default: unlimited).
    −h Displays usage information and exits.

    Only for real expert users!

    −−ns <int> Limit the number of solutions employed (default all the solutions are used)
    −e Input solution file is a evaluated Frodock file.
    −s The solutions in input file are sorted by correlation (Skip sort operation).
    −c <float> Ratio of maximal correlation used to define correlation interval in clusters (default: 1.0).


FRODOCKVIEW - Show and create pdb solutions


To show docking solutions and create resulting PDBs, enter the following command at the prompt:

frodockview <input>

where:

<input> Frodock solutions input filename (required)

    −r <string> Range of solutions showed (default: all solutions).
    −p <string> Generate pdb files applying solutions coordinates showed over Ligand pdb file (default: No files created
    −−size Show the total number of solution in file.
    −e Input file is a Frodock evaluated file.
    −h Displays usage information and exits.


The FRODOCK Tutorial is a practical guide for researchers who want to perform protein-protein docking using the FRODOCK docking tool.

We included some working examples with simple instructions:

In the Download tab can be found a tar.gz archive containing the necessary binaries and example files to complete the tutorial. Please uncompress and untar the archive and go to the examples directory.

1) Step by step easy protein protein docking


To illustrate the procedure it is performed a HyHel-5/lysozyme bound-bound docking case. The receptor (3hfl_fv.pdb, green) and the ligand (3hfl_ly_ref.pdb, red on the right) coordinates were extracted from 3hfl pdb entry of the Protein Data Bank. The ligand molecule was rotated randomly (3hfl_ly2.pdb, red on the left)to avoid pre-aligment situations.

FRODOCK ==>

The docking process will be carried out in three consecutive steps:

--------------- STEP 1. Check PDB input files ---------------

Firstly, the input coordinates of both ligand and receptor should conform to PDB format. Be aware of missing atoms, alternative conformations, bad place atoms and a long etc. that can eventually jeopardize your results. Use your favorite PDB checker to anticipate and fix any PDB error. We typically employ Molprobity (online), pdb2pqr (e.g. pdb2pqr file.pdb --ff=CHARMM ), profix from Jackal package or a combination of them.

--------------- STEP 2. Potential map generation ---------------

All necessary potential maps must be pre-computed using FRODOCKGRID. Although vdw and electrostatics maps could be computed on the fly during the docking search, it is recommendable to create the maps beforehand in order to visualize them and check that they are consistent with the original structure. The precomputation of desolvation potential maps for receptor and ligand is always required.

Creation of receptor vdw potential map:

> ../bin/frodockgrid 3hfl_fv.pdb -o 3hfl_fv_W.ccp4

Name convention: iupac
Force Field: CHARMM
Grid voxel: 1.0
With hydrogens: no
Option: vdw potential. Probe radius: 2.0
			      

Creation of the receptor electrostatic potential map:

> ../bin/frodockgrid 3hfl_fv.pdb -o 3hfl_fv_E.ccp4 -m 1

Name convention: iupac
Force Field: CHARMM
Grid voxel: 1.0
With hydrogens: no
Option: Electrostatic potential.
			      

Creation of the receptor desolvation potential map:

> ../bin/frodockgrid 3hfl_fv.pdb -o 3hfl_fv_DS.ccp4 -m 3

Name convention: iupac
Force Field: CHARMM
Grid voxel: 1.0
With hydrogens: no
Option: Desolvation potential.
        Radius -> Water: 1.400000 - Generic atom probe: 1.950000
 Area:   10102.59703 Spheres num:  1661
ASA pdb file 3hfl_fv_ASA.pdb created (ASA introduced in Occupancy column)
Computing Map..
ASA computations: 620259 ASA computations skipped: 344332
			      

Also notice that, together with the desolvation potential map 3hfl_fv_desol.ccp4, this command creates a version of 3hfl_fv.pdb called 3hfl_fv_ASA.pdb that stores atom ASA values in the occupancy column. This pdb file MUST be used when desolvation term is employed in the docking process.

You can check the appearance of the generated receptor potential maps with a viewer that suppots ccp4 or situs. As an example, next it is shown from left to right and from top to bottom: the receptor structure, and van der Waals, electrostatic, and desolvation maps. All of them were represented in the same pose using blue color for negative and red for positive potentials. For better display arbitrary visualization thresholds were used.

Creation of the ligand desolvation potential map:

> ../bin/frodockgrid 3hfl_ly2.pdb -o 3hfl_ly2_DS.ccp4 -m 3

Name convention: iupac
Force Field: CHARMM
Grid voxel: 1.0
With hydrogens: no
Option: Desolvation potential.
        Radius -> Water: 1.400000 - Generic atom probe: 1.950000
 Area:   6339.83754 Spheres num:  1001
ASA pdb file 3hfl_ly2_ASA.pdb created (ASA introduced in Occupancy column)
Computing Map..
ASA computations: 385533 ASA computations skipped: 210271
			      

To consider desolvation in the docking process desolvation potentials for both receptor and ligand must be provided. As the receptor desolvation case, the command creates also a pdb file 3hfl_ly2_ASA.pdb with ASA values that MUST employed in the docking process.

As it prevoius case, you can check the appearance of the generated ligand desolvation potential map (see below) The same convention as above was employed.

--------------- STEP 3. Perform the exhaustive docking search ---------------

Once the potential maps were generated, you are ready to perform the docking. To this end, use the the following command performs to include all the potentials (van der Waals, Electrostatic and desolvation):

> ../bin/frodock 3hfl_fv_ASA.pdb 3hfl_ly2_ASA.pdb -w 3hfl_fv_W.ccp4 -e 3hfl_fv_E.ccp4 --th 10 -d 3hfl_fv_DS.ccp4,3hfl_ly2_DS.ccp4 -o dock.dat

dock.dat is a binary file which stores all the docking solutions (ligand orientations and positions). Here it is the screen output:


			      
Reading receptor PDB
        * Receptor accessibility read from receptor PDB. 
	           Checking ASA in Occupancy column...
      		  - Ok. Occupancy column seems to show ASA values
        * Creating Accessibility map from receptor PDB...
        * Accessibility map created from receptor PDB
        * OK
Receptor VDW map information:
        * Receptor VDW map read from file
        * Map origin: -33.141129 -39.668289 -12.076756
        * Map size: 89 81 75
Receptor electrostatic map information:
	        * Receptor electrostatic map read from file
        * Map modification. Threshold applied: 10.000000
        * Map origin: -33.141129 -39.668289 -12.076756
        * Map size: 89 81 75
Receptor desolvation map information:
		* Receptor electrostatic map read from file
	* Map origin: -24.141129 -30.668287 -3.076756
		* Map size: 71 63 57
Reading ligand pdb
		* Ligand center: 39.044571 33.064610 11.924802
		* Ligand accessibility read from Ligand PDB. 
		             Checking ASA in Occupancy column...
        		- Ok. Occupancy column seems to show ASA values
		* Ligand desolvation map read from file
Spherical radius
		* Receptor vdw radius in A: 71.0 (71 layers)
		* Ligand radius in A: 25.0 (26 layers)
		* Ligand electrostatic radius in A: 25.01 (26 layers)
		* Ligand accessibility radius in A: 25.01 (26 layers)
		* Ligand desolvation radius in A: 30.01 (31  layers)
		* Maximum ligand desolvation radius in A: 30.01 (31 layers)
Precomputation of spherical representation of ligand
Precomputation Fixed time: 35.690000 s
Determination of translational points to explore
		* Mask created
		* Number of points to explore: 20356
Translational search init...
Writing solutions.


			      

Note for advanced users: Note that the van der Waals potential term cannot be disabled; if it is not given as input, it will be automatically computed and used. In order to avoid the use of the electrostatic potential −−E option must be set to 0.0. To avoid the use of desolvation and ASA projection maps, just don't introduce them, they will not be used.

--------------- STEP 4. Clustering and visualization of predictions ---------------

Once the docking process has been performed it is possible to sort and cluster the solutions by their RMSD values. To this end:

> ../bin/frodockcluster dock.dat 3hfl_ly2.pdb --nc 100 -o clust_dock.dat

This way a new solution file containing only 100 solutions is created. Each of these solutions represents the best element of the first 100 clusters created. The RMSD default value used in the clusterization is 5Å.

Sort process...
Maximum correlation: 1358.838623
Clustering process...
			      

To visualize the 10th first solutions:

> ../bin/frodockview clust_dock.dat -r 1-10

 

1  86.00  158.32  201.22    19.36    6.83   55.42    1358.838623
2 244.84   55.48  123.03    13.36    2.83   51.42    1340.130737
3 194.98   99.53  265.76    -6.64   14.83    9.42    1330.710205
4 314.93   81.77  144.80     5.36    2.83   51.42    1314.066895
5 307.26  142.28   57.47     7.36    6.83   51.42    1297.044067
6 350.56   90.12  270.97    -0.64   20.83   15.42    1283.855347
7 243.60   82.73   26.85    11.36    2.83   57.42    1268.409302
8 312.63  125.93   92.46     5.36   10.83   49.42    1267.099365
9 273.10  101.75   35.90     3.36    4.83   55.42    1237.271973
10 149.50  105.01  199.21    -0.64   18.83   11.42    1224.975708
                              

Eeach line has the format:
rank Euler1 Euler2 Euler3 posX posY PosZ correlation

where rank indicates the position of the solution, {Euler1,Euler2,Euler3} are the Euler angle rotation (in ZYZ convention) and {posX ,posY ,PosZ} is the X,Y,Z localization respect the center of mass of the ligand pdb (only C-alpha are used to center). Finally, the correlation is the absolute energy score obtained.

Coordinate generation of the predicted solutions:

> ../bin/frodockview clust_dock.dat -r 1-5 -p 3hfl_ly2.pdb

 

1  86.00  158.32  201.22    19.36    6.83   55.42    1358.838623 => 3hfl_ly2_1.pdb
2 244.84   55.48  123.03    13.36    2.83   51.42    1340.130737 => 3hfl_ly2_2.pdb
3 194.98   99.53  265.76    -6.64   14.83    9.42    1330.710205 => 3hfl_ly2_3.pdb
4 314.93   81.77  144.80     5.36    2.83   51.42    1314.066895 => 3hfl_ly2_4.pdb
5 307.26  142.28   57.47     7.36    6.83   51.42    1297.044067 => 3hfl_ly2_5.pdb
                              

with this command the ligand pdb is rotated and translated using to generate the first 5 predictions. For each prediction a pdb file is created. In this case, the first prediction (3hfl_ly2_1.pdb) shows to be very similar to the real solution (3hfl_ly2_ref.pdb).


2) Using unbound ligand pdb in docking


In this case, instead of using the ligand bound structure obtained from the complex, it is employed an unbound ligand structure (PDB entry 1lza). Being an unbound structure, it presents conformational changes that makes more difficult predict the correct position.

FRODOCK ==>

 

The steps to follow are very similar to the ones performed in the previous tutorial:

--------------- STEP 2. Potential map generation ---------------

The receptor potential maps were already created in the previous section, thus only the desolvation term must be pre-computed:

Creation of the unbound ligand desolvation potential map:

> ../bin/frodockgrid 1lza_ly2.pdb -o 1lza_ly2_DS.ccp4 -m 3

Name convention: iupac
Force Field: CHARMM
Grid voxel: 1.0
With hydrogens: no
Option: Desolvation potential.
        Radius -> Water: 1.400000 - Generic atom probe: 1.950000
 Area:   6546.14530 Spheres num:  1001
ASA pdb file 1lza_ly2_ASA.pdb created (ASA introduced in Occupancy column)
Computing Map..
ASA computations: 388332 ASA computations skipped: 209303
			      

--------------- STEP 3. Perform the exhaustive docking search ---------------

> ../bin/frodock 3hfl_fv_ASA.pdb 1lza_ly2_ASA.pdb -w 3hfl_fv_W.ccp4 -e 3hfl_fv_E.ccp4 --th 10 -d 3hfl_fv_DS.ccp4,1lza_ly2_DS.ccp4 -o dock2.dat

The frodock_lx.tar.gz archive contains the next directories structure: 
Reading receptor PDB
        * Receptor accessibility read from receptor PDB. 
		Checking ASA in Occupancy column...
                - Ok. Occupancy column seems to show ASA values
        * Creating Accessibility map from receptor PDB...
        * Accessibility map created from receptor PDB
        * OK
Receptor VDW map information:
        * Receptor VDW map read from file
        * Map origin: -33.141129 -39.668289 -12.076756
        * Map size: 89 81 75
Receptor electrostatic map information:
        * Receptor electrostatic map read from file
        * Map modification. Threshold applied: 10.000000
        * Map origin: -33.141129 -39.668289 -12.076756
        * Map size: 89 81 75
Receptor desolvation map information:
        * Receptor electrostatic map read from file
        * Map origin: -24.141129 -30.668287 -3.076756
        * Map size: 71 63 57
Reading ligand pdb
        * Ligand center: 229.958908 23.243317 49.012619
        * Ligand accesilibility read from Ligand PDB. 
		Checking ASA in Occupancy column...
                - Ok. Occupancy column seems to show ASA values
        * Ligand desolvation map read from file
Spherical radius
        * Receptor vdw radius in A: 71.000000 (71 spherical layers)
        * Ligand radius in A: 28.025059 (29 spherical layers)
        * Ligand electrostatic radius in A: 28.025059 (29 layers)
        * Ligand accesibility radius in A: 28.025059 (29 layers)
        * Ligand desolvation radius in A: 33.025059 (34 layers)
        * Maximum ligand desolvation radius in A: 33.025059 (34 layers)
Precomputation of spherical representation of ligand
Precomputation Fixed time: 36.500000 s
Determination of translational points to explore
        * Mask created
Translational search init...
        * Translational search finished
Writing solutions
        * Number of points to explore: 18996
        * Number of solutions: 69363
			      

--------------- STEP 4. Clustering and visualization of predicitions ---------------

Clusterization of the solutions file is done by:

> ../bin/frodockcluster dock2.dat 1lza_ly2.pdb --nc 100 -d 5.0 -o clust_dock2.dat

Sort process...
Maximum correlation: 1300.347900
Clustering process...
			      

As before, the solutions can be displayed using frodockview. The closest first solution can be found at 11th position. To get the coordinates of such prediction type:

> ../bin/frodockview clust_dock2.dat -r 11 -p 1lza_ly2.pdb

 

11 120.78  152.87   82.08    19.36    8.83   55.42    1161.477173 =>1lza_ly2_11.pdb
                              

You can visualize this good solution (1lza_ly2_11.pdb, cyan) with your favorite molecular viewer. Note the proximity to correct solution (3hfl_ly2_ref.pdb, red).


3) MPI parallel docking


FRODOCK_MPI versions works in the same way as the sequential version, but using mpirun it is possible to split the traslational search in as many parallel processes as desired. To this end:

--------------- STEP 3. Perform the exhaustive docking search ---------------

> mpirun -np 6 ../bin_MPI_VERSION/frodock_mpi 3hfl_fv_ASA.pdb 1lza_ly2_ASA.pdb -w 3hfl_fv_W.ccp4 -e 3hfl_fv_E.ccp4 --th 10 -d 3hfl_fv_DS.ccp4,1lza_ly2_DS.ccp4 -o dock2_mpi.dat

This command computes the docking process using 6 parallel processes. The frodock_mpi binary files requires dynamic links to a set of MPI (version 1.3.1) and system libraries. If the corresponding frodock_mpi does not work correctly with your MPI installation, check whether the libraries are accessible by:

> ldd ../bin_MPI_VERSION/frodock_mpi

libmpi_cxx.so.0 => /opt/openmpi/1.3.1/lib/libmpi_cxx.so.0 (0x00c76000)
libmpi.so.0 => /opt/openmpi/1.3.1/lib/libmpi.so.0 (0x00e26000)
libopen-rte.so.0 => /opt/openmpi/1.3.1/lib/libopen-rte.so.0 (0x00d02000)
libopen-pal.so.0 => /opt/openmpi/1.3.1/lib/libopen-pal.so.0 (0x0046c000)
etc...
			      

If any of the libraries listed is marked up as "Not Found" it will be necessary to install it or include its path in LD_LIBRARY_PATH (NOTE: It is possible that existing libraries present a different name, in that case a symbolic link could solve this problem).

3rd party useful tools


  • Molprobity Online structure validation tool.
  • pdb2pqr Tool for preparing structures, assigning charge and radius parameters from a variety of force fields, etc.
  • Jackal Includes profix tool a nice tool for fix pdbs.

Other protein-protein docking programs


Download and Installation


Here you can the linux versions of the program (for source code just send us an e-mail). We also include the docking examples used in the tutorials. Please send us your name, affiliation, and e-mail address. Registered users will be informed, as necessary, about bug fixes or new releases of the program. Your information will be kept confidential. When you have downloaded the file all you have to do is un compress it, it should work straight away if your machine has the appropriate operating system. If that's not the case please let us know.

Filename Size (MB) Architecture Release (Date) Notes
frodock_lx.tar.gz 8.4 Linux (32bits) 1.02 (19/6/2009) Download
frodock_lx_bin64.tar.gz 8.3 Linux (64bits) 1.02 (19/6/2009) Download

 

The frodock_lx.tar.gz archive contains the next directories structure:

FRODOCK/
  bin/ : Binary executable files
	* frodockgrid: Potential maps creation tool.
	* frodock: Docking tool.
	*frodockcluster: Sorting and clustering solutions tool.
	*frodockview: Solution visualization and creation tool.

  bin_openmpi_1.3.1/: FRODOCK Binary MPI-suported version
	*frodock_mpi: Open MPI  Docking tool. 
	              Requires Open MPI version 1.3.1 installed.

  examples/ : Files to perform docking for the complex HyHel-5/lyzosyme
	PDB files:
	* 3hfl_fv.pdb: Receptor pdb file.
	* 3hfl_fv_ASA.pdb: Idem but with atom ASA values in Occupancy column.
	* 3hfl_ly_ref.pdb: Bound ligand pdb file (not used in the docking is 
	                   the correct position for comparing  with obtained 
			   predictions) .
	* 3hfl_ly2.pdb: Bound ligand pdb file. Randomly rotated.
	* 3hfl_ly2_ASA.pdb: Idem with ASA values.
	* 1lza_ly2.pdb: Unbound ligand pdb. Randomly rotated.
	* 1lza_ly2_ASA.pdb: Idem with ASA values.
	Map files:
	* 3hfl_fv_vdw.ccp4: Receptor van der Walls potential. 
	* 3hfl_fv_elec.ccp4: Receptor electrostatic potential.
	* 3hfl_fv_desol.ccp4: Receptor desolvation potential.
	* 3hfl_ly2_desol.ccp4: Bound ligand desolvation potential.
	* 1lza_ly2_desol.ccp4: Unbound ligand desolvation potential.

sitemap_icon SiteMap