forked from lijiext/lammps
git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@11483 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
parent
e78efeee6a
commit
8879881620
|
@ -17,7 +17,7 @@
|
|||
</PRE>
|
||||
<UL><LI>ID = user-defined name of the group
|
||||
|
||||
<LI>style = <I>delete</I> or <I>region</I> or <I>type</I> or <I>id</I> or <I>molecule</I> or <I>variable</I> or <I>subtract</I> or <I>union</I> or <I>intersect</I>
|
||||
<LI>style = <I>delete</I> or <I>region</I> or <I>type</I> or <I>id</I> or <I>molecule</I> or <I>variable</I> or <I>subtract</I> or <I>union</I> or <I>intersect</I> or <I>dynamic</I> or <I>static</I>
|
||||
|
||||
<PRE> <I>delete</I> = no args
|
||||
<I>region</I> args = region-ID
|
||||
|
@ -32,10 +32,17 @@
|
|||
args = logical value1 value2
|
||||
logical = "<>"
|
||||
value1,value2 = atom types or atom IDs or molecule IDs (depending on <I>style</I>)
|
||||
<I>variable</I> args = variable-ID
|
||||
<I>variable</I> args = variable-name
|
||||
<I>subtract</I> args = two or more group IDs
|
||||
<I>union</I> args = one or more group IDs
|
||||
<I>intersect</I> args = two or more group IDs
|
||||
<I>intersect</I> args = two or more group IDs
|
||||
<I>dynamic</I> args = parent-ID keyword value ...
|
||||
one or more keyword/value pairs may be appended
|
||||
keyword = <I>region</I> or <I>var</I> or <I>every</I>
|
||||
<I>region</I> value = region-ID
|
||||
<I>var</I> value = name of variable
|
||||
<I>every</I> value = N = update group every this many timesteps
|
||||
<I>static</I> = no args
|
||||
</PRE>
|
||||
|
||||
</UL>
|
||||
|
@ -52,7 +59,8 @@ group hienergy variable eng
|
|||
group boundary subtract all a2 a3
|
||||
group boundary union lower upper
|
||||
group boundary intersect upper flow
|
||||
group boundary delete
|
||||
group boundary delete
|
||||
group mine dynamic all region myRegion every 100
|
||||
</PRE>
|
||||
<P><B>Description:</B>
|
||||
</P>
|
||||
|
@ -64,6 +72,18 @@ to act on those atoms together.
|
|||
<P>If the group ID already exists, the group command adds the specified
|
||||
atoms to the group.
|
||||
</P>
|
||||
<P>IMPORTANT NOTE: By default groups are static, meaning the atoms are
|
||||
permanently assigned to the group. For example, if the <I>region</I> style
|
||||
is used to assign atoms to a group, the atoms will remain in the group
|
||||
even if they later move out of the region. As explained below, the
|
||||
<I>dynamic</I> style can be used to make a group dynamic so that a periodic
|
||||
determination is made as to which atoms are in the group. Since many
|
||||
LAMMPS commands operate on groups of atoms, you should think carefully
|
||||
about whether making a group dynamic makes sense for your model.
|
||||
</P>
|
||||
<P>A group with the ID <I>all</I> is predefined. All atoms belong to this
|
||||
group. This group cannot be deleted, or made dynamic.
|
||||
</P>
|
||||
<P>The <I>delete</I> style removes the named group and un-assigns all atoms
|
||||
that were assigned to that group. Since there is a restriction (see
|
||||
below) that no more than 32 groups can be defined at any time, the
|
||||
|
@ -156,14 +176,63 @@ added to the specified group.
|
|||
as arguments. Atoms that belong to every one of the listed groups are
|
||||
added to the specified group.
|
||||
</P>
|
||||
<P>A group with the ID <I>all</I> is predefined. All atoms belong to this
|
||||
group. This group cannot be deleted.
|
||||
<HR>
|
||||
|
||||
<P>The <I>dynamic</I> style flags an existing or new group as dynamic. This
|
||||
means atoms will be (re)assigned to the group periodically as a
|
||||
simulation runs. This is in contrast to static groups where atoms are
|
||||
permanently assigned to the group. The way the assignment occurs is
|
||||
as follows. Only atoms in the group specified as the parent group via
|
||||
the parent-ID are initially assigned to the dynamic group. If the
|
||||
<I>region</I> keyword is used, atoms not in the specified region are
|
||||
removed from the dynamic group. If the <I>var</I> keyword is used, the
|
||||
variable name must be an atom-style or atomfile-style variable. The
|
||||
variable is evaluated and atoms whose per-atom values are 0.0, are
|
||||
removed from the dynamic group.
|
||||
</P>
|
||||
<P>The assignment of atoms to a dynamic group is done at the beginning of
|
||||
each run and on every timestep that is a multiple of <I>N</I>, which is the
|
||||
argument for the <I>every</I> keyword (N = 1 is the default). For an
|
||||
energy minimization, via the <A HREF = "minimize.html">minimize</A> command, an
|
||||
assignement is made at the beginning of the minimization, but not
|
||||
during the iterations of the minimizer.
|
||||
</P>
|
||||
<P>The point in the timestep at which atoms are assigned to a dynamic
|
||||
group is after the initial stage of velocity Verlet time integration
|
||||
has been performed, and before neighbor lists or forces are computed.
|
||||
This is the point in the timestep where atom positions have just
|
||||
changed due to the time integration, so the region criterion should be
|
||||
accurate, if applied.
|
||||
</P>
|
||||
<P>Here is an example of using a dynamic group to shrink the set of atoms
|
||||
being integrated by using a spherical region with a variable radius
|
||||
(shrinking from 18 to 5 over the course of the run). This could be
|
||||
used to model a quench of the system, freezing atoms outside the
|
||||
shrinking sphere, then converting the remaining atoms to a static
|
||||
group and running further.
|
||||
</P>
|
||||
<PRE>variable nsteps equal 5000
|
||||
variable rad equal 18-(step/v_nsteps)*(18-5)
|
||||
region ss sphere 20 20 0 v_rad
|
||||
group mobile dynamic all region ss
|
||||
fix 1 mobile nve
|
||||
run $<I>nsteps</I>
|
||||
group mobile static
|
||||
run $<I>nsteps</I>
|
||||
</PRE>
|
||||
<P>The <I>static</I> style removes the setting for a dynamic group, converting
|
||||
it to a static group (the default). The atoms in the static group are
|
||||
those currently in the dynamic group.
|
||||
</P>
|
||||
<HR>
|
||||
|
||||
<P><B>Restrictions:</B>
|
||||
</P>
|
||||
<P>There can be no more than 32 groups defined at one time, including
|
||||
"all".
|
||||
</P>
|
||||
<P>The parent group of a dynamic group cannot itself be a dynamic group.
|
||||
</P>
|
||||
<P><B>Related commands:</B>
|
||||
</P>
|
||||
<P><A HREF = "dump.html">dump</A>, <A HREF = "fix.html">fix</A>, <A HREF = "region.html">region</A>,
|
||||
|
|
|
@ -14,7 +14,7 @@ group ID style args :pre
|
|||
|
||||
ID = user-defined name of the group :ulb,l
|
||||
style = {delete} or {region} or {type} or {id} or {molecule} or {variable} or \
|
||||
{subtract} or {union} or {intersect} :l
|
||||
{subtract} or {union} or {intersect} or {dynamic} or {static} :l
|
||||
{delete} = no args
|
||||
{region} args = region-ID
|
||||
{type} or {id} or {molecule}
|
||||
|
@ -28,10 +28,17 @@ style = {delete} or {region} or {type} or {id} or {molecule} or {variable} or \
|
|||
args = logical value1 value2
|
||||
logical = "<>"
|
||||
value1,value2 = atom types or atom IDs or molecule IDs (depending on {style})
|
||||
{variable} args = variable-ID
|
||||
{variable} args = variable-name
|
||||
{subtract} args = two or more group IDs
|
||||
{union} args = one or more group IDs
|
||||
{intersect} args = two or more group IDs :pre
|
||||
{intersect} args = two or more group IDs
|
||||
{dynamic} args = parent-ID keyword value ...
|
||||
one or more keyword/value pairs may be appended
|
||||
keyword = {region} or {var} or {every}
|
||||
{region} value = region-ID
|
||||
{var} value = name of variable
|
||||
{every} value = N = update group every this many timesteps
|
||||
{static} = no args :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
|
@ -47,7 +54,9 @@ group hienergy variable eng
|
|||
group boundary subtract all a2 a3
|
||||
group boundary union lower upper
|
||||
group boundary intersect upper flow
|
||||
group boundary delete :pre
|
||||
group boundary delete
|
||||
group mine dynamic all region myRegion every 100 :pre
|
||||
|
||||
|
||||
[Description:]
|
||||
|
||||
|
@ -59,6 +68,18 @@ to act on those atoms together.
|
|||
If the group ID already exists, the group command adds the specified
|
||||
atoms to the group.
|
||||
|
||||
IMPORTANT NOTE: By default groups are static, meaning the atoms are
|
||||
permanently assigned to the group. For example, if the {region} style
|
||||
is used to assign atoms to a group, the atoms will remain in the group
|
||||
even if they later move out of the region. As explained below, the
|
||||
{dynamic} style can be used to make a group dynamic so that a periodic
|
||||
determination is made as to which atoms are in the group. Since many
|
||||
LAMMPS commands operate on groups of atoms, you should think carefully
|
||||
about whether making a group dynamic makes sense for your model.
|
||||
|
||||
A group with the ID {all} is predefined. All atoms belong to this
|
||||
group. This group cannot be deleted, or made dynamic.
|
||||
|
||||
The {delete} style removes the named group and un-assigns all atoms
|
||||
that were assigned to that group. Since there is a restriction (see
|
||||
below) that no more than 32 groups can be defined at any time, the
|
||||
|
@ -151,14 +172,63 @@ The {intersect} style takes a list of two or more existing group names
|
|||
as arguments. Atoms that belong to every one of the listed groups are
|
||||
added to the specified group.
|
||||
|
||||
A group with the ID {all} is predefined. All atoms belong to this
|
||||
group. This group cannot be deleted.
|
||||
:line
|
||||
|
||||
The {dynamic} style flags an existing or new group as dynamic. This
|
||||
means atoms will be (re)assigned to the group periodically as a
|
||||
simulation runs. This is in contrast to static groups where atoms are
|
||||
permanently assigned to the group. The way the assignment occurs is
|
||||
as follows. Only atoms in the group specified as the parent group via
|
||||
the parent-ID are initially assigned to the dynamic group. If the
|
||||
{region} keyword is used, atoms not in the specified region are
|
||||
removed from the dynamic group. If the {var} keyword is used, the
|
||||
variable name must be an atom-style or atomfile-style variable. The
|
||||
variable is evaluated and atoms whose per-atom values are 0.0, are
|
||||
removed from the dynamic group.
|
||||
|
||||
The assignment of atoms to a dynamic group is done at the beginning of
|
||||
each run and on every timestep that is a multiple of {N}, which is the
|
||||
argument for the {every} keyword (N = 1 is the default). For an
|
||||
energy minimization, via the "minimize"_minimize.html command, an
|
||||
assignement is made at the beginning of the minimization, but not
|
||||
during the iterations of the minimizer.
|
||||
|
||||
The point in the timestep at which atoms are assigned to a dynamic
|
||||
group is after the initial stage of velocity Verlet time integration
|
||||
has been performed, and before neighbor lists or forces are computed.
|
||||
This is the point in the timestep where atom positions have just
|
||||
changed due to the time integration, so the region criterion should be
|
||||
accurate, if applied.
|
||||
|
||||
Here is an example of using a dynamic group to shrink the set of atoms
|
||||
being integrated by using a spherical region with a variable radius
|
||||
(shrinking from 18 to 5 over the course of the run). This could be
|
||||
used to model a quench of the system, freezing atoms outside the
|
||||
shrinking sphere, then converting the remaining atoms to a static
|
||||
group and running further.
|
||||
|
||||
variable nsteps equal 5000
|
||||
variable rad equal 18-(step/v_nsteps)*(18-5)
|
||||
region ss sphere 20 20 0 v_rad
|
||||
group mobile dynamic all region ss
|
||||
fix 1 mobile nve
|
||||
run ${nsteps}
|
||||
group mobile static
|
||||
run ${nsteps} :pre
|
||||
|
||||
The {static} style removes the setting for a dynamic group, converting
|
||||
it to a static group (the default). The atoms in the static group are
|
||||
those currently in the dynamic group.
|
||||
|
||||
:line
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
There can be no more than 32 groups defined at one time, including
|
||||
"all".
|
||||
|
||||
The parent group of a dynamic group cannot itself be a dynamic group.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"dump"_dump.html, "fix"_fix.html, "region"_region.html,
|
||||
|
|
Loading…
Reference in New Issue