3. Distilling a Cyclohexane Potential from a DPA3 Pretrained Model#

Open In Bohrium

This tutorial demonstrates how to distill a compact Deep Potential model for cyclohexane from a DPA3 pretrained Teacher model. It is adapted from the experimental materials of the Artificial Intelligence and Molecular Science course at the University of Science and Technology of China.

The workflow uses the pretrained DPA-3.2-5M model as the Teacher potential. We first run molecular dynamics (MD) for cyclohexane with the Teacher model, then extract configurations from the trajectory together with the Teacher-predicted energy and force labels. Finally, we train a smaller Student DeePMD model that reproduces the Teacher response within the sampled cyclohexane configuration space and use the Student model for a longer MD simulation.

  • DPA3: a DeePMD-kit atomic environment representation that combines atomic, radial, and angular information to describe local chemical environments.

  • Knowledge distillation: a model-compression strategy. In this tutorial, the Student model learns Teacher-predicted energy and force labels, not direct DFT labels. The goal is to approximate the Teacher potential for a specific molecular system at a lower inference cost.

Workflow:

  1. Generate an initial cyclohexane structure.

  2. Run Teacher MD with the DPA3 pretrained model.

  3. Extract configurations and Teacher energy / force labels.

  4. Build a DeePMD training dataset.

  5. Train a compact Student potential.

  6. Run longer MD with the Student potential.

Cyclohexane is a convenient documentation example because it is a small organic molecule with only C and H atoms, so the calculation is fast enough for a tutorial. However, a short unbiased MD trajectory started from one initial structure should not be interpreted as a complete conformational search. At room temperature it will usually remain in the chair basin. Observing rare ring-flip events or a statistically meaningful population of boat and twist-boat conformers requires much longer trajectories, higher-temperature sampling, or enhanced-sampling methods. This tutorial therefore uses cyclohexane mainly to demonstrate the distillation workflow and to visualize representative structures within the sampled region.

3.1. Install the required packages#

DeePMD-kit supports multiple backends. Because the pretrained weights used here are based on PyTorch, this tutorial installs the PyTorch backend.

!pip install deepmd-kit[torch] dpdata ase matplotlib openbabel-wheel py3Dmol tqdm

3.2. Import dependencies#

This section imports the Python packages used later in the tutorial. The imports are intentionally kept close to the beginning so that missing packages fail early.

Standard library modules:

  • json: read and write JSON configuration files.

  • os: query system information and paths.

  • subprocess: run external commands when needed.

  • time: measure elapsed time.

  • pathlib.Path: handle paths in a platform-independent way.

Third-party packages:

  • numpy: numerical arrays and analysis.

  • dpdata: data conversion and DeePMD dataset writing.

from pathlib import Path

import numpy as np
import dpdata

3.3. Prepare the Teacher model weights#

The distillation workflow requires a pretrained model as the Teacher potential. This tutorial uses the publicly available DPA-3.2-5M model.

Run the following cell to download the weights and copy them into a local weights/ directory.

%%bash
set -euo pipefail

dp pretrained download DPA-3.2-5M
mkdir -p weights
cp "$HOME/.cache/deepmd/pretrained/models/DPA-3.2-5M.pt" "weights/DPA-3.2-5M.pt"
[2026-06-20 21:19:18,866] DEEPMD INFO    Selecting fastest source among 3 candidates...
[2026-06-20 21:19:18,866] DEEPMD INFO    Downloading 'DPA-3.2-5M' (source 1/3): https://modelscope.cn/models/DeepModelingCommunity/DPA-3.2-5M/resolve/master/DPA-3.2-5M.pt
[2026-06-20 21:19:23,383] DEEPMD INFO    Downloaded 'DPA-3.2-5M' to: /root/.cache/deepmd/pretrained/models/DPA-3.2-5M.pt
[2026-06-20 21:19:23,383] DEEPMD INFO    Pretrained model path: /root/.cache/deepmd/pretrained/models/DPA-3.2-5M.pt
/root/.cache/deepmd/pretrained/models/DPA-3.2-5M.pt

Inspect the available model branches and the type map.

DPA-3.2-5M is a multitask model. The cells below first list the available branches and type map. The Teacher MD later uses the OMol25 branch explicitly because cyclohexane is an organic molecular system.

