Connect with us

Docking

How to perform docking in a specific binding site using AutoDock Vina?

Dr. Muniba Faiza

Published

on

AutoDock Vina is a bioinformatics tool that is used to perform in-silico docking of proteins with a ligand. It provides many options depending on the needs of a user. This tool offers blind docking and binding in a specific pocket as well, which is sometimes more demanding when the binding site is already known. This article will guide you to dock a protein with a ligand in a specific binding site/ pocket.

We are docking a protein Human Serum Albumin (HSA) protein with a ligand Sodium Octanoate (SO), but HSA is already complexed with 3-carboxy-4-methyl-5-propyl-furanpropanoic acid (CMPF). We want to bind SO in the same site where CMPF has already bound in HSA.

We need the following files prepared for docking with AutoDock Vina:

  1. Pdbqt files of protein and the ligand
  2. Configuration file
  3. Grid file

Preparation of PDB file before docking

  1. Download a protein crystal structure from PDB. We are using Human Serum Albumin complexed with 3-carboxy-4-methyl-5-propyl-furanpropanoic acid (CMPF) (PDB ID: 2BXA).

Before proceeding further, we should make clear whether we know the catalytic site of the protein or not. If we know then we can easily go to step 2, but if we don’t know, then we have two options, either we can read the literature which is available on the same page of PDB from where we downloaded the structure, or we can visualize the protein structure in PyMol and note down the interacting sites of the protein. The first option is recommended.

  1. Open the PDB file and remove HETATOMS.

The structure we are using is a crystal structure complexed with ligand(s), therefore, to dock the desired ligand with the protein in that particular position we need to remove the bound ligand by removing hetatoms from the PDB file. If we will dock our ligand without removing the already complexed ligand, then we will not get the correct results. We can also easily remove ligand by visualizing the protein in PyMol.

  1. After removing hetatoms, we will keep only one of the four chains (here, Chain A was taken). Remove the rest of the three chains, and save this file as “protein.pdb”

The chains are removed from the protein structure just to avoid complexity.

  1. Now save the file as “protein.pdb”.

Now we have prepared our protein structure to proceed further with docking. Now we will prepare our ligand which we want to dock with the protein.

Preparation of ligand before docking

  1. Open PubChem (www.pubchem.ncbi.nlm.nih.gov) and search for the compound. We are using “sodium octanoate” as a ligand. We can download the structure from the ZINC database also.
  2. Click on Sodium octanoate and look under the “3D Structure” section, click on “Download” and then you will see four different formats for downloading it. We will download the .SDF format.
  3. Since we need the protein and the ligand to be in a .pdb format, therefore, we have to convert .SDF to .pdb. We will use PyMol for this purpose and never use online converters because they may ruin your ligand file.
  4. Open PyMol, and open the downloaded ligand. Click on “File” –> “Save Molecule” –> select the molecule –> click “OK”. You can save it to your desired folder.

We will rename the ligand as “SO.pdb” just to avoid any kind of confusion. Now we have a PDB file of protein and that of the ligand. In order to perform docking, we need to prepare .pdbqt files from the .pdb files of the protein and the ligand, because docking through AutoDock Vina requires a .pdbqt file format to dock.

Preparation of .pdbqt files

First, we will prepare a .pdbqt file of the ligand.

  1. Open AutoDock Tools GUI –> click “Ligand” –> click “Input”–> click “Open”

It will ask to select your ligand, we will go to the folder where we have saved our ligand’s .pdb file and click “SO.pdb”.

  1. Click “Ligand” –> click “Torsion Tree” –> click “Detect Root”.

It will show the torsion angle on the ligand from where it can be rotated.

  1. Click “Ligand” –> click “Output” –> Click “Save as PDBQT”.

We can rename the ligand, but we will use the same name as before and will name it as “SO.pdbqt” and save it in the same folder.

