Skip to main content

Streamlines preparation and equilibration of molecular complex for MD simulations

Project description

Streamlines preparation and equilibration of molecular complex for MD simulations

Whether the atomic coordinates come from experimentally determined complex structures or from co-folding AI models, they often require adjustments such as correcting ligand stereochemistry or fixing other structural details needed for molecular dynamics. mdworks streamlines this process by making it easy to prepare a valid protein-ligand complex and setup up and run equilibrium MD simulations with OpenMM.

Install

Pixi

# Install pixi

$ curl -fsSL https://pixi.sh/install.sh | sh

Please check out Pixi installation for more details.

Mdworks

$ git clone https://github.com/sunghunbae/mdworks.git
$ cd mdworks
$ pixi install

Jupyter Notebook

  1. Add mdworks environment to JupyterLab
python -m ipykernel install --user --name='mdworks'
  1. Start the Jupyter lab
jupyter lab

Usage

from mdworks import ValidComplex
from mdworks.protocol import Equilibrium

vc = ValidComplex('protein_ligand_complex.cif')

# fix ligand stereochemistry
vc.fix_ligand(`target_SMILES`)

# am1bcc charges
vc.assign_ligand_charges()

# build openmm system
vc.build_system()

# run multi-stage equilibrium MD simulations
md = Equilibrium(vc)
md.run()

Multi-stage Equilibrium Protocol

Stage temperature (K) posres (kJ/mol/nm**2) friction (1/ps) time (ps) timestep (fs)
Energy Minimization 1000
NVT cold 10 1000 5 100 1
NVT warm 10 -> 300 1000 1 145 2
NPT posres 300 1000 -> 0 1 300 2
NPT free 300 0 1 500 2
NPT production 300 0 1 user 2 or 4 (HMR)

Desmond-like Equilibrium Protocol

  1. Energy Minimization
  2. Brownian Dynamics NVT, T = 10 K, small timesteps, and restraints on solute heavy atoms, 100ps, k=50
  3. NVT, T = 10 K, small timesteps, and restraints on solute heavy atoms, 12ps, k=50
  4. NPT, T = 10 K, and restraints on solute heavy atoms, 12ps, k=50
  5. NPT and restraints on solute heavy atoms, 12ps, k=50
  6. NPT and no restraints, 24ps

Notes:

  • 50 kcal/mol/A2 is equal to 20,920 kJ/mol/nm2 (1 kcal/mol/A2 = 418.4 kJ/mol/nm2)
  • scale to the typically used positional restraint force constant (1000 kJ/mol/nm**2)
Stage temperature (K) posres (kJ/mol/nm**2) friction (1/ps) time (ps) timestep (fs)
Energy Minimization 1000
Brownian 10 1000 50 100 1
NVT cold 10 1000 1 12 2
NPT cold 10 200 1 12 2
NPT warm 10 -> 300 40 1 12 2
NPT free 300 0 1 24 2
NPT production 300 0 1 user 2 or 4 (HMR)

Brownian MD

Brownian dynamics corresponds to:

  • Motion dominated by friction + random force
  • Inertia negligible
  • Overdamped limit of Langevin dynamics
  • Langevin dynamics with very high friction and small timestep
  • Use with positional restraints is recommended
  • When to use:
    • Initial solvent relaxation
    • Ion placement adjustment
    • Avoids solute distortion
    • Prevents pressure spikes later

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mdworks-0.12.1.tar.gz (6.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mdworks-0.12.1-py3-none-any.whl (46.2 kB view details)

Uploaded Python 3

File details

Details for the file mdworks-0.12.1.tar.gz.

File metadata

  • Download URL: mdworks-0.12.1.tar.gz
  • Upload date:
  • Size: 6.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for mdworks-0.12.1.tar.gz
Algorithm Hash digest
SHA256 469a35a65b3a78bb606f4c4e68bb6bb83ef8ec9697e5419e5438592f8fbc680a
MD5 52178e04713646820d7c527dadb144bd
BLAKE2b-256 c70dd67b9681eb12559add0115830bde490ad46109f0ecc9ecef0e63a3847abf

See more details on using hashes here.

File details

Details for the file mdworks-0.12.1-py3-none-any.whl.

File metadata

  • Download URL: mdworks-0.12.1-py3-none-any.whl
  • Upload date:
  • Size: 46.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for mdworks-0.12.1-py3-none-any.whl
Algorithm Hash digest
SHA256 90f89163a126ef511bc03b406ad54b27bb1a1a8d851ca83c35c0a32f7b406279
MD5 57ae3ec107ff18a123249881fe7d7cec
BLAKE2b-256 66c3fc1571da194f88306b492bb625220f6486021d9307a54d9d3b44f4fd486d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page