A script to generate molecular dynamics (MD) datasets for machine learning from given LAMMPS trajectories automatically.

dataset, molecular, dynamics, chemistry, md, molecular-dynamics, neural-network, python
pip install mddatasetbuilder==1.3.9



DOI:10.1038/s41467-020-19497-z Citations python version PyPI codecov Research Group

MDDatasetBuilder is a script to construct reference datasets for the training of neural network potentials from given LAMMPS trajectories.

Complex reaction processes in combustion unraveled by neural network-based molecular dynamics simulation, Nature Communications, 11, 5713 (2020), DOI: 10.1038/s41467-020-19497-z


MDDatasetBuilder can be installed with pip:

pip install mddatasetbuilder

The installation process should be very quick, taking only a few minutes on a “normal” desktop computer.


Simple example

A LAMMPS dump file should be prepared. A LAMMPS bond file can be added for the addition information.

datasetbuilder -d dump.ch4 -b bonds.reaxc.ch4_new -a C H O -n ch4 -i 25

Here, dump.ch4 is the name of the dump file. bonds.reaxc.ch4_new is the name of the bond file, which is optional. C H O is the element in the trajectory. ch4 is the name of the dataset. 25 means the time step interval and the default value is 1.

Then you can generate Gaussian input files for each structure in the dataset and calculate the potential energy & atomic forces (assume the Gaussian 16 has already been installed.):

qmcalc -d dataset_ch4_GJf/000
qmcalc -d dataset_ch4_GJf/001

Next, prepare a DeePMD dataset and use DeePMD-kit to train a NN model.

preparedeepmd -p dataset_ch4_GJf
cd train && dp train train.json

The runtime of the software depends on the amount of data. It is more suited to running on a server rather than desktop computer.


DOI:10.1021/acs.energyfuels.0c03211 Citations

In a follow-up work, the MDDatasetBuilder package has been integrated with DP-GEN software as a part of the DP-GEN workflow:

dpgen init_reaction reaction.json machine.json

See DP-GEN documentation for details. Arguments of reaction.json can be found here. machine.json is described here, where reaxff_command is the LAMMPS command (lmp), build_command is the MDDatasetbuilder command (datasetbuilder), and fp_command is the Gaussian 16 command (g16 < input || :).

The genereated data can be used to continue DP-GEN concurrent learning workflow. Read Energy & Fuels, 2021, 35 (1), 762–769 for details.