!dp --pt show weights/DPA-3.2-5M.pt model-branch type-map
[2026-06-20 21:19:30,456] DEEPMD WARNING To get the best performance, it is recommended to adjust the number of threads by setting the environment variables OMP_NUM_THREADS, DP_INTRA_OP_PARALLELISM_THREADS, and DP_INTER_OP_PARALLELISM_THREADS. See https://deepmd.rtfd.io/parallelism/ for more information.
[2026-06-20 21:19:37,012] DEEPMD WARNING You can use the environment variable DP_INFER_BATCH_SIZE tocontrol the inference batch size (nframes * natoms). The default value is 1024.
[2026-06-20 21:19:40,636] DEEPMD WARNING You can use the environment variable DP_INFER_BATCH_SIZE tocontrol the inference batch size (nframes * natoms). The default value is 1024.
[2026-06-20 21:19:40,636] DEEPMD INFO    This is a multitask model
[2026-06-20 21:19:40,637] DEEPMD INFO    Available model branches are ['OMat24', 'OMol25', 'OC20M', 'Alloy_APEX', 'Domains_Alloy', 'Alex2D', 'ODAC23', 'Organic_Reactions', 'OC22', 'MPTrj', 'SSE_ABACUS', 'Domains_SSE_PBE', 'Electrolyte', 'Domains_SemiCond', 'Domains_Anode', 'Domains_Cluster', 'Hybrid_Perovskite', 'Domains_FerroEle', 'H2O_H2O_PD', 'Others_In2Se3', 'Metals_AlMgCu', 'Metals_AgAu_PBED3', 'MPGen_OpenCSP', 'RANDOM'], where 'RANDOM' means using a randomly initialized fitting net.
[2026-06-20 21:19:40,641] DEEPMD INFO    Detailed information: 
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Model Branch      | Alias                     | description                    | observed_type                  |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| OMat24            | Default, Materials,       | OMat24 is a large-scale open   | ['H', 'He', 'Li', 'Be', 'B',   |
|                   | Omat24, materials, omat24 | dataset containing over 110    | 'C', 'N', 'O', 'F', 'Ne',      |
|                   |                           | million DFT calculations       | 'Na', 'Mg', 'Al', 'Si', 'P',   |
|                   |                           | spanning diverse structures    | 'S', 'Cl', 'Ar', 'K', 'Ca',    |
|                   |                           | and compositions. It is        | 'Sc', 'Ti', 'V', 'Cr', 'Mn',   |
|                   |                           | designed to support AI-driven  | 'Fe', 'Co', 'Ni', 'Cu', 'Zn',  |
|                   |                           | materials discovery by         | 'Ga', 'Ge', 'As', 'Se', 'Br',  |
|                   |                           | providing broad and deep       | 'Kr', 'Rb', 'Sr', 'Y', 'Zr',   |
|                   |                           | coverage of chemical space.    | 'Nb', 'Mo', 'Tc', 'Ru', 'Rh',  |
|                   |                           |                                | 'Pd', 'Ag', 'Cd', 'In', 'Sn',  |
|                   |                           |                                | 'Sb', 'Te', 'I', 'Xe', 'Cs',   |
|                   |                           |                                | 'Ba', 'La', 'Ce', 'Pr', 'Nd',  |
|                   |                           |                                | 'Pm', 'Sm', 'Eu', 'Gd', 'Tb',  |
|                   |                           |                                | 'Dy', 'Ho', 'Er', 'Tm', 'Yb',  |
|                   |                           |                                | 'Lu', 'Hf', 'Ta', 'W', 'Re',   |
|                   |                           |                                | 'Os', 'Ir', 'Pt', 'Au', 'Hg',  |
|                   |                           |                                | 'Tl', 'Pb', 'Bi', 'Ac', 'Th',  |
|                   |                           |                                | 'Pa', 'U', 'Np', 'Pu']         |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| OMol25            | Molecules, molecules,     | Open Molecules 2025 (OMol25)   | ['H', 'He', 'Li', 'Be', 'B',   |
|                   | omol25                    | Dataset is a large-scale       | 'C', 'N', 'O', 'F', 'Ne',      |
|                   |                           | resource for training          | 'Na', 'Mg', 'Al', 'Si', 'P',   |
|                   |                           | molecular chemistry machine    | 'S', 'Cl', 'Ar', 'K', 'Ca',    |
|                   |                           | learning models. OMol25        | 'Sc', 'Ti', 'V', 'Cr', 'Mn',   |
|                   |                           | comprises over 100 million DFT | 'Fe', 'Co', 'Ni', 'Cu', 'Zn',  |
|                   |                           | single-point calculations      | 'Ga', 'Ge', 'As', 'Se', 'Br',  |
|                   |                           | containing up to 350 atoms at  | 'Kr', 'Rb', 'Sr', 'Y', 'Zr',   |
|                   |                           | a high level of DFT theory.    | 'Nb', 'Mo', 'Tc', 'Ru', 'Rh',  |
|                   |                           |                                | 'Pd', 'Ag', 'Cd', 'In', 'Sn',  |
|                   |                           |                                | 'Sb', 'Te', 'I', 'Xe', 'Cs',   |
|                   |                           |                                | 'Ba', 'La', 'Ce', 'Pr', 'Nd',  |
|                   |                           |                                | 'Pm', 'Sm', 'Eu', 'Gd', 'Tb',  |
|                   |                           |                                | 'Dy', 'Ho', 'Er', 'Tm', 'Yb',  |
|                   |                           |                                | 'Lu', 'Hf', 'Ta', 'W', 'Re',   |
|                   |                           |                                | 'Os', 'Ir', 'Pt', 'Au', 'Hg',  |
|                   |                           |                                | 'Tl', 'Pb', 'Bi']              |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| OC20M             | Catalysis, catalysis      | The OC20M is a subset of OC20  | ['H', 'B', 'C', 'N', 'O',      |
|                   |                           | dataset, which contains over   | 'Na', 'Al', 'Si', 'P', 'S',    |
|                   |                           | 1.2 million DFT relaxations    | 'Cl', 'K', 'Ca', 'Sc', 'Ti',   |
|                   |                           | and approximately 265 million  | 'V', 'Cr', 'Mn', 'Fe', 'Co',   |
|                   |                           | single-point evaluations       | 'Ni', 'Cu', 'Zn', 'Ga', 'Ge',  |
|                   |                           | covering diverse catalyst      | 'As', 'Se', 'Rb', 'Sr', 'Y',   |
|                   |                           | surfaces and adsorbates        | 'Zr', 'Nb', 'Mo', 'Tc', 'Ru',  |
|                   |                           | involving C, N, and O species. | 'Rh', 'Pd', 'Ag', 'Cd', 'In',  |
|                   |                           |                                | 'Sn', 'Sb', 'Te', 'Cs', 'Hf',  |
|                   |                           |                                | 'Ta', 'W', 'Re', 'Os', 'Ir',   |
|                   |                           |                                | 'Pt', 'Au', 'Hg', 'Tl', 'Pb',  |
|                   |                           |                                | 'Bi']                          |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Alloy_APEX        | Alloys, Alloy_tongqi,     | The dataset covers elemental   | ['Li', 'Be', 'Na', 'Mg', 'Al', |
|                   | Li2025APEX, alloys        | and multi-component alloy      | 'Si', 'K', 'Ca', 'Sc', 'Ti',   |
|                   |                           | systems composed of 53         | 'V', 'Cr', 'Mn', 'Fe', 'Co',   |
|                   |                           | metallic elements, including   | 'Ni', 'Cu', 'Zn', 'Ga', 'Ge',  |
|                   |                           | structures with defects such   | 'Sr', 'Y', 'Zr', 'Nb', 'Mo',   |
|                   |                           | as vacancies, interstitials,   | 'Ru', 'Rh', 'Pd', 'Ag', 'Cd',  |
|                   |                           | and surfaces. These            | 'In', 'Sn', 'La', 'Ce', 'Pr',  |
|                   |                           | configurations are generated   | 'Nd', 'Sm', 'Gd', 'Tb', 'Dy',  |
|                   |                           | for single elements,           | 'Ho', 'Er', 'Tm', 'Lu', 'Hf',  |
|                   |                           | compounds, solid solutions,    | 'Ta', 'W', 'Re', 'Os', 'Ir',   |
|                   |                           | and their defects over 50–3000 | 'Pt', 'Au', 'Pb']              |
|                   |                           | K and −0.5–5 GPa.              |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Domains_Alloy     | Dai2023Alloy              | The dataset contains           | ['Li', 'Be', 'Na', 'Mg', 'Al', |
|                   |                           | structure-energy-force-virial  | 'Si', 'K', 'Ca', 'Sc', 'Ti',   |
|                   |                           | data for 53 typical metallic   | 'V', 'Cr', 'Mn', 'Fe', 'Co',   |
|                   |                           | elements in alloy systems,     | 'Ni', 'Cu', 'Zn', 'Ga', 'Ge',  |
|                   |                           | including ~9000 intermetallic  | 'Sr', 'Y', 'Zr', 'Nb', 'Mo',   |
|                   |                           | compounds and FCC, BCC, HCP    | 'Ru', 'Rh', 'Pd', 'Ag', 'Cd',  |
|                   |                           | structures. It consists of two | 'In', 'Sn', 'La', 'Ce', 'Pr',  |
|                   |                           | parts: DFT-generated relaxed   | 'Nd', 'Sm', 'Gd', 'Tb', 'Dy',  |
|                   |                           | and deformed structures, and   | 'Ho', 'Er', 'Tm', 'Lu', 'Hf',  |
|                   |                           | randomly distorted structures  | 'Ta', 'W', 'Re', 'Os', 'Ir',   |
|                   |                           | produced covering pure metals, | 'Pt', 'Au', 'Pb']              |
|                   |                           | solid solutions, and           |                                |
|                   |                           | intermetallics with vacancies. |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Alex2D            | 2DMaterials, 2dmaterials  | This dataset contains          | ['H', 'Li', 'Be', 'B', 'C',    |
|                   |                           | approximately 6,500 novel two- | 'N', 'O', 'F', 'Na', 'Mg',     |
|                   |                           | dimensional materials          | 'Al', 'Si', 'P', 'S', 'Cl',    |
|                   |                           | generated through a symmetry-  | 'K', 'Ca', 'Sc', 'Ti', 'V',    |
|                   |                           | based combinatorial method     | 'Cr', 'Mn', 'Fe', 'Co', 'Ni',  |
|                   |                           | that systematically fills      | 'Cu', 'Zn', 'Ga', 'Ge', 'As',  |
|                   |                           | Wyckoff positions under        | 'Se', 'Br', 'Rb', 'Sr', 'Y',   |
|                   |                           | constraints of charge          | 'Zr', 'Nb', 'Mo', 'Tc', 'Ru',  |
|                   |                           | neutrality and                 | 'Rh', 'Pd', 'Ag', 'Cd', 'In',  |
|                   |                           | electronegativity balance. The | 'Sn', 'Sb', 'Te', 'I', 'Cs',   |
|                   |                           | resulting structures span over | 'Ba', 'La', 'Ce', 'Pr', 'Nd',  |
|                   |                           | 30 stoichiometries, exhibit    | 'Pm', 'Sm', 'Eu', 'Gd', 'Tb',  |
|                   |                           | diverse tiling patterns and    | 'Dy', 'Ho', 'Er', 'Tm', 'Yb',  |
|                   |                           | polymorphisms, and all lie     | 'Lu', 'Hf', 'Ta', 'W', 'Re',   |
|                   |                           | within 250 meV/atom of the     | 'Os', 'Ir', 'Pt', 'Au', 'Hg',  |
|                   |                           | thermodynamic convex hull.     | 'Tl', 'Pb', 'Bi', 'Ac', 'Th',  |
|                   |                           |                                | 'Pa', 'U', 'Np', 'Pu']         |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| ODAC23            |                           | The dataset contains over 38   | ['H', 'Li', 'Be', 'B', 'C',    |
|                   |                           | million quantum chemistry      | 'N', 'O', 'F', 'Na', 'Mg',     |
|                   |                           | calculations on thousands of   | 'Al', 'Si', 'P', 'S', 'Cl',    |
|                   |                           | metal-organic frameworks       | 'Ca', 'Sc', 'Ti', 'V', 'Cr',   |
|                   |                           | (MOFs) interacting with carbon | 'Mn', 'Fe', 'Co', 'Ni', 'Cu',  |
|                   |                           | dioxide and water. It provides | 'Zn', 'Ga', 'Ge', 'As', 'Se',  |
|                   |                           | comprehensive data to support  | 'Br', 'Sr', 'Y', 'Zr', 'Nb',   |
|                   |                           | machine learning-driven        | 'Mo', 'Ru', 'Rh', 'Pd', 'Ag',  |
|                   |                           | development of MOFs for direct | 'Cd', 'Sn', 'Sb', 'Te', 'I',   |
|                   |                           | air capture (DAC)              | 'Cs', 'Ba', 'La', 'Ce', 'Pr',  |
|                   |                           | applications.                  | 'Nd', 'Sm', 'Eu', 'Gd', 'Tb',  |
|                   |                           |                                | 'Dy', 'Ho', 'Er', 'Tm', 'Lu',  |
|                   |                           |                                | 'Hf', 'W', 'Re', 'Pt', 'Au',   |
|                   |                           |                                | 'Hg', 'Bi', 'Th', 'U', 'Np']   |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Organic_Reactions | Li2025General             | The dataset consists of over   | ['H', 'C', 'N', 'O']           |
|                   |                           | 17 million semi-empirical      |                                |
|                   |                           | energy-labeled non-equilibrium |                                |
|                   |                           | structures along reaction      |                                |
|                   |                           | pathways involving C, H, O,    |                                |
|                   |                           | and N, generated using NEB and |                                |
|                   |                           | structural alignment. It is    |                                |
|                   |                           | complemented by a fine-tuning  |                                |
|                   |                           | dataset of over 200,000 DFT-   |                                |
|                   |                           | labeled structures selected    |                                |
|                   |                           | via active learning to support |                                |
|                   |                           | the development of reactive    |                                |
|                   |                           | machine learning potentials.   |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| OC22              |                           | The OC22 dataset contains DFT  | ['H', 'Li', 'Be', 'C', 'N',    |
|                   |                           | relaxation trajectories and    | 'O', 'Na', 'Mg', 'Al', 'Si',   |
|                   |                           | single-point calculations      | 'K', 'Ca', 'Sc', 'Ti', 'V',    |
|                   |                           | covering a diverse set of      | 'Cr', 'Mn', 'Fe', 'Co', 'Ni',  |
|                   |                           | oxide materials, adsorbates,   | 'Cu', 'Zn', 'Ga', 'Ge', 'As',  |
|                   |                           | and coverages relevant to      | 'Se', 'Rb', 'Sr', 'Y', 'Zr',   |
|                   |                           | Oxygen Evolution Reaction      | 'Nb', 'Mo', 'Ru', 'Rh', 'Pd',  |
|                   |                           | catalysts. It provides a       | 'Ag', 'Cd', 'In', 'Sn', 'Sb',  |
|                   |                           | large-scale, open benchmark    | 'Te', 'Cs', 'Ba', 'Ce', 'Lu',  |
|                   |                           | for training machine learning  | 'Hf', 'Ta', 'W', 'Re', 'Os',   |
|                   |                           | models on total energy and     | 'Ir', 'Pt', 'Au', 'Hg', 'Tl',  |
|                   |                           | forces predictions for oxide   | 'Pb', 'Bi']                    |
|                   |                           | electrocatalysts.              |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| MPTrj             | MP_traj_v024_alldata_mixu | The MPtrj dataset contains DFT | ['H', 'He', 'Li', 'Be', 'B',   |
|                   |                           | trajectory data for 145,923    | 'C', 'N', 'O', 'F', 'Ne',      |
|                   |                           | compounds from the Materials   | 'Na', 'Mg', 'Al', 'Si', 'P',   |
|                   |                           | Project, curated by filtering  | 'S', 'Cl', 'Ar', 'K', 'Ca',    |
|                   |                           | GGA and GGA+U calculations for | 'Sc', 'Ti', 'V', 'Cr', 'Mn',   |
|                   |                           | consistency, convergence, and  | 'Fe', 'Co', 'Ni', 'Cu', 'Zn',  |
|                   |                           | energy quality. It includes    | 'Ga', 'Ge', 'As', 'Se', 'Br',  |
|                   |                           | non-deprecated, non-duplicate  | 'Kr', 'Rb', 'Sr', 'Y', 'Zr',   |
|                   |                           | structures with verified       | 'Nb', 'Mo', 'Tc', 'Ru', 'Rh',  |
|                   |                           | settings, enabling reliable    | 'Pd', 'Ag', 'Cd', 'In', 'Sn',  |
|                   |                           | machine learning on energy and | 'Sb', 'Te', 'I', 'Xe', 'Cs',   |
|                   |                           | force predictions across a     | 'Ba', 'La', 'Ce', 'Pr', 'Nd',  |
|                   |                           | broad materials space.         | 'Pm', 'Sm', 'Eu', 'Gd', 'Tb',  |
|                   |                           |                                | 'Dy', 'Ho', 'Er', 'Tm', 'Yb',  |
|                   |                           |                                | 'Lu', 'Hf', 'Ta', 'W', 'Re',   |
|                   |                           |                                | 'Os', 'Ir', 'Pt', 'Au', 'Hg',  |
|                   |                           |                                | 'Tl', 'Pb', 'Bi', 'Ac', 'Th',  |
|                   |                           |                                | 'Pa', 'U', 'Np', 'Pu']         |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| SSE_ABACUS        | Shi2024SSE                | This dataset can be used to    | ['Li', 'B', 'O', 'Al', 'Si',   |
|                   |                           | study and predict the          | 'P', 'S', 'Cl', 'Sc', 'Ga',    |
|                   |                           | properties and behavior of     | 'Ge', 'As', 'Se', 'Br', 'Y',   |
|                   |                           | solid-state electrolytes under | 'Zr', 'In', 'Sn', 'Sb', 'I',   |
|                   |                           | various conditions, such as    | 'Dy', 'Ho', 'Er', 'Tm', 'Yb',  |
|                   |                           | different temperatures and     | 'Lu', 'Ta']                    |
|                   |                           | pressures. This can help       |                                |
|                   |                           | researchers and engineers      |                                |
|                   |                           | design better materials for    |                                |
|                   |                           | use in energy storage devices, |                                |
|                   |                           | such as batteries and          |                                |
|                   |                           | supercapacitors.               |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Domains_SSE_PBE   | Huang2021Deep-PBE         | The dataset consists of        | ['Li', 'Si', 'P', 'S', 'Ge',   |
|                   |                           | interatomic potentials and     | 'Sn']                          |
|                   |                           | simulation data for            |                                |
|                   |                           | Li10GeP2S12-type solid-state   |                                |
|                   |                           | electrolytes, including        |                                |
|                   |                           | Li10GeP2S12, Li10SiP2S12, and  |                                |
|                   |                           | Li10SnP2S12. It covers         |                                |
|                   |                           | diffusion processes across a   |                                |
|                   |                           | wide temperature range and     |                                |
|                   |                           | large system sizes,            |                                |
|                   |                           | incorporating effects of       |                                |
|                   |                           | thermal expansion,             |                                |
|                   |                           | configurational disorder, and  |                                |
|                   |                           | density functional variations. |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Electrolyte       | Shi2024Electrolyte        | The dataset includes samples   | ['H', 'Li', 'C', 'O', 'F',     |
|                   |                           | of systems containing Li, P,   | 'P']                           |
|                   |                           | F, C, H, and O, specifically   |                                |
|                   |                           | focused on lithium             |                                |
|                   |                           | hexafluorophosphate and        |                                |
|                   |                           | various carbonate solvents. It |                                |
|                   |                           | covers a wide range of         |                                |
|                   |                           | temperatures from 0 to 450 K   |                                |
|                   |                           | and pressures from 0 to 1 GPa, |                                |
|                   |                           | with LiPF6 concentrations      |                                |
|                   |                           | between 0.8 and 1.2 mol/L.     |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Domains_SemiCond  | Liu2024Machine            | For 19 semiconductors ranging  | ['B', 'C', 'N', 'Al', 'Si',    |
|                   |                           | from group IIB to VIA,         | 'P', 'S', 'Zn', 'Ga', 'Ge',    |
|                   |                           | including Si, Ge, SiC, BAs,    | 'As', 'Se', 'Cd', 'In', 'Sb',  |
|                   |                           | BN, AlN, AlP, AlAs, InP, InAs, | 'Te']                          |
|                   |                           | InSb, GaN, GaP, GaAs, CdTe,    |                                |
|                   |                           | InTe, CdSe, ZnS, and CdS.      |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Domains_Anode     | Zhang2023Cathode          | The dataset contains O3-type   | ['Fe', 'Co', 'Li', 'O', 'Cr',  |
|                   |                           | layered oxide cathodes         | 'Ni', 'Na', 'Mn']              |
|                   |                           | (LixTMO2 and NaxTMO2, TM = Ni, |                                |
|                   |                           | Mn, Fe, Co, Cr) generated from |                                |
|                   |                           | ~300 bulk systems. It spans    |                                |
|                   |                           | compositions with x = 0, 0.5,  |                                |
|                   |                           | 1, includes Jahn-Teller        |                                |
|                   |                           | distorted structures, and      |                                |
|                   |                           | covers temperatures from 50 K  |                                |
|                   |                           | to 1250 K and pressures from 0 |                                |
|                   |                           | to 3000 bar.                   |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Domains_Cluster   | Gong2023Cluster           | The dataset contains           | ['Al', 'Si', 'Ni', 'Cu', 'Ru', |
|                   |                           | structure-to-energy-force      | 'Pd', 'Ag', 'Pt', 'Au']        |
|                   |                           | labels for 31 mono- and multi- |                                |
|                   |                           | metallic clusters generated.   |                                |
|                   |                           | It covers diverse elemental    |                                |
|                   |                           | combinations relevant to       |                                |
|                   |                           | catalysis, namely, Au, Ag, Cu, |                                |
|                   |                           | Pt, Pd, Ni, Si, Al, Ru, AuAg,  |                                |
|                   |                           | AuCu, AgCu, AuPt, AgPt, CuPt,  |                                |
|                   |                           | AuPd, AgPd, CuPd, AuNi, AgNi,  |                                |
|                   |                           | CuNi, PtPd, PtNi, NiPd, AgCuPt |                                |
|                   |                           | AuAgCu, AuAgPd, AuAgPt,        |                                |
|                   |                           | AuCuPd, AuCuPt, PtPdNi.        |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Hybrid_Perovskite | Tuo2023Hybrid             | Dataset for lead-based         | ['H', 'C', 'N', 'I', 'Pb']     |
|                   |                           | organic-inorganic hybrid       |                                |
|                   |                           | perovskite MAPbI3 and FAPbI3.  |                                |
|                   |                           | The cover temperature range is |                                |
|                   |                           | 50~800K. The covered pressure  |                                |
|                   |                           | range is below 1GPa.           |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Domains_FerroEle  | UniPero                   | The dataset includes           | ['O', 'Na', 'Mg', 'K', 'Ca',   |
|                   |                           | perovskite oxides with         | 'Ti', 'Zn', 'Sr', 'Zr', 'Nb',  |
|                   |                           | increasing chemical            | 'In', 'Ba', 'Hf', 'Pb', 'Bi']  |
|                   |                           | complexity, ranging from       |                                |
|                   |                           | simple three-element systems   |                                |
|                   |                           | like PbTiO3, BaTiO3, and       |                                |
|                   |                           | SrTiO3 to complex solid        |                                |
|                   |                           | solutions such as              |                                |
|                   |                           | Pb(Mg1/3Nb2/3)O3 and PIN-PMN-  |                                |
|                   |                           | PT. It covers around 200       |                                |
|                   |                           | compositions involving 14      |                                |
|                   |                           | different metal elements.      |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| H2O_H2O_PD        | water, Zhang2021Phase     | Water phase diagram, covering  | ['H', 'O']                     |
|                   |                           | from low temperature and       |                                |
|                   |                           | pressure to about 2400 K and   |                                |
|                   |                           | 50 GPa, excluding the vapor    |                                |
|                   |                           | stability region.              |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Others_In2Se3     | Wu2021Accurate            | The dataset contains diverse   | ['Se', 'In']                   |
|                   |                           | monolayer α-In2Se3             |                                |
|                   |                           | configurations, which supports |                                |
|                   |                           | the development of a high-     |                                |
|                   |                           | accuracy deep neural network   |                                |
|                   |                           | potential capable of           |                                |
|                   |                           | reproducing thermodynamic      |                                |
|                   |                           | properties, polarization       |                                |
|                   |                           | switching pathways, domain-    |                                |
|                   |                           | wall kinetics, and a           |                                |
|                   |                           | temperature-driven phase       |                                |
|                   |                           | transition.                    |                                |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Metals_AlMgCu     | Jiang2021Accurate         | For Al-Mg-Cu alloy.            | ['Al', 'Mg', 'Cu']             |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| Metals_AgAu_PBED3 | Wang2021Generalizable     | Ag-Au nanoalloys.              | ['Ag', 'Au']                   |
+-------------------+---------------------------+--------------------------------+--------------------------------+
| MPGen_OpenCSP     | OpenCSP, opencsp          | The OpenCSP dataset was        | ['H', 'He', 'Li', 'Be', 'B',   |
|                   |                           | constructed by relaxing        | 'C', 'N', 'O', 'F', 'Ne',      |
|                   |                           | CALYPSO-proposed structures to | 'Na', 'Mg', 'Al', 'Si', 'P',   |
|                   |                           | pressure-constrained local     | 'S', 'Cl', 'Ar', 'K', 'Ca',    |
|                   |                           | minima on the potential energy | 'Sc', 'Ti', 'V', 'Cr', 'Mn',   |
|                   |                           | surface, ensuring direct       | 'Fe', 'Co', 'Ni', 'Cu', 'Zn',  |
|                   |                           | applicability to CSP tasks.    | 'Ga', 'Ge', 'As', 'Se', 'Br',  |
|                   |                           | All data were obtained through | 'Kr', 'Rb', 'Sr', 'Y', 'Zr',   |
|                   |                           | single-point ABACUS            | 'Nb', 'Mo', 'Tc', 'Ru', 'Rh',  |
|                   |                           | calculations, with structures  | 'Pd', 'Ag', 'Cd', 'In', 'Sn',  |
|                   |                           | generated using the DP-GEN     | 'Sb', 'Te', 'I', 'Xe', 'Cs',   |
|                   |                           | concurrent learning framework, | 'Ba', 'La', 'Ce', 'Pr', 'Nd',  |
|                   |                           | which samples relaxation       | 'Pm', 'Sm', 'Eu', 'Gd', 'Tb',  |
|                   |                           | trajectories under randomly    | 'Dy', 'Ho', 'Er', 'Tm', 'Yb',  |
|                   |                           | sampled pressure conditions.   | 'Lu', 'Hf', 'Ta', 'W', 'Re',   |
|                   |                           |                                | 'Os', 'Ir', 'Pt', 'Au', 'Hg',  |
|                   |                           |                                | 'Tl', 'Pb', 'Bi']              |
+-------------------+---------------------------+--------------------------------+--------------------------------+
[2026-06-20 21:19:40,644] DEEPMD INFO    The type_map of branch OMat24 is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,644] DEEPMD INFO    The type_map of branch OMol25 is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,644] DEEPMD INFO    The type_map of branch OC20M is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,644] DEEPMD INFO    The type_map of branch Alloy_APEX is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,644] DEEPMD INFO    The type_map of branch Domains_Alloy is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,644] DEEPMD INFO    The type_map of branch Alex2D is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,644] DEEPMD INFO    The type_map of branch ODAC23 is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,644] DEEPMD INFO    The type_map of branch Organic_Reactions is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch OC22 is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch MPTrj is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch SSE_ABACUS is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch Domains_SSE_PBE is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch Electrolyte is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch Domains_SemiCond is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch Domains_Anode is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch Domains_Cluster is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch Hybrid_Perovskite is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch Domains_FerroEle is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch H2O_H2O_PD is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch Others_In2Se3 is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch Metals_AlMgCu is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch Metals_AgAu_PBED3 is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']
[2026-06-20 21:19:40,646] DEEPMD INFO    The type_map of branch MPGen_OpenCSP is ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb', 'Bi', 'Po', 'At', 'Rn', 'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', 'Rf', 'Db', 'Sg', 'Bh', 'Hs', 'Mt', 'Ds', 'Rg', 'Cn', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og']

