Docking
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.
Here, we will dock one ligand only for demonstration. For virtual screening of multiple ligands, follow the same steps as explained in this tutorial except you will have to load all ligands.
Downloading Protein
We are going to use the same protein as we have used in our previous docking tutorials, i.e., human serum albumin (HSA). The PDB ID is 2BXA. It is complexed with a compound called 3-carboxy-4-methyl-5-propyl-2- furanpropanoic acid (CMPF).
- Download the structure of HSA from PDB (www.rcsb.org).
- You can either download the PDB format as usual or download the PDBx/mmCIF format if you face any problems regarding the loading of the structure.
- Save this file in a folder.
Downloading ligand
We are going to dock Sodium Octanoate (SO) with the HSA.
- Go to Pubchem (www.pubchem.ncbi.nlm.nih.gov).
- Search for the compound “Sodium Octanoate”.
- Download the 3D conformer of the same in SDF format.
- You can download the structure from another database as well such as ZINC.
Preparing the protein
To prepare the protein for docking, you need to know the binding site/ binding residues. They can be present in a single chain of a protein or might involve two. Read the associated paper published for that structure. It consists of all structural details about it. If there is no literature available on the binding site of that protein, then go for the prediction. Read this article for more information.
In the present case, you can also get all binding residues by visualizing the HSA-CMPF complex in Pymol and note down all interacting residues. But always try to find the binding sites in published papers.
Since we already know the binding sites of HSA, we can proceed to prepare our protein.
- 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 ligands by visualizing the protein in PyMol.
Read this article to know how to remove hetatoms. - Remove extra chains
We will keep only one of the four chains (here, Chain A was taken) and remove the rest of the three chains. The chains are removed from the protein structure just to avoid complexity. Read this article to know how to remove chains. - Save the file
Now save the file as “protein.pdb”.
We have prepared our protein structure to proceed further for docking. Now let’s prepare our ligand.
Preparing the ligand
Since we need the protein and the ligand in a .pdb format, therefore, we have to convert the ligand from SDF to pdb format. We will use PyMol for this purpose and never use online converters because they may ruin your ligand file. You can also use Openbabel.
- Open PyMol and open the downloaded ligand.
- Click on “File” –> “Save Molecule” –> select the molecule –> click “OK”.
- Save it in the same folder as ‘ligand.pdb’ or with any other name.
Performing docking using Pyrx
We will be using Autodock Vina for docking. It is provided in Pyrx that you can dock using the Vina algorithm. Run Pyrx GUI and follow the steps explained below.
Loading protein and ligand
- Go to ‘File’ –> ‘Load Molecule’ or just click on the very first icon given on top left corner.
- Select the downloaded protein structure. Here, named as ‘protein.pdb’.
- Again go to ‘File’ –> ‘Load Molecule’ or just click on the very first icon given on top left corner.
- Select the converted ligand structure. Here, named as ‘ligand.pdb’.
Defining protein and ligand
You will see the loaded protein and ligand under the ‘Molecules’ tab. Now we have to define which one is protein and which one is the ligand. To do that
- Right-click on protein –> ‘Autodock’ –> ‘Make Macromolecule’.
- Right-click on ligand –> ‘Autodock’ –> ‘Make Ligand’.
After that you will notice under the ‘Autodock’ tab, it has prepared their PDBQT files itself.
Defining grid box
Look at the ‘Controls’ panel given at the bottom under the ‘Select molecule’ tab. You will see “1 ligand selected” and the path of the selected protein.
- Now, click the ‘Forward’ button present at the bottom right corner. You will see a grid box on the display screen.
- Go back to the ‘Molecules’ tab on the right side. Click on the “+” sign of the loaded protein. You will see all the residues present in the chain.
- Select the binding residues by right-clicking on the residue –> Display –> Label –> Atoms. You will see the atoms appearing on the protein.
- Now adjust the grid box accordingly such that all the selected residues come inside the box. You don’t have to enclose the ligand inside the grid box.
Running Vina for docking
You can set the exhaustiveness by entering an appropriate number in the box given on the bottom left. After adjusting everything, click on the ‘Forward’ button. It will start docking and will display the processing. After the docking is finished, you will see the poses and their binding affinities in the bottom panel. It will show all nine poses along with other values such as RMSD.
Now to analyze these results, you will have to open the PDB/PDBQT file of the protein and the vina output file in Pymol. For analyzing results, read this article. You can also analyze these results in Discovery Studio Visualizer, read here to analyze docking results in DS Visualizer.
References
- https://pyrx.sourceforge.io/home
Further Reading
vs_Analysis.py: A Python Script to Analyze Virtual Screening Results of Autodock Vina
Docking
Video Tutorial: Fix broken Vina output in DS Visualizer.
This is a video tutorial on fixing the Vina docking output in DS Visualizer.
Bioinformatics Programming
DockingAnalyzer.py: A New Python script to Identify Ligand Binding in Protein Pockets.
High-throughput virtual screening (HTVS) is a pivotal technique in drug discovery that screens extensive libraries of compounds to find potential drug candidates. One of the essential tasks in HTVS is to ensure that ligands are binding within the protein’s binding pocket. This task can be particularly challenging when dealing with thousands of docking results. To address this challenge, we present a Python script that automates the analysis of molecular docking results generated by AutoDock Vina [1] using PyMOL [2]. This script calculates the center of mass (COM) for each docked pose, compares it with a reference ligand’s COM, and identifies poses that bind within a specified threshold distance. This process is crucial in mass docking scenarios where confirming ligand binding within the pocket is necessary. (more…)
Bioinformatics News
VS_Analysis: A Python package to perform post-virtual screening analysis
Virtual screening (VS) is a crucial aspect of bioinformatics. As you may already know, there are various tools available for this purpose, including both paid and freely accessible options such as Autodock Vina. Conducting virtual screening with Autodock Vina requires less effort than analyzing its results. However, the analysis process can be challenging due to the large number of output files generated. To address this, we offer a comprehensive Python package designed to automate the analysis of virtual screening results.
Bioinformatics Programming
vs_interaction_analysis.py: Python script to perform post-virtual screening analysis
Analyzing the results of virtual screening (VS) performed with Autodock Vina [1] can be challenging when done manually. In earlier instances, we supplied two scripts, namely vs_analysis.py [2,3] and vs_analysis_compounds.py [4]. This time, we have developed a new Python script to simplify the analysis of VS results.
Docking
[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.
Docking
How to install the 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).
Docking
[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…)
Docking
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.
Docking
What values are considered as good or bad in computational docking?
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…)
Bioinformatics Programming
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…)
Docking
Virtual Screening using Autodock Vina: 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…)
Docking
[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…)
Docking
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…)
Docking
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…)
Docking
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…)
Docking
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…)
Docking
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…)
Docking
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…)
Docking
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…)
Docking
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…)
You must be logged in to post a comment Login