[lammps-users] A question about 3 kinds of configuration file

Dear developer,

I use ReaxFF library to run a reaction process. My LAMMPS’s version is 3 Mar 2020. I know restart(out.rst.xxx)**, write_restart(xxx.mpiip), write_data(xxx.data), these three order all can generate configurations. So, I use the three configurations corresponding to the frame of 5000 ps(out.rst.8000000, 5000ps.mpiio, and 5000ps.data) to run three consecutive calculation respectively. But I found calculating results of 5000ps.mpiio and 5000.data configurations are the same, but differ from the result of out.rst.8000000. I don’t know why this happened. Results of these three run should be the same because of the same configuration (even if it is a binary file).

Could you tell me which result I should believe? Or which one is more reasonable? Which one is the real consecutive calculation?

I’ll be appreciate it if you could help me with the problem.

Three results are as follow:

result of using out.rst.8000000
Step Time Temp Press PotEng TotEng Density Volume
8000000 0 1530.6407 1656.9674 -445921.09 -430266.98 1.7940828 52716.756
8000200 50 1490.1349 3544.6481 -445869.92 -430630.07 1.8056846 52378.043
8000400 100 1476.9349 3119.7519 -445914.83 -430809.98 1.8104698 52239.604
8000600 150 1447.4318 -1379.8425 -445700.26 -430897.15 1.7955282 52674.32
8000800 200 1472.1198 2830.1747 -445983.62 -430928.01 1.8023038 52476.295
8001000 250 1473.4827 4746.7582 -446083.58 -431014.03 1.7985915 52584.606

result of using 5000ps.mpiio

Step Time Temp Press PotEng TotEng Density Volume
8000000 0 1530.6407 1656.9674 -445921.09 -430266.98 1.7940828 52716.756
8000200 50 1490.3204 3718.6702 -445841.46 -430599.72 1.8058515 52373.202
8000400 100 1472.5017 3033.4356 -445937.46 -430877.95 1.8096853 52262.249
8000600 150 1447.2008 1396.5806 -445735.42 -430934.67 1.796434 52647.76
8000800 200 1465.305 2755.7659 -445932.99 -430947.09 1.8018973 52488.134
8001000 250 1474.6747 1857.7306 -445963.53 -430881.8 1.7960054 52660.325

result of using 5000ps.data

Step Time Temp Press PotEng TotEng Density Volume
0 0 1530.6407 1656.9674 -445921.09 -430266.98 1.7940828 52716.756
200 50 1490.3204 3718.6702 -445841.46 -430599.72 1.8058515 52373.202
400 100 1472.5017 3033.4356 -445937.46 -430877.95 1.8096853 52262.249
600 150 1447.2008 1396.5806 -445735.42 -430934.67 1.796434 52647.76
800 200 1465.305 2755.7659 -445932.99 -430947.09 1.8018973 52488.134
1000 250 1474.6747 1857.7306 -445963.53 -430881.8 1.7960054 52660.325

And the input file about how to generate 5000ps configuration and how to run three consecutive calculation are in the attchment.

in.5000ps_generation (966 Bytes)

in.3_configurations (1.17 KB)

all results are reasonable. please note that the energies and even pressure are the same.

the difference between the files are in the precision of how the positions are stored. the (binary) restart file writes out positions by copying the numbers directly from how they are stored internally, while dump and data file convert binary numbers to formatted numbers (and from a base 2 system to a base 10 system). this will result in small differences in the precision of the coordinates and consequently in diverging trajectories. however, this kind of divergence (to a smaller degree) will also happen if you do the same run with a different number of processors.

the binary restart is the closest representation but the difference is not really relevant.