3.4. Prepare the distillation dataset#

This section uses Open Babel to generate an initial cyclohexane structure from a SMILES string. It then runs MD with the DPA3 Teacher model through the ASE calculator interface, samples configurations from the trajectory, and writes a DeePMD-kit training dataset.

The workflow is:

  1. Convert the cyclohexane SMILES string into an initial 3D XYZ structure.

  2. Run a Teacher MD trajectory with the DPA3 pretrained model.

  3. Sample configurations from the trajectory and store Teacher-predicted energy and force labels.

  4. Write the sampled configurations as a DeePMD training dataset.

  5. Produce coord.npy, box.npy, energy.npy, force.npy, type.raw, and type_map.raw.

The Student model will learn the Teacher response in the configuration region visited by this MD trajectory.

3.4.1. Generate an initial 3D structure from a SMILES string#

Open Babel converts the cyclohexane SMILES string into an initial 3D XYZ structure. This structure is used as the starting point for the Teacher MD simulation.

initial_smiles = "C1CCCCC1"
initial_xyz = Path("data/cyclohexane/raw/cyclohexane_initial.xyz")
initial_xyz.parent.mkdir(parents=True, exist_ok=True)

!obabel -:"{initial_smiles}" -O {initial_xyz} -h --gen3d
print("initial xyz:", initial_xyz)
1 molecule converted
initial xyz: data/cyclohexane/raw/cyclohexane_initial.xyz
!cat data/cyclohexane/raw/cyclohexane_initial.xyz
18

C         -1.42059        0.32798       -0.22055
C         -0.99079       -1.06496        0.23414
C          0.42516       -1.39045       -0.23359
C          1.41996       -0.32808        0.22623
C          0.99446        1.06588       -0.22741
C         -0.42546        1.39336        0.23081
H         -2.41457        0.55707        0.18054
H         -1.50452        0.34555       -1.31413
H         -1.69074       -1.81365       -0.15344
H         -1.03516       -1.12043        1.32884
H          0.44219       -1.45748       -1.32822
H          0.72602       -2.37082        0.15224
H          2.41657       -0.55788       -0.16811
H          1.49594       -0.34832        1.32046
H          1.04706        1.12499       -1.32177
H          1.69167        1.81267        0.16780
H         -0.72489        2.37058       -0.16285
H         -0.44487        1.46853        1.32500

3.4.2. Run Teacher MD and sample configurations#

DeePMD-kit can be used directly as an ASE calculator. After assigning atoms.calc = DP(...), ASE calls the DeePMD model through standard methods such as get_potential_energy() and get_forces().

DPA-3.2-5M is a multitask model. The Teacher calculation uses head="OMol25", so the labels come from the Open Molecules 2025 branch.

The default trajectory below uses 500 MD steps with a 0.5 fs time step. This keeps the documentation example quick to run while still producing a small local configuration distribution for the Student model. It is not intended to exhaustively sample cyclohexane ring inversion.

Reference: DeePMD-kit ASE calculator interface

teacher_md_model = Path("weights/DPA-3.2-5M.pt")
teacher_md_head = "OMol25"

from ase import units
from ase.io import read
from ase.md.velocitydistribution import MaxwellBoltzmannDistribution
from ase.md.verlet import VelocityVerlet
from deepmd.calculator import DP
RANDOM_SEED = 42
MD_TEMPERATURE_K = 300
MD_TIMESTEP_FS = 0.5
MD_STEPS = 500
atoms_obj = read(str(initial_xyz))
atoms_obj.calc = DP(model=str(teacher_md_model), head=teacher_md_head)

rng = np.random.default_rng(RANDOM_SEED)
MaxwellBoltzmannDistribution(atoms_obj, temperature_K=MD_TEMPERATURE_K, rng=rng)
dynamics = VelocityVerlet(
    atoms_obj,
    timestep=MD_TIMESTEP_FS * units.fs,
    trajectory="md.traj",
    logfile="-",
)

