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.11.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.11.0-py3-none-any.whl (45.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mdworks-0.11.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.11.0.tar.gz
Algorithm Hash digest
SHA256 7ce395407aa1517fb21ae82c2f09fbbcd2adc06a27f72131d21726906aed5523
MD5 77f5398dc69604a4b01c08afb5770f39
BLAKE2b-256 ea3082c10d275efbc74fba1162ac0310d95e91f1871514cf5581366aa6482ec5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mdworks-0.11.0-py3-none-any.whl
  • Upload date:
  • Size: 45.5 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.11.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1f3320f36537cd3a2503d4c9d2d3481a247389654920a0003209e09fd77bae59
MD5 b232e9feeba4aab922e8a3e5364db516
BLAKE2b-256 d31c4f17771dd596c734fc7c16957b03191098c09906d3f4a35d3d7e02f165f3

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