Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.revilico.bio/llms.txt

Use this file to discover all available pages before exploring further.

Why Use This Engine?

In the documentation below, we will use Revilico’s RevQS engine to compute the quantum mechanical binding interaction energy between a ligand and its protein binding pocket using density functional theory (DFT). Unlike empirical scoring functions or machine learning models trained on binding data, RevQS derives the interaction energy directly from first principles, capturing electrostatics, exchange-repulsion, polarization, charge-transfer, and London dispersion from the electronic wavefunction. This provides a physics-grounded binding score that is particularly valuable for lead optimization, distinguishing close structural analogs, and validating binding hypotheses in cases where force-field or ML approaches give inconsistent results.
RevQS Workflow

Background

Classical molecular docking scoring functions approximate binding affinity using parametrized empirical terms. Machine learning scoring functions learn statistical patterns from experimental data. Both approaches are fast but rely on approximations that can fail for unusual chemistries, charged systems, or novel scaffolds outside the training distribution. DFT scoring computes the quantum mechanical wavefunction of the entire protein pocket and ligand system, capturing all physical interaction terms from first principles without empirical parametrization. The central challenge in applying DFT to protein-ligand systems is the basis-set superposition error (BSSE), an artifactual stabilization that arises when the basis functions of one fragment assist the description of the other. RevQS corrects for this using the Boys-Bernardi counterpoise (CP) method, which computes the interaction energy using a consistent extended basis set that spans both fragments. The result is an interaction energy that accurately reflects the true quantum mechanical binding contribution.

Pocket Preparation

Given a protein PDB file and a ligand SDF file containing a docked 3D pose, RevQS first prepares the binding pocket. Protonation states are assigned at the specified pH (default 7.4) using PDBFixer. All protein residues within a user-defined cutoff radius (default 10 Angstroms) of any ligand atom are included in the pocket fragment. If the number of atoms exceeds the maximum (default 120 for def2-SVP), the farthest residues are trimmed until the limit is met. Backbone bonds cut at the residue boundaries are capped with hydrogen atoms to maintain chemical valence. The total pocket charge is estimated from standard amino acid formal charges (ARG and LYS contribute +1, ASP and GLU contribute -1).

DFT Calculation and CP Correction

Three separate single-point DFT calculations are performed to implement the Boys-Bernardi counterpoise correction: E(complex): The full quantum mechanical calculation of the protein pocket and ligand together, using the combined basis set of all atoms. E(protein, ghost ligand): The protein pocket calculation with the ligand atoms represented as ghost atoms, providing basis functions but no electron density or nuclear charges. E(ligand, ghost protein): The ligand calculation with the protein pocket atoms as ghost atoms. The counterpoise-corrected interaction energy is: ΔECP=E(complex)E(proteinghost)E(ligandghost)\Delta E_{\text{CP}} = E(\text{complex}) - E(\text{protein}_{\text{ghost}}) - E(\text{ligand}_{\text{ghost}}) This correction removes the artificial stabilization caused by basis set incompleteness. The RevQS score is reported as the negative of the interaction energy so that more favorable binding gives a larger positive score: RevQS score=ΔECP(kcal/mol)\text{RevQS score} = -\Delta E_{\text{CP}} \quad (\text{kcal/mol}) Ligand efficiency is computed as the RevQS score normalized by the number of heavy atoms: LE=RevQS scoreNheavy atoms(kcal/mol per heavy atom)\text{LE} = \frac{\text{RevQS score}}{N_{\text{heavy atoms}}} \quad (\text{kcal/mol per heavy atom})

DFT Method

Default functional: wB97M-V RevQS uses the range-separated hybrid meta-GGA functional wB97M-V with built-in VV10 non-local correlation. This functional was specifically parametrized on the MGCDB84 database to describe non-covalent interactions accurately, including London dispersion, polarization, and charge-transfer, without any additional empirical dispersion correction. It consistently outperforms B3LYP-D3 and other popular functionals on benchmark sets for protein-ligand non-covalent interactions. Default basis set: def2-SVP The def2-SVP double-zeta polarization basis set provides a good balance between accuracy and computational cost for pocket sizes of up to 250 atoms on a single A10G GPU (24 GB VRAM). For higher accuracy, def2-TZVP (triple-zeta) reduces basis-set incompleteness significantly but limits the system size to approximately 120 atoms on the same hardware. Alternative functionals for faster calculations include B3LYP-D3(BJ), PBE0-D3(BJ), and M06-2X, which are 3 to 4 times faster than wB97M-V at some cost to accuracy for dispersion-dominated interactions. GPU acceleration is provided via GPU4PySCF, which implements the DFT calculation on NVIDIA GPUs using a batched Coulomb and exchange matrix build algorithm. Calculations fall back to CPU automatically if no CUDA hardware is available.

F-SAPT Decomposition

When the F-SAPT option is enabled, the interaction energy is further decomposed into four physically interpretable components using functional-group symmetry-adapted perturbation theory (F-SAPT) via Psi4: ΔEint=Eelec+Eexch+Eind+Edisp\Delta E_{\text{int}} = E_{\text{elec}} + E_{\text{exch}} + E_{\text{ind}} + E_{\text{disp}} Where EelecE_{\text{elec}} is the classical electrostatic interaction between unperturbed charge densities, EexchE_{\text{exch}} is the Pauli exchange-repulsion arising from wavefunction antisymmetry, EindE_{\text{ind}} captures polarization and charge-transfer response, and EdispE_{\text{disp}} captures London dispersion forces from correlated electron fluctuations. This decomposition reveals whether binding is primarily electrostatically or dispersion driven, which directly informs medicinal chemistry decisions about which substituents to modify.

Interaction Map

The interaction map decomposes the total interaction energy into per-residue contributions using a frozen-background DFT approximation, providing an atomic-resolution picture of which binding site residues contribute most to the overall RevQS score. Each residue’s contribution is classified by dominant interaction type (electrostatic or dispersion), enabling structure-guided optimization decisions such as which residues to target for improved van der Waals contacts or hydrogen bond geometry.

Running the Engine

Inputs

ParameterDefaultDescription
Protein PDBRequiredProtein structure (ligand removed)
Ligand SDFRequiredPre-docked 3D pose (protonated)
Functionalwb97m-vDFT exchange-correlation functional
Basis setdef2-svpGaussian basis set
Pocket cutoff10.0 AResidue inclusion radius around ligand
Max pocket atoms120Atom count cap for GPU memory management
pH7.4Target pH for protonation state assignment
Run F-SAPTFalseEnable interaction energy decomposition
Run interaction mapTrueEnable per-residue contribution analysis

Outputs

  • RevQS score: CP-corrected DFT interaction energy in kcal/mol (positive = favorable)
  • Ligand efficiency: RevQS score per heavy atom in kcal/mol
  • BSSE correction: Magnitude of the counterpoise correction in kcal/mol
  • F-SAPT decomposition: Electrostatic, exchange, induction, and dispersion components (if enabled)
  • Interaction map: Per-residue interaction energies with dominant interaction type classification
  • Pocket composition: Number of residues, atoms, and charges in the pocket fragment
  • Computation metadata: Functional, basis set, wall time, GPU used