We have prepared a .pdbqt file of the ligand and now we will prepare the protein file.

  1. Open AutoDock Tools GUI, click “File” –> click “Read Molecule” –> select protein.pdb.
  2. We will delete water molecules from the protein as they can make unnecessary bonds with the ligand. Click “Edit” –> “Delete water”.
  3. We will add polar hydrogens in order to avoid any empty group/ atom left in the protein. Click “Edit” –> click “Add Hydrogens” –> click “Polar only”.
  4. We will save this file as .pdbqt, click “Grid” –> click “Macromolecule” –> click “Choose” –> select the “protein.pdb” –> click “OK”. It will ask for a folder to save, then save it as “protein.pdbqt”, in the same folder where the pdbqt file of the ligand was saved.

Defining binding site

Now let’s define the binding site in the protein. Look at the panel in the left corner of the Vina window. You will see the name of the protein written there. Click on it once, then it will show you the chains present in the structure, but since we have deleted all the chains except chain A, therefore, there is only one chain, i.e., chain A. Click on it, then it will display all the residues present in the chain. Now scroll down and look for your desired residues. For example, in this protein, we will look for Tyr150, Lys199, Arg222, Arg257, and His242 because this is the binding site of CMPF in human serum albumin and we want to bind another ligand in the same position.

On the right side of the drop-down of all residues, we can see some squares and oval-shaped images. By clicking these, we can see the selected residues in different types, such as on clicking “R”, the residue will be displayed as a ribbon, but we will only select all the residues by clicking “S”. Now the selected residues will appear differently such as yellow in color. Now we have selected all the residues and we will define the grid box which can enclose all these residues inside itself.

Defining Grid Box for docking

Now we will define the specific site for the binding of a ligand in the protein. In blind docking, we do not need to define a specific site in the protein for the ligand to bind, because we do not know the binding site, so we enclose the whole protein into the grid box. But here we already know the binding site in this protein, therefore, we will define the binding site for the ligand in the grid box.

  1. Click “Grid” –> click “Grid Box”.

You will see a small window in which you can see x, y, and z coordinates.

  1. Now try to adjust the grid box by scrolling the three coordinates, such that it covers all the selected residues.
  2. After adjusting the grid box, click “File” –> click “Output Grid Dimension File” –> save this file as grid.txt in the same folder.
  3. Click “File” –> Click “Close saving current”.
  4. Now close the Autodock Vina.

You will get the grid file as follows:

                  grid.txt

protein

spacing    0.375

npts       66 56 54

center     4.402 -8.060  8.874

Preparation of Configuration file

AutoDock Vina requires an input configuration file that contains all the information of the parameters used in configuring the docking including the name of the protein and the ligand. The configuration is as follows:

                                    conf.txt

receptor= protein.pdbqt

ligand= SO.pdbqt

 

center_x= 4.402

center_y= -8.060

center_z= 8.874

 

size_x= 66

size_y= 56

size_z= 54

 

out= vina_outSO.pdbqt

log= logSO.txt

 

exhaustiveness= 8

From “grid.txt” file, we have written the center_x, y, and z coordinates, and also the size_x, y, and z of the grid box. Save this file as “conf.txt”.

Perform Docking

Put all the following in the same folder (i.e., dock):

  1. protein.pdbqt
  2. SO.pdbqt
  3. conf.txt
  4. All the MGL_Tools, Autodock Tools, Python.exe (for Linux), and Autodock Vina setup files.

Please keep in mind that you have named the files properly and kept all the setup files in the same folder otherwise you may get errors while running the docking.

Linux

  1. Open the terminal and enter into the “dock” folder.
  2. Type the following command:
./vina -–config conf.txt -–log logSO.txt
  1. Press “enter”.

Windows

  1. Open the command prompt and enter the folder where all the docking files are placed.
  2. Type the following command:
 vina.exe -–config conf.txt -–log logSO.txt

Now grab a cup of tea/ coffee because it may take a few minutes to complete the docking, so meanwhile, enjoy your time! 😉

Vina Output

After the successful docking, you will get a log file, which in this case is named “logSO.txt”.

The log file will be as follows:

 

p1

This file consists of all the poses generated by the AutoDock Vina along with their binding affinities and RMSD scores. In the Vina output log file, the first pose is considered the best because it has more binding affinity than the other poses and is without any RMSD value, but you can choose the appropriate pose and visualize it in PyMol viewer.

Please share if you like this article!

If you find any difficulty, then feel free to mail me at [email protected].

Reference

  1. 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 chemistry31(2), 455-461.