print(f"Running Teacher MD sampling for {MD_STEPS} steps...")
print("teacher model:", teacher_md_model)
print("teacher head:", teacher_md_head)
dynamics.run(MD_STEPS)
You can use the environment variable DP_INFER_BATCH_SIZE tocontrol the inference batch size (nframes * natoms). The default value is 1024.
Time[ps]      Etot[eV]     Epot[eV]     Ekin[eV]    T[K]
Running Teacher MD sampling for 500 steps...
teacher model: weights/DPA-3.2-5M.pt
teacher head: OMol25
0.0000       -6416.6862   -6417.1005       0.4142   178.0
0.0005       -6416.6862   -6417.0937       0.4076   175.2
0.0010       -6416.6860   -6417.0756       0.3896   167.5
0.0015       -6416.6857   -6417.0492       0.3635   156.2
0.0020       -6416.6855   -6417.0187       0.3332   143.2
0.0025       -6416.6853   -6416.9882       0.3030   130.2
0.0030       -6416.6852   -6416.9611       0.2760   118.6
0.0035       -6416.6852   -6416.9388       0.2536   109.0
0.0040       -6416.6853   -6416.9207       0.2354   101.2
0.0045       -6416.6855   -6416.9051       0.2196    94.4
0.0050       -6416.6856   -6416.8894       0.2039    87.6
0.0055       -6416.6856   -6416.8721       0.1865    80.1
0.0060       -6416.6855   -6416.8526       0.1671    71.8
0.0065       -6416.6853   -6416.8326       0.1472    63.3
0.0070       -6416.6851   -6416.8148       0.1297    55.8
0.0075       -6416.6849   -6416.8030       0.1182    50.8
0.0080       -6416.6848   -6416.8004       0.1156    49.7
0.0085       -6416.6849   -6416.8083       0.1234    53.0
0.0090       -6416.6850   -6416.8258       0.1408    60.5
0.0095       -6416.6853   -6416.8500       0.1647    70.8
0.0100       -6416.6856   -6416.8763       0.1907    82.0
0.0105       -6416.6859   -6416.9000       0.2142    92.0
0.0110       -6416.6860   -6416.9175       0.2316    99.5
0.0115       -6416.6859   -6416.9272       0.2412   103.7
0.0120       -6416.6858   -6416.9294       0.2436   104.7
0.0125       -6416.6856   -6416.9265       0.2409   103.5
0.0130       -6416.6854   -6416.9217       0.2363   101.6
0.0135       -6416.6852   -6416.9183       0.2330   100.2
0.0140       -6416.6852   -6416.9181       0.2329   100.1
0.0145       -6416.6853   -6416.9215       0.2362   101.5
0.0150       -6416.6855   -6416.9272       0.2417   103.9
0.0155       -6416.6856   -6416.9325       0.2468   106.1
0.0160       -6416.6858   -6416.9347       0.2490   107.0
0.0165       -6416.6858   -6416.9321       0.2463   105.9
0.0170       -6416.6857   -6416.9243       0.2386   102.6
0.0175       -6416.6855   -6416.9128       0.2273    97.7
0.0180       -6416.6853   -6416.9006       0.2153    92.5
0.0185       -6416.6851   -6416.8912       0.2061    88.6
0.0190       -6416.6850   -6416.8877       0.2027    87.1
0.0195       -6416.6850   -6416.8917       0.2067    88.8
0.0200       -6416.6852   -6416.9026       0.2174    93.5
0.0205       -6416.6854   -6416.9178       0.2324    99.9
0.0210       -6416.6857   -6416.9334       0.2478   106.5
0.0215       -6416.6858   -6416.9458       0.2600   111.7
0.0220       -6416.6859   -6416.9523       0.2664   114.5
0.0225       -6416.6858   -6416.9520       0.2661   114.4
0.0230       -6416.6856   -6416.9461       0.2605   111.9
0.0235       -6416.6854   -6416.9373       0.2519   108.3
0.0240       -6416.6853   -6416.9288       0.2435   104.7
0.0245       -6416.6852   -6416.9231       0.2379   102.2
0.0250       -6416.6852   -6416.9214       0.2361   101.5
0.0255       -6416.6854   -6416.9231       0.2378   102.2
0.0260       -6416.6855   -6416.9263       0.2408   103.5
0.0265       -6416.6857   -6416.9282       0.2425   104.2
0.0270       -6416.6858   -6416.9260       0.2401   103.2
0.0275       -6416.6858   -6416.9181       0.2323    99.9
0.0280       -6416.6857   -6416.9048       0.2191    94.2
0.0285       -6416.6855   -6416.8879       0.2024    87.0
0.0290       -6416.6852   -6416.8707       0.1854    79.7
0.0295       -6416.6850   -6416.8570       0.1719    73.9
0.0300       -6416.6849   -6416.8498       0.1649    70.9
0.0305       -6416.6850   -6416.8508       0.1658    71.3
0.0310       -6416.6852   -6416.8592       0.1740    74.8
0.0315       -6416.6854   -6416.8725       0.1871    80.4
0.0320       -6416.6856   -6416.8870       0.2013    86.5
0.0325       -6416.6857   -6416.8993       0.2135    91.8
0.0330       -6416.6858   -6416.9072       0.2214    95.2
0.0335       -6416.6857   -6416.9105       0.2248    96.6
0.0340       -6416.6855   -6416.9107       0.2252    96.8
0.0345       -6416.6853   -6416.9105       0.2252    96.8
0.0350       -6416.6852   -6416.9130       0.2278    97.9
0.0355       -6416.6851   -6416.9200       0.2349   100.9
0.0360       -6416.6852   -6416.9321       0.2469   106.1
0.0365       -6416.6854   -6416.9478       0.2624   112.8
0.0370       -6416.6856   -6416.9644       0.2788   119.8
0.0375       -6416.6858   -6416.9786       0.2928   125.8
0.0380       -6416.6859   -6416.9874       0.3015   129.6
0.0385       -6416.6859   -6416.9891       0.3032   130.3
0.0390       -6416.6858   -6416.9839       0.2981   128.1
0.0395       -6416.6856   -6416.9735       0.2879   123.7
0.0400       -6416.6854   -6416.9607       0.2753   118.3
0.0405       -6416.6852   -6416.9487       0.2635   113.2
0.0410       -6416.6852   -6416.9402       0.2550   109.6
0.0415       -6416.6852   -6416.9361       0.2509   107.8
0.0420       -6416.6853   -6416.9359       0.2506   107.7
0.0425       -6416.6855   -6416.9374       0.2518   108.2
0.0430       -6416.6857   -6416.9377       0.2521   108.3
0.0435       -6416.6857   -6416.9347       0.2490   107.0
0.0440       -6416.6857   -6416.9272       0.2415   103.8
0.0445       -6416.6856   -6416.9158       0.2302    98.9
0.0450       -6416.6854   -6416.9026       0.2172    93.4
0.0455       -6416.6852   -6416.8907       0.2055    88.3
0.0460       -6416.6851   -6416.8827       0.1976    84.9
0.0465       -6416.6851   -6416.8804       0.1953    83.9
0.0470       -6416.6852   -6416.8838       0.1986    85.4
0.0475       -6416.6854   -6416.8913       0.2060    88.5
0.0480       -6416.6855   -6416.9005       0.2149    92.4
0.0485       -6416.6857   -6416.9083       0.2226    95.7
0.0490       -6416.6858   -6416.9125       0.2268    97.5
0.0495       -6416.6857   -6416.9120       0.2263    97.3
0.0500       -6416.6856   -6416.9071       0.2215    95.2
0.0505       -6416.6855   -6416.8994       0.2139    91.9
0.0510       -6416.6853   -6416.8913       0.2060    88.5
0.0515       -6416.6852   -6416.8853       0.2001    86.0
0.0520       -6416.6852   -6416.8831       0.1979    85.1
0.0525       -6416.6853   -6416.8850       0.1997    85.8
0.0530       -6416.6854   -6416.8899       0.2045    87.9
0.0535       -6416.6856   -6416.8956       0.2101    90.3
0.0540       -6416.6857   -6416.8997       0.2140    92.0
0.0545       -6416.6857   -6416.9002       0.2145    92.2
0.0550       -6416.6857   -6416.8966       0.2109    90.7
0.0555       -6416.6855   -6416.8898       0.2043    87.8
0.0560       -6416.6853   -6416.8821       0.1968    84.6
0.0565       -6416.6852   -6416.8764       0.1912    82.2
0.0570       -6416.6851   -6416.8752       0.1901    81.7
0.0575       -6416.6851   -6416.8797       0.1946    83.6
0.0580       -6416.6852   -6416.8897       0.2045    87.9
0.0585       -6416.6854   -6416.9037       0.2183    93.8
0.0590       -6416.6855   -6416.9191       0.2336   100.4
0.0595       -6416.6856   -6416.9334       0.2478   106.5
0.0600       -6416.6857   -6416.9448       0.2591   111.4
0.0605       -6416.6857   -6416.9526       0.2669   114.7
0.0610       -6416.6856   -6416.9571       0.2715   116.7
0.0615       -6416.6854   -6416.9598       0.2744   117.9
0.0620       -6416.6853   -6416.9626       0.2773   119.2
0.0625       -6416.6853   -6416.9670       0.2817   121.1
0.0630       -6416.6854   -6416.9735       0.2881   123.8
0.0635       -6416.6855   -6416.9813       0.2958   127.1
0.0640       -6416.6856   -6416.9885       0.3029   130.2
0.0645       -6416.6858   -6416.9926       0.3068   131.9
0.0650       -6416.6859   -6416.9914       0.3055   131.3
0.0655       -6416.6858   -6416.9836       0.2978   128.0
0.0660       -6416.6857   -6416.9697       0.2840   122.0
0.0665       -6416.6855   -6416.9515       0.2659   114.3
0.0670       -6416.6853   -6416.9319       0.2465   106.0
0.0675       -6416.6852   -6416.9140       0.2288    98.3
0.0680       -6416.6851   -6416.9002       0.2150    92.4
0.0685       -6416.6852   -6416.8913       0.2062    88.6
0.0690       -6416.6853   -6416.8870       0.2017    86.7
0.0695       -6416.6854   -6416.8857       0.2003    86.1
0.0700       -6416.6855   -6416.8854       0.1999    85.9
0.0705       -6416.6855   -6416.8845       0.1990    85.5
0.0710       -6416.6855   -6416.8821       0.1966    84.5
0.0715       -6416.6854   -6416.8786       0.1932    83.0
0.0720       -6416.6853   -6416.8752       0.1899    81.6
0.0725       -6416.6852   -6416.8740       0.1888    81.2
0.0730       -6416.6851   -6416.8769       0.1918    82.4
0.0735       -6416.6851   -6416.8851       0.1999    85.9
0.0740       -6416.6852   -6416.8984       0.2132    91.6
0.0745       -6416.6854   -6416.9154       0.2300    98.8
0.0750       -6416.6856   -6416.9332       0.2476   106.4
0.0755       -6416.6858   -6416.9489       0.2631   113.1
0.0760       -6416.6859   -6416.9595       0.2737   117.6
0.0765       -6416.6859   -6416.9638       0.2779   119.4
0.0770       -6416.6857   -6416.9617       0.2759   118.6
0.0775       -6416.6856   -6416.9550       0.2694   115.8
0.0780       -6416.6854   -6416.9463       0.2609   112.1
0.0785       -6416.6853   -6416.9384       0.2531   108.8
0.0790       -6416.6853   -6416.9329       0.2477   106.4
0.0795       -6416.6853   -6416.9304       0.2451   105.3
0.0800       -6416.6854   -6416.9301       0.2446   105.1
0.0805       -6416.6856   -6416.9302       0.2446   105.1
0.0810       -6416.6856   -6416.9289       0.2432   104.5
0.0815       -6416.6857   -6416.9249       0.2392   102.8
0.0820       -6416.6856   -6416.9178       0.2321    99.8
0.0825       -6416.6855   -6416.9084       0.2229    95.8
0.0830       -6416.6853   -6416.8987       0.2133    91.7
0.0835       -6416.6852   -6416.8909       0.2057    88.4
0.0840       -6416.6851   -6416.8875       0.2024    87.0
0.0845       -6416.6851   -6416.8897       0.2046    88.0
0.0850       -6416.6852   -6416.8978       0.2127    91.4
0.0855       -6416.6853   -6416.9104       0.2251    96.7
0.0860       -6416.6855   -6416.9250       0.2395   102.9
0.0865       -6416.6857   -6416.9386       0.2529   108.7
0.0870       -6416.6858   -6416.9487       0.2629   113.0
0.0875       -6416.6858   -6416.9538       0.2681   115.2
0.0880       -6416.6857   -6416.9543       0.2686   115.5
0.0885       -6416.6855   -6416.9515       0.2660   114.3
0.0890       -6416.6854   -6416.9478       0.2624   112.8
0.0895       -6416.6853   -6416.9449       0.2596   111.6
0.0900       -6416.6853   -6416.9440       0.2586   111.2
0.0905       -6416.6854   -6416.9448       0.2593   111.5
0.0910       -6416.6855   -6416.9460       0.2605   111.9
0.0915       -6416.6856   -6416.9459       0.2603   111.9
0.0920       -6416.6857   -6416.9428       0.2571   110.5
0.0925       -6416.6857   -6416.9358       0.2501   107.5
0.0930       -6416.6856   -6416.9248       0.2391   102.8
0.0935       -6416.6855   -6416.9109       0.2253    96.9
0.0940       -6416.6854   -6416.8960       0.2106    90.5
0.0945       -6416.6853   -6416.8824       0.1971    84.7
0.0950       -6416.6852   -6416.8721       0.1869    80.3
0.0955       -6416.6851   -6416.8666       0.1814    78.0
0.0960       -6416.6852   -6416.8660       0.1808    77.7
0.0965       -6416.6853   -6416.8696       0.1843    79.2
0.0970       -6416.6855   -6416.8754       0.1900    81.6
0.0975       -6416.6856   -6416.8814       0.1959    84.2
0.0980       -6416.6856   -6416.8859       0.2002    86.1
0.0985       -6416.6856   -6416.8879       0.2023    87.0
0.0990       -6416.6855   -6416.8880       0.2025    87.0
0.0995       -6416.6854   -6416.8875       0.2021    86.9
0.1000       -6416.6853   -6416.8884       0.2031    87.3
0.1005       -6416.6852   -6416.8920       0.2067    88.8
0.1010       -6416.6853   -6416.8989       0.2136    91.8
0.1015       -6416.6854   -6416.9086       0.2233    96.0
0.1020       -6416.6855   -6416.9197       0.2342   100.7
0.1025       -6416.6856   -6416.9303       0.2446   105.1
0.1030       -6416.6857   -6416.9386       0.2529   108.7
0.1035       -6416.6857   -6416.9437       0.2580   110.9
0.1040       -6416.6856   -6416.9452       0.2595   111.6
0.1045       -6416.6856   -6416.9438       0.2583   111.0
0.1050       -6416.6855   -6416.9409       0.2554   109.8
0.1055       -6416.6854   -6416.9377       0.2523   108.4
0.1060       -6416.6853   -6416.9357       0.2503   107.6
0.1065       -6416.6853   -6416.9356       0.2502   107.5
0.1070       -6416.6854   -6416.9372       0.2518   108.2
0.1075       -6416.6855   -6416.9398       0.2544   109.3
0.1080       -6416.6856   -6416.9420       0.2564   110.2
0.1085       -6416.6857   -6416.9421       0.2565   110.2
0.1090       -6416.6857   -6416.9392       0.2535   108.9
0.1095       -6416.6856   -6416.9328       0.2472   106.2
0.1100       -6416.6855   -6416.9239       0.2383   102.4
0.1105       -6416.6854   -6416.9139       0.2285    98.2
0.1110       -6416.6853   -6416.9045       0.2192    94.2
0.1115       -6416.6853   -6416.8972       0.2119    91.1
0.1120       -6416.6853   -6416.8923       0.2070    89.0
0.1125       -6416.6854   -6416.8896       0.2042    87.8
0.1130       -6416.6855   -6416.8879       0.2024    87.0
0.1135       -6416.6855   -6416.8860       0.2005    86.2
0.1140       -6416.6855   -6416.8830       0.1975    84.9
0.1145       -6416.6855   -6416.8785       0.1930    82.9
0.1150       -6416.6855   -6416.8728       0.1874    80.5
0.1155       -6416.6854   -6416.8668       0.1814    78.0
0.1160       -6416.6853   -6416.8617       0.1764    75.8
0.1165       -6416.6853   -6416.8587       0.1734    74.5
0.1170       -6416.6853   -6416.8585       0.1733    74.5
0.1175       -6416.6853   -6416.8616       0.1763    75.8
0.1180       -6416.6853   -6416.8674       0.1820    78.2
0.1185       -6416.6854   -6416.8749       0.1895    81.4
0.1190       -6416.6855   -6416.8829       0.1974    84.8
0.1195       -6416.6856   -6416.8901       0.2045    87.9
0.1200       -6416.6855   -6416.8958       0.2102    90.4
0.1205       -6416.6855   -6416.9001       0.2146    92.3
0.1210       -6416.6854   -6416.9040       0.2186    93.9
0.1215       -6416.6853   -6416.9085       0.2231    95.9
0.1220       -6416.6853   -6416.9147       0.2294    98.6
0.1225       -6416.6853   -6416.9230       0.2377   102.2
0.1230       -6416.6854   -6416.9331       0.2477   106.5
0.1235       -6416.6855   -6416.9441       0.2586   111.1
0.1240       -6416.6856   -6416.9547       0.2691   115.7
0.1245       -6416.6856   -6416.9637       0.2781   119.5
0.1250       -6416.6856   -6416.9707       0.2850   122.5
0.1255       -6416.6856   -6416.9753       0.2898   124.5
0.1260       -6416.6855   -6416.9782       0.2927   125.8
0.1265       -6416.6855   -6416.9801       0.2946   126.6
0.1270       -6416.6854   -6416.9817       0.2962   127.3
0.1275       -6416.6854   -6416.9836       0.2982   128.2
0.1280       -6416.6855   -6416.9861       0.3006   129.2
0.1285       -6416.6855   -6416.9886       0.3031   130.3
0.1290       -6416.6856   -6416.9905       0.3049   131.1
0.1295       -6416.6856   -6416.9905       0.3049   131.0
0.1300       -6416.6857   -6416.9875       0.3018   129.7
0.1305       -6416.6857   -6416.9807       0.2950   126.8
0.1310       -6416.6857   -6416.9699       0.2842   122.2
0.1315       -6416.6856   -6416.9559       0.2703   116.2
0.1320       -6416.6855   -6416.9400       0.2545   109.4
0.1325       -6416.6854   -6416.9240       0.2386   102.5
0.1330       -6416.6853   -6416.9092       0.2238    96.2
0.1335       -6416.6853   -6416.8964       0.2110    90.7
0.1340       -6416.6854   -6416.8856       0.2002    86.0
0.1345       -6416.6854   -6416.8763       0.1909    82.1
0.1350       -6416.6854   -6416.8680       0.1826    78.5
0.1355       -6416.6854   -6416.8602       0.1748    75.1
0.1360       -6416.6854   -6416.8531       0.1677    72.1
0.1365       -6416.6853   -6416.8470       0.1617    69.5
0.1370       -6416.6853   -6416.8428       0.1575    67.7
0.1375       -6416.6853   -6416.8413       0.1560    67.1
0.1380       -6416.6852   -6416.8430       0.1578    67.8
0.1385       -6416.6852   -6416.8484       0.1632    70.1
0.1390       -6416.6853   -6416.8573       0.1720    73.9
0.1395       -6416.6853   -6416.8691       0.1838    79.0
0.1400       -6416.6854   -6416.8831       0.1977    85.0
0.1405       -6416.6855   -6416.8981       0.2127    91.4
0.1410       -6416.6855   -6416.9131       0.2276    97.8
0.1415       -6416.6856   -6416.9271       0.2415   103.8
0.1420       -6416.6856   -6416.9394       0.2539   109.1
0.1425       -6416.6856   -6416.9500       0.2645   113.7
0.1430       -6416.6855   -6416.9592       0.2736   117.6
0.1435       -6416.6855   -6416.9673       0.2817   121.1
0.1440       -6416.6855   -6416.9744       0.2889   124.2
0.1445       -6416.6856   -6416.9804       0.2948   126.7
0.1450       -6416.6856   -6416.9845       0.2989   128.5
0.1455       -6416.6857   -6416.9859       0.3003   129.1
0.1460       -6416.6857   -6416.9841       0.2984   128.2
0.1465       -6416.6857   -6416.9788       0.2931   126.0
0.1470       -6416.6856   -6416.9705       0.2849   122.5
0.1475       -6416.6855   -6416.9602       0.2746   118.0
0.1480       -6416.6855   -6416.9488       0.2633   113.2
0.1485       -6416.6854   -6416.9375       0.2521   108.3
0.1490       -6416.6854   -6416.9269       0.2415   103.8
0.1495       -6416.6854   -6416.9175       0.2321    99.8
0.1500       -6416.6854   -6416.9093       0.2239    96.2
0.1505       -6416.6854   -6416.9021       0.2167    93.1
0.1510       -6416.6854   -6416.8960       0.2106    90.5
0.1515       -6416.6854   -6416.8908       0.2054    88.3
0.1520       -6416.6854   -6416.8869       0.2015    86.6
0.1525       -6416.6854   -6416.8843       0.1989    85.5
0.1530       -6416.6853   -6416.8834       0.1980    85.1
0.1535       -6416.6853   -6416.8846       0.1993    85.6
0.1540       -6416.6853   -6416.8881       0.2027    87.1
0.1545       -6416.6854   -6416.8936       0.2083    89.5
0.1550       -6416.6854   -6416.9007       0.2152    92.5
0.1555       -6416.6855   -6416.9081       0.2225    95.6
0.1560       -6416.6856   -6416.9146       0.2290    98.4
0.1565       -6416.6856   -6416.9194       0.2338   100.5
0.1570       -6416.6856   -6416.9218       0.2362   101.5
0.1575       -6416.6856   -6416.9221       0.2365   101.7
0.1580       -6416.6855   -6416.9208       0.2353   101.1
0.1585       -6416.6855   -6416.9189       0.2334   100.3
0.1590       -6416.6854   -6416.9171       0.2317    99.6
0.1595       -6416.6854   -6416.9160       0.2305    99.1
0.1600       -6416.6855   -6416.9154       0.2299    98.8
0.1605       -6416.6855   -6416.9149       0.2293    98.6
0.1610       -6416.6855   -6416.9139       0.2284    98.2
0.1615       -6416.6855   -6416.9122       0.2267    97.4
0.1620       -6416.6855   -6416.9099       0.2244    96.5
0.1625       -6416.6854   -6416.9076       0.2222    95.5
0.1630       -6416.6854   -6416.9062       0.2209    94.9
0.1635       -6416.6853   -6416.9067       0.2214    95.2
0.1640       -6416.6853   -6416.9099       0.2246    96.5
0.1645       -6416.6853   -6416.9161       0.2308    99.2
0.1650       -6416.6853   -6416.9253       0.2400   103.2
0.1655       -6416.6854   -6416.9369       0.2515   108.1
0.1660       -6416.6855   -6416.9496       0.2641   113.5
0.1665       -6416.6856   -6416.9619       0.2763   118.8
0.1670       -6416.6857   -6416.9724       0.2868   123.2
0.1675       -6416.6857   -6416.9800       0.2944   126.5
0.1680       -6416.6857   -6416.9844       0.2987   128.4
0.1685       -6416.6856   -6416.9856       0.3000   128.9
0.1690       -6416.6856   -6416.9844       0.2988   128.4
0.1695       -6416.6855   -6416.9814       0.2958   127.2
0.1700       -6416.6855   -6416.9772       0.2917   125.4
0.1705       -6416.6856   -6416.9720       0.2864   123.1
0.1710       -6416.6856   -6416.9652       0.2796   120.2
0.1715       -6416.6857   -6416.9562       0.2705   116.3
0.1720       -6416.6857   -6416.9441       0.2584   111.1
0.1725       -6416.6857   -6416.9287       0.2430   104.4
0.1730       -6416.6856   -6416.9102       0.2246    96.5
0.1735       -6416.6855   -6416.8897       0.2042    87.7
0.1740       -6416.6854   -6416.8686       0.1833    78.8
0.1745       -6416.6853   -6416.8490       0.1637    70.4
0.1750       -6416.6852   -6416.8326       0.1474    63.3
0.1755       -6416.6851   -6416.8208       0.1357    58.3
0.1760       -6416.6851   -6416.8146       0.1295    55.7
0.1765       -6416.6852   -6416.8138       0.1287    55.3
0.1770       -6416.6853   -6416.8176       0.1323    56.9
0.1775       -6416.6854   -6416.8244       0.1390    59.8
0.1780       -6416.6854   -6416.8330       0.1475    63.4
0.1785       -6416.6854   -6416.8423       0.1569    67.4
0.1790       -6416.6854   -6416.8522       0.1667    71.7
0.1795       -6416.6854   -6416.8628       0.1774    76.2
0.1800       -6416.6854   -6416.8747       0.1893    81.4
0.1805       -6416.6854   -6416.8884       0.2030    87.3
0.1810       -6416.6854   -6416.9039       0.2185    93.9
0.1815       -6416.6855   -6416.9206       0.2351   101.0
0.1820       -6416.6856   -6416.9371       0.2515   108.1
0.1825       -6416.6857   -6416.9517       0.2660   114.3
0.1830       -6416.6857   -6416.9630       0.2773   119.2
0.1835       -6416.6858   -6416.9700       0.2842   122.2
0.1840       -6416.6857   -6416.9723       0.2866   123.2
0.1845       -6416.6857   -6416.9706       0.2849   122.5
0.1850       -6416.6856   -6416.9656       0.2801   120.4
0.1855       -6416.6855   -6416.9587       0.2732   117.4
0.1860       -6416.6854   -6416.9510       0.2655   114.1
0.1865       -6416.6854   -6416.9435       0.2581   110.9
0.1870       -6416.6854   -6416.9368       0.2514   108.1
0.1875       -6416.6854   -6416.9312       0.2458   105.7
0.1880       -6416.6854   -6416.9264       0.2410   103.6
0.1885       -6416.6855   -6416.9221       0.2366   101.7
0.1890       -6416.6855   -6416.9178       0.2323    99.8
0.1895       -6416.6854   -6416.9135       0.2281    98.0
0.1900       -6416.6854   -6416.9099       0.2245    96.5
0.1905       -6416.6853   -6416.9074       0.2221    95.5
0.1910       -6416.6853   -6416.9070       0.2217    95.3
0.1915       -6416.6853   -6416.9090       0.2236    96.1
0.1920       -6416.6854   -6416.9132       0.2278    97.9
0.1925       -6416.6854   -6416.9189       0.2335   100.3
0.1930       -6416.6855   -6416.9248       0.2393   102.8
0.1935       -6416.6856   -6416.9296       0.2440   104.9
0.1940       -6416.6856   -6416.9321       0.2465   105.9
0.1945       -6416.6856   -6416.9320       0.2464   105.9
0.1950       -6416.6856   -6416.9294       0.2438   104.8
0.1955       -6416.6855   -6416.9250       0.2395   102.9
0.1960       -6416.6855   -6416.9197       0.2343   100.7
0.1965       -6416.6854   -6416.9142       0.2288    98.3
0.1970       -6416.6854   -6416.9091       0.2237    96.1
0.1975       -6416.6854   -6416.9046       0.2192    94.2
0.1980       -6416.6854   -6416.9007       0.2152    92.5
0.1985       -6416.6855   -6416.8970       0.2115    90.9
0.1990       -6416.6855   -6416.8933       0.2078    89.3
0.1995       -6416.6855   -6416.8892       0.2038    87.6
0.2000       -6416.6854   -6416.8850       0.1996    85.8
0.2005       -6416.6854   -6416.8813       0.1959    84.2
0.2010       -6416.6853   -6416.8789       0.1936    83.2
0.2015       -6416.6853   -6416.8791       0.1938    83.3
0.2020       -6416.6852   -6416.8826       0.1973    84.8
0.2025       -6416.6853   -6416.8897       0.2044    87.9
0.2030       -6416.6853   -6416.8999       0.2146    92.2
0.2035       -6416.6855   -6416.9120       0.2265    97.4
0.2040       -6416.6856   -6416.9242       0.2387   102.6
0.2045       -6416.6856   -6416.9350       0.2494   107.2
0.2050       -6416.6856   -6416.9434       0.2578   110.8
0.2055       -6416.6856   -6416.9492       0.2636   113.3
0.2060       -6416.6855   -6416.9528       0.2673   114.9
0.2065       -6416.6855   -6416.9553       0.2698   115.9
0.2070       -6416.6855   -6416.9573       0.2718   116.8
0.2075       -6416.6855   -6416.9593       0.2738   117.7
0.2080       -6416.6855   -6416.9612       0.2757   118.5
0.2085       -6416.6856   -6416.9624       0.2768   119.0
0.2090       -6416.6856   -6416.9619       0.2763   118.7
0.2095       -6416.6857   -6416.9589       0.2732   117.4
0.2100       -6416.6857   -6416.9528       0.2671   114.8
0.2105       -6416.6856   -6416.9436       0.2580   110.9
0.2110       -6416.6855   -6416.9322       0.2466   106.0
0.2115       -6416.6854   -6416.9198       0.2343   100.7
0.2120       -6416.6853   -6416.9081       0.2228    95.8
0.2125       -6416.6852   -6416.8990       0.2137    91.9
0.2130       -6416.6852   -6416.8934       0.2082    89.5
0.2135       -6416.6853   -6416.8917       0.2064    88.7
0.2140       -6416.6853   -6416.8931       0.2078    89.3
0.2145       -6416.6855   -6416.8963       0.2109    90.6
0.2150       -6416.6855   -6416.8996       0.2141    92.0
0.2155       -6416.6856   -6416.9016       0.2160    92.8
0.2160       -6416.6855   -6416.9018       0.2162    92.9
0.2165       -6416.6855   -6416.9008       0.2153    92.5
0.2170       -6416.6854   -6416.8999       0.2145    92.2
0.2175       -6416.6853   -6416.9008       0.2155    92.6
0.2180       -6416.6853   -6416.9045       0.2193    94.2
0.2185       -6416.6853   -6416.9115       0.2262    97.2
0.2190       -6416.6854   -6416.9209       0.2354   101.2
0.2195       -6416.6855   -6416.9312       0.2456   105.6
0.2200       -6416.6856   -6416.9405       0.2548   109.5
0.2205       -6416.6857   -6416.9469       0.2612   112.3
0.2210       -6416.6857   -6416.9494       0.2637   113.3
0.2215       -6416.6857   -6416.9476       0.2619   112.6
0.2220       -6416.6856   -6416.9423       0.2567   110.3
0.2225       -6416.6855   -6416.9350       0.2495   107.3
0.2230       -6416.6854   -6416.9277       0.2424   104.2
0.2235       -6416.6853   -6416.9222       0.2369   101.8
0.2240       -6416.6853   -6416.9196       0.2343   100.7
0.2245       -6416.6854   -6416.9198       0.2345   100.8
0.2250       -6416.6855   -6416.9220       0.2366   101.7
0.2255       -6416.6856   -6416.9245       0.2389   102.7
0.2260       -6416.6856   -6416.9254       0.2397   103.0
0.2265       -6416.6856   -6416.9236       0.2379   102.3
0.2270       -6416.6856   -6416.9191       0.2335   100.4
0.2275       -6416.6854   -6416.9132       0.2278    97.9
0.2280       -6416.6853   -6416.9079       0.2226    95.7
0.2285       -6416.6852   -6416.9054       0.2202    94.6
0.2290       -6416.6852   -6416.9070       0.2218    95.3
0.2295       -6416.6852   -6416.9130       0.2277    97.9
0.2300       -6416.6854   -6416.9224       0.2370   101.9
0.2305       -6416.6855   -6416.9333       0.2478   106.5
0.2310       -6416.6856   -6416.9436       0.2579   110.9
0.2315       -6416.6857   -6416.9513       0.2657   114.2
0.2320       -6416.6857   -6416.9555       0.2698   116.0
0.2325       -6416.6856   -6416.9560       0.2703   116.2
0.2330       -6416.6855   -6416.9537       0.2681   115.2
0.2335       -6416.6854   -6416.9502       0.2647   113.8
0.2340       -6416.6854   -6416.9472       0.2618   112.5
0.2345       -6416.6853   -6416.9461       0.2608   112.1
0.2350       -6416.6854   -6416.9473       0.2619   112.6
0.2355       -6416.6855   -6416.9500       0.2645   113.7
0.2360       -6416.6856   -6416.9526       0.2669   114.7
0.2365       -6416.6858   -6416.9526       0.2668   114.7
0.2370       -6416.6858   -6416.9479       0.2621   112.6
0.2375       -6416.6858   -6416.9374       0.2516   108.1
0.2380       -6416.6857   -6416.9214       0.2357   101.3
0.2385       -6416.6855   -6416.9018       0.2163    93.0
0.2390       -6416.6853   -6416.8814       0.1961    84.3
0.2395       -6416.6852   -6416.8634       0.1782    76.6
0.2400       -6416.6851   -6416.8501       0.1650    70.9
0.2410       -6416.6852   -6416.8397       0.1545    66.4
0.2415       -6416.6854   -6416.8407       0.1553    66.7
0.2420       -6416.6855   -6416.8431       0.1577    67.8
0.2425       -6416.6855   -6416.8455       0.1599    68.7
0.2430       -6416.6855   -6416.8468       0.1613    69.3
0.2435       -6416.6854   -6416.8474       0.1620    69.6
0.2440       -6416.6853   -6416.8486       0.1633    70.2
0.2445       -6416.6852   -6416.8521       0.1669    71.7
0.2450       -6416.6852   -6416.8595       0.1744    74.9
0.2455       -6416.6852   -6416.8719       0.1867    80.2
0.2460       -6416.6853   -6416.8889       0.2036    87.5
0.2465       -6416.6854   -6416.9091       0.2237    96.1
0.2470       -6416.6856   -6416.9299       0.2442   105.0
0.2475       -6416.6858   -6416.9482       0.2624   112.8
0.2480       -6416.6859   -6416.9616       0.2757   118.5
0.2485       -6416.6859   -6416.9686       0.2828   121.5
0.2490       -6416.6857   -6416.9696       0.2838   122.0
0.2495       -6416.6856   -6416.9661       0.2805   120.6
0.2500       -6416.6854   -6416.9608       0.2754   118.4
True
systems = dpdata.LabeledSystem("md.traj", fmt="ase/traj")

