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.5.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.5.0-py3-none-any.whl (34.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mdworks-0.5.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.5.0.tar.gz
Algorithm Hash digest
SHA256 29921180d3cf6fa1e6a9cd50b7a7a20a54a191a8db7f3066064f25f0ca3a7182
MD5 d1197183408e03f88eb5e2bba04295e2
BLAKE2b-256 8262872dfd073f08077a080a304f410bdacd86714f11f607e7e2020a4ec78322

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mdworks-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 34.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.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 465fbe9a5ff36ad47ff3f452d8b2b8de7b4431517c9c4cc9920c01882b267e9a
MD5 433159cdda0435904776e161c70f5b08
BLAKE2b-256 93bcdae9cdf37790215860a9bbcc76e78ca061f0570d29876c73079e0a0f09cb

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