CLI Reference

Command-line interface documentation

rescore integrate

Run the complete rescoring pipeline for a single receptor-ligand pair in one command.

Usage

rescore integrate [OPTIONS]

Required Arguments

Option Description
--receptor, -r Path to receptor PDB file (protein only, no waters or ions)
--ligand, -l Path to ligand MOL2 file with 3D coordinates
--output, -o Output directory for all results

Optional Arguments

Option Default Description
--method, -m gb Solvation method: gb or pb
--minimize / --no-minimize --minimize Run restrained minimization before scoring
--skip-validation False Skip structure validation step
--skip-pdb4amber False Skip pdb4amber preprocessing (not recommended)
--plot False Generate bar chart of score components
--rps-replicates None Enable Rapid Perturbation Sampling with N replicates (diagnostic mode)
--rps-sigma 0.2 RPS perturbation magnitude in Angstroms

Example

# Default (GB with minimization)
rescore integrate \
  --receptor protein.pdb \
  --ligand ligand.mol2 \
  -o output/

# With uncertainty quantification (RPS)
rescore integrate \
  --receptor protein.pdb \
  --ligand ligand.mol2 \
  -o output/ \
  --rps-replicates 20

# PB method without minimization
rescore integrate \
  --receptor protein.pdb \
  --ligand ligand.mol2 \
  -o output/ \
  --method pb \
  --no-minimize

Workflow Steps

  1. Protein preparation: pdb4amber normalization + tleap parameterization (ff14SB)
  2. Ligand parameterization: antechamber with GAFF2 and AM1-BCC charges
  3. Complex assembly: tleap combines protein and ligand
  4. Validation: Structure checks (optional)
  5. Minimization: Restrained minimization with GB (optional, default ON)
  6. MM/GBSA calculation: Single-frame energy computation

Output Structure

output/
├── protein/         # Receptor topology files
├── ligand/          # Ligand force field files
├── complex/         # Combined topology
├── rescore/         # Energy results
│   ├── minimization/
│   │   └── minimized_complex.pdb
│   ├── rescore_output.dat
│   └── rescore.log
└── rps_analysis/    # RPS results (if --rps-replicates used)
    ├── replicate_001/
    ├── replicate_002/
    ├── ligand_rps_replicates.csv
    ├── ligand_rps_summary.csv
    └── ligand_rps_distribution.png

Rapid Perturbation Sampling (RPS)

RPS is an optional diagnostic feature available only in rescore integrate mode. It quantifies numerical sensitivity of single-frame MM/GBSA scores to small coordinate perturbations.

What RPS Does

⚠ Chemistry-Frozen Guarantee: Ligand parameterization (antechamber with AM1-BCC) runs only once during the main workflow. Each RPS replicate uses the same charges, atom types, and force field parameters. Only atomic coordinates are perturbed. This ensures that observed score variations are due to geometry alone, not charge fluctuations.

What RPS Is NOT

⚠ CRITICAL: RPS is not molecular dynamics, not conformational sampling, and not pose optimization. It is numerical sensitivity analysis for a fixed docking-derived pose. Use it for uncertainty quantification only, not for ensemble averaging or thermodynamic sampling.

Perturbation Protocol

Usage Example

# Run with 20 perturbation replicates
rescore integrate \
  --receptor protein.pdb \
  --ligand ligand.mol2 \
  -o output/ \
  --rps-replicates 20

# Custom perturbation magnitude
rescore integrate \
  --receptor protein.pdb \
  --ligand ligand.mol2 \
  -o output/ \
  --rps-replicates 20 \
  --rps-sigma 0.3

RPS Outputs

File Description
*_rps_replicates.csv Per-replicate scores (ligand, replicate_id, score)
*_rps_summary.csv Summary statistics (mean, std, CI, CV, stability)
*_rps_distribution.png Violin + boxplot visualization

Interpretation Guidelines

Note: RPS is disabled for rescore batch. If you attempt to use RPS in batch mode, an error will be raised. RPS is designed for ligand-specific diagnostic analysis only.


rescore batch

Rescore multiple ligands against a single receptor. The receptor is prepared once and reused for all ligands, making this efficient for high-throughput screening.

Usage

rescore batch [OPTIONS]

Required Arguments

Option Description
--receptor, -r Path to receptor PDB file
--ligands, -l Directory containing MOL2 files or single MOL2 file
--output, -o Output directory for batch results

Optional Arguments

Option Default Description
--method, -m gb Solvation method: gb or pb
--minimize / --no-minimize --minimize Run restrained minimization for each ligand
--skip-pdb4amber False Skip pdb4amber preprocessing of receptor
--plot False Generate bar chart comparing ligand scores

Example

# Batch rescoring with directory of ligands
rescore batch \
  --receptor protein.pdb \
  --ligands ligands_directory/ \
  -o batch_results/

# With score comparison plot
rescore batch \
  --receptor protein.pdb \
  --ligands ligands_directory/ \
  -o batch_results/ \
  --plot

# Single method change for all ligands
rescore batch \
  --receptor protein.pdb \
  --ligands ligands_directory/ \
  -o batch_results/ \
  --method pb

Input Directory Structure

The --ligands directory should contain MOL2 files:

ligands_directory/
├── compound_1.mol2
├── compound_2.mol2
├── compound_3.mol2
└── ...

Output Structure

batch_results/
├── receptor/                # Prepared once, reused
├── ligands/
│   ├── compound_1/
│   │   ├── ligand/
│   │   ├── complex/
│   │   └── rescore/
│   │       ├── minimization/
│   │       └── rescore_output.dat
│   ├── compound_2/
│   └── ...
└── rescore_batch_results.csv    # Summary table

CSV Output

Results are summarized in rescore_batch_results.csv:

ligand_name,delta_g_bind,delta_h,delta_g_gb,status
compound_1,-26.65,-65.65,39.00,success
compound_2,-31.42,-70.18,38.76,success
compound_3,-22.14,-58.90,36.76,success
Column Description
ligand_name Ligand filename (without extension)
delta_g_bind Total binding energy (kcal/mol)
delta_h Enthalpy contribution (kcal/mol)
delta_g_gb Polar solvation energy (kcal/mol)
status success or error message

Note: Batch processing is sequential—each ligand is processed one at a time. However, AmberTools parallelizes internal calculations across CPU cores.

Processing Details


Additional Commands

Rescore provides modular commands for advanced users who want fine-grained control over each pipeline step. These are not required for typical use cases.

Command Purpose
rescore validate Validate protein-ligand complex structure
rescore prep-protein Prepare receptor with pdb4amber + tleap
rescore parameterize Parameterize ligand with GAFF2 + AM1-BCC
rescore assemble Assemble protein-ligand complex topology
rescore run Run MM/GBSA on pre-assembled complex

For detailed help on any command:

rescore <command> --help