Docking software such as Autodock4  and Autodock Vina  require input receptor and ligand files in a specific format called pdbqt. Sometimes, preparing files using Autodock Tools (ADT) gives various errors that are not easily understandable. Especially, when we are performing virtual screening (VS), we need to convert a lot of files from pdb to pdbqt format. Converting each file one by one using ADT is a tedious job. Therefore, python scripts provided by Autodock are quite helpful.
In this article, we will prepare the input receptor and ligand docking files using Python scripts.
- Preparing Ligands
At first, locate the ‘prepare_ligand4.py’ file in the MGLTools directory you have already installed. The script will be present in /path/to/mgltools_x86_64Linux2_1.5.6/MGLToolsPckgs/AutoDockTools/Utilities24/ or download from here.
Keep your ligands in a directory in pdb format and run this script as follows:
$ python prepare_ligand4.py -l ligand.pdb -v -o ligand.pdbqt
Here, -l defines the ligand filename, -o is the output file, and -v is for displaying processing (default is minimal output).
There are other arguments that you can define such as
- -d dictionary to write types list and number of active torsions “
- -A type(s) of repairs to make:\n\t\t bonds_hydrogens, bonds, hydrogens (default is to do no repairs)”
- -B type(s) of bonds to allow to rotate.
- -M interactive (default is automatic output), and so on.
To know more options, type
$ python prepare_ligand4.py -h.
You can set parameters for the first ligand PDB file and then use the same command for all ligand files.
2. Prepare receptors
Similarly, receptors can be prepared from a Python script present in the directory mentioned above. You can also download it from here.
Keep your receptor files in a directory in pdb format and run this script as follows:
$ python prepare_receptor4.py -r receptor.pdb -v -o receptor.pdbqt -A
Here, -r defines the receptor filename, -o is the output file, -v is for displaying processing (default is minimal output), and -A is used for checking hydrogens.
For more arguments, type
$ python prepare_receptor4.py -h.
- Morris, G. M., Huey, R., Lindstrom, W., Sanner, M. F., Belew, R. K., Goodsell, D. S., & Olson, A. J. (2009). AutoDock4 and AutoDockTools4: Automated docking with selective receptor flexibility. Journal of computational chemistry, 30(16), 2785-2791.
- Trott, O., & Olson, A. J. (2010). AutoDock Vina: improving the speed and accuracy of docking with a new scoring function, efficient optimization, and multithreading. Journal of computational chemistry, 31(2), 455-461.