You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mindspore/model_zoo/research/hpc/molecular_dynamics
mindspore-ci-bot 9fa0499fa0
Change GatherV2 to Gather r1.1 to master
4 years ago
..
script add MD simulation in hpc 4 years ago
src Change GatherV2 to Gather r1.1 to master 4 years ago
README.md Adjust the output of MD simulation 4 years ago
eval.py Adjust the output of MD simulation 4 years ago

README.md

Contents

Description

Molecular Dynamics (MD) is playing an increasingly important role in the research of biology, pharmacy, chemistry, and materials science. The architecture is based on DeePMD, which using an NN scheme for MD simulations, which overcomes the limitations associated to auxiliary quantities like the symmetry functions or the Coulomb matrix. Each environment contains a number of atoms, whose local coordinates are arranged in a symmetry preserving way following the prescription of the Deep Potential method. According to the atomic position, atomic types and box tensor to construct energy.

Thanks a lot for DeePMD team's help.

[1] Paper: L Zhang, J Han, H Wang, R Car, W E. Deep potential molecular dynamics: a scalable model with the accuracy of quantum mechanics. Physical review letters 120 (14), 143001 (2018).

[2] Paper: H Wang, L Zhang, J Han, W E. DeePMD-kit: A deep learning package for many-body potential energy representation and molecular dynamics. Computer Physics Communications 228, 178-184 (2018).

Model Architecture

The overall network architecture of MD simulation is show below.

Link

Dataset

Dataset used: deepmodeling/deepmd-kit/examples/water/data

The data is generated by Quantum Espresso and the input of Quantum Espresso is set manually.

The directory structure of the dataset is as follows:

└─data
    ├─type.raw
    ├─set.000
    │   ├──box.npy
    │   ├──coord.npy
    │   ├──energy.npy
    │   └──force.npy
    ├─set.001
    ├─set.002
    └─set.003

In deepmodeling/deepmd-kit/source:

  • Use train/DataSystem.py to get d_coord and atype.
  • Use function compute_input_stats in train/DataSystem.py to get avg and std.
  • Use op/descrpt_se_a.cc to get d_nlist and nlist.
  • Save d_coord, d_nlist, atype, avg, std and nlist as Npz file for inference.

Environment Requirements

Script Description

Script and Sample Code

├── md
    ├── README.md               # descriptions about MD
    ├── script
    │   ├── eval.sh             # evaluation script
    ├── src
    │   ├── descriptor.py       # descriptor function
    │   └── network.py          # MD simulation architecture
    └── eval.py                 # evaluation interface

Training Process

To Be Done

Evaluation Process

After installing MindSpore via the official website, you can start evaluation as follows:

python eval.py --dataset_path [DATASET_PATH] --checkpoint_path [CHECKPOINT_PATH]

checkpoint can be trained by using DeePMD-kit, and convert into the ckpt of MindSpore.

Result

The infer result

energy: -29944.03
atom_energy: -94.38766   -94.294426  -94.39194   -94.70758   -94.51311   -94.457954 ...

ModelZoo Homepage

Please check the official homepage.