Commit 7b5a8356 authored by sjplimp's avatar sjplimp
Browse files

git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@3643 f3b2605a-c512-4ea7-a41b-209d697bcdaa
parent 322ed027
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -117,7 +117,10 @@ each atom to (omega cross Rperp) where omega is its angular velocity
around the rotation axis and Rperp is a perpendicular vector from the
rotation axis to the atom.  If the defined
<A HREF = "atom_style.html">atom_style</A> assigns an angular velocity to each atom,
then each atom's angular velocity is also set to omega.
then each atom's angular velocity is also set to omega.  Note that the
direction of rotation for the atoms around the rotation axis is
consistent with the right-hand rule: if the right-hand's thumb points
along <I>R</I>, then the fingers wrap around in the direction of rotation.
</P>
<P>The <I>variable</I> style allows the position and velocity components of
each atom to be set by formulas specified via the
+4 −1
Original line number Diff line number Diff line
@@ -108,7 +108,10 @@ each atom to (omega cross Rperp) where omega is its angular velocity
around the rotation axis and Rperp is a perpendicular vector from the
rotation axis to the atom.  If the defined
"atom_style"_atom_style.html assigns an angular velocity to each atom,
then each atom's angular velocity is also set to omega.
then each atom's angular velocity is also set to omega.  Note that the
direction of rotation for the atoms around the rotation axis is
consistent with the right-hand rule: if the right-hand's thumb points
along {R}, then the fingers wrap around in the direction of rotation.

The {variable} style allows the position and velocity components of
each atom to be set by formulas specified via the
+4 −1
Original line number Diff line number Diff line
@@ -44,7 +44,10 @@ particles, i.e. the direction of the surface normal. Regions can
either be primitive shapes (block, sphere, cylinder, etc) or
combinations of primitive shapes specified via the <I>union</I> or
<I>intersect</I> region styles.  These latter styles can be used to
construct particle containers with complex shapes.
construct particle containers with complex shapes.  Regions can also
change over time via keywords like <I>linear</I>, <I>wiggle</I>, and <I>rotate</I>,
which when used with this fix, have the effect of moving the region
surface in a prescribed manner.
</P>
<P>IMPORTANT NOTE: As discussed on the <A HREF = "region.html">region</A> command doc
page, regions in LAMMPS do not get wrapped across periodic boundaries.
+4 −1
Original line number Diff line number Diff line
@@ -41,7 +41,10 @@ particles, i.e. the direction of the surface normal. Regions can
either be primitive shapes (block, sphere, cylinder, etc) or
combinations of primitive shapes specified via the {union} or
{intersect} region styles.  These latter styles can be used to
construct particle containers with complex shapes.
construct particle containers with complex shapes.  Regions can also
change over time via keywords like {linear}, {wiggle}, and {rotate},
which when used with this fix, have the effect of moving the region
surface in a prescribed manner.

IMPORTANT NOTE: As discussed on the "region"_region.html command doc
page, regions in LAMMPS do not get wrapped across periodic boundaries.
+79 −9
Original line number Diff line number Diff line
@@ -51,7 +51,7 @@
</PRE>
<LI>zero or more keyword/value pairs may be appended 

<LI>keyword = <I>side</I> or <I>units</I> 
<LI>keyword = <I>side</I> or <I>units</I> or <I>vel</I> or <I>wiggle</I> or <I>rotate</I> 

<PRE>  <I>side</I> value = <I>in</I> or <I>out</I>
    <I>in</I> = the region is inside the specified geometry
@@ -59,6 +59,15 @@
  <I>units</I> value = <I>lattice</I> or <I>box</I>
    <I>lattice</I> = the geometry is defined in lattice units
    <I>box</I> = the geometry is defined in simulation box units
  <I>vel</I> args = Vx Vy Vz
    Vx,Vy,Vz = components of velocity vector (velocity units)
  <I>wiggle</I> args = Ax Ay Az period
    Ax,Ay,Az = components of amplitude vector (distance units)
    period = period of oscillation (time units)
  <I>rotate</I> args = Px Py Pz Rx Ry Rz period
    Px,Py,Pz = origin point of axis of rotation (distance units)
    Rx,Ry,Rz = axis of rotation vector
    period = period of rotation (time units) 
</PRE>

</UL>
@@ -69,7 +78,13 @@ region 2 sphere 0.0 0.0 0.0 5 side out
region void cylinder y 2 3 5 -5.0 EDGE units box
region 1 prism 0 10 0 10 0 10 2 0 0
region outside union 4 side1 side2 side3 side4
region 2 sphere 0.0 0.0 0.0 5 side out wiggle 1 1 0 10 
</PRE>
<P>Note that the
direction of rotation for the atoms around the rotation axis is
consistent with the right-hand rule: if the right-hand's thumb points
along <I>R</I>, then the fingers wrap around in the direction of rotation.
</P>
<P><B>Description:</B>
</P>
<P>This command defines a geometric region of space.  Various other
@@ -80,6 +95,15 @@ command, or deleted via the <A HREF = "delete_atoms.html">delete_atoms</A> comma
Or the surface of the region can be used as a boundary wall via the
<A HREF = "fix_wall_region.html">fix wall/region</A> command.
</P>
<P>Normally, regions in LAMMPS are "static", meaning their geometric
extent does not change with time.  If the <I>vel</I> or <I>wiggle</I> or
<I>rotate</I> keyword is used, as described below, the region becomes
"dynamic", meaning it's location or orientation changes with time.
This may be useful, for example, when thermostatting a region, via the
compute temp/region command, or when the fix wall/region command uses
a region surface as a bounding wall on particle motion, i.e. a
rotating container.
</P>
<P>The lo/hi values for <I>block</I> or <I>cone</I> or <I>cylinder</I> or <I>prism</I> styles
can be specified as EDGE or INF.  EDGE means they extend all the way
to the global simulation box boundary.  Note that this is the current
@@ -151,6 +175,8 @@ equivalent.
listed regions combined.  The <I>intersect</I> style creates a region
consisting of the volume that is common to all the listed regions.
</P>
<HR>

<P>The <I>side</I> keyword determines whether the region is considered to be
inside or outside of the specified geometry.  Using this keyword in
conjunction with <I>union</I> and <I>intersect</I> regions, complex geometries
@@ -162,12 +188,16 @@ both of the spheres.
</P>
<P>The <I>units</I> keyword determines the meaning of the distance units used
to define the region for any argument above listed as having distance
units.  A <I>box</I> value selects standard distance units as defined by
the <A HREF = "units.html">units</A> command, e.g. Angstroms for units = real or
metal.  A <I>lattice</I> value means the distance units are in lattice
spacings.  The <A HREF = "lattice.html">lattice</A> command must have been
previously used to define the lattice spacings which are used as
follows:
units.  It also affects the scaling of the velocity vector specfied
with the <I>vel</I> keyword, the amplitude vector specified with the
<I>wiggle</I> keyword, and the rotation point specified with the <I>rotate</I>
keyword, since they each involve a distance metric.
</P>
<P>A <I>box</I> value selects standard distance units as defined by the
<A HREF = "units.html">units</A> command, e.g. Angstroms for units = real or metal.
A <I>lattice</I> value means the distance units are in lattice spacings.
The <A HREF = "lattice.html">lattice</A> command must have been previously used to
define the lattice spacings which are used as follows:
</P>
<UL><LI>For style <I>block</I>, the lattice spacing in dimension x is applied to
xlo and xhi, similarly the spacings in dimensions y,z are applied to
@@ -196,6 +226,46 @@ to yz.
applied to the sphere center x,y,z.  The spacing in dimension x is
applied to the sphere radius. 
</UL>
<HR>

<P>If the <I>vel</I> or <I>wiggle</I> or <I>rotate</I> keywords are used, the region
is "dynamic", meaning its location or orientation changes with time.
No more than one of these keywords can be used at a time.  These
keywords cannot be used with a <I>union</I> or <I>intersect</I> style region.
Instead, the keywords should be used to define the individual
sub-regions of the <I>union</I> or <I>intersect</I> region.  Normally, each
sub-region should be "dynamic" in the same manner (e.g. rotate around
the same point), though this is not a requirement.
</P>
<P>The <I>vel</I> style moves the region at a constant velocity, so that its
position <I>X</I> = (x,y,z) as a function of time is given in vector
notation as
</P>
<PRE>X(t) = X0 + V * delta 
</PRE>
<P>where <I>X0</I> = (x0,y0,z0) is its position at the time the region is
specified, <I>V</I> is the specified velocity vector with components
(Vx,Vy,Vz), and <I>delta</I> is the time elapsed since the region was
specified. 
</P>
<P>The <I>wiggle</I> style moves the region in an oscillatory fashion, so that
its position <I>X</I> = (x,y,z) as a function of time is given in vector
notation as
</P>
<PRE>X(t) = X0 + A sin(omega*delta) 
</PRE>
<P>where <I>X0</I> = (x0,y0,z0) is its position at the time the region is
specified, <I>A</I> is the specified amplitude vector with components
(Ax,Ay,Az), <I>omega</I> is 2 PI / <I>period</I>, and <I>delta</I> is the time
elapsed since the region was specified.
</P>
<P>The <I>rotate</I> style rotates the region around a rotation axis <I>R</I> =
(Rx,Ry,Rz) that goes thru a point <I>P</I> = (Px,Py,Pz).  The <I>period</I> of
the rotation is also specified.  The direction of rotation for the
region around the rotation axis is consistent with the right-hand
rule: if your right-hand thumb points along <I>R</I>, then your fingers
wrap around the axis in the direction of rotation.
</P>
<P><B>Restrictions:</B>
</P>
<P>A prism cannot be of 0.0 thickness in any dimension; use a small z
Loading