preview_stride = max(1, MD_STEPS // 10)
for frame_idx in range(0, len(systems), preview_stride):
    print("frame", frame_idx)
    systems[frame_idx].to_3dmol(
        f_idx=0,
        size=(450, 350),
    ).show()
frame 0

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

frame 50

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

frame 100

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

frame 150

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

frame 200

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

frame 250

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

frame 300

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

frame 350

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

frame 400

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

frame 450

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

frame 500

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

3.4.3. Save the trajectory as a DeePMD dataset#

The dpdata package writes the Teacher-labeled trajectory into a DeePMD-kit data directory. The energy and force labels come from the DPA3 Teacher model used during MD. Virial labels are not used in this lightweight documentation example, so the Student training configuration sets the virial loss weights to zero.

Reference: dpdata integration

systems = dpdata.LabeledSystem("md.traj", fmt="ase/traj")
systems.to_deepmd_npy("data/cyclohexane/train/system_001")
!tree data/cyclohexane/train/system_001
data/cyclohexane/train/system_001
├── nopbc
├── set.000
│   ├── box.npy
│   ├── coord.npy
│   ├── energy.npy
│   └── force.npy
├── type.raw
└── type_map.raw

2 directories, 7 files

3.5. Generate the Student training configuration#

The DeePMD-kit training entry point is a JSON configuration file. For clarity, this tutorial writes the configuration to configs/student_se_atten_v2.json instead of placing it directly inside the run directory.

If you want to adjust model size, the number of training steps, learning-rate decay, or loss weights, start from the variables and JSON fields in the following cell.

The Student model uses the se_atten_v2 descriptor and learns the DPA-3 Teacher energy and force labels for the sampled cyclohexane configurations.

%%bash
set -euo pipefail

mkdir -p configs runs/cyclohexane_dpa3_distill/student_se_atten_v2

cat > configs/student_se_atten_v2.json <<EOF
{
  "model": {
    "type_map": ["C", "H"],
    "descriptor": {
      "type": "se_atten_v2",
      "sel": "auto",
      "rcut_smth": 0.5,
      "rcut": 6.0,
      "neuron": [25, 50, 100],
      "resnet_dt": false,
      "axis_neuron": 16,
      "seed": 1,
      "attn": 128,
      "attn_layer": 0,
      "attn_dotr": true,
      "attn_mask": false,
      "precision": "float32"
    },
    "fitting_net": {
      "neuron": [240, 240, 240],
      "resnet_dt": true,
      "precision": "float32",
      "seed": 1
    }
  },
  "learning_rate": {
    "type": "exp",
    "decay_steps": 10000,
    "start_lr": 1e-3,
    "stop_lr": 1e-5
  },
  "loss": {
    "type": "ener",
    "start_pref_e": 0.02,
    "limit_pref_e": 1.0,
    "start_pref_f": 1000,
    "limit_pref_f": 1.0,
    "start_pref_v": 0,
    "limit_pref_v": 0
  },
  "training": {
    "training_data": {
      "systems": ["$(pwd)/data/cyclohexane/train/system_001"],
      "batch_size": 8
    },
    "numb_steps": 20000,
    "seed": 10,
    "disp_file": "lcurve.out",
    "disp_freq": 200,
    "save_freq": 5000,
    "save_ckpt": "model.ckpt",
    "disp_training": true,
    "time_training": true,
    "profiling": false,
    "profiling_file": "timeline.json"
  }
}
EOF

3.6. Train the Student model#

This cell starts DeePMD-kit training.

The input configuration is configs/student_se_atten_v2.json. The training outputs are written to runs/cyclohexane_dpa3_distill/student_se_atten_v2.

%%bash
set -euo pipefail

STUDENT_INPUT="$(pwd)/configs/student_se_atten_v2.json"
STUDENT_WORKDIR="$(pwd)/runs/cyclohexane_dpa3_distill/student_se_atten_v2"

mkdir -p "$STUDENT_WORKDIR"
cd "$STUDENT_WORKDIR"

dp --pt train "$STUDENT_INPUT"
To get the best performance, it is recommended to adjust the number of threads by setting the environment variables OMP_NUM_THREADS, DP_INTRA_OP_PARALLELISM_THREADS, and DP_INTER_OP_PARALLELISM_THREADS. See https://deepmd.rtfd.io/parallelism/ for more information.
[2026-06-20 22:11:19,616] DEEPMD INFO    DeePMD version: 3.1.3
[2026-06-20 22:11:19,617] DEEPMD INFO    Configuration path: //configs/student_se_atten_v2.json
[2026-06-20 22:11:19,618] DEEPMD INFO     _____               _____   __  __  _____           _     _  _   
[2026-06-20 22:11:19,619] DEEPMD INFO    |  __ \             |  __ \ |  \/  ||  __ \         | |   (_)| |  
[2026-06-20 22:11:19,619] DEEPMD INFO    | |  | |  ___   ___ | |__) || \  / || |  | | ______ | | __ _ | |_ 
[2026-06-20 22:11:19,619] DEEPMD INFO    | |  | | / _ \ / _ \|  ___/ | |\/| || |  | ||______|| |/ /| || __|
[2026-06-20 22:11:19,619] DEEPMD INFO    | |__| ||  __/|  __/| |     | |  | || |__| |        |   < | || |_ 
[2026-06-20 22:11:19,619] DEEPMD INFO    |_____/  \___| \___||_|     |_|  |_||_____/         |_|\_\|_| \__|
[2026-06-20 22:11:19,619] DEEPMD INFO    Please read and cite:
[2026-06-20 22:11:19,619] DEEPMD INFO    Wang, Zhang, Han and E, Comput.Phys.Comm. 228, 178-184 (2018)
[2026-06-20 22:11:19,619] DEEPMD INFO    Zeng et al, J. Chem. Phys., 159, 054801 (2023)
[2026-06-20 22:11:19,619] DEEPMD INFO    Zeng et al, J. Chem. Theory Comput., 21, 4375-4385 (2025)
[2026-06-20 22:11:19,619] DEEPMD INFO    See https://deepmd.rtfd.io/credits/ for details.
[2026-06-20 22:11:19,619] DEEPMD INFO    ---------------------------------------------------------------------------------------------------------------
[2026-06-20 22:11:19,619] DEEPMD INFO    Installed to:         /opt/mamba/lib/python3.12/site-packages/deepmd
[2026-06-20 22:11:19,619] DEEPMD INFO    Source:               v3.1.3
[2026-06-20 22:11:19,619] DEEPMD INFO    Source Branch:        HEAD
[2026-06-20 22:11:19,619] DEEPMD INFO    Source Commit:        b2c8511e
[2026-06-20 22:11:19,619] DEEPMD INFO    Source Commit at:     2026-03-18 14:20:41 +0000
[2026-06-20 22:11:19,619] DEEPMD INFO    Float Precision:      Double
[2026-06-20 22:11:19,619] DEEPMD INFO    Build Variant:        CUDA
[2026-06-20 22:11:19,619] DEEPMD INFO    Backend:              PyTorch
[2026-06-20 22:11:19,619] DEEPMD INFO    PT Ver:               v2.10.0+cu128-g449b1768410
[2026-06-20 22:11:19,619] DEEPMD INFO    Custom OP Enabled:    True
[2026-06-20 22:11:19,620] DEEPMD INFO    Built with PT Ver:    2.10.0
[2026-06-20 22:11:19,620] DEEPMD INFO    Built with PT Inc:    /tmp/build-env-wnfrgr6r/lib/python3.11/site-packages/torch/include
[2026-06-20 22:11:19,620] DEEPMD INFO                          /tmp/build-env-wnfrgr6r/lib/python3.11/site-packages/torch/include/torch/csrc/api/include
[2026-06-20 22:11:19,620] DEEPMD INFO    Built with PT Lib:    /tmp/build-env-wnfrgr6r/lib/python3.11/site-packages/torch/lib
[2026-06-20 22:11:19,620] DEEPMD INFO    Running on:           bohrium-156-1473861
[2026-06-20 22:11:19,620] DEEPMD INFO    Computing Device:     CPU
[2026-06-20 22:11:19,620] DEEPMD INFO    CUDA_VISIBLE_DEVICES: unset
[2026-06-20 22:11:19,620] DEEPMD INFO    Visible GPU Count:    0
[2026-06-20 22:11:19,620] DEEPMD INFO    Num Intra Threads:    0
[2026-06-20 22:11:19,620] DEEPMD INFO    Num Inter Threads:    0
[2026-06-20 22:11:19,620] DEEPMD INFO    ---------------------------------------------------------------------------------------------------------------
[2026-06-20 22:11:19,708] DEEPMD INFO    Calculate neighbor statistics... (add --skip-neighbor-stat to skip this step)
[2026-06-20 22:11:19,727] DEEPMD WARNING You can use the environment variable DP_INFER_BATCH_SIZE tocontrol the inference batch size (nframes * natoms). The default value is 1024.
[2026-06-20 22:11:19,864] DEEPMD INFO    Neighbor statistics: training data with minimal neighbor distance: 1.067591
[2026-06-20 22:11:19,864] DEEPMD INFO    Neighbor statistics: training data with maximum neighbor size: [17] (cutoff radius: 6.000000)
[2026-06-20 22:11:19,877] DEEPMD INFO    Constructing DataLoaders from 1 systems
[2026-06-20 22:11:19,943] DEEPMD INFO    Packing data for statistics from 1 systems
[2026-06-20 22:11:20,134] DEEPMD INFO    RMSE of energy per atom after linear regression is: 0.0023592935450802953 in the unit of energy.
[2026-06-20 22:11:21,910] DEEPMD INFO    ---Summary of DataSystem: Training     -----------------------------------------------
[2026-06-20 22:11:21,911] DEEPMD INFO    Found 1 System(s):
[2026-06-20 22:11:21,911] DEEPMD INFO                                        system  natoms  bch_sz   n_bch       prob  pbc
[2026-06-20 22:11:21,911] DEEPMD INFO           //data/cyclohexane/train/system_001      18       8      62  1.000e+00    F
[2026-06-20 22:11:21,911] DEEPMD INFO    --------------------------------------------------------------------------------------
[2026-06-20 22:11:21,914] DEEPMD INFO    Model Params:  0.516 M   (Trainable: 0.516 M)
[2026-06-20 22:11:21,914] DEEPMD INFO    Start to train 20000 steps.
/opt/mamba/lib/python3.12/site-packages/torch/utils/data/dataloader.py:1118: UserWarning: 'pin_memory' argument is set as true but no accelerator is found, then device pinned memory won't be used.
  super().__init__(loader)
