I agree with Haikuan and also think it's due to the absence of the neighbor
keywod. By default, neighbor list is NOT updated in GPUMD, which is
contrary to the convention adopted by LAMMPS.
董海宽 <dhk@xxxxxxxxxx> 于 2019年12月13日周五 15:36写道：
Perhpas it's because of the absence of the "neighbor" keyword. If your
system allows for bond breaking and reforming, you need to use this keyword
to enable neighbor list updating. Otherwise, a fixed neighbor list will be
used. This keyword needs to be used before every "run" keyword if you hope
to update the neighbor list for that run. Therefore, your "run.in" file
can be modifed to:
*ensemble nvt_ber T T 0.01 time_step 1 neighbor 1.0 # update the neighbor
list with a skin distance of 1.0 Angstrom run 1000000 ensemble npt_ber T T
0.01 0 0 0 0.0005 neighbor 1.0 # update the neighbor list with a skin
distance of 1.0 Angstrom run 1000000 ensemble nve neighbor 1.0 # update the
neighbor list with a skin distance of 1.0 Angstrom run 10000000*
Aslo, you need to enlarge the "MN" parameter and the cutoff distance in
the "xyz.in" file.
For the Tersoff potential for silicon, you can set the first few
parameters in this file to:
*N 50 4.0 ...*
This means that you have N atoms, each atom has at most 50 neighbors, and
the initial cutoff distance for building the neighbor list is 4.0 Angstrom,
which is the cutoff distance for the Tersoff potential (3.0 Angstrom) plus
the skin distance (1.0 Angstrom).
---------- Origin message ----------
From："Florencia Carusela" <flor.caru@xxxxxxxxx>
Subject：[gpumd] Si surface reconstruction
I am trying to do the surface reconstruction (dimerization) of a thin
membrane of Si. I am using the Tersoff potential.
I implemented the protocol that I used in LAMMPS to do this (succesfully)
with the same potential, but I cannot reconstruct the surface with GPUMD
May be someone could help me?
ensemble nvt_ber T T 0.01
ensemble npt_ber T T 0.01 0 0 0 0.0005