一键导入
chem-solution-md
Set up and run molecular dynamics simulations of molecules in explicit solvent boxes using Packmol for box construction and MLIPs for dynamics.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Set up and run molecular dynamics simulations of molecules in explicit solvent boxes using Packmol for box construction and MLIPs for dynamics.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Quantify prediction uncertainty of MACE MLIPs using committee (ensemble) models; flag high-uncertainty structures for DFT verification.
Compute phonon-limited carrier mobility and mode-resolved electron-phonon coupling in 2D materials from first principles with Quantum ESPRESSO and EPW.
GPU-accelerated batched inference for MACE, MatGL (TensorNet/M3GNet/CHGNet), and FairChem MLIPs using NValchemi, enabling parallel static, relax, and MD workflows across multiple structures simultaneously.
Extract structured synthesis procedures from a folder of PDFs using the LeMat-Synth GeneralSynthesisOntology schema, producing one JSON file per paper with per-material synthesis records.
Predict LC-MS/MS (MS2, tandem mass spectra) from SMILES via ICEBERG, a two-stage deep neural network. Outputs predicted m/z vs intensity spectrum, fragment ion SMILES, and a spectrum plot.
Match an experimental spectrum (1H NMR, 13C NMR, IR) against predicted or database reference spectra for candidate ranking and structure confirmation. Supports local catalog lookup, public database fallback, and pluggable similarity metrics.
| name | chem-solution-md |
| description | Set up and run molecular dynamics simulations of molecules in explicit solvent boxes using Packmol for box construction and MLIPs for dynamics. |
| category | ["chemistry"] |
Set up and run molecular dynamics (MD) simulations of molecules in explicit solvent. This skill covers three stages: (1) building a solvation box with Packmol, (2) running NPT/NVT MD using MLIPs, and (3) analyzing the trajectory for radial distribution functions (RDFs), coordination numbers, density convergence, and mean-square displacement (MSD).
[!IMPORTANT] This skill bridges gas-phase
chem-*skills and condensed-phasemat-*skills by providing workflows for solvation dynamics, liquid structure characterization, and dissolution studies.
PATH in the base-agent environment.base-agent environment (for SMILES → 3D geometry).Refer to the foundation-potentials skill for model selection.
[!NOTE]
- Organic solvents: Use
MACE-MH-1withomolhead, orUMAwithomoltask.- Aqueous inorganic systems: Use
MACE-MH-1withomat_pbehead, or MatGL/CHGNet.- Mixed organic-inorganic: Use
UMAwhich handles both.
Use the box-building script to create a solvated system with Packmol:
# Env: base-agent
# Pure solvent box (64 water molecules)
python .agents/skills/chem-solution-md/scripts/build_solvation_box.py \
--solvent water \
--num_solvent 64 \
--output_dir research/my_folder/solvation_box
# Solute in solvent (NaCl in 64 water molecules)
python .agents/skills/chem-solution-md/scripts/build_solvation_box.py \
--solute_smiles "[Na+].[Cl-]" \
--solvent water \
--num_solvent 64 \
--output_dir research/my_folder/solvation_box
Key Parameters:
| Argument | Description |
|---|---|
--solvent | Pre-defined solvent name (see available solvents below) |
--solvent_smiles | SMILES string for custom solvent |
--solvent_file | Path to solvent structure file |
--solute_smiles | SMILES string for solute (optional) |
--solute_file | Path to solute structure file (optional) |
--num_solvent | Number of solvent molecules (default: 64) |
--box_size | Cubic box side in Å (auto-calculated from density if omitted) |
--tolerance | Minimum inter-molecular distance in Å (default: 2.0) |
--output_dir | Output directory |
Available pre-defined solvents: water, methanol, ethanol, acetonitrile, dmso, dmf, thf, toluene, acetone, dichloromethane, chloroform, hexane
Output files:
solvated_box.cif — Periodic structure for MDsolvated_box.xyz — Non-periodic XYZ for visualizationbox_metadata.json — Box size, atom counts, solute indicesUse MCP run_md tools for NPT equilibration followed by NVT production.
NPT Equilibration (stabilize density):
mcp_mace_load_model(
model_name="MACE-MH-1",
task_name="omol"
)
mcp_mace_run_md(
structure_data="research/my_folder/solvation_box/solvated_box.cif",
temperature=300,
ensemble="npt",
pressure=1.01325, # 1 atm in bar
steps=5000, # 2.5 ps at 0.5 fs timestep
timestep=0.5, # 0.5 fs for systems with water (fast O-H vibrations)
log_interval=10,
monitor=True,
monitor_type=["explosion", "volume"],
output_dir="research/my_folder/npt_equilibration"
)
NVT Production (use the equilibrated structure):
mcp_mace_run_md(
structure_data="research/my_folder/npt_equilibration/final_structure.cif",
temperature=300,
ensemble="nvt",
steps=20000, # 10 ps at 0.5 fs timestep
timestep=0.5,
log_interval=10,
monitor=True,
monitor_type="explosion",
output_dir="research/my_folder/nvt_production"
)
Run the analysis script on the production trajectory:
# Env: base-agent
python .agents/skills/chem-solution-md/scripts/analyze_solution_md.py \
--trajectory research/my_folder/nvt_production/trajectory.traj \
--rdf_pairs "Na-O,Cl-O,O-O" \
--msd_elements "Na,Cl" \
--log_interval_fs 5.0 \
--output_dir research/my_folder/analysis
Key Parameters:
| Argument | Description |
|---|---|
--trajectory | Path to ASE .traj trajectory file |
--rdf_pairs | Comma-separated element pairs for RDF, e.g. "Na-O,Cl-O" |
--rmax | Maximum RDF distance in Å (default: 8.0) |
--start_frame | First frame to include in analysis (default: 0) |
--stride | Frame stride (default: 1) |
--log_interval_fs | Time between frames in fs (default: 10.0) |
--msd_elements | Comma-separated elements for MSD (optional) |
Output files:
solution_analysis.json — Full results (RDF data, coordination numbers, density, MSD)rdf_plots.png — RDF plots for each element pairdensity_convergence.png — Density vs. timemsd_plot.png — MSD for specified elements (if requested)# Env: base-agent
python .agents/skills/chem-solution-md/scripts/build_solvation_box.py \
--solvent water --num_solvent 64 \
--output_dir .agents/skills/chem-solution-md/examples/pure_water
Expected: 192 atoms (64 × 3), box ~12.4 Å
# Env: base-agent
python .agents/skills/chem-solution-md/scripts/build_solvation_box.py \
--solute_smiles "[Na+].[Cl-]" --solvent water --num_solvent 64 \
--output_dir .agents/skills/chem-solution-md/examples/NaCl_in_water
After MD + analysis, expected RDF peak positions:
base-agent for box building and analysis scriptsAuthor: Bowen Deng Contact: GitHub @learningmatter-mit