[2026-06-20 22:11:23,219] DEEPMD INFO    Batch       1: trn: rmse = 5.05e+01, rmse_e = 1.41e+00, rmse_f = 1.60e+00, lr = 1.00e-03
[2026-06-20 22:11:23,224] DEEPMD INFO    Batch       1: total wall time = 1.31 s, eta = 7:15:57
[2026-06-20 22:11:43,185] DEEPMD INFO    Batch     200: trn: rmse = 1.06e+01, rmse_e = 1.55e+00, rmse_f = 3.35e-01, lr = 1.00e-03
[2026-06-20 22:11:43,191] DEEPMD INFO    Batch     200: total wall time = 19.97 s, eta = 0:32:56
[2026-06-20 22:12:03,518] DEEPMD INFO    Batch     400: trn: rmse = 1.21e+01, rmse_e = 7.73e-01, rmse_f = 3.81e-01, lr = 1.00e-03
[2026-06-20 22:12:03,523] DEEPMD INFO    Batch     400: total wall time = 20.33 s, eta = 0:33:12
[2026-06-20 22:12:23,020] DEEPMD INFO    Batch     600: trn: rmse = 1.09e+01, rmse_e = 3.15e-01, rmse_f = 3.44e-01, lr = 1.00e-03
[2026-06-20 22:12:23,026] DEEPMD INFO    Batch     600: total wall time = 19.50 s, eta = 0:31:31
[2026-06-20 22:12:42,687] DEEPMD INFO    Batch     800: trn: rmse = 1.02e+01, rmse_e = 1.57e-01, rmse_f = 3.21e-01, lr = 1.00e-03
[2026-06-20 22:12:42,696] DEEPMD INFO    Batch     800: total wall time = 19.67 s, eta = 0:31:28
[2026-06-20 22:13:01,905] DEEPMD INFO    Batch    1000: trn: rmse = 9.18e+00, rmse_e = 3.84e-02, rmse_f = 2.90e-01, lr = 1.00e-03
[2026-06-20 22:13:01,913] DEEPMD INFO    Batch    1000: total wall time = 19.22 s, eta = 0:30:25
[2026-06-20 22:13:21,704] DEEPMD INFO    Batch    1200: trn: rmse = 9.27e+00, rmse_e = 2.77e-02, rmse_f = 2.93e-01, lr = 1.00e-03
[2026-06-20 22:13:21,711] DEEPMD INFO    Batch    1200: total wall time = 19.80 s, eta = 0:31:01
[2026-06-20 22:13:41,121] DEEPMD INFO    Batch    1400: trn: rmse = 7.77e+00, rmse_e = 1.45e-01, rmse_f = 2.46e-01, lr = 1.00e-03
[2026-06-20 22:13:41,126] DEEPMD INFO    Batch    1400: total wall time = 19.41 s, eta = 0:30:05
[2026-06-20 22:14:00,631] DEEPMD INFO    Batch    1600: trn: rmse = 7.81e+00, rmse_e = 1.35e-01, rmse_f = 2.47e-01, lr = 1.00e-03
[2026-06-20 22:14:00,639] DEEPMD INFO    Batch    1600: total wall time = 19.51 s, eta = 0:29:55
[2026-06-20 22:14:20,736] DEEPMD INFO    Batch    1800: trn: rmse = 7.61e+00, rmse_e = 1.10e-01, rmse_f = 2.41e-01, lr = 1.00e-03
[2026-06-20 22:14:20,742] DEEPMD INFO    Batch    1800: total wall time = 20.10 s, eta = 0:30:29
[2026-06-20 22:14:40,227] DEEPMD INFO    Batch    2000: trn: rmse = 8.04e+00, rmse_e = 1.45e-01, rmse_f = 2.54e-01, lr = 1.00e-03
[2026-06-20 22:14:40,238] DEEPMD INFO    Batch    2000: total wall time = 19.50 s, eta = 0:29:14
[2026-06-20 22:14:59,830] DEEPMD INFO    Batch    2200: trn: rmse = 8.64e+00, rmse_e = 1.03e-01, rmse_f = 2.73e-01, lr = 1.00e-03
[2026-06-20 22:14:59,836] DEEPMD INFO    Batch    2200: total wall time = 19.60 s, eta = 0:29:04
[2026-06-20 22:15:20,064] DEEPMD INFO    Batch    2400: trn: rmse = 7.19e+00, rmse_e = 8.45e-02, rmse_f = 2.28e-01, lr = 1.00e-03
[2026-06-20 22:15:20,069] DEEPMD INFO    Batch    2400: total wall time = 20.23 s, eta = 0:29:40
[2026-06-20 22:15:39,505] DEEPMD INFO    Batch    2600: trn: rmse = 6.55e+00, rmse_e = 5.15e-02, rmse_f = 2.07e-01, lr = 1.00e-03
[2026-06-20 22:15:39,512] DEEPMD INFO    Batch    2600: total wall time = 19.44 s, eta = 0:28:11
[2026-06-20 22:15:59,096] DEEPMD INFO    Batch    2800: trn: rmse = 5.76e+00, rmse_e = 1.31e-03, rmse_f = 1.82e-01, lr = 1.00e-03
[2026-06-20 22:15:59,101] DEEPMD INFO    Batch    2800: total wall time = 19.59 s, eta = 0:28:04
[2026-06-20 22:16:18,786] DEEPMD INFO    Batch    3000: trn: rmse = 5.16e+00, rmse_e = 8.86e-03, rmse_f = 1.63e-01, lr = 1.00e-03
[2026-06-20 22:16:18,793] DEEPMD INFO    Batch    3000: total wall time = 19.69 s, eta = 0:27:53
[2026-06-20 22:16:38,439] DEEPMD INFO    Batch    3200: trn: rmse = 4.74e+00, rmse_e = 3.30e-02, rms[2026-06-20 22:16:58,093] DEEPMD INFO    Batch    3400: trn: rmse = 5.01e+00, rmse_e = 8.76e-02, rmse_f = 1.58e-01, lr = 1.00e-03
[2026-06-20 22:16:58,103] DEEPMD INFO    Batch    3400: total wall time = 19.66 s, eta = 0:27:11
[2026-06-20 22:17:18,219] DEEPMD INFO    Batch    3600: trn: rmse = 7.31e+00, rmse_e = 2.97e-02, rmse_f = 2.31e-01, lr = 1.00e-03
[2026-06-20 22:17:18,231] DEEPMD INFO    Batch    3600: total wall time = 20.13 s, eta = 0:27:30
[2026-06-20 22:17:38,310] DEEPMD INFO    Batch    3800: trn: rmse = 4.72e+00, rmse_e = 1.95e-01, rmse_f = 1.49e-01, lr = 1.00e-03
[2026-06-20 22:17:38,317] DEEPMD INFO    Batch    3800: total wall time = 20.09 s, eta = 0:27:06
[2026-06-20 22:17:57,832] DEEPMD INFO    Batch    4000: trn: rmse = 4.76e+00, rmse_e = 3.94e-02, rmse_f = 1.51e-01, lr = 1.00e-03
[2026-06-20 22:17:57,841] DEEPMD INFO    Batch    4000: total wall time = 19.52 s, eta = 0:26:01
[2026-06-20 22:18:17,989] DEEPMD INFO    Batch    4200: trn: rmse = 4.53e+00, rmse_e = 3.34e-02, rmse_f = 1.43e-01, lr = 1.00e-03
[2026-06-20 22:18:17,995] DEEPMD INFO    Batch    4200: total wall time = 20.16 s, eta = 0:26:32
[2026-06-20 22:18:37,832] DEEPMD INFO    Batch    4400: trn: rmse = 4.07e+00, rmse_e = 1.05e-02, rmse_f = 1.29e-01, lr = 1.00e-03
[2026-06-20 22:18:37,837] DEEPMD INFO    Batch    4400: total wall time = 19.84 s, eta = 0:25:47
[2026-06-20 22:18:58,006] DEEPMD INFO    Batch    4600: trn: rmse = 3.88e+00, rmse_e = 8.25e-03, rmse_f = 1.23e-01, lr = 1.00e-03
[2026-06-20 22:18:58,016] DEEPMD INFO    Batch    4600: total wall time = 20.18 s, eta = 0:25:53
[2026-06-20 22:19:17,887] DEEPMD INFO    Batch    4800: trn: rmse = 5.34e+00, rmse_e = 7.78e-03, rmse_f = 1.69e-01, lr = 1.00e-03
[2026-06-20 22:19:17,892] DEEPMD INFO    Batch    4800: total wall time = 19.87 s, eta = 0:25:10
[2026-06-20 22:19:37,477] DEEPMD INFO    Batch    5000: trn: rmse = 3.65e+00, rmse_e = 5.98e-02, rmse_f = 1.15e-01, lr = 1.00e-03
[2026-06-20 22:19:37,485] DEEPMD INFO    Batch    5000: total wall time = 19.59 s, eta = 0:24:29
[2026-06-20 22:19:37,563] DEEPMD INFO    Saved model to model.ckpt-5000.pt
[2026-06-20 22:19:57,347] DEEPMD INFO    Batch    5200: trn: rmse = 3.78e+00, rmse_e = 3.19e-02, rmse_f = 1.19e-01, lr = 1.00e-03
[2026-06-20 22:19:57,354] DEEPMD INFO    Batch    5200: total wall time = 19.87 s, eta = 0:24:30
[2026-06-20 22:20:17,420] DEEPMD INFO    Batch    5400: trn: rmse = 3.89e+00, rmse_e = 7.17e-02, rmse_f = 1.23e-01, lr = 1.00e-03
[2026-06-20 22:20:17,428] DEEPMD INFO    Batch    5400: total wall time = 20.07 s, eta = 0:24:25
[2026-06-20 22:20:36,939] DEEPMD INFO    Batch    5600: trn: rmse = 4.47e+00, rmse_e = 8.18e-02, rmse_f = 1.41e-01, lr = 1.00e-03
[2026-06-20 22:20:36,945] DEEPMD INFO    Batch    5600: total wall time = 19.52 s, eta = 0:23:25
[2026-06-20 22:20:56,608] DEEPMD INFO    Batch    5800: trn: rmse = 3.40e+00, rmse_e = 3.34e-02, rmse_f = 1.07e-01, lr = 1.00e-03
[2026-06-20 22:20:56,612] DEEPMD INFO    Batch    5800: total wall time = 19.67 s, eta = 0:23:16
[2026-06-20 22:21:16,699] DEEPMD INFO    Batch    6000: trn: rmse = 3.32e+00, rmse_e = 2.66e-02, rmse_f = 1.05e-01, lr = 1.00e-03
[2026-06-20 22:21:16,706] DEEPMD INFO    Batch    6000: total wall time = 20.09 s, eta = 0:23:26
[2026-06-20 22:21:36,669] DEEPMD INFO    Batch    6200: trn: rmse = 2.52e+00, rmse_e = 4.84e-02, rmse_f = 7.98e-02, lr = 1.00e-03
[2026-06-20 22:21:36,676] DEEPMD INFO    Batch    6200: total wall time = 19.97 s, eta = 0:22:57
[2026-06-20 22:21:56,198] DEEPMD INFO    Batch    6400: trn: rmse = 2.92e+00, rmse_e = 1.34e-01, rmse_f = 9.24e-02, lr = 1.00e-03
[2026-06-20 22:21:56,205] DEEPMD INFO    Batch    6400: total wall time = 19.53 s, eta = 0:22:07
[2026-06-20 22:22:16,126] DEEPMD INFO    Batch    6600: trn: rmse = 2.72e+00, rmse_e = 1.08e-01, rmse_f = 8.60e-02, lr = 1.00e-03
[2026-06-20 22:22:16,130] DEEPMD INFO    Batch    6600: total wall time = 19.92 s, eta = 0:22:14
[2026-06-20 22:22:35,509] DEEPMD INFO    Batch    6800: trn: rmse = 2.62e+00, rmse_e = 9.56e-02, rmse_f = 8.28e-02, lr = 1.00e-03
[2026-06-20 22:22:35,516] DEEPMD INFO    Batch    6800: total wall time = 19.39 s, eta = 0:21:19
[2026-06-20 22:22:55,250] DEEPMD INFO    Batch    7000: trn: rmse = 2.32e+00, rmse_e = 2.76e-03, rmse_f = 7.35e-02, lr = 1.00e-03
[2026-06-20 22:22:55,258] DEEPMD INFO    Batch    7000: total wall time = 19.74 s, eta = 0:21:23
[2026-06-20 22:23:15,219] DEEPMD INFO    Batch    7200: trn: rmse = 2.89e+00, rmse_e = 2.74e-02, rmse_f = 9.15e-02, lr = 1.00e-03
[2026-06-20 22:23:15,223] DEEPMD INFO    Batch    7200: total wall time = 19.97 s, eta = 0:21:17
[2026-06-20 22:23:34,817] DEEPMD INFO    Batch    7400: trn: rmse = 2.12e+00, rmse_e = 1.83e-03, rmse_f = 6.72e-02, lr = 1.00e-03
[2026-06-20 22:23:34,827] DEEPMD INFO    Batch    7400: total wall time = 19.60 s, eta = 0:20:34
[2026-06-20 22:23:54,562] DEEPMD INFO    Batch    7600: trn: rmse = 2.03e+00, rmse_e = 6.56e-02, rmse_f = 6.43e-02, lr = 1.00e-03
[2026-06-20 22:23:54,566] DEEPMD INFO    Batch    7600: total wall time = 19.74 s, eta = 0:20:23
[2026-06-20 22:24:14,455] DEEPMD INFO    Batch    7800: trn: rmse = 2.75e+00, rmse_e = 2.32e-02, rmse_f = 8.70e-02, lr = 1.00e-03
[2026-06-20 22:24:14,462] DEEPMD INFO    Batch    7800: total wall time = 19.90 s, eta = 0:20:13
[2026-06-20 22:24:33,934] DEEPMD INFO    Batch    8000: trn: rmse = 2.16e+00, rmse_e = 5.83e-03, rmse_f = 6.83e-02, lr = 1.00e-03
[2026-06-20 22:24:33,941] DEEPMD INFO    Batch    8000: total wall time = 19.48 s, eta = 0:19:28
[2026-06-20 22:24:53,671] DEEPMD INFO    Batch    8200: trn: rmse = 1.92e+00, rmse_e = 2.18e-02, rmse_f = 6.09e-02, lr = 1.00e-03
[2026-06-20 22:24:53,676] DEEPMD INFO    Batch    8200: total wall time = 19.73 s, eta = 0:19:24
[2026-06-20 22:25:13,490] DEEPMD INFO    Batch    8400: trn: rmse = 1.98e+00, rmse_e = 1.23e-02, rmse_f = 6.26e-02, lr = 1.00e-03
[2026-06-20 22:25:13,497] DEEPMD INFO    Batch    8400: total wall time = 19.82 s, eta = 0:19:09
[2026-06-20 22:25:32,778] DEEPMD INFO    Batch    8600: trn: rmse = 2.14e+00, rmse_e = 2.84e-02, rmse_f = 6.76e-02, lr = 1.00e-03
[2026-06-20 22:25:32,782] DEEPMD INFO    Batch    8600: total wall time = 19.28 s, eta = 0:18:19
[2026-06-20 22:25:52,329] DEEPMD INFO    Batch    8800: trn: rmse = 2.11e+00, rmse_e = 1.83e-03, rmse_f = 6.67e-02, lr = 1.00e-03
[2026-06-20 22:25:52,336] DEEPMD INFO    Batch    8800: total wall time = 19.55 s, eta = 0:18:14
[2026-06-20 22:26:12,138] DEEPMD INFO    Batch    9000: trn: rmse = 1.96e+00, rmse_e = 5.44e-02, rmse_f = 6.19e-02, lr = 1.00e-03
[2026-06-20 22:26:12,145] DEEPMD INFO    Batch    9000: total wall time = 19.81 s, eta = 0:18:09
[2026-06-20 22:26:31,658] DEEPMD INFO    Batch    9200: trn: rmse = 2.00e+00, rmse_e = 6.88e-03, rmse_f = 6.33e-02, lr = 1.00e-03
[2026-06-20 22:26:31,663] DEEPMD INFO    Batch    9200: total wall time = 19.52 s, eta = 0:17:33
[2026-06-20 22:26:51,327] DEEPMD INFO    Batch    9400: trn: rmse = 2.09e+00, rmse_e = 2.45e-02, rmse_f = 6.62e-02, lr = 1.00e-03
[2026-06-20 22:26:51,334] DEEPMD INFO    Batch    9400: total wall time = 19.67 s, eta = 0:17:22
[2026-06-20 22:27:11,550] DEEPMD INFO    Batch    9600: trn: rmse = 2.46e+00, rmse_e = 2.66e-02, rmse_f = 7.78e-02, lr = 1.00e-03
[2026-06-20 22:27:11,555] DEEPMD INFO    Batch    9600: total wall time = 20.22 s, eta = 0:17:31
[2026-06-20 22:27:30,951] DEEPMD INFO    Batch    9800: trn: rmse = 1.94e+00, rmse_e = 3.19e-02, rmse_f = 6.13e-02, lr = 1.00e-03
[2026-06-20 22:27:30,959] DEEPMD INFO    Batch    9800: total wall time = 19.40 s, eta = 0:16:29
[2026-06-20 22:27:50,736] DEEPMD INFO    Batch   10000: trn: rmse = 1.63e+00, rmse_e = 1.29e-02, rmse_f = 5.15e-02, lr = 1.00e-03
[2026-06-20 22:27:50,743] DEEPMD INFO    Batch   10000: total wall time = 19.78 s, eta = 0:16:29
[2026-06-20 22:27:50,805] DEEPMD INFO    Saved model to model.ckpt-10000.pt
[2026-06-20 22:28:10,455] DEEPMD INFO    Batch   10200: trn: rmse = 4.94e-01, rmse_e = 3.15e-04, rmse_f = 4.91e-02, lr = 1.00e-04
[2026-06-20 22:28:10,461] DEEPMD INFO    Batch   10200: total wall time = 19.72 s, eta = 0:16:06
[2026-06-20 22:28:29,744] DEEPMD INFO    Batch   10400: trn: rmse = 5.30e-01, rmse_e = 5.29e-04, rmse_f = 5.27e-02, lr = 1.00e-04
[2026-06-20 22:28:29,751] DEEPMD INFO    Batch   10400: total wall time = 19.29 s, eta = 0:15:25
[2026-06-20 22:28:49,551] DEEPMD INFO    Batch   10600: trn: rmse = 5.47e-01, rmse_e = 4.92e-04, rmse_f = 5.45e-02, lr = 1.00e-04
[2026-06-20 22:28:49,555] DEEPMD INFO    Batch   10600: total wall time = 19.80 s, eta = 0:15:30
[2026-06-20 22:29:09,307] DEEPMD INFO    Batch   10800: trn: rmse = 4.89e-01, rmse_e = 2.95e-04, rmse_f = 4.87e-02, lr = 1.00e-04
[2026-06-20 22:29:09,308] DEEPMD INFO    Batch   10800: total wall time = 19.75 s, eta = 0:15:08
[2026-06-20 22:29:28,803] DEEPMD INFO    Batch   11000: trn: rmse = 4.98e-01, rmse_e = 4.36e-04, rmse_f = 4.95e-02, lr = 1.00e-04
[2026-06-20 22:29:28,809] DEEPMD INFO    Batch   11000: total wall time = 19.50 s, eta = 0:14:37
[2026-06-20 22:29:48,380] DEEPMD INFO    Batch   11200: trn: rmse = 4.90e-01, rmse_e = 4.00e-04, rmse_f = 4.87e-02, lr = 1.00e-04
[2026-06-20 22:29:48,386] DEEPMD INFO    Batch   11200: total wall time = 19.58 s, eta = 0:14:21
[2026-06-20 22:30:08,461] DEEPMD INFO    Batch   11400: trn: rmse = 5.06e-01, rmse_e = 4.52e-04, rmse_f = 5.04e-02, lr = 1.00e-04
[2026-06-20 22:30:08,467] DEEPMD INFO    Batch   11400: total wall time = 20.08 s, eta = 0:14:23
[2026-06-20 22:30:28,330] DEEPMD INFO    Batch   11600: trn: rmse = 5.23e-01, rmse_e = 5.25e-04, rmse_f = 5.21e-02, lr = 1.00e-04
[2026-06-20 22:30:28,335] DEEPMD INFO    Batch   11600: total wall time = 19.87 s, eta = 0:13:54
[2026-06-20 22:30:47,928] DEEPMD INFO    Batch   11800: trn: rmse = 4.26e-01, rmse_e = 4.76e-04, rmse_f = 4.24e-02, lr = 1.00e-04
[2026-06-20 22:30:47,937] DEEPMD INFO    Batch   11800: total wall time = 19.60 s, eta = 0:13:23
[2026-06-20 22:31:07,697] DEEPMD INFO    Batch   12000: trn: rmse = 4.88e-01, rmse_e = 5.28e-04, rmse_f = 4.85e-02, lr = 1.00e-04
[2026-06-20 22:31:07,703] DEEPMD INFO    Batch   12000: total wall time = 19.77 s, eta = 0:13:10
[2026-06-20 22:31:26,948] DEEPMD INFO    Batch   12200: trn: rmse = 4.46e-01, rmse_e = 5.08e-04, rmse_f = 4.44e-02, lr = 1.00e-04
[2026-06-20 22:31:26,956] DEEPMD INFO    Batch   12200: total wall time = 19.25 s, eta = 0:12:30
[2026-06-20 22:31:46,819] DEEPMD INFO    Batch   12400: trn: rmse = 5.06e-01, rmse_e = 4.20e-04, rmse_f = 5.04e-02, lr = 1.00e-04
[2026-06-20 22:31:46,825] DEEPMD INFO    Batch   12400: total wall time = 19.87 s, eta = 0:12:35
[2026-06-20 22:32:06,540] DEEPMD INFO    Batch   12600: trn: rmse = 5.13e-01, rmse_e = 4.20e-04, rmse_f = 5.11e-02, lr = 1.00e-04
[2026-06-20 22:32:06,545] DEEPMD INFO    Batch   12600: total wall time = 19.72 s, eta = 0:12:09
[2026-06-20 22:32:26,238] DEEPMD INFO    Batch   12800: trn: rmse = 4.72e-01, rmse_e = 6.15e-04, rmse_f = 4.70e-02, lr = 1.00e-04
[2026-06-20 22:32:26,245] DEEPMD INFO    Batch   12800: total wall time = 19.70 s, eta = 0:11:49
[2026-06-20 22:32:46,038] DEEPMD INFO    Batch   13000: trn: rmse = 4.52e-01, rmse_e = 3.20e-04, rmse_f = 4.50e-02, lr = 1.00e-04
[2026-06-20 22:32:46,043] DEEPMD INFO    Batch   13000: total wall time = 19.80 s, eta = 0:11:32
[2026-06-20 22:33:05,785] DEEPMD INFO    Batch   13200: trn: rmse = 4.90e-01, rmse_e = 3.93e-04, rmse_f = 4.88e-02, lr = 1.00e-04
[2026-06-20 22:33:05,790] DEEPMD INFO    Batch   13200: total wall time = 19.75 s, eta = 0:11:11
[2026-06-20 22:33:25,338] DEEPMD INFO    Batch   13400: trn: rmse = 4.96e-01, rmse_e = 7.06e-04, rmse_f = 4.93e-02, lr = 1.00e-04
[2026-06-20 22:33:25,342] DEEPMD INFO    Batch   13400: total wall time = 19.55 s, eta = 0:10:45
[2026-06-20 22:33:45,293] DEEPMD INFO    Batch   13600: trn: rmse = 4.18e-01, rmse_e = 4.06e-04, rmse_f = 4.16e-02, lr = 1.00e-04
[2026-06-20 22:33:45,300] DEEPMD INFO    Batch   13600: total wall time = 19.96 s, eta = 0:10:38
[2026-06-20 22:34:04,836] DEEPMD INFO    Batch   13800: trn: rmse = 4.95e-01, rmse_e = 4.57e-04, rmse_f = 4.93e-02, lr = 1.00e-04
[2026-06-20 22:34:04,842] DEEPMD INFO    Batch   13800: total wall time = 19.54 s, eta = 0:10:05
[2026-06-20 22:34:24,322] DEEPMD INFO    Batch   14000: trn: rmse = 4.81e-01, rmse_e = 5.96e-04, rmse_f = 4.79e-02, lr = 1.00e-04
[2026-06-20 22:34:24,327] DEEPMD INFO    Batch   14000: total wall time = 19.49 s, eta = 0:09:44
[2026-06-20 22:34:43,839] DEEPMD INFO    Batch   14200: trn: rmse = 4.78e-01, rmse_e = 1.45e-03, rmse_f = 4.75e-02, lr = 1.00e-04
[2026-06-20 22:34:43,846] DEEPMD INFO    Batch   14200: total wall time = 19.52 s, eta = 0:09:26
[2026-06-20 22:35:03,654] DEEPMD INFO    Batch   14400: trn: rmse = 3.88e-01, rmse_e = 1.10e-03, rmse_f = 3.86e-02, lr = 1.00e-04
[2026-06-20 22:35:03,660] DEEPMD INFO    Batch   14400: total wall time = 19.81 s, eta = 0:09:14
[2026-06-20 22:35:23,171] DEEPMD INFO    Batch   14600: trn: rmse = 5.43e-01, rmse_e = 1.30e-03, rmse_f = 5.40e-02, lr = 1.00e-04
[2026-06-20 22:35:23,177] DEEPMD INFO    Batch   14600: total wall time = 19.52 s, eta = 0:08:46
[2026-06-20 22:35:43,261] DEEPMD INFO    Batch   14800: trn: rmse = 5.01e-01, rmse_e = 4.95e-04, rmse_f = 4.99e-02, lr = 1.00e-04
[2026-06-20 22:35:43,268] DEEPMD INFO    Batch   14800: total wall time = 20.09 s, eta = 0:08:42
[2026-06-20 22:36:03,268] DEEPMD INFO    Batch   15000: trn: rmse = 4.31e-01, rmse_e = 9.64e-04, rmse_f = 4.29e-02, lr = 1.00e-04
[2026-06-20 22:36:03,271] DEEPMD INFO    Batch   15000: total wall time = 20.00 s, eta = 0:08:20
[2026-06-20 22:36:03,320] DEEPMD INFO    Saved model to model.ckpt-15000.pt
[2026-06-20 22:36:22,786] DEEPMD INFO    Batch   15200: trn: rmse = 4.91e-01, rmse_e = 3.39e-03, rmse_f = 4.88e-02, lr = 1.00e-04
[2026-06-20 22:36:22,793] DEEPMD INFO    Batch   15200: total wall time = 19.52 s, eta = 0:07:48
[2026-06-20 22:36:42,512] DEEPMD INFO    Batch   15400: trn: rmse = 4.81e-01, rmse_e = 2.04e-04, rmse_f = 4.79e-02, lr = 1.00e-04
[2026-06-20 22:36:42,519] DEEPMD INFO    Batch   15400: total wall time = 19.73 s, eta = 0:07:33
[2026-06-20 22:37:02,050] DEEPMD INFO    Batch   15600: trn: rmse = 4.09e-01, rmse_e = 2.76e-04, rmse_f = 4.07e-02, lr = 1.00e-04
[2026-06-20 22:37:02,057] DEEPMD INFO    Batch   15600: total wall time = 19.54 s, eta = 0:07:09
[2026-06-20 22:37:21,784] DEEPMD INFO    Batch   15800: trn: rmse = 4.85e-01, rmse_e = 2.30e-03, rmse_f = 4.82e-02, lr = 1.00e-04
[2026-06-20 22:37:21,790] DEEPMD INFO    Batch   15800: total wall time = 19.73 s, eta = 0:06:54
[2026-06-20 22:37:41,545] DEEPMD INFO    Batch   16000: trn: rmse = 4.81e-01, rmse_e = 2.93e-03, rmse_f = 4.79e-02, lr = 1.00e-04
[2026-06-20 22:37:41,550] DEEPMD INFO    Batch   16000: total wall time = 19.76 s, eta = 0:06:35
[2026-06-20 22:38:01,099] DEEPMD INFO    Batch   16200: trn: rmse = 4.87e-01, rmse_e = 3.10e-03, rmse_f = 4.85e-02, lr = 1.00e-04
[2026-06-20 22:38:01,108] DEEPMD INFO    Batch   16200: total wall time = 19.56 s, eta = 0:06:11
[2026-06-20 22:38:21,186] DEEPMD INFO    Batch   16400: trn: rmse = 4.69e-01, rmse_e = 7.33e-03, rmse_f = 4.66e-02, lr = 1.00e-04
[2026-06-20 22:38:21,190] DEEPMD INFO    Batch   16400: total wall time = 20.08 s, eta = 0:06:01
[2026-06-20 22:38:40,470] DEEPMD INFO    Batch   16600: trn: rmse = 4.29e-01, rmse_e = 7.30e-03, rmse_f = 4.26e-02, lr = 1.00e-04
[2026-06-20 22:38:40,477] DEEPMD INFO    Batch   16600: total wall time = 19.29 s, eta = 0:05:27
[2026-06-20 22:39:00,172] DEEPMD INFO    Batch   16800: trn: rmse = 4.33e-01, rmse_e = 4.23e-04, rmse_f = 4.31e-02, lr = 1.00e-04
[2026-06-20 22:39:00,180] DEEPMD INFO    Batch   16800: total wall time = 19.70 s, eta = 0:05:15
[2026-06-20 22:39:20,373] DEEPMD INFO    Batch   17000: trn: rmse = 4.52e-01, rmse_e = 2.18e-03, rmse_f = 4.50e-02, lr = 1.00e-04
[2026-06-20 22:39:20,381] DEEPMD INFO    Batch   17000: total wall time = 20.20 s, eta = 0:05:03
[2026-06-20 22:39:40,308] DEEPMD INFO    Batch   17200: trn: rmse = 4.08e-01, rmse_e = 3.13e-03, rmse_f = 4.06e-02, lr = 1.00e-04
[2026-06-20 22:39:40,316] DEEPMD INFO    Batch   17200: total wall time = 19.93 s, eta = 0:04:39
[2026-06-20 22:40:00,114] DEEPMD INFO    Batch   17400: trn: rmse = 4.41e-01, rmse_e = 2.69e-03, rmse_f = 4.39e-02, lr = 1.00e-04
[2026-06-20 22:40:00,119] DEEPMD INFO    Batch   17400: total wall time = 19.80 s, eta = 0:04:17
[2026-06-20 22:40:19,984] DEEPMD INFO    Batch   17600: trn: rmse = 4.57e-01, rmse_e = 4.51e-03, rmse_f = 4.55e-02, lr = 1.00e-04
[2026-06-20 22:40:19,993] DEEPMD INFO    Batch   17600: total wall time = 19.87 s, eta = 0:03:58
[2026-06-20 22:40:39,371] DEEPMD INFO    Batch   17800: trn: rmse = 3.82e-01, rmse_e = 2.84e-03, rmse_f = 3.80e-02, lr = 1.00e-04
[2026-06-20 22:40:39,377] DEEPMD INFO    Batch   17800: total wall time = 19.38 s, eta = 0:03:33
[2026-06-20 22:40:58,791] DEEPMD INFO    Batch   18000: trn: rmse = 4.05e-01, rmse_e = 7.49e-04, rmse_f = 4.03e-02, lr = 1.00e-04
[2026-06-20 22:40:58,798] DEEPMD INFO    Batch   18000: total wall time = 19.42 s, eta = 0:03:14
[2026-06-20 22:41:18,861] DEEPMD INFO    Batch   18200: trn: rmse = 4.47e-01, rmse_e = 4.06e-03, rmse_f = 4.45e-02, lr = 1.00e-04
[2026-06-20 22:41:18,867] DEEPMD INFO    Batch   18200: total wall time = 20.07 s, eta = 0:03:00
[2026-06-20 22:41:38,563] DEEPMD INFO    Batch   18400: trn: rmse = 4.09e-01, rmse_e = 8.48e-04, rmse_f = 4.07e-02, lr = 1.00e-04
[2026-06-20 22:41:38,567] DEEPMD INFO    Batch   18400: total wall time = 19.70 s, eta = 0:02:37
[2026-06-20 22:41:58,049] DEEPMD INFO    Batch   18600: trn: rmse = 5.17e-01, rmse_e = 6.51e-04, rmse_f = 5.15e-02, lr = 1.00e-04
[2026-06-20 22:41:58,054] DEEPMD INFO    Batch   18600: total wall time = 19.49 s, eta = 0:02:16
[2026-06-20 22:42:17,902] DEEPMD INFO    Batch   18800: trn: rmse = 4.40e-01, rmse_e = 9.50e-04, rmse_f = 4.38e-02, lr = 1.00e-04
[2026-06-20 22:42:17,908] DEEPMD INFO    Batch   18800: total wall time = 19.85 s, eta = 0:01:59
[2026-06-20 22:42:37,099] DEEPMD INFO    Batch   19000: trn: rmse = 4.25e-01, rmse_e = 5.43e-03, rmse_f = 4.22e-02, lr = 1.00e-04
[2026-06-20 22:42:37,106] DEEPMD INFO    Batch   19000: total wall time = 19.20 s, eta = 0:01:35
[2026-06-20 22:42:56,673] DEEPMD INFO    Batch   19200: trn: rmse = 3.98e-01, rmse_e = 3.20e-04, rmse_f = 3.96e-02, lr = 1.00e-04
[2026-06-20 22:42:56,677] DEEPMD INFO    Batch   19200: total wall time = 19.57 s, eta = 0:01:18
[2026-06-20 22:43:16,405] DEEPMD INFO    Batch   19400: trn: rmse = 3.84e-01, rmse_e = 3.85e-03, rmse_f = 3.82e-02, lr = 1.00e-04
[2026-06-20 22:43:16,412] DEEPMD INFO    Batch   19400: total wall time = 19.74 s, eta = 0:00:59
[2026-06-20 22:43:35,832] DEEPMD INFO    Batch   19600: trn: rmse = 4.39e-01, rmse_e = 4.60e-03, rmse_f = 4.36e-02, lr = 1.00e-04
[2026-06-20 22:43:35,839] DEEPMD INFO    Batch   19600: total wall time = 19.43 s, eta = 0:00:38
[2026-06-20 22:43:55,557] DEEPMD INFO    Batch   19800: trn: rmse = 4.25e-01, rmse_e = 1.40e-03, rmse_f = 4.23e-02, lr = 1.00e-04
[2026-06-20 22:43:55,560] DEEPMD INFO    Batch   19800: total wall time = 19.72 s, eta = 0:00:19
[2026-06-20 22:44:15,194] DEEPMD INFO    Batch   20000: trn: rmse = 4.03e-01, rmse_e = 7.60e-03, rmse_f = 4.00e-02, lr = 1.00e-04
[2026-06-20 22:44:15,201] DEEPMD INFO    Batch   20000: total wall time = 19.64 s, eta = 0:00:00
[2026-06-20 22:44:15,260] DEEPMD INFO    Saved model to model.ckpt-20000.pt
[2026-06-20 22:44:15,266] DEEPMD INFO    average training time: 0.0986 s/batch (200 batches excluded)
[2026-06-20 22:44:15,266] DEEPMD INFO    Trained model has been saved to: model.ckpt

