You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Summary
When executing dpgen autotest post property.json to calculate interstitial properties, one may encounter such problem.
Traceback (most recent call last):
File "/opt/anaconda3/bin/dpgen", line 8, in <module>
sys.exit(main())
File "/opt/anaconda3/lib/python3.7/site-packages/dpgen/main.py", line 185, in main
args.func(args)
File "/opt/anaconda3/lib/python3.7/site-packages/dpgen/auto_test/run.py", line 57, in gen_test
run_task(args.TASK, args.PARAM, args.MACHINE)
File "/opt/anaconda3/lib/python3.7/site-packages/dpgen/auto_test/run.py", line 48, in run_task
post_property(confs, property_list)
File "/opt/anaconda3/lib/python3.7/site-packages/dpgen/auto_test/common_prop.py", line 249, in post_property
path_to_work)
File "/opt/anaconda3/lib/python3.7/site-packages/dpgen/auto_test/Property.py", line 101, in compute
res = task.compute(ii)
File "/opt/anaconda3/lib/python3.7/site-packages/dpgen/auto_test/Lammps.py", line 369, in compute
d_dump = loadfn(contcar)
File "/opt/anaconda3/lib/python3.7/site-packages/monty/serialization.py", line 88, in loadfn
return json.load(fp, *args, **kwargs)
File "/opt/anaconda3/lib/python3.7/json/__init__.py", line 296, in load
parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw)
File "/opt/anaconda3/lib/python3.7/json/__init__.py", line 361, in loads
return cls(**kw).decode(s)
File "/opt/anaconda3/lib/python3.7/site-packages/monty/json.py", line 368, in decode
return self.process_decoded(d)
File "/opt/anaconda3/lib/python3.7/site-packages/monty/json.py", line 340, in process_decoded
return cls_.from_dict(data)
File "/opt/anaconda3/lib/python3.7/site-packages/monty/json.py", line 175, in from_dict
return cls(**decoded)
File "/opt/anaconda3/lib/python3.7/site-packages/dpdata-0.2.9.dev0+g0db9246.d20220828-py3.7.egg/dpdata/system.py", line 223, in __init__
self.check_data()
File "/opt/anaconda3/lib/python3.7/site-packages/dpdata-0.2.9.dev0+g0db9246.d20220828-py3.7.egg/dpdata/system.py", line 243, in check_data
dd.check(self)
File "/opt/anaconda3/lib/python3.7/site-packages/dpdata-0.2.9.dev0+g0db9246.d20220828-py3.7.egg/dpdata/system.py", line 122, in check
data.shape, shape))
dpdata.system.DataError: Shape of energies is (14,), but expected (30,)
After some efforts, I located the problem. In dp_test_Al_autotest/confs/mp-134/interstitial_00/task.000001, DP-GEN launch a LAMMPS task, whose main process is three successive minimizations for relaxed interstitial structure with DeePMD.
Relavant settings for LAMMPS is
pair_style deepmd frozen_model.pb
pair_coeff * *
compute mype all pe
thermo 100
thermo_style custom step pe pxx pyy pzz pxy pxz pyz lx ly lz vol c_mype
dump 1 all custom 100 dump.relax id type xs ys zs fx fy fz
min_style cg
fix 1 all box/relax iso 0.0
minimize 1.000000e-12 1.000000e-06 5000 500000
fix 1 all box/relax aniso 0.0
minimize 1.000000e-12 1.000000e-06 5000 500000
fix 1 all box/relax tri 0.0
minimize 1.000000e-12 1.000000e-06 5000 500000
Notice that we dump structures each 100 steps and print potential energy each 100 steps. The problem is that in LAMMPS 23 Jun 2022 - Update 1
the recorded information for dump and thermo is not synchronous if you set up multiple successive simulations.
As we can see, since thermo frequency is 100, energy information will be printed at 1100, 1200, 1300... etc. steps.
However, when we look at dump.relax which restores structure information by grep -A 1 "TIMESTEP" dump.relax, we can see information will be printed at 1017, 1117, 1217 steps. This will cause error for dpgen autotest.
This behavior is relevant to LAMMPS version. I then tried DeePMD-kit 2.1.1 with LAMMPS (29 Sep 2021 - Update 3), and run the same minimization. Dumped file is like
I didn't encounter this bug with cpu-version of DeepMD-Kit=2.1.5 and Lammps=20220623. Maybe something goes wrong with gpu-version of the new DeepMD-Kit?
Summary
When executing
dpgen autotest post property.json
to calculate interstitial properties, one may encounter such problem.After some efforts, I located the problem. In
dp_test_Al_autotest/confs/mp-134/interstitial_00/task.000001
,DP-GEN
launch aLAMMPS
task, whose main process is three successive minimizations for relaxed interstitial structure with DeePMD.Relavant settings for LAMMPS is
Notice that we dump structures each 100 steps and print potential energy each 100 steps. The problem is that in LAMMPS
23 Jun 2022 - Update 1
the recorded information for
dump
andthermo
is not synchronous if you set up multiple successive simulations.Logfile for the third minimizaton is
As we can see, since thermo frequency is 100, energy information will be printed at 1100, 1200, 1300... etc. steps.
However, when we look at
dump.relax
which restores structure information bygrep -A 1 "TIMESTEP" dump.relax
, we can see information will be printed at 1017, 1117, 1217 steps. This will cause error fordpgen autotest
.This behavior is relevant to LAMMPS version. I then tried DeePMD-kit 2.1.1 with LAMMPS (29 Sep 2021 - Update 3), and run the same minimization. Dumped file is like
DPGEN Version and Platform
DP-GEN 0.10.6, DeePMD-kit 2.1.5-cuda11, LAMMPS
23 Jun 2022 - Update 1
.Job submission and computing cluster configuration
DP-GEN runs on MacOS and Linux.
Expected Behavior
This has been described.
Actual Behavior
This has been described.
Steps to Reproduce
About DP-GEN autotest:
unzip dp_test_Al_autotest.zip; cd dp_test_Al_autotest; dpgen autotest post property.json
;About LAMMPS:
unzip dp_test_Al_autotest.zip; dp_test_Al_autotest/confs/mp-134/interstitial_00/task.000001; lmp -i in.lammps
;**Further Information, Files, and links
dp_test_Al_autotest.zip
The text was updated successfully, but these errors were encountered: