fix issue with rRESPA inner/middle neighbor lists
This commit is contained in:
@ -76,7 +76,9 @@ command for the types of the two atoms is used. For the {radius}
|
|||||||
setting, the sum of the radii of the two particles is used as a
|
setting, the sum of the radii of the two particles is used as a
|
||||||
cutoff. For example, this is appropriate for granular particles which
|
cutoff. For example, this is appropriate for granular particles which
|
||||||
only interact when they are overlapping, as computed by "granular pair
|
only interact when they are overlapping, as computed by "granular pair
|
||||||
styles"_pair_gran.txt.
|
styles"_pair_gran.txt. Note that if a granular model defines atom
|
||||||
|
types such that all particles of a specific type are monodisperse
|
||||||
|
(same diameter), then the two settings are effectively identical.
|
||||||
|
|
||||||
Note that as atoms migrate from processor to processor, there will be
|
Note that as atoms migrate from processor to processor, there will be
|
||||||
no consistent ordering of the entries within the local vector or array
|
no consistent ordering of the entries within the local vector or array
|
||||||
|
|||||||
@ -79,6 +79,9 @@ the two atoms is used. For the {radius} setting, the sum of the radii
|
|||||||
of the two particles is used as a cutoff. For example, this is
|
of the two particles is used as a cutoff. For example, this is
|
||||||
appropriate for granular particles which only interact when they are
|
appropriate for granular particles which only interact when they are
|
||||||
overlapping, as computed by "granular pair styles"_pair_gran.html.
|
overlapping, as computed by "granular pair styles"_pair_gran.html.
|
||||||
|
Note that if a granular model defines atom types such that all
|
||||||
|
particles of a specific type are monodisperse (same diameter), then
|
||||||
|
the two settings are effectively identical.
|
||||||
|
|
||||||
If the inputs are bond, angle, etc attributes, the local data is
|
If the inputs are bond, angle, etc attributes, the local data is
|
||||||
generated by looping over all the atoms owned on a processor and
|
generated by looping over all the atoms owned on a processor and
|
||||||
|
|||||||
@ -17,7 +17,7 @@ style = {verlet} or {verlet/split} or {respa} or {respa/omp} :ulb,l
|
|||||||
{verlet/split} args = none
|
{verlet/split} args = none
|
||||||
{respa} args = N n1 n2 ... keyword values ...
|
{respa} args = N n1 n2 ... keyword values ...
|
||||||
N = # of levels of rRESPA
|
N = # of levels of rRESPA
|
||||||
n1, n2, ... = loop factor between rRESPA levels (N-1 values)
|
n1, n2, ... = loop factors between rRESPA levels (N-1 values)
|
||||||
zero or more keyword/value pairings may be appended to the loop factors
|
zero or more keyword/value pairings may be appended to the loop factors
|
||||||
keyword = {bond} or {angle} or {dihedral} or {improper} or
|
keyword = {bond} or {angle} or {dihedral} or {improper} or
|
||||||
{pair} or {inner} or {middle} or {outer} or {hybrid} or {kspace}
|
{pair} or {inner} or {middle} or {outer} or {hybrid} or {kspace}
|
||||||
@ -55,7 +55,7 @@ style = {verlet} or {verlet/split} or {respa} or {respa/omp} :ulb,l
|
|||||||
|
|
||||||
run_style verlet
|
run_style verlet
|
||||||
run_style respa 4 2 2 2 bond 1 dihedral 2 pair 3 kspace 4
|
run_style respa 4 2 2 2 bond 1 dihedral 2 pair 3 kspace 4
|
||||||
run_style respa 4 2 2 2 bond 1 dihedral 2 inner 3 5.0 6.0 outer 4 kspace 4 :pre
|
run_style respa 4 2 2 2 bond 1 dihedral 2 inner 3 5.0 6.0 outer 4 kspace 4
|
||||||
run_style respa 3 4 2 bond 1 hybrid 2 2 1 kspace 3 :pre
|
run_style respa 3 4 2 bond 1 hybrid 2 2 1 kspace 3 :pre
|
||||||
|
|
||||||
[Description:]
|
[Description:]
|
||||||
|
|||||||
@ -1268,9 +1268,11 @@ void Neighbor::morph_copy()
|
|||||||
|
|
||||||
if (irq->ghost && !jrq->ghost) continue;
|
if (irq->ghost && !jrq->ghost) continue;
|
||||||
|
|
||||||
// do not copy from a history list
|
// do not copy from a history list or a respa middle/inner list
|
||||||
|
|
||||||
if (jrq->history) continue;
|
if (jrq->history) continue;
|
||||||
|
if (jrq->respamiddle) continue;
|
||||||
|
if (jrq->respainner) continue;
|
||||||
|
|
||||||
// these flags must be same,
|
// these flags must be same,
|
||||||
// else 2 lists do not store same pairs
|
// else 2 lists do not store same pairs
|
||||||
|
|||||||
Reference in New Issue
Block a user