neighbor list bugfix to prevent cycle in copy lists
This commit is contained in:
@ -69,8 +69,9 @@ not {hardware thread}.
|
|||||||
For Intel Xeon CPUs:
|
For Intel Xeon CPUs:
|
||||||
|
|
||||||
Edit src/MAKE/OPTIONS/Makefile.intel_cpu_intelmpi as necessary. :ulb,l
|
Edit src/MAKE/OPTIONS/Makefile.intel_cpu_intelmpi as necessary. :ulb,l
|
||||||
If using {kspace_style pppm} in the input script, add "neigh_modify binsize 3" and "kspace_modify diff ad" to the input script for better
|
If using {kspace_style pppm} in the input script, add "neigh_modify binsize cutoff" and "kspace_modify diff ad" to the input script for better
|
||||||
performance. :l
|
performance. Cutoff should be roughly the neighbor list cutoff. By
|
||||||
|
default the binsize is half the neighbor list cutoff. :l
|
||||||
"-pk intel 0 omp 2 -sf intel" added to LAMMPS command-line :l
|
"-pk intel 0 omp 2 -sf intel" added to LAMMPS command-line :l
|
||||||
:ule
|
:ule
|
||||||
|
|
||||||
|
|||||||
@ -245,8 +245,8 @@ appear the system is converging to your specified pressure. The
|
|||||||
solution for this is to either (a) zero the velocities of all atoms
|
solution for this is to either (a) zero the velocities of all atoms
|
||||||
before performing the minimization, or (b) make sure you are
|
before performing the minimization, or (b) make sure you are
|
||||||
monitoring the pressure without its kinetic component. The latter can
|
monitoring the pressure without its kinetic component. The latter can
|
||||||
be done by outputting the pressure from the fix this command creates
|
be done by outputting the pressure from the pressure compute this
|
||||||
(see below) or a pressure fix you define yourself.
|
command creates (see below) or a pressure compute you define yourself.
|
||||||
|
|
||||||
NOTE: Because pressure is often a very sensitive function of volume,
|
NOTE: Because pressure is often a very sensitive function of volume,
|
||||||
it can be difficult for the minimizer to equilibrate the system the
|
it can be difficult for the minimizer to equilibrate the system the
|
||||||
@ -308,7 +308,7 @@ thermo_modify command (or in two separate commands), then the order in
|
|||||||
which the keywords are specified is important. Note that a "pressure
|
which the keywords are specified is important. Note that a "pressure
|
||||||
compute"_compute_pressure.html defines its own temperature compute as
|
compute"_compute_pressure.html defines its own temperature compute as
|
||||||
an argument when it is specified. The {temp} keyword will override
|
an argument when it is specified. The {temp} keyword will override
|
||||||
this (for the pressure compute being used by fix npt), but only if the
|
this (for the pressure compute being used by fix box/relax), but only if the
|
||||||
{temp} keyword comes after the {press} keyword. If the {temp} keyword
|
{temp} keyword comes after the {press} keyword. If the {temp} keyword
|
||||||
comes before the {press} keyword, then the new pressure compute
|
comes before the {press} keyword, then the new pressure compute
|
||||||
specified by the {press} keyword will be unaffected by the {temp}
|
specified by the {press} keyword will be unaffected by the {temp}
|
||||||
@ -316,18 +316,16 @@ setting.
|
|||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
"output commands"_Section_howto.html#howto_15. The scalar is the
|
"output commands"_Section_howto.html#howto_15. The scalar is the
|
||||||
pressure-volume energy, plus the strain energy, if it exists.
|
pressure-volume energy, plus the strain energy, if it exists,
|
||||||
|
as described above.
|
||||||
This fix computes a global scalar which can be accessed by various
|
The energy values reported at the
|
||||||
"output commands"_Section_howto.html#howto_15. The scalar is given
|
end of a minimization run under "Minimization stats" include this
|
||||||
by the energy expression shown above. The energy values reported
|
energy, and so differ from what LAMMPS normally reports as potential
|
||||||
at the end of a minimization run under "Minimization stats" include
|
energy. This fix does not support the "fix_modify"_fix_modify.html
|
||||||
this energy, and so differ from what LAMMPS normally reports as
|
{energy} option, because that would result in double-counting of the
|
||||||
potential energy. This fix does not support the
|
fix energy in the minimization energy. Instead, the fix energy can be
|
||||||
"fix_modify"_fix_modify.html {energy} option,
|
explicitly added to the potential energy using one of these two
|
||||||
because that would result in double-counting of the fix energy in the
|
variants:
|
||||||
minimization energy. Instead, the fix energy can be explicitly
|
|
||||||
added to the potential energy using one of these two variants:
|
|
||||||
|
|
||||||
variable emin equal pe+f_1 :pre
|
variable emin equal pe+f_1 :pre
|
||||||
|
|
||||||
|
|||||||
@ -223,7 +223,9 @@ mpi-stubs:
|
|||||||
@cd STUBS; $(MAKE) clean; $(MAKE)
|
@cd STUBS; $(MAKE) clean; $(MAKE)
|
||||||
|
|
||||||
# install LAMMPS shared lib and Python wrapper for Python usage
|
# install LAMMPS shared lib and Python wrapper for Python usage
|
||||||
# include python package settings to automatically adapt name of python interpreter
|
# include python package settings to
|
||||||
|
# automatically adapt name of python interpreter
|
||||||
|
|
||||||
sinclude ../lib/python/Makefile.lammps
|
sinclude ../lib/python/Makefile.lammps
|
||||||
install-python:
|
install-python:
|
||||||
@$(PYTHON) ../python/install.py
|
@$(PYTHON) ../python/install.py
|
||||||
|
|||||||
@ -1224,10 +1224,13 @@ void Neighbor::morph_copy()
|
|||||||
|
|
||||||
if (jrq->copy && jrq->copylist == i) continue;
|
if (jrq->copy && jrq->copylist == i) continue;
|
||||||
|
|
||||||
// parent list must be perpetual
|
// other list (jrq) to copy from must be perpetual
|
||||||
// copied list can be perpetual or occasional
|
// list that becomes a copy list (irq) can be perpetual or occasional
|
||||||
|
// if both lists are perpetual, require j < i
|
||||||
|
// to prevent circular dependence with 3 or more copies of a list
|
||||||
|
|
||||||
if (jrq->occasional) continue;
|
if (jrq->occasional) continue;
|
||||||
|
if (!irq->occasional && j > i) continue;
|
||||||
|
|
||||||
// both lists must be half, or both full
|
// both lists must be half, or both full
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user