Dr. Muniba is a Bioinformatician based in New Delhi, India. She has completed her PhD in Bioinformatics from South China University of Technology, Guangzhou, China. She has cutting edge knowledge of bioinformatics tools, algorithms, and drug designing. When she is not reading she is found enjoying with the family. Know more about Muniba

Docking

[Tutorial] Performing docking using DockingPie plugin in PyMOL.

Dr. Muniba Faiza

Published

on

[Tutorial] Performing docking using DockingPie plugin in PyMOL.

DockingPie [1] is a PyMOL plugin to perform computational docking within PyMOL [2]. In this article, we will perform simple docking using DockingPie1.2.

(more…)

Continue Reading

Docking

How to install the DockingPie plugin on PyMOL?

Dr. Muniba Faiza

Published

on

How to install DockingPie plugin on PyMOL?

DockingPie [1] is a plugin of PyMOL [2] made to fulfill the purpose of docking within the PyMOL interface. This plugin will allow you to dock using four different algorithms, namely, Vina, RxDock, SMINA, and ADFR. It will also allow you to perform flexible docking. Though the installation procedure is the same for all OSs, in this article, we are installing this plugin on Ubuntu (Linux).

(more…)

Continue Reading

Docking

[Tutorial] Installing Pyrx on Windows.

Dr. Muniba Faiza

Published

on

[Tutorial] Installing Pyrx on Windows.

Pyrx [1] is another virtual screening software that also offers to perform docking using Autodock Vina. In this article, we will install Pyrx on Windows. (more…)

Continue Reading

Docking

How to install Autodock4 on Ubuntu?

Dr. Muniba Faiza

Published

on

How to install Autodock4 on Ubuntu?

Autodock suite is used for docking small molecules [1]. Recently, Autodock-GPU [2] is developed to accelerate the docking process. Its installation is described in this article. In this tutorial, we will install Autodock 4.2.6 on Ubuntu.

(more…)

Continue Reading

Docking

What values are considered as good or bad in computational docking?

Dr. Muniba Faiza

Published

on

After performing computational docking, a question that comes to mind most is “what docking score is considered good or bad”. In this article, we will discuss this in detail. (more…)

Continue Reading

Bioinformatics Programming

How to sort binding affinities based on a cutoff using vs_analysis.py script?

Dr. Muniba Faiza

Published

on

How to sort binding affinities based on a cutoff using vs_analysis.py script?

Previously, we have provided a Python script (vs_analysis.py) to analyze the virtual screening (VS) results of Autodock Vina. Now, we have updated this script to sort binding affinities based on user inputted cutoff value. (more…)

Continue Reading

Docking

Virtual Screening using Autodock Vina: Frequently Asked Questions & Answers for Starters

Dr. Muniba Faiza

Published

on

Virtual Screening using Autodock Vina: Virtual Screening: Frequently Asked Questions & Answers for Starters

Virtual Screening (VS) is one of the important techniques in bioinformatics. It can be easily performed using Autodock Vina. We have provided detailed articles on this topic. In this article, we are trying to answer some FAQs for beginners. (more…)

Continue Reading

Docking

[Tutorial] How to perform docking of zinc metalloproteins using Autodock Vina?

Dr. Muniba Faiza

Published

on

[Tutorial] How to perform docking of zinc metalloproteins using Autodock Vina?

Proteins containing zinc atoms are docked in a different way than that of the normal simple proteins. Zinc atoms must be considered by a force field during the docking process. In this article, we are going to dock zinc metalloprotein with a ligand using Autodock Vina [1]. (more…)

Continue Reading

Docking

How to generate config file for docking using Autodock Tools?

Dr. Muniba Faiza

Published

on

How to generate config file for docking using Autodock Tools?

A configuration file is one of the required files for docking using Autodock Vina. In this article, we are going to generate a config file using Autodock Tools GUI [1]. (more…)

Continue Reading

Docking

How to install Autodock on Ubuntu (Linux) with CUDA GPU support?

Dr. Muniba Faiza

Published

on

How to install Autodock on Ubuntu (Linux) with CUDA GPU support?

