Vina: Difference between revisions

From PyMOLWiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 12: Line 12:
[[File:Screenshot from 2025-01-19 07-52-39.png|thumb|right|The residue interaction histogram.]]
[[File:Screenshot from 2025-01-19 07-52-39.png|thumb|right|The residue interaction histogram.]]


This plugin enables virtual screening with the AutoDock Vina software stack. It uses OpenBabel and Meeko to prepare the target receptor and molecular ligands, and PLIP and Matplotlib to analyze the results.
This plugin enables virtual screening with the AutoDock Vina software stack. It uses Meeko and Scrub to prepare the target receptor and molecular ligands, and PLIP and Matplotlib to analyze the results.


It was tested on PyMOL 3.1 with Python 3.10. Currently supports only Linux and probably Mac.
It was tested on PyMOL 3.1 with Python 3.10. Currently supports only Linux and probably Mac.
Line 18: Line 18:
= Input =
= Input =


Supports multi-SMILES (e.g. ''mols.smi''), SDF and MOL files. Make sure to store your chemical libraries so it can be reused.
Supports multi-SMILES, SDF and MOL files, the same formats supported by Scrub. Make sure to store your chemical libraries so it can be reused. The snippet below illustrate a SMILES file with multiple SMILES separated from the molecule name by empty spaces.


     Cc1c(Cl)cccc1Nc1ncccc1C(=O)OC[C@H](O)CO ZINC000000000171
     Cc1c(Cl)cccc1Nc1ncccc1C(=O)OC[C@H](O)CO ZINC000000000171
Line 25: Line 25:
     Cc1nc(NCc2ccccc2)c2cc[nH]c2n1  ZINC000000002036
     Cc1nc(NCc2ccccc2)c2cc[nH]c2n1  ZINC000000002036


'''Note''': Stored libraries includes the protonation state. Using such libraries means the same hydrogens are used, ignoring the chosen pH.
'''Note''': Stored libraries includes the protonation state. Using such libraries means the same hydrogens are used, ignoring the specified pH.


= Guided interface =
= Usage =
 
; Run docking/screening
: Fill the ''target receptor'' and ''box center'' with . They must be selections or objects or extracted objects already loaded into PyMOL. If there are rigid ligands (e.g. a cofactor) or important water molecules, they must be on the ''receptor'' selection/object. Click on ''Run'' to start.


* '''Preparing step:''' Should fill the ''target receptor'' and ''box center'' selections like presented on picture.  Shold also fill the the ''input file'' and ''output folder''.
* '''Analyzing step''': View screening results.
* '''Analyzing step''': View screening results.
** '''Affinity list''': Check the affinity of generated poses.
** '''Affinity list''': Check the affinity of generated poses.
Line 35: Line 37:
** '''Dendogram''': Check the euclidean distances of generated poses interacting residues (''intensive computation'').
** '''Dendogram''': Check the euclidean distances of generated poses interacting residues (''intensive computation'').


.
.
= Instalation =
 
Install using the URL on the Plugin Manager. On the first time executing the plugin, it may freeze PyMOL while downloading the required Python packages (libraries). In case of <code>ImportError</code> messages, it's recommended to troubleshot the following commands on the PyMOL console.
 
  conda install -y matplotlib openpyxl scipy meeko plip openbabel rdkit pandas lxml
  pip install https://github.com/pslacerda/molscrub/archive/refs/heads/windows.exe.zip
 
The general syntax is run <code>conda install -y</code> or <code>pip install</code> prefixing the wanted/required package.
 
= Caveats =
= Caveats =


It requires internet access on plugin installation and may take time while PyMOL is freezed. Docking is as fast as base programs, but PLIP and intensive analyses are slow.
The main docking or screening step is as fast as base programs, but the analyze interface is slow, specially if the "intensive" computation option is enabled.
 


= Author =
= Author =


Pedro Sousa Lacerda, Universidade Federal da Bahia, <pslacerda@gmail.com>.
zzPedro Sousa Lacerda, Universidade Federal da Bahia, <pslacerda@gmail.com>.

Revision as of 03:11, 6 February 2025

Type PyMOL Plugin
Download https://raw.githubusercontent.com/Pymol-Scripts/Pymol-script-repo/refs/heads/master/plugins/vina.py
Author(s) Pedro Sousa Lacerda
License Free Software
The preparation step.
The execution log.
The analyzing step.
The residue interaction histogram.

This plugin enables virtual screening with the AutoDock Vina software stack. It uses Meeko and Scrub to prepare the target receptor and molecular ligands, and PLIP and Matplotlib to analyze the results.

It was tested on PyMOL 3.1 with Python 3.10. Currently supports only Linux and probably Mac.

Input

Supports multi-SMILES, SDF and MOL files, the same formats supported by Scrub. Make sure to store your chemical libraries so it can be reused. The snippet below illustrate a SMILES file with multiple SMILES separated from the molecule name by empty spaces.

   Cc1c(Cl)cccc1Nc1ncccc1C(=O)OC[C@H](O)CO ZINC000000000171
   CN(C)CC[C@@H]1c2ccc(Cl)cc2CCc2cccnc21   ZINC000000000179
   CC(C)NC[C@H]1CCc2cc(CO)c([N+](=O)[O-])cc2N1     ZINC000000000570
   Cc1nc(NCc2ccccc2)c2cc[nH]c2n1   ZINC000000002036

Note: Stored libraries includes the protonation state. Using such libraries means the same hydrogens are used, ignoring the specified pH.

Usage

Run docking/screening
Fill the target receptor and box center with . They must be selections or objects or extracted objects already loaded into PyMOL. If there are rigid ligands (e.g. a cofactor) or important water molecules, they must be on the receptor selection/object. Click on Run to start.
  • Analyzing step: View screening results.
    • Affinity list: Check the affinity of generated poses.
    • Residues tree and Histogram: Check the interacting residues of generated poses (intensive computation).
    • Dendogram: Check the euclidean distances of generated poses interacting residues (intensive computation).

.

Instalation

Install using the URL on the Plugin Manager. On the first time executing the plugin, it may freeze PyMOL while downloading the required Python packages (libraries). In case of ImportError messages, it's recommended to troubleshot the following commands on the PyMOL console.

 conda install -y matplotlib openpyxl scipy meeko plip openbabel rdkit pandas lxml
 pip install https://github.com/pslacerda/molscrub/archive/refs/heads/windows.exe.zip

The general syntax is run conda install -y or pip install prefixing the wanted/required package.

Caveats

The main docking or screening step is as fast as base programs, but the analyze interface is slow, specially if the "intensive" computation option is enabled.

Author

zzPedro Sousa Lacerda, Universidade Federal da Bahia, <pslacerda@gmail.com>.