List programs suitable for protein docking
Macromolecular docking is the computational modelling of the quaternary structure of complexes formed by two or more interacting biological macromolecules. Protein–protein complexes are the most commonly attempted targets of such modelling, followed by protein–nucleic acid complexes.
The ultimate goal of docking is the prediction of the three-dimensional structure of the macromolecular complex of interest as it would occur in a living organism. Docking itself only produces plausible candidate structures. These candidates must be ranked using methods such as scoring functions to identify structures that are most likely to occur in nature.
Nowadays there a lot of programs suitable for proteins docking  such as CSBB-ConeExclusion, HADDOCK, ZDOCK, GalaxyDock, PHASE, DockRank, HotLig, SOL, AutodockVina, DockoMatic, DockoMatic, DockTrina, CAVITY, LiGenDock and DOCK.