Autodock [1] is most widely used for docking. To accelerate the docking process, especially, during virtual screening, Autodock-GPU [2] provides great help. In this article, we are going to install Autodock-GPU on Ubuntu. (more…)

Continue Reading

Docking

Autodock Vina: Uses & Applications

Published

on

Autodock Vina: Uses & Applications

Autodock Vina [1] is one of the most widely used bioinformatics software for computational docking. For beginners and those who are new to the field of bioinformatics, such software may appear confusing without having an initial idea of what this software actually used for. In this article, we have discussed some of the primary uses and applications of Autodock Vina software. (more…)

Continue Reading

Docking

How to perform virtual screening using Pyrx?

Dr. Muniba Faiza

Published

on

How to perform virtual screening using Pyrx?

Pyrx is a bioinformatics tool to perform virtual screening [1]. We previously provided an article on performing simple protein-ligand site-specific docking using Pyrx. In this article, we are going to perform virtual screening using Pyrx. (more…)

Continue Reading

Docking

How to perform metal ion-protein docking using idock?

Dr. Muniba Faiza

Published

on

How to perform metal ion-protein docking using idock?

Previously, we provided a tutorial on the installation of idock on Ubuntu (Linux). In this article, we are going to demonstrate the docking of a metal ion (such as Zn, Mg, Fe, etc.,) with a protein using idock. (more…)

Continue Reading

Docking

How to install idock on Ubuntu?

Dr. Muniba Faiza

Published

on

How to install idock on Ubuntu?

idock [1] is a multithreaded software based on Autodock Vina. It is a virtual screening tool for flexible ligand docking. It also supports 27 different chemical elements including zinc, magnesium, iron, calcium, etc. In this article, we are going to install idock on Ubuntu. (more…)

Continue Reading

Docking

How to analyze HADDOCK results using Pymol script generated from PRODIGY?

Dr. Muniba Faiza

Published

on

How to analyze HADDOCK results using Pymol script generated from PRODIGY?

In one of our previously published articles, we demonstrated protein-protein docking using HADDOCK2.4 [1]. In this article, we are going to demonstrate the HADDOCK results analysis using a Pymol script generated from the PRODIGY server [2]. (more…)

Continue Reading

Docking

Installing PatchDock on Ubuntu (Linux)

Published

on

Installing PatchDock on Ubuntu (Linux)

PatchDock is a docking algorithm that is based on the shape complementarity principle [1,2]. It performs molecular docking of any two types of molecules including proteins, DNA, drugs, and peptides. In this article, we are going to install PatchDock on Ubuntu (Linux). (more…)

Continue Reading

Docking

Protein-protein docking using HADDOCK2.4 web server

Dr. Muniba Faiza

Published

on

Protein-protein docking using HADDOCK2.4 web server

HADDOCK2.4 web server (https://bianca.science.uu.nl/haddock2.4/) [1] is used for protein-protein docking and their modeling. Not only proteins, but it can also process peptides, small molecules, and nucleic acids. In this article, we are going to perform protein-protein docking. (more…)

Continue Reading

Docking

How to perform site-specific docking using Pyrx?

Dr. Muniba Faiza

Published

on

How to perform site-specific docking using Pyrx?

Pyrx [1] is a virtual screening software that allows the docking of multiple ligands with a target protein. Previously, we provided an article on the installation of Pyrx in Ubuntu. In this article, we are going to perform protein-ligand docking using Pyrx. (more…)

Continue Reading

Software

How to install sdsorter on Ubuntu (Linux)?

Dr. Muniba Faiza

Published

on

How to install sdsorter on Ubuntu (Linux)?

sdsorter is a tool that helps in the easy manipulation of SDF files. It takes a single file as input and also provides a single output file. In this article, we are going to install sdsorter on Ubuntu (Linux). (more…)

Continue Reading

Docking

Video Tutorial: How to use vs_analysis Python script for virtual screening result analysis of Autodock Vina?

Dr. Muniba Faiza

Published

on

How to use vs_analysis python script for virtual screening result analysis of Autodock Vina

This is a demonstration video of our previously mentioned Python script (vs_analysis.py) for virtual screening results analysis of Autodock Vina. (more…)

Continue Reading

LATEST ISSUE

ADVERT