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.13.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.13.0-py3-none-any.whl (47.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mdworks-0.13.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.13.0.tar.gz
Algorithm Hash digest
SHA256 8cabd5ccab1f1507aabc8231afe27235f3e2479f58dfb0895818aa507c8e2d7c
MD5 9215c1f596cd1401971c0f0ed37b9fa3
BLAKE2b-256 38038a41d7b9c867c6148ee0710faf9217953643ab64e6845dfdf921a412e356

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mdworks-0.13.0-py3-none-any.whl
  • Upload date:
  • Size: 47.4 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.13.0-py3-none-any.whl
Algorithm Hash digest
SHA256 678fdd1f80506abb8394c919de5794b4eec02cc361a787319041036987a5677c
MD5 c88cbf8b116e6ef3d868f5515ce4fbe4
BLAKE2b-256 82c50b02ae00bec0bd734498b2cf6baf977cfdfce86752d09828a1dd6c78789d

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