A modular platform for constructing molecular dynamics simulations (Chemical Compiler).
Project description
██████
█▓▓▓▓▓▓▓▓▓▓▓████ ████████████████████
██▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ ██▓▓▓▓▓▓▓▓▓▓▓█ ██▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ▓ ▓██
█▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ █▓▓▓▓▓▓▓▓▓▓▓▓█▒ █▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ▓▓█
█▓▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓██ █▓▓▓▓▓▓▓▓▓▓██ ████▓▓▓▓▓██████████▓▓▓▓▓▓██
░█▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓▓█ █▓▓▓▓▓█ █▓▓▓▓▓█ ██▓▓▓▓▓██
██▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓██ █▓▓▓▓▓█ █▓▓▓▓▓█ █▓▓▓▓▓▓██
█▓▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓██ █▓▓▓▓▓█████ ██████▓▓▓▓▓█ ██▓▓▓▓▓██
█▓▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓▓█▓ █▓▓▓▓▓▓▓▓▓▓▓█ ██▓▓▓▓▓▓▓▓▓▓▓█ █▓▓▓▓▓█
█▓▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ █▓▓▓▓▓▓▓▓▓▓▓▓▓██▓▓▓▓▓▓▓▓▓▓▓▓▓█ ██▓▓▓▓█
█▓▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ █▓▓▓▓▓███▓▓▓▓▓▓▓▓▓▓▓▓███▓▓▓▓▓█ ██▓▓▓▓█
█▓▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ █▓▓▓▓▓█ ██▓▓▓▓▓▓▓▓██ █▓▓▓▓▓█ ██▓▓▓▓█
█▓▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ █▓▓▓▓▓█ █▓▓▓▓▓██ █▓▓▓▓▓█ ██▓▓▓▓█
█▓▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ █▓▓▓▓▓█ █▓▓▓▓▓█ █▓▓▓▓▓█ ██▓▓▓▓█
█▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓████▓▓▓▓▓▓█ █▓▓▓▓▓█ █▓▓▓▓▓█ █▓▓▓▓▓█ ██▓▓▓▓█
█▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██ ░░██████ █▓▓▓▓▓█ █▓▓▓▓▓█ █▓▓▓▓▓█ ██▓▓▓▓█
█▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ ██▓▓▓▓██ █▓▓▓▓▓█ █▓▓▓██ █▓▓▓▓▓█ ██▓▓▓▓█
░█▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ ██▓▓▓▓▓▓▓██ █▓▓▓▓▓█ █▓▓▓▓▓█ ██▓▓▓▓█
█▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ ███▓▓▓▓▓▓▓▓▓█ ██▓▓▓▓▓█ █▓▓▓▓▓█ ██▓▓▓▓▓█
█▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓███▓▓▓▓▓▓▓▓▓▓▓▓██ █▓▓▓▓█ █▓▓▓▓▓█ █▓▓▓▓▓▓█
█▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ █▓▓▓█ █▓▓▓▓▓█ ██▓▓▓▓▓██
█▓▓▓▓▓▓▓▓▓▓▓▓▓▓█████▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ ██▓▓▓█ █▓▓▓▓▓█ █▓▓▓▓▓▓██
█▓▓▓▓▓▓▓▓▓▓▓▓████████▓▓▓▓▓▓▓▓▓▓▓▓▓██ ░██▓▓▓▓▓▓▓▓▓█ █▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█
█▓▓▓▓▓▓▓▓▓█████████ ██▓▓▓▓▓▓▓▓▒▒▒▓▓█████▓▓▓▓▓▓▓▓▓▓▓▓█ █▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██
█████████ ██▓▓▓▓█▓▓▓█████▓▓▓▓▓▓▓▓▓▓▓▓▓██ ██▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██
DoMD
DoMD is a toolkit for atomistic molecular dynamics modelling.
Installation
Quick installation for the release
# Download and unzip the release zip file
$ cd <path-to-domd>
$ conda env create -f environment.yml
$ conda activate domd-toolkit
$ python -c 'from domd_tools import *; print("Success install domd.")'
Step-by-step installation from repo
We recommend using conda to manage your environment. Follow the steps below to set up DoMD:
1. Create and Activate the Conda Environment
conda create -n domd-toolkit -c conda-forge python==3.12 nomkl numpy rdkit=2025.03.6 openbabel numba networkx pandas scipy jupyter scikit-learn matplotlib MDAnalysis
conda activate domd-toolkit
2. Install PyTorch and Additional Dependencies
pip3 install torch torchvision --index-url https://download.pytorch.org/whl/cpu
pip3 install torch_geometric pdbreader
3. Download the Toolkit
You can obtain the DoMD toolkit via GitHub or by downloading our official release. Please choose one of the following options:
Option A: Clone from GitHub (Requires manual database download)
- Clone the repository:
git clone https://github.com/DoMD-toolkit/DoMD.git
- Important: Download the required forcefield database
opls.db(large file) from Google Drive Link. - Move
opls.dbinto the following directory:DoMD/domd_forcefield/oplsaa/resources/opls.db
Option B: Download the Release DoMD.zip (Recommended)
Download the latest DoMD.zip file from the Releases page. The opls.db file is already included in the compressed package, so no extra downloads are necessary. Unzip the file before proceeding.
4. Install DoMD
Navigate to the root directory of the project (where setup.py is located) and install it in editable mode:
cd DoMD
pip install -e .
Usage Examples & Testing
Navigate to the polyimide example directory:
cd <path-to-the-examples>/pi
1. End-to-End Workflow
Run the main script to process a pre-equilibrated Coarse-Grained (CG) configuration:
python polyimides.py
- Outputs: *
chemfast.gro: The back-mapped All-Atom (AA) conformation.chemfast.top: The GROMACS-compatible force field and topology file.out_chemfast.xml: The PyGAMD xml intput
- Purpose: These files are ready for immediate use in atomistic simulations using GROMACS.
2. Step-by-Step Module Testing
We also provide individual tests for specific S-CGFG functions to demonstrate the underlying workflow:
-
CG Topology Generation
python cg.pyGenerates an initial CG configuration (e.g., linear chains) and force field parameters based on HSP (Hansen Solubility Parameters) predictions. This is typically used for pre-equilibration or reaction runs. (Note: This step is optional as a pre-equilibrated configuration is already provided).
- Output:
out_chemfast_cg.xmlfile for PyGAMD, andcg_params.txtas CG forcefield parameters.
- Output:
-
CG Parameterization
python cg_params.pyGenerates CG simulation force field parameters only from specific monomers and reaction templates.
- Output:
cg_parameters.txt
- Output:
-
Back-mapping (CG to FG)
python fg.pyTests the Coarse-Grained to Fine-Grained (AA) conversion.
- Outputs: AA conformations (stored in the
aa_confs/folder) and topology metadata (meta_aa_top.pkl).
- Outputs: AA conformations (stored in the
-
Force Field Parameterization
python ff.pyPerforms force field parameterization by reading
meta_aa_top.pkl.- Output:
meta_ffs.pkl
- Output:
-
Final Assembly
python output.pyAssembles the AA conformations and force field data into standard GROMACS input formats.
- Outputs: Final
.gro,.topand.xml(for PyGAMD) files.
- Outputs: Final
Large Files & Databases
Due to file size limits, our large database files are hosted externally. You can download them from this Google Drive Link.
domd_forcefield/oplsaa/resources/opls.db(Required) This is the core database necessary for standard force field assignment and running the toolkit.domd_database/forcefield/oplsaa/data/ligpargen/AllData.pkl(Optional) This file is strictly used for training the ML force field models. You can ignore this file if you are only running standard simulations.
Documentation
- Online: Access the latest manuals, API references, and tutorials at our official Documentation Site.
- Offline: You can also browse the documentation locally by opening
docs/build/html/index.htmlfrom your cloned repository in any web browser.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file domd_toolkit-1.0.0.tar.gz.
File metadata
- Download URL: domd_toolkit-1.0.0.tar.gz
- Upload date:
- Size: 131.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f22f5529653da9d2f425ec900789134d73a5d1e7b3b0bb641702f970904390d
|
|
| MD5 |
fca50ca93a7ab0209df31c778595e066
|
|
| BLAKE2b-256 |
60eae2a2b139e36038289c9687a69133f027a6c056b7f2617e24d524238d856b
|
File details
Details for the file domd_toolkit-1.0.0-py3-none-any.whl.
File metadata
- Download URL: domd_toolkit-1.0.0-py3-none-any.whl
- Upload date:
- Size: 148.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1144e26636ee7b510fbfc28db4979fef1c860a2fca3bfeb51d0df5fb3af6544
|
|
| MD5 |
4111f62d922a2ac4f7300c513dd18cf3
|
|
| BLAKE2b-256 |
e32e3e3b116e4b709ee292ac0484be8179db09a625c4d7f25f86675d27148e2f
|