Computational Structural Biology · Molecular Docking
Molecular Docking: Interactions, Tools & Analysis
Protein–ligand · Protein–peptide · Covalent warhead docking · Non-covalent interactions · Complete scoring and validation workflow
Prep
Analyse
Receptor Preparation Workflow
- Download crystal structure from RCSB (e.g., PDB: 6LU7 for SARS-CoV-2 Mpro)
- Remove all water molecules, co-crystallized ligands, and crystallization artifacts
- Add polar hydrogen atoms only (non-polar H are merged into united-atom representation)
- Assign Gasteiger partial charges using AutoDock Tools or Open Babel
- Convert to
.pdbqtformat — required for AutoDock/Vina - Check for missing residues, non-standard amino acids, and disulfide bonds
# Or using Open Babel:
obabel protein.pdb -O receptor.pdbqt -p 7.4 # add H at pH 7.4
Small Molecule Ligand
# Or using RDKit to generate 3D conformer:
python -c "from rdkit.Chem import AllChem; m=AllChem.EmbedMolecule(mol); AllChem.MMFFOptimizeMolecule(m)"
Peptide Preparation (for Protein-Peptide Docking)
- Build 3D peptide structure from sequence using PyMOL, Avogadro, or Modeller
- For short peptides (<10 aa): use extended or α-helix starting conformation
- For longer peptides: multiple conformers recommended — peptide can fold/rearrange upon binding
- For HADDOCK: provide FASTA sequence and define flexible residue ranges
Key Difference: Ligand vs Peptide
| Property | Small Molecule Ligand | Peptide |
|---|---|---|
| Size | Typically <500 Da | 500–5000+ Da |
| Flexibility | Defined rotatable bonds | Full backbone flexibility |
| Binding site | Deep pocket / active site | Flat interface / groove |
| Contact area | Small, precise | Large, distributed |
| Prediction difficulty | Moderate | High |
AutoDock Vina Grid Box Configuration
receptor = receptor.pdbqt
ligand = ligand.pdbqt
center_x = 15.0 # box center coordinates (Å)
center_y = 12.5
center_z = 10.0
size_x = 25 # box dimensions (Å)
size_y = 25
size_z = 25
exhaustiveness = 16
num_modes = 10
energy_range = 3
Binding Site Identification Methods
- Known active site — center box on co-crystal ligand or catalytic residues
- Blind docking — cover the entire protein surface; computationally expensive but unbiased
- fpocket / SiteMap — computational pocket prediction from surface geometry
- Conservation analysis — highly conserved residues often mark functionally important binding sites
AutoDock Vina Command
# Read results from log.txt:
Mode | Affinity (kcal/mol) | RMSD l.b. | RMSD u.b.
1 | -8.5 | 0.000 | 0.000
2 | -8.1 | 1.823 | 2.456
3 | -7.9 | 2.041 | 3.110
PyRx Workflow (GUI-based)
- Import receptor and ligand files via File → Open
- Convert ligand to AutoDock format using Open Babel in PyRx
- Select binding site using PyMOL visualizer embedded in PyRx
- Run AutoDock Vina wizard → set exhaustiveness → Run
- Export results CSV for downstream analysis
Protein–Ligand Interaction Types
Small molecule inhibitors bind in well-defined pockets through a combination of the following interaction types:
Protein–Peptide Interaction Types
Peptides bind through larger contact surfaces with greater flexibility:
What Is Covalent Docking?
In covalent docking, a ligand with a specifically designed reactive electrophilic group (warhead) is computationally positioned near a target nucleophilic amino acid — most commonly cysteine (Cys) — such that a chemical reaction occurs, forming a permanent covalent bond. This is irreversible binding.
Mechanism: Cys-S-Ligand Thioether Formation
Common Warhead Types
| Warhead | Reaction type | Target residue | Bond formed |
|---|---|---|---|
| Acrylamide / vinyl sulfone | Michael addition | Cys (thiol) | Thioether C–S |
| Chloroacetamide | Alkylation (SN2) | Cys (thiol) | Thioether C–S |
| Epoxide | Ring opening | Cys, Ser, Lys | C–S / C–O / C–N |
| Aldehyde | Imine (Schiff base) | Lys (ε-NH₂) | C=N (reversible) |
| Activated ester | Acylation | Ser (hydroxyl) | Ester C–O |
| Boronic acid | Tetrahedral adduct | Ser (protease) | B–O (reversible) |
Software for Covalent Docking
- Schrödinger Suite (CovDock) — gold standard for covalent docking with reaction enumeration
- GOLD (CCDC) — supports covalent constraint during search
- AutoDock / Vina modifications — constrained bond can be implemented manually
- DOCKovalent (Shoichet lab) — large-scale covalent virtual screening
Validation by Redocking
The most reliable validation is redocking the native co-crystal ligand back into the protein — the RMSD between the predicted pose and the experimental crystal pose should be <2.0 Å.
rmsd = calculate_rmsd(native_ligand.pdb, redock_pose1.pdb)
# RMSD < 2.0 Å = successful validation
Interaction Analysis Tools
- PLIP (Protein-Ligand Interaction Profiler) — automated detection of all interaction types, web server + Python library
- LigPlot+ — 2D schematic diagram of protein-ligand interactions
- PyMOL — 3D visualization;
find_polar_contacts within 3.5, ligand, receptor - Discovery Studio Visualizer — detailed 2D/3D interaction maps for publications
Validation Criteria Summary
| Validation check | Acceptable threshold | Tool |
|---|---|---|
| Redocking RMSD | <2.0 Å | AutoDock Vina + RMSD calc |
| Binding energy (typical drug) | −6 to −12 kcal/mol | Vina score |
| Pose cluster population | Top mode should dominate | Vina / ClusPro |
| Key interaction preserved | Same as crystal structure | PLIP / LigPlot+ |
| Ligand strain energy | <5 kcal/mol | Schrödinger / MMFF |
| Protein-peptide interface RMSD | <3.0 Å (backbone) | PyMOL align |
References: Morris et al. AutoDock4 · Trott & Olson AutoDock Vina (2010) · Dominguez et al. HADDOCK (2003) · Yan et al. HDock (2020) · Pierce et al. ZDOCK (2014) · Kozakov et al. ClusPro (2017) · Grosdidier et al. SwissDock (2011)
