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.0.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.0-py3-none-any.whl (46.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mdworks-0.12.0.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.0.tar.gz
Algorithm Hash digest
SHA256 3f6c095f5f56bd0fccf67f2ca101365a2a9051d93e5a0183695a35e8eb5b869c
MD5 c717e4e355fdfead30116b7228aaa06b
BLAKE2b-256 ce0ef332fe1ec7c827a49607e635537e571d940095b18c2c58b89cc73d0c4ac8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mdworks-0.12.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f8cd84cb299a535475cd887404d36f4aa3609524686ac94bacddc9215217eb56
MD5 1c26c9a64399ace34320783a5df77ef2
BLAKE2b-256 7a1f6600e82049432220fbab277af0606ff123cbac22aa68b600c58a9484075b

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