3.7. Plot the training curve#

DeePMD-kit writes lcurve.out during training. This cell plots the total RMSE, energy RMSE, and force RMSE when the corresponding columns are present.

import matplotlib.pyplot as plt
from pathlib import Path
import numpy as np

student_workdir = Path("runs/cyclohexane_dpa3_distill/student_se_atten_v2")
lcurve_path = student_workdir / "lcurve.out"
if not lcurve_path.exists():
    raise FileNotFoundError(f"Training curve file not found: {lcurve_path}")

with lcurve_path.open("r", encoding="utf-8") as f:
    header = f.readline().lstrip("#").split()

lcurve = np.atleast_2d(np.loadtxt(lcurve_path))
lcurve_data = {name: lcurve[:, idx] for idx, name in enumerate(header)}
steps = lcurve_data["step"]

metrics = [
    ("rmse_trn", "Total RMSE", "RMSE"),
    ("rmse_e_trn", "Energy RMSE", "eV"),
    ("rmse_f_trn", "Force RMSE", "eV/Angstrom"),
]
metrics = [(key, title, ylabel) for key, title, ylabel in metrics if key in lcurve_data]

fig, axes = plt.subplots(1, len(metrics), figsize=(4 * len(metrics), 3.5))
axes = np.atleast_1d(axes)

