Biowulf at the NIH
ZDOCK on Biowulf

ZDOCK uses a fast Fourier transform to search all possible binding modes for the proteins, evaluating based on shape complementarity, desolvation energy, and electrostatics.

Author: Zhiping Weng

Version: 2.3

Reference: zdock2.3.pdf


How to use

Two pdb files are required for input, the receptor.pdb (the larger of the two proteins), and the ligand.pdb (the smaller pdb). Standard PDB format files must be processed by mark_sur before being used as the input of ZDOCK. Formatted PDB files of docking benchmark can be found in /usr/local/zdock/structures.

If you know that some atoms are not in the binding site, you can block them by changing their ACE type (column 55-56) to 19. This blocking procedure can improve docking performance significantly. The blocking script is located at /usr/local/zdock/block.pl.

Generate the input PDBs with surfaces marked:

$ ln -s /usr/local/zdock/uniCHARMM .
$ /usr/local/zdock/mark_sur old_ligand.pdb new_ligand.pdb
$ /usr/local/zdock/mark_sur old_receptor.pdb new_receptor.pdbA

ZDOCK is an mpi-compiled executable which scales well up to 32 processors. It should be submitted to the Biowulf cluster as a batch job using mpirun.

Now run ZDOCK as an mpirun job:

zdock.sh

#!/bin/csh
#PBS -N zdock
#PBS -e zdock.err
#PBS -o zdock.log
cd $PBS_O_WORKDIR
setenv PATH /usr/local/mpich/bin:$PATH
mpirun -machinefile $PBS_NODEFILE -np $np /usr/local/bin/zdock \
-R new_receptor.pdb \ -L new_ligand.pdb -o zdock.out -D

The zdock.sh PBS script is submitted using the qsub command

qsub -v np=Np -l nodes=N zdock.sh

where N is the number of nodes desired, and Np total number of CPUs available on N nodes.

Output and post-processing

The output file zdock.out contains information about the rotation and translation values for the docking models. The models can be generated using the commands

$ ln -s /usr/local/zdock/create_lig .
$ /usr/local/zdock/create.pl zdock.out

More information and finer details

See the ZDOCK main page