lammps/doc/neigh_modify.txt

126 lines
4.9 KiB
Plaintext

"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
neigh_modify command :h3
[Syntax:]
neigh_modify keyword values ... :pre
one or more keyword/value pairs may be listed :ulb,l
keyword = {delay} or {every} or {check} or {exclude} or {page} or {one}
{delay} value = N
N = delay building until this many steps since last build
{every} value = M
M = build neighbor list every this many steps
{check} value = {yes} or {no}
{yes} = only build if some atom has moved half the skin distance or more
{no} = always build on 1st step that {every} and {delay} are satisfied
{exclude} values:
type M N
M,N = exclude if one atom in pair is type M, other is type N
group group1-ID group2-ID
group1-ID,group2-ID = exclude if one atom is in 1st group, other in 2nd
molecule group-ID
groupname = exclude if both atoms are in the same molecule and in the same group
none
delete all exclude settings
{page} value = N
N = number of pairs stored in a single neighbor page
{one} value = N
N = max number of neighbors of one atom :pre
:ule
[Examples:]
neigh_modify every 2 delay 10 check yes page 100000
neigh_modify exclude type 2 3
neigh_modify exclude group frozen frozen check no
neigh_modify exclude group residue1 chain3
neigh_modify exclude molecule rigid :pre
[Description:]
This command sets parameters that affect the pairwise neighbor list.
The {every}, {delay}, and {check} options affect how often the list is
built as a simulation runs. The {delay} setting means never build a
new list until at least N steps after the previous build. The {every}
setting means build the list every M steps (after the delay has
passed). If the {check} setting is {no}, the list is built on the 1st
step that satisfies the {delay} and {every} settings. If the {check}
setting is {yes}, then the list is only built on a particular step if
some atom has moved more than half the skin distance (specified in the
"neighbor"_neighbor.html command) since the last build.
When the rRESPA integrator is used (see the "run_style"_run_style.html
command), the {every} and {delay} parameters refer to the longest
(outermost) timestep.
The {exclude} option turns off pairwise interactions between certain
pairs of atoms, by not including them in the neighbor list. These are
sample scenarios where this is useful:
In crack simulations, pairwise interactions can be shut off between 2
slabs of atoms to effectively create a crack. :ulb,l
When a large collection of atoms is treated as frozen, interactions
between those atoms can be turned off to save needless
computation. E.g. Using the "fix setforce"_fix_setforce.html command
to freeze a wall or portion of a bio-molecule. :l
When one or more rigid bodies are specified, interactions within each
body can be turned off to save needless computation. See the "fix
rigid"_fix_rigid.html command for more details. :l,ule
The {exclude type} option turns off the pairwise interaction if one
atom is of type M and the other of type N. M can equal N. The
{exclude group} option turns off the interaction if one atom is in the
first group and the other is the second. Group1-ID can equal
group2-ID. The {exclude molecule} option turns off the interaction if
both atoms are in the specified group and in the same molecule, as
determined by their molecule ID.
Each of the exclude options can be specified multiple times. The
{exclude type} option is the most efficient option to use; it requries
only a single check, no matter how many times it has been specified.
The other exclude options are more expensive if specified multiple
times; they require one check for each time they have been specified.
Note that the exclude options only affect pairwise interactions; see
the "delete_bonds"_delete_bonds.html command for information on
turning off bond interactions.
The {page} and {one} options affect how memory is allocated for the
neighbor lists. For most simulations the default settings for these
options are fine, but if a very large problem is being run or a very
long cutoff is being used, these parameters can be tuned. The indices
of neighboring atoms are stored in "pages", which are allocated one
after another as they fill up. The size of each page is set by the
{page} value. A new page is allocated when the next atom's neighbors
could potentially overflow the list. This threshhold is set by the
{one} value which tells LAMMPS the maximum number of neighbor's one
atom can have.
[Restrictions:]
If the "delay" setting is non-zero, then it must be a multiple of the
"every" setting.
The exclude molecule option can only be used with atom styles that
define molecule IDs.
[Related commands:]
"neighbor"_neighbor.html, "delete_bonds"_delete_bonds.html
[Default:]
The option defaults are delay = 10, every = 1, check = yes, exclude =
none, page = 100000, and one = 2000.