for ax, (key, title, ylabel) in zip(axes, metrics, strict=False):
    ax.plot(steps, lcurve_data[key], marker="o", label="train")
    ax.set_title(title)
    ax.set_xlabel("step")
    ax.set_xscale("log")
    ax.set_ylabel(ylabel)
    ax.set_yscale("log")
    ax.grid(True, alpha=0.3)
    ax.legend()

fig.tight_layout()
plt.show()

print("lcurve:", lcurve_path)
print("columns:", header)
print("steps:", int(steps[0]), "->", int(steps[-1]))
../_images/3d32b51dfc3256bbc0f85d8599ee24375337a6d6b991a8093d30ca452ecfb03c.png
lcurve: runs/cyclohexane_dpa3_distill/student_se_atten_v2/lcurve.out
columns: ['step', 'rmse_trn', 'rmse_e_trn', 'rmse_f_trn', 'lr']
steps: 1 -> 20000

3.8. Freeze and evaluate the Student model on the distillation dataset#

After training, export the model and evaluate it against the Teacher labels in the distillation dataset.

Step 1: use dp --pt freeze to convert the trained checkpoint into a frozen model file under artifacts/models/.

Step 2: use dp --pt test on data/cyclohexane/train/system_001 to report energy and force errors. This is a training-set distillation error, not an independent test-set accuracy.

Run dp --pt freeze to obtain student_se_atten_v2.pth, then compress the exported model.

%%bash
set -euo pipefail

STUDENT_WORKDIR="runs/cyclohexane_dpa3_distill/student_se_atten_v2"
STUDENT_MODEL="$(pwd)/runs/cyclohexane_dpa3_distill/artifacts/models/student_se_atten_v2.pth"
COMPRESSED_MODEL="$(pwd)/runs/cyclohexane_dpa3_distill/artifacts/models/student_compressed.pth"
FREEZE_LOG="runs/cyclohexane_dpa3_distill/artifacts/reports/freeze.log"

mkdir -p "$(dirname "$STUDENT_MODEL")" "$(dirname "$FREEZE_LOG")"

(
  cd "$STUDENT_WORKDIR"
  dp --pt freeze -o "$STUDENT_MODEL"
) > "$FREEZE_LOG" 2>&1

echo "freeze finished: $STUDENT_MODEL"
echo "freeze log: $FREEZE_LOG"

dp --pt compress -i "$STUDENT_MODEL" -o "$COMPRESSED_MODEL"
freeze finished: //runs/cyclohexane_dpa3_distill/artifacts/models/student_se_atten_v2.pth
freeze log: runs/cyclohexane_dpa3_distill/artifacts/reports/freeze.log
To get the best performance, it is recommended to adjust the number of threads by setting the environment variables OMP_NUM_THREADS, DP_INTRA_OP_PARALLELISM_THREADS, and DP_INTER_OP_PARALLELISM_THREADS. See https://deepmd.rtfd.io/parallelism/ for more information.
[2026-06-20 22:44:44,455] DEEPMD INFO    DeePMD version: 3.1.3
[2026-06-20 22:44:44,879] DEEPMD INFO    training data with lower boundary: [[-1.1939386 -0.        -0.        -0.       ]
 [-0.9941983 -0.        -0.        -0.       ]]
[2026-06-20 22:44:44,880] DEEPMD INFO    training data with upper boundary: [[2.3226078 3.9109068 3.9109068 3.9109068]
 [3.28381   5.254691  5.254691  5.254691 ]]

Run dp --pt test on the distillation dataset.

%%bash
set -euo pipefail

COMPRESSED_MODEL="$(pwd)/runs/cyclohexane_dpa3_distill/artifacts/models/student_compressed.pth"
TRAIN_SYSTEM="$(pwd)/data/cyclohexane/train/system_001"
TEST_LOG="runs/cyclohexane_dpa3_distill/artifacts/reports/student_train_eval.log"
N_EVAL_FRAMES=1000

mkdir -p "$(dirname "$TEST_LOG")"

dp --pt test -m "$COMPRESSED_MODEL" -s "$TRAIN_SYSTEM" -n "$N_EVAL_FRAMES" > "$TEST_LOG" 2>&1

echo "training-set evaluation finished; log: $TEST_LOG"
echo
echo "Training-set distillation error:"
grep -E "number of test data|Energy MAE|Energy RMSE|Force  MAE|Force  RMSE" "$TEST_LOG" | awk '!seen[$0]++'
training-set evaluation finished; log: runs/cyclohexane_dpa3_distill/artifacts/reports/student_train_eval.log

Training-set distillation error:
[2026-06-20 22:45:02,675] DEEPMD INFO    # number of test data : 501 
[2026-06-20 22:45:02,677] DEEPMD INFO    Energy MAE         : 1.300363e-01 eV
[2026-06-20 22:45:02,677] DEEPMD INFO    Energy RMSE        : 1.301760e-01 eV
[2026-06-20 22:45:02,677] DEEPMD INFO    Energy MAE/Natoms  : 7.224239e-03 eV
[2026-06-20 22:45:02,677] DEEPMD INFO    Energy RMSE/Natoms : 7.231999e-03 eV
[2026-06-20 22:45:02,677] DEEPMD INFO    Force  MAE         : 3.166588e-02 eV/Å
[2026-06-20 22:45:02,677] DEEPMD INFO    Force  RMSE        : 4.142549e-02 eV/Å
[2026-06-20 22:45:02,678] DEEPMD INFO    Energy MAE         : 1.300363e-01 eV
[2026-06-20 22:45:02,678] DEEPMD INFO    Energy RMSE        : 1.301760e-01 eV
[2026-06-20 22:45:02,678] DEEPMD INFO    Energy MAE/Natoms  : 7.224239e-03 eV
[2026-06-20 22:45:02,678] DEEPMD INFO    Energy RMSE/Natoms : 7.231999e-03 eV
[2026-06-20 22:45:02,678] DEEPMD INFO    Force  MAE         : 3.166588e-02 eV/Å
[2026-06-20 22:45:02,678] DEEPMD INFO    Force  RMSE        : 4.142549e-02 eV/Å

3.9. Run MD with the distilled Student model#

The frozen and compressed Student model can now be used as an ASE calculator. The default Student MD length is 40,000 steps with a 0.5 fs time step, saving one frame every 100 steps. This gives a longer post-training trajectory while keeping the notebook output size manageable.

STUDENT_MODEL = Path(
    "runs/cyclohexane_dpa3_distill/artifacts/models/student_compressed.pth"
)
STUDENT_MD_TEMPERATURE_K = 300
STUDENT_MD_TIMESTEP_FS = 0.5
STUDENT_MD_STEPS = 40000
STUDENT_SAVE_EVERY = 100

initial_xyz = Path("data/cyclohexane/raw/cyclohexane_initial.xyz")
student_md_xyz = Path("data/cyclohexane/raw/cyclohexane_student.xyz")

from ase.io import write, read
from tqdm import trange
from deepmd.calculator import DP
from ase import units
from ase.md.velocitydistribution import MaxwellBoltzmannDistribution
from ase.md.verlet import VelocityVerlet

student_atoms = read(str(initial_xyz))
student_atoms.calc = DP(model=str(STUDENT_MODEL))

rng = np.random.default_rng(20260507)
MaxwellBoltzmannDistribution(
    student_atoms, temperature_K=STUDENT_MD_TEMPERATURE_K, rng=rng
)
student_dynamics = VelocityVerlet(
    student_atoms, timestep=STUDENT_MD_TIMESTEP_FS * units.fs
)

student_md_frames = [student_atoms.copy()]
student_md_energies = [float(student_atoms.get_potential_energy())]

print(
    f"Running Student MD for {STUDENT_MD_STEPS} steps, "
    f"timestep={STUDENT_MD_TIMESTEP_FS} fs, T={STUDENT_MD_TEMPERATURE_K} K"
)

for step in trange(1, STUDENT_MD_STEPS + 1):
    student_dynamics.run(1)
    if step % STUDENT_SAVE_EVERY == 0:
        student_md_frames.append(student_atoms.copy())
        student_md_energies.append(float(student_atoms.get_potential_energy()))

write(str(student_md_xyz), student_md_frames)

print("Student MD finished")
print("saved frames:", len(student_md_frames))
print("trajectory:", student_md_xyz)
print("energy range:", min(student_md_energies), max(student_md_energies), "eV")
You can use the environment variable DP_INFER_BATCH_SIZE tocontrol the inference batch size (nframes * natoms). The default value is 1024.
Running Student MD for 40000 steps, timestep=0.5 fs, T=300 K
100%|██████████| 40000/40000 [06:19<00:00, 105.40it/s]
Student MD finished
saved frames: 401
trajectory: data/cyclohexane/raw/cyclohexane_student.xyz
energy range: -6417.227179962489 -6416.89055849919 eV

3.10. Visualize representative Student MD structures#

This section uses the student_md_frames and student_md_energies generated above. It selects the lowest-energy and highest-energy saved frames as simple representatives from the Student MD trajectory.

The energy values are the Student model potential energies for the full cyclohexane system in eV. They are not DFT energies and should not be interpreted as a rigorous conformer ranking.

For cyclohexane, a stable room-temperature trajectory is expected to show chair-like structures most of the time. The highest-energy frame in this short trajectory is better described as a distorted structure within the sampled region, not necessarily a true transition-state or boat conformer. To study chair-boat-ring-inversion statistics, run longer sampling, use higher-temperature or enhanced-sampling MD, and validate the resulting structures separately.

import matplotlib.pyplot as plt

plt.plot(range(len(student_md_energies)), student_md_energies)
plt.xlabel("saved frame index")
plt.ylabel("Student potential energy (eV)")
plt.title("Student MD energy trace")
plt.grid(True, alpha=0.3)
plt.show()
../_images/e6001a61f9e9327a85db139e72187a7a61fa994bdebfa4c2e4df9c9a7dd16199.png
student_md_energies = np.asarray(student_md_energies)

low_idx = int(np.argmin(student_md_energies))
high_idx = int(np.argmax(student_md_energies))

print("trajectory frames:", len(student_md_frames))
print("lowest-energy frame:", low_idx, f"{student_md_energies[low_idx]:.6f} eV")
print("highest-energy frame:", high_idx, f"{student_md_energies[high_idx]:.6f} eV")

view_style = {
    "stick": {"radius": 0.12},
    "sphere": {"radius": 0.35},
}

for label, frame_idx in [
    ("lowest energy", low_idx),
    ("highest energy", high_idx),
]:
    print(f"{label}: frame {frame_idx}, E = {student_md_energies[frame_idx]:.6f} eV")
    view = dpdata.System(student_md_frames[frame_idx], fmt="ase/structure").to_3dmol(
        f_idx=0,
        size=(450, 350),
        style=view_style,
    )
    view.show()
trajectory frames: 401
lowest-energy frame: 0 -6417.227180 eV
highest-energy frame: 137 -6416.890558 eV
lowest energy: frame 0, E = -6417.227180 eV

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

highest energy: frame 137, E = -6416.890558 eV

3Dmol.js failed to load for some reason. Please check your browser console for error messages.