Enzyme in purple cartoon with the ligand and the active site shown as spheres

CompBioChem Tutorials QM/MM

Tutorial for the Preparation of Enzyme QM/MM Systems for CP2K

From a PDB structure to a validated QM/MM model of an enzyme-ligand complex (Amber force field, CP2K)

  • Part 1 of Enzyme QM/MM with CP2K
  • AmberTools
  • parmed
  • VMD
  • CP2K

Alexandre V. Pinto, PhD in Chemistry

High Performance Computing in Molecular Modelling Research Group, LAQV-REQUIMTE

Department of Chemistry and Biochemistry, Faculty of Sciences, University of Porto


This tutorial aims to prepare, step by step, a QM/MM model of an enzyme-ligand complex for CP2K, starting from a PDB structure and ending with a validated set of CP2K inputs: an Amber topology and equilibrated coordinates, the &QMMM section (QM atoms, QM/MM links and QM cell), a charge-corrected topology for electrostatic embedding, and single-point tests that confirm the setup before any expensive calculation is started.

It is the companion of the Tutorial for Transition State (TS) searches of Enzymatic Reaction Mechanisms using QM/MM methods in CP2K, which starts exactly where this one ends. Most of the information here came from the CP2K site, the CP2K manual, the Amber tutorials, the CP2K discussion group and the BioExcel QM/MM material listed at the bottom of this page. You should also follow the good practices found in the literature for the specific chemistry of your system.





Example system

All the commands and outputs shown in the tutorial come from a worked example: human α-thrombin, a trypsin-like serine protease with the classic Ser195/His57/Asp102 catalytic triad, in complex with a D-Phe-Pro-benzylamide inhibitor (ligand lig_5 of the OpenFF protein-ligand benchmark, prepared from the crystal structure 2ZFF). The system has about 42 500 atoms after solvation. Thrombin uses the chymotrypsin numbering scheme, with insertion codes, so the residues of the catalytic triad have different numbers in the Amber topology (His57 = 44, Asp102 = 100, Ser195 = 206). Keeping track of this kind of renumbering is part of the work, and we point it out along the way.

The steps are general and apply to any enzyme-substrate or enzyme-inhibitor complex parameterized with an Amber force field. Replace the residue numbers, masks and file names with those of your system.


Requirements

  • AmberTools (pdb4amber, antechamber, parmchk2, tleap, cpptraj, ParmEd) and an MD engine (pmemd.cuda, pmemd or sander). The example was run with AmberTools 23.

  • CP2K, compiled with MPI (cp2k.psmp or cp2k.popt). The inputs were tested with CP2K 2026.2.

  • PROPKA 3 (pip install propka) for pKa estimates, and VMD for visualization and atom selections.

  • Python 3 with ParmEd and NumPy (both come with AmberTools, or pip install parmed numpy) to run the scripts of this repository.


Files

File Description
cp2k_qmmm_setup.py Builds the &QMMM include file (QM_KIND, LINK, QM cell), the &KIND sections, the QM region XYZ and the charge-corrected topology
prmtop_fix_types.py Renames atom types that CP2K cannot read from a prmtop (e.g. Ca2+)
mol2_charge_fix.py Makes the ligand partial charges add up to an integer
cp2k_ewald_scan.sh Scans the Ewald ALPHA parameter with CP2K single points
plot_ewald_scan.py Plots the output of cp2k_ewald_scan.sh
AMBER_INPUTS.zip tleap, MD (min1, min2, heat, npt, prod), run_md.sh and cpptraj inputs
CP2K_INPUTS.zip CP2K inputs for the MM validation, the Ewald scan and the QM/MM single points, with the files generated for the example


Once you have a PDB structure of your enzyme-ligand complex, you are ready to start this tutorial.

*As in the TS tutorial, the QM method of the provided QM/MM inputs is SCC-DFTB with the D3(0) dispersion correction, which allows for fast tests but has several limitations. Check that the method you choose has parameters for every element of your QM region (for example, the SCC-DFTB set distributed with CP2K has no fluorine, which is why the fluorinated ligand of the benchmark was replaced by its unsubstituted analogue in this example).