Quickstart

Minimal working example for post-docking rescoring

Prerequisites

You will need:

Important: The ligand MOL2 must contain 3D coordinates. If you only have SMILES or 2D structures, use a tool like RDKit or OpenBabel to generate 3D conformers before rescoring.

Example: Single Ligand Rescoring

Input Files

Assume you have the following files:

receptor.pdb    # Prepared protein structure (no waters)
ligand.mol2     # Docked ligand with 3D coordinates

Command

Run the integrated pipeline to rescore the ligand:

rescore integrate \
  --receptor receptor.pdb \
  --ligand ligand.mol2 \
  -o rescore_output/

Workflow

Rescore will automatically:

  1. Prepare the receptor (pdb4amber + tleap with ff14SB)
  2. Parameterize the ligand (GAFF2 + AM1-BCC charges via antechamber)
  3. Assemble the protein-ligand complex
  4. Validate the assembled structure
  5. Run restrained energy minimization (removes docking clashes)
  6. Compute MM/GBSA binding energy

Output

The results are written to rescore_output/:

rescore_output/
├── protein/
│   ├── protein.prmtop         # Receptor topology
│   └── protein.inpcrd         # Receptor coordinates
├── ligand/
│   ├── ligand.mol2            # Parameterized ligand
│   └── ligand.frcmod          # Force field modifications
├── complex/
│   ├── complex.prmtop         # Combined topology
│   └── complex.inpcrd         # Combined coordinates
└── rescore/
    ├── minimization/
    │   ├── minimized_complex.pdb      # Minimized structure
    │   └── minimization_info.txt      # Minimization log
    ├── rescore_output.dat     # Energy results
    ├── rescore.in             # MMPBSA.py input
    └── rescore.log            # Calculation log

Reading Results

The binding energy is reported in rescore/rescore_output.dat:

DELTA TOTAL    -26.65    0.00    0.00

This line shows:

Interpretation: The value -26.65 kcal/mol is a relative score for ranking purposes. It is not an experimental prediction of binding affinity.

Disabling Minimization

If you want to skip the minimization step and score the structure as-is:

rescore integrate \
  --receptor receptor.pdb \
  --ligand ligand.mol2 \
  -o rescore_output/ \
  --no-minimize

Using Poisson-Boltzmann Instead of GB

To use PB solvation (slower, not necessarily more accurate for single-frame):

rescore integrate \
  --receptor receptor.pdb \
  --ligand ligand.mol2 \
  -o rescore_output/ \
  --method pb

Next Steps