Call: +880 1870-861663 | Email: info@researchlearningcenters.com
Molecular Docking: From Protein Preparation to Binding Score – Research Blog

Molecular Docking: From Protein Preparation to Binding Score

A practical walkthrough of the molecular docking workflow using AutoDock Vina, including protein preparation, grid box definition, and result interpretation.


Prerequisites

  • Python ? 3.9 with RDKit and Meeko
  • AutoDock Vina 1.2+
  • MGLTools or Open Babel for format conversion

  1. Download the PDB file from RCSB PDB.
  2. Remove water molecules, co-crystallised ligands, and non-standard residues.
  3. Add hydrogens and assign Gasteiger charges.
  4. Convert to PDBQT format:
python prepare_receptor.py -r receptor.pdb -o receptor.pdbqt -A hydrogens

from rdkit import Chem
from rdkit.Chem import AllChem

mol = Chem.MolFromSmiles("CCc1ccc(NC(=O)c2ccc(N)cc2)cc1")
mol = Chem.AddHs(mol)
AllChem.EmbedMolecule(mol, AllChem.ETKDG())
AllChem.MMFFOptimizeMolecule(mol)

center_x = 12.345
center_y = -5.678
center_z =  3.210
size_x   = 20
size_y   = 20
size_z   = 20

vina --receptor receptor.pdbqt \
     --ligand ligand.pdbqt \
     --config config.txt \
     --exhaustiveness 32 \
     --out docked.pdbqt \
     --log docking.log

Interpreting Results

Binding affinity is expressed in kcal/mol. Values below ?7 kcal/mol are generally considered promising hits. Always validate top poses visually in PyMOL or UCSF Chimera.

Back to all articles