git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@5051 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp 2010-10-14 23:23:43 +00:00
parent 46a1a3b66e
commit 4771b8a07b
12 changed files with 362 additions and 266 deletions

View File

@ -144,7 +144,7 @@ listed above.
<BR>
4.11 <A HREF = "Section_howto.html#4_11">Visualizing LAMMPS snapshots</A>
<BR>
4.12 <A HREF = "Section_howto.html#4_12">Non-orthogonal simulation boxes</A>
4.12 <A HREF = "Section_howto.html#4_12">Triclinic (non-orthogonal) simulation boxes</A>
<BR>
4.13 <A HREF = "Section_howto.html#4_13">NEMD simulations</A>
<BR>

View File

@ -106,7 +106,7 @@ listed above.
4.9 "SPC water model"_4_9 :b
4.10 "Coupling LAMMPS to other codes"_4_10 :b
4.11 "Visualizing LAMMPS snapshots"_4_11 :b
4.12 "Non-orthogonal simulation boxes"_4_12 :b
4.12 "Triclinic (non-orthogonal) simulation boxes"_4_12 :b
4.13 "NEMD simulations"_4_13 :b
4.14 "Extended spherical and aspherical particles"_4_14 :b
4.15 "Output from LAMMPS (thermo, dumps, computes, fixes, variables)"_4_15 :b

View File

@ -25,7 +25,7 @@ certain kinds of LAMMPS simulations.
4.9 <A HREF = "#4_9">SPC water model</A><BR>
4.10 <A HREF = "#4_10">Coupling LAMMPS to other codes</A><BR>
4.11 <A HREF = "#4_11">Visualizing LAMMPS snapshots</A><BR>
4.12 <A HREF = "#4_12">Non-orthogonal simulation boxes</A><BR>
4.12 <A HREF = "#4_12">Triclinic (non-orthogonal) simulation boxes</A><BR>
4.13 <A HREF = "#4_13">NEMD simulations</A><BR>
4.14 <A HREF = "#4_14">Extended spherical and aspherical particles</A><BR>
4.15 <A HREF = "#4_15">Output from LAMMPS (thermo, dumps, computes, fixes, variables)</A><BR>
@ -724,22 +724,60 @@ See the <A HREF = "dump.html">dump</A> command for more information on XTC files
<HR>
<A NAME = "4_12"></A><H4>4.12 Non-orthogonal simulation boxes
<A NAME = "4_12"></A><H4>4.12 Triclinic (non-orthogonal) simulation boxes
</H4>
<P>By default, LAMMPS uses an orthogonal simulation box to encompass the
particles. The <A HREF = "boundary.html">boundary</A> command sets the boundary
conditions of the box (periodic, non-periodic, etc). If the box size
is xprd by yprd by zprd then the 3 mutually orthogonal edge vectors of
an orthogonal simulation box are a = (xprd,0,0), b = (0,yprd,0), and c
= (0,0,zprd).
conditions of the box (periodic, non-periodic, etc). The orthogonal
box has its "origin" at (xlo,ylo,zlo) and is defined by 3 edge vectors
starting from the origin given by A = (xhi-xlo,0,0); B =
(0,yhi-ylo,0); C = (0,0,zhi-zlo). The 6 parameters
(xlo,xhi,ylo,yhi,zlo,zhi) are defined at the time the simluation box
is created, e.g. by the <A HREF = "create_box.html">create_box</A> or
<A HREF = "read_data.html">read_data</A> or <A HREF = "read_restart.html">read_restart</A>
commands. Additionally, LAMMPS defines box size parameters lx,ly,lz
where lx = xhi-xlo, and similarly in the y and z dimensions. The 6
parameters, as well as lx,ly,lz, can be output via the <A HREF = "thermo_style.html">thermo_style
custom</A> command.
</P>
<P>LAMMPS also allows non-orthogonal simulation boxes (triclinic
symmetry) to be defined with 3 additional "tilt" parameters which
change the edge vectors of the simulation box to be a = (xprd,0,0), b
= (xy,yprd,0), and c = (xz,yz,zprd). The xy, xz, and yz parameters
can be positive or negative. The simulation box must be periodic in
both dimensions associated with a tilt factor. For example, if xz !=
0.0, then the x and z dimensions must be periodic.
<P>LAMMPS also allows simulations to be perfored in non-orthogonal
simulation boxes shaped as a parallelepiped with triclinic symmetry.
The parallelepiped has its "origin" at (xlo,ylo,zlo) and is defined by
3 edge vectors starting from the origin given by A = (xhi-xlo,0,0); B
= (xy,yhi-ylo,0); C = (xz,yz,zhi-zlo). <I>Xy,xz,yz</I> can be 0.0 or
positive or negative values and are called "tilt factors" because they
are the amount of displacement applied to faces of an originally
orthogonal box to transform it into the parallelepiped. Note that in
LAMMPS the triclinic simulation box edge vectors A,B,C cannot be
arbitrary vectors. As indicated, A must be aligned with the x axis, B
must be in the xy plane, and C is arbitrary. However, this is not a
restriction since it is possible to rotate any set of 3 crystal basis
vectors so that they meet this restriction.
</P>
<P>The 9 parameters (xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) are defined at the
time the simluation box is created. This happens in one of 3 ways.
If the <A HREF = "create_box.html">create_box</A> command is used with a region of
style <I>prism</I>, then a triclinic box is setup. See the
<A HREF = "region.html">region</A> command for details. If the
<A HREF = "read_data.html">read_data</A> command is used to define the simulation
box, and the header of the data file contains a line with the "xy xz
yz" keyword, then a triclinic box is setup. See the
<A HREF = "read_data.html">read_data</A> command for details. Finally, if the
<A HREF = "read_restart.html">read_restart</A> command reads a restart file which
was written from a simulation using a triclinic box, then a triclinic
box will be setup for the restarted simulation.
</P>
<P>Note that you can define a triclinic box with all 3 tilt factors =
0.0, so that it is initially orthogonal. This is necessary if the box
will become non-orthogonal, e.g. due to the <A HREF = "fix_nh.html">fix npt</A> or
<A HREF = "fix_deform.html">fix deform</A> commands. Alternatively, you can use the
<A HREF = "change_box.html">change_box</A> command to convert a simulation box from
orthogonal to triclinic and vice versa.
</P>
<P>As with orthogonal boxes, LAMMPS defines triclinic box size parameters
lx,ly,lz where lx = xhi-xlo, and similarly in the y and z dimensions.
The 9 parameters, as well as lx,ly,lz, can be output via the
<A HREF = "thermo_style.html">thermo_style custom</A> command.
</P>
<P>To avoid extremely tilted boxes (which would be computationally
inefficient), no tilt factor can skew the box more than half the
@ -749,43 +787,62 @@ the x box length is 10 and the xy tilt factor must be between -5 and
5. Similarly, both xz and yz must be between -(xhi-xlo)/2 and
+(yhi-ylo)/2. Note that this is not a limitation, since if the
maximum tilt factor is 5 (as in this example), then configurations
with tilt = ..., -15, -5, 5, 15, 25, ... are all equivalent.
with tilt = ..., -15, -5, 5, 15, 25, ... are geometrically all
equivalent.
</P>
<P>You tell LAMMPS to use a non-orthogonal box when the simulation box is
defined. This happens in one of 3 ways. If the
<A HREF = "create_box.html">create_box</A> command is used with a region of style
<I>prism</I>, then a non-orthogonal domain is setup. See the
<A HREF = "region.html">region</A> command for details. If the
<A HREF = "read_data.html">read_data</A> command is used to define the simulation
box, and the header of the data file contains a line with the "xy xz
yz" keyword, then a non-orthogonal domain is setup. See the
<A HREF = "read_data.html">read_data</A> command for details. Finally, if the
<A HREF = "read_restart.html">read_restart</A> command reads a restart file which
was written from a simulation using a triclinic box, then a
non-orthogonal box will be enabled for the restarted simulation.
<P>Triclinic crystal structures are often defined using three lattice
constants <I>a</I>, <I>b</I>, and <I>c</I>, and three angles <I>alpha</I>, <I>beta</I> and
<I>gamma</I>. Note that in this nomenclature, the a,b,c lattice constants
are the scalar lengths of the 3 A,B,C edge vectors defined above. The
relationship between these 6 quantities (a,b,c,alpha,beta,gamma) and
the LAMMPS box sizes (lx,ly,lz) = (xhi-xlo,yhi-ylo,zhi-zlo) and tilt
factors (xy,xz,yz) is as follows:
</P>
<P>Note that you can define a non-orthogonal box with all 3 tilt factors
= 0.0, so that it is initially orthogonal. This is necessary if the
box will become non-orthogonal. Alternatively, you can use the
<A HREF = "change_box.html">change_box</A> command to convert a simulation box from
orthogonal to non-orthogonal and vice versa.
<CENTER><IMG SRC = "Eqs/box.jpg">
</CENTER>
<P>As discussed on the <A HREF = "dump.html">dump</A> command doc page, when the BOX
BOUNDS for a snapshot is written to a dump file for a triclinic box,
an orthogonal bounding box which encloses the triclinic simulation box
is output, along with the 3 tilt factors (xy, xz, yz) of the triclinic
box, formatted as follows:
</P>
<P>One use of non-orthogonal boxes is to model solid-state crystals with
triclinic symmetry. The <A HREF = "lattice.html">lattice</A> command can be used
with non-orthogonal basis vectors to define a lattice that will tile a
non-orthogonal simulation box via the <A HREF = "create_atoms.html">create_atoms</A>
command. Note that while the box edge vectors a,b,c cannot be
arbitrary vectors (e.g. a must be aligned with the x axis), it is
possible to rotate any crystal's basis vectors so that they meet these
restrictions.
<PRE>ITEM: BOX BOUNDS xy xz yz
xlo_bound xhi_bound xy
ylo_bound yhi_bound xz
zlo_bound zhi_bound yz
</PRE>
<P>This bounding box is convenient for many visualization programs and is
calculated from the 9 triclinic box parameters
(xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) as follows:
</P>
<P>A second use of non-orthogonal boxes is to shear a bulk solid to study
the response of the material. The <A HREF = "fix_deform.html">fix deform</A>
command can be used for this purpose. It allows dynamic control of
the xy, xz, and yz tilt factors as a simulation runs.
<PRE>xlo_bound = xlo + MIN(0.0,xy,xz,xy+xz)
xhi_bound = xhi + MAX(0.0,xy,xz,xy+xz)
ylo_bound = ylo + MIN(0.0,yz)
yhi_bound = yhi + MAX(0.0,yz)
zlo_bound = zlo
zhi_bound = zhi
</PRE>
<P>These formulas can be inverted if you need to convert the bounding box
back into the triclinic box parameters, e.g. xlo = xlo_bound -
MIN(0.0,xy,xz,xy+xz).
</P>
<P>Another use of non-orthogonal boxes is to perform non-equilibrium MD
(NEMD) simulations, as discussed in the next section.
<P>One use of triclinic simulation boxes is to model solid-state crystals
with triclinic symmetry. The <A HREF = "lattice.html">lattice</A> command can be
used with non-orthogonal basis vectors to define a lattice that will
tile a triclinic simulation box via the
<A HREF = "create_atoms.html">create_atoms</A> command.
</P>
<P>A second use is to run Parinello-Rahman dyanamics via the <A HREF = "fix_nh.html">fix
npt</A> command, which will adjust the xy, xz, yz tilt
factors to compensate for off-diagonal components of the pressure
tensor. The analalog for an <A HREF = "minimize.html">energy minimization</A> is
the <A HREF = "fix_box_relax.html">fix box/relax</A> command.
</P>
<P>A third use is to shear a bulk solid to study the response of the
material. The <A HREF = "fix_deform.html">fix deform</A> command can be used for
this purpose. It allows dynamic control of the xy, xz, yz tilt
factors as a simulation runs. This is discussed in the next section
on non-equilibrium MD (NEMD) simulations.
</P>
<HR>

View File

@ -22,7 +22,7 @@ certain kinds of LAMMPS simulations.
4.9 "SPC water model"_#4_9
4.10 "Coupling LAMMPS to other codes"_#4_10
4.11 "Visualizing LAMMPS snapshots"_#4_11
4.12 "Non-orthogonal simulation boxes"_#4_12
4.12 "Triclinic (non-orthogonal) simulation boxes"_#4_12
4.13 "NEMD simulations"_#4_13
4.14 "Extended spherical and aspherical particles"_#4_14
4.15 "Output from LAMMPS (thermo, dumps, computes, fixes, variables)"_#4_15
@ -716,22 +716,60 @@ See the "dump"_dump.html command for more information on XTC files.
:line
4.12 Non-orthogonal simulation boxes :link(4_12),h4
4.12 Triclinic (non-orthogonal) simulation boxes :link(4_12),h4
By default, LAMMPS uses an orthogonal simulation box to encompass the
particles. The "boundary"_boundary.html command sets the boundary
conditions of the box (periodic, non-periodic, etc). If the box size
is xprd by yprd by zprd then the 3 mutually orthogonal edge vectors of
an orthogonal simulation box are a = (xprd,0,0), b = (0,yprd,0), and c
= (0,0,zprd).
conditions of the box (periodic, non-periodic, etc). The orthogonal
box has its "origin" at (xlo,ylo,zlo) and is defined by 3 edge vectors
starting from the origin given by A = (xhi-xlo,0,0); B =
(0,yhi-ylo,0); C = (0,0,zhi-zlo). The 6 parameters
(xlo,xhi,ylo,yhi,zlo,zhi) are defined at the time the simluation box
is created, e.g. by the "create_box"_create_box.html or
"read_data"_read_data.html or "read_restart"_read_restart.html
commands. Additionally, LAMMPS defines box size parameters lx,ly,lz
where lx = xhi-xlo, and similarly in the y and z dimensions. The 6
parameters, as well as lx,ly,lz, can be output via the "thermo_style
custom"_thermo_style.html command.
LAMMPS also allows non-orthogonal simulation boxes (triclinic
symmetry) to be defined with 3 additional "tilt" parameters which
change the edge vectors of the simulation box to be a = (xprd,0,0), b
= (xy,yprd,0), and c = (xz,yz,zprd). The xy, xz, and yz parameters
can be positive or negative. The simulation box must be periodic in
both dimensions associated with a tilt factor. For example, if xz !=
0.0, then the x and z dimensions must be periodic.
LAMMPS also allows simulations to be perfored in non-orthogonal
simulation boxes shaped as a parallelepiped with triclinic symmetry.
The parallelepiped has its "origin" at (xlo,ylo,zlo) and is defined by
3 edge vectors starting from the origin given by A = (xhi-xlo,0,0); B
= (xy,yhi-ylo,0); C = (xz,yz,zhi-zlo). {Xy,xz,yz} can be 0.0 or
positive or negative values and are called "tilt factors" because they
are the amount of displacement applied to faces of an originally
orthogonal box to transform it into the parallelepiped. Note that in
LAMMPS the triclinic simulation box edge vectors A,B,C cannot be
arbitrary vectors. As indicated, A must be aligned with the x axis, B
must be in the xy plane, and C is arbitrary. However, this is not a
restriction since it is possible to rotate any set of 3 crystal basis
vectors so that they meet this restriction.
The 9 parameters (xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) are defined at the
time the simluation box is created. This happens in one of 3 ways.
If the "create_box"_create_box.html command is used with a region of
style {prism}, then a triclinic box is setup. See the
"region"_region.html command for details. If the
"read_data"_read_data.html command is used to define the simulation
box, and the header of the data file contains a line with the "xy xz
yz" keyword, then a triclinic box is setup. See the
"read_data"_read_data.html command for details. Finally, if the
"read_restart"_read_restart.html command reads a restart file which
was written from a simulation using a triclinic box, then a triclinic
box will be setup for the restarted simulation.
Note that you can define a triclinic box with all 3 tilt factors =
0.0, so that it is initially orthogonal. This is necessary if the box
will become non-orthogonal, e.g. due to the "fix npt"_fix_nh.html or
"fix deform"_fix_deform.html commands. Alternatively, you can use the
"change_box"_change_box.html command to convert a simulation box from
orthogonal to triclinic and vice versa.
As with orthogonal boxes, LAMMPS defines triclinic box size parameters
lx,ly,lz where lx = xhi-xlo, and similarly in the y and z dimensions.
The 9 parameters, as well as lx,ly,lz, can be output via the
"thermo_style custom"_thermo_style.html command.
To avoid extremely tilted boxes (which would be computationally
inefficient), no tilt factor can skew the box more than half the
@ -741,43 +779,62 @@ the x box length is 10 and the xy tilt factor must be between -5 and
5. Similarly, both xz and yz must be between -(xhi-xlo)/2 and
+(yhi-ylo)/2. Note that this is not a limitation, since if the
maximum tilt factor is 5 (as in this example), then configurations
with tilt = ..., -15, -5, 5, 15, 25, ... are all equivalent.
with tilt = ..., -15, -5, 5, 15, 25, ... are geometrically all
equivalent.
You tell LAMMPS to use a non-orthogonal box when the simulation box is
defined. This happens in one of 3 ways. If the
"create_box"_create_box.html command is used with a region of style
{prism}, then a non-orthogonal domain is setup. See the
"region"_region.html command for details. If the
"read_data"_read_data.html command is used to define the simulation
box, and the header of the data file contains a line with the "xy xz
yz" keyword, then a non-orthogonal domain is setup. See the
"read_data"_read_data.html command for details. Finally, if the
"read_restart"_read_restart.html command reads a restart file which
was written from a simulation using a triclinic box, then a
non-orthogonal box will be enabled for the restarted simulation.
Triclinic crystal structures are often defined using three lattice
constants {a}, {b}, and {c}, and three angles {alpha}, {beta} and
{gamma}. Note that in this nomenclature, the a,b,c lattice constants
are the scalar lengths of the 3 A,B,C edge vectors defined above. The
relationship between these 6 quantities (a,b,c,alpha,beta,gamma) and
the LAMMPS box sizes (lx,ly,lz) = (xhi-xlo,yhi-ylo,zhi-zlo) and tilt
factors (xy,xz,yz) is as follows:
Note that you can define a non-orthogonal box with all 3 tilt factors
= 0.0, so that it is initially orthogonal. This is necessary if the
box will become non-orthogonal. Alternatively, you can use the
"change_box"_change_box.html command to convert a simulation box from
orthogonal to non-orthogonal and vice versa.
:c,image(Eqs/box.jpg)
One use of non-orthogonal boxes is to model solid-state crystals with
triclinic symmetry. The "lattice"_lattice.html command can be used
with non-orthogonal basis vectors to define a lattice that will tile a
non-orthogonal simulation box via the "create_atoms"_create_atoms.html
command. Note that while the box edge vectors a,b,c cannot be
arbitrary vectors (e.g. a must be aligned with the x axis), it is
possible to rotate any crystal's basis vectors so that they meet these
restrictions.
As discussed on the "dump"_dump.html command doc page, when the BOX
BOUNDS for a snapshot is written to a dump file for a triclinic box,
an orthogonal bounding box which encloses the triclinic simulation box
is output, along with the 3 tilt factors (xy, xz, yz) of the triclinic
box, formatted as follows:
A second use of non-orthogonal boxes is to shear a bulk solid to study
the response of the material. The "fix deform"_fix_deform.html
command can be used for this purpose. It allows dynamic control of
the xy, xz, and yz tilt factors as a simulation runs.
ITEM: BOX BOUNDS xy xz yz
xlo_bound xhi_bound xy
ylo_bound yhi_bound xz
zlo_bound zhi_bound yz :pre
Another use of non-orthogonal boxes is to perform non-equilibrium MD
(NEMD) simulations, as discussed in the next section.
This bounding box is convenient for many visualization programs and is
calculated from the 9 triclinic box parameters
(xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) as follows:
xlo_bound = xlo + MIN(0.0,xy,xz,xy+xz)
xhi_bound = xhi + MAX(0.0,xy,xz,xy+xz)
ylo_bound = ylo + MIN(0.0,yz)
yhi_bound = yhi + MAX(0.0,yz)
zlo_bound = zlo
zhi_bound = zhi :pre
These formulas can be inverted if you need to convert the bounding box
back into the triclinic box parameters, e.g. xlo = xlo_bound -
MIN(0.0,xy,xz,xy+xz).
One use of triclinic simulation boxes is to model solid-state crystals
with triclinic symmetry. The "lattice"_lattice.html command can be
used with non-orthogonal basis vectors to define a lattice that will
tile a triclinic simulation box via the
"create_atoms"_create_atoms.html command.
A second use is to run Parinello-Rahman dyanamics via the "fix
npt"_fix_nh.html command, which will adjust the xy, xz, yz tilt
factors to compensate for off-diagonal components of the pressure
tensor. The analalog for an "energy minimization"_minimize.html is
the "fix box/relax"_fix_box_relax.html command.
A third use is to shear a bulk solid to study the response of the
material. The "fix deform"_fix_deform.html command can be used for
this purpose. It allows dynamic control of the xy, xz, yz tilt
factors as a simulation runs. This is discussed in the next section
on non-equilibrium MD (NEMD) simulations.
:line

View File

@ -32,32 +32,43 @@ geometric domain.
simulation.
</P>
<P>If the region is not of style <I>prism</I>, then LAMMPS encloses the region
(block, sphere, etc) with an axis-aligned (orthogonal) box which
becomes the simulation domain.
(block, sphere, etc) with an axis-aligned orthogonal bounding box
which becomes the simulation domain.
</P>
<P>If the region is of style <I>prism</I>, LAMMPS creates a non-orthogonal
simulation domain shaped as a parallelepiped with triclinic symmetry.
See the <A HREF = "region.html">region prism</A> command for a description of how
the shape of the parallelepiped is defined. The parallelepiped has
its "origin" at (xlo,ylo,zlo) and 3 edge vectors starting from its
origin given by a = (xhi-xlo,0,0); b = (xy,yhi-ylo,0); c =
(xz,yz,zhi-zlo).
As defined by the <A HREF = "region.html">region prism</A> command, the
parallelepiped has its "origin" at (xlo,ylo,zlo) and is defined by 3
edge vectors starting from the origin given by A = (xhi-xlo,0,0); B =
(xy,yhi-ylo,0); C = (xz,yz,zhi-zlo). <I>Xy,xz,yz</I> can be 0.0 or
positive or negative values and are called "tilt factors" because they
are the amount of displacement applied to faces of an originally
orthogonal box to transform it into the parallelipiped.
</P>
<P>A prism region used with the create_box command must have tilt factors
(xy,xz,yz) that do not skew the box more than half the distance of the
parallel box length. For example, if xlo = 2 and xhi = 12, then the x
box length is 10 and the xy tilt factor must be between -5 and 5.
Similarly, both xz and yz must be between -(xhi-xlo)/2 and
+(yhi-ylo)/2. Note that this is not a limitation, since if the
maximum tilt factor is 5 (as in this example), then configurations
with tilt = ..., -15, -5, 5, 15, 25, ... are all equivalent.
<P>A <I>prism</I> region used with the create_box command must have tilt
factors (xy,xz,yz) that do not skew the box more than half the
distance of the parallel box length. For example, if xlo = 2 and xhi
= 12, then the x box length is 10 and the xy tilt factor must be
between -5 and 5. Similarly, both xz and yz must be between
-(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a limitation,
since if the maximum tilt factor is 5 (as in this example), then
configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all
geometrically equivalent.
</P>
<P>See <A HREF = "Section_howto.html#4_12">this section</A> of the doc pages for a
geometric description of triclinic boxes, as defined by LAMMPS, and
how to transform these parameters into other commonly used triclinic
representations.
</P>
<P>When a prism region is used, the simulation domain must be periodic in
any dimensions with a non-zero tilt factor, as defined by the
<A HREF = "boundary.html">boundary</A> command. I.e. if the xy tilt factor is
non-zero, then both the x and y dimensions must be periodic.
Similarly, x and z must be periodic if xz is non-zero and y and z must
be periodic if yz is non-zero.
be periodic if yz is non-zero. Also note that if your simulation will
tilt the box, e.g. via the <A HREF = "fix_deform.html">fix deform</A> command, the
simulation box must be defined as triclinic, even if the tilt factors
are initially 0.0.
</P>
<P>IMPORTANT NOTE: If the system is non-periodic (in a dimension), then
you should not make the lo/hi box dimensions (as defined in your

View File

@ -29,32 +29,43 @@ The argument N is the number of atom types that will be used in the
simulation.
If the region is not of style {prism}, then LAMMPS encloses the region
(block, sphere, etc) with an axis-aligned (orthogonal) box which
becomes the simulation domain.
(block, sphere, etc) with an axis-aligned orthogonal bounding box
which becomes the simulation domain.
If the region is of style {prism}, LAMMPS creates a non-orthogonal
simulation domain shaped as a parallelepiped with triclinic symmetry.
See the "region prism"_region.html command for a description of how
the shape of the parallelepiped is defined. The parallelepiped has
its "origin" at (xlo,ylo,zlo) and 3 edge vectors starting from its
origin given by a = (xhi-xlo,0,0); b = (xy,yhi-ylo,0); c =
(xz,yz,zhi-zlo).
As defined by the "region prism"_region.html command, the
parallelepiped has its "origin" at (xlo,ylo,zlo) and is defined by 3
edge vectors starting from the origin given by A = (xhi-xlo,0,0); B =
(xy,yhi-ylo,0); C = (xz,yz,zhi-zlo). {Xy,xz,yz} can be 0.0 or
positive or negative values and are called "tilt factors" because they
are the amount of displacement applied to faces of an originally
orthogonal box to transform it into the parallelipiped.
A prism region used with the create_box command must have tilt factors
(xy,xz,yz) that do not skew the box more than half the distance of the
parallel box length. For example, if xlo = 2 and xhi = 12, then the x
box length is 10 and the xy tilt factor must be between -5 and 5.
Similarly, both xz and yz must be between -(xhi-xlo)/2 and
+(yhi-ylo)/2. Note that this is not a limitation, since if the
maximum tilt factor is 5 (as in this example), then configurations
with tilt = ..., -15, -5, 5, 15, 25, ... are all equivalent.
A {prism} region used with the create_box command must have tilt
factors (xy,xz,yz) that do not skew the box more than half the
distance of the parallel box length. For example, if xlo = 2 and xhi
= 12, then the x box length is 10 and the xy tilt factor must be
between -5 and 5. Similarly, both xz and yz must be between
-(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a limitation,
since if the maximum tilt factor is 5 (as in this example), then
configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all
geometrically equivalent.
See "this section"_Section_howto.html#4_12 of the doc pages for a
geometric description of triclinic boxes, as defined by LAMMPS, and
how to transform these parameters into other commonly used triclinic
representations.
When a prism region is used, the simulation domain must be periodic in
any dimensions with a non-zero tilt factor, as defined by the
"boundary"_boundary.html command. I.e. if the xy tilt factor is
non-zero, then both the x and y dimensions must be periodic.
Similarly, x and z must be periodic if xz is non-zero and y and z must
be periodic if yz is non-zero.
be periodic if yz is non-zero. Also note that if your simulation will
tilt the box, e.g. via the "fix deform"_fix_deform.html command, the
simulation box must be defined as triclinic, even if the tilt factors
are initially 0.0.
IMPORTANT NOTE: If the system is non-periodic (in a dimension), then
you should not make the lo/hi box dimensions (as defined in your

View File

@ -140,7 +140,7 @@ this format.
self-describing in the following sense.
</P>
<P>The dimensions of the simulation box are included in each snapshot.
For orthogonal simulation boxes this is formatted as:
For an orthogonal simulation box this information is is formatted as:
</P>
<PRE>ITEM: BOX BOUNDS
xlo xhi
@ -150,37 +150,24 @@ zlo zhi
<P>where xlo,xhi are the maximum extents of the simulation box in the
x-dimension, and similarly for y and z.
</P>
<P>For triclinic simulation boxes (non-orthogonal), the tilt factors are
also included, as a 3rd value on each line:
<P>For triclinic simulation boxes (non-orthogonal), an orthogonal
bounding box which encloses the triclinic simulation box is output,
along with the 3 tilt factors (xy, xz, yz) of the triclinic box,
formatted as follows:
</P>
<PRE>ITEM: BOX BOUNDS xy xz yz
xlo_bound xhi_bound xy
ylo_bound yhi_bound xz
zlo_bound zhi_bound yz
</PRE>
<P>See the <A HREF = "region.html">region prism</A> or <A HREF = "read_data.html">read_data</A>
commands for a description of tilt factors in LAMMPS, and their
relationship to other nomenclatures for triclinic geometries,
e.g. using 3 lattice constants <I>a</I>, <I>b</I>, and <I>c</I>, and 3 angles
<I>alpha</I>, <I>beta</I> and <I>gamma</I>.
<P>This bounding box is convenient for many visualization programs.
</P>
<P>IMPORTANT NOTE: As the notation above indicates, for triclinic
simulation boxes, the 6 box bounds written to the dump file
(xlo_bound,xhi_bound,ylo_bound,yhi_bound,zlo_bound,zhi_bound) are NOT
equivalent to the 6 extents (xlo,xhi,ylo,yhi,zlo,zhi) in the
orthogoonal case. Instead they are the extent in each dimension of
the smallest orthogonal "bounding box" that encapsulates the entire
tricilinc simulation box, including the effects of any tilt. This
bounding box is convenient for many visualization programs and is
calculated as follows:
<P>See <A HREF = "Section_howto.html#4_12">this section</A> of the doc pages for a
geometric description of triclinic boxes, as defined by LAMMPS, simple
formulas for how the 6 bounding box extents (xlo_bound,xhi_bound,etc)
are calculated from the triclinic parameters, and how to transform
those parameters into other commonly used triclinic representations.
</P>
<PRE>xlo_bound = MIN(xlo,xlo+xy,xlo+xz,xlo+xy+xz)
xhi_bound = MAX(xhi,xhi+xy,xhi+xz,xhi+xy+xz)
ylo_bound = MIN(ylo,ylo+yz)
yhi_bound = MAX(yhi,yhi+yz)
zlo_bound = zlo
zhi_bound = zhi
</PRE>
<P>The "ITEM: ATOMS" line in each snapshot lists column descriptors for
the per-atom lines that follow. For example, the descriptors would be
"id type xs ys zs" for the default <I>atom</I> style, and would be the atom

View File

@ -130,7 +130,7 @@ For post-processing purposes the {atom} and {custom} text files are
self-describing in the following sense.
The dimensions of the simulation box are included in each snapshot.
For orthogonal simulation boxes this is formatted as:
For an orthogonal simulation box this information is is formatted as:
ITEM: BOX BOUNDS
xlo xhi
@ -140,36 +140,23 @@ zlo zhi :pre
where xlo,xhi are the maximum extents of the simulation box in the
x-dimension, and similarly for y and z.
For triclinic simulation boxes (non-orthogonal), the tilt factors are
also included, as a 3rd value on each line:
For triclinic simulation boxes (non-orthogonal), an orthogonal
bounding box which encloses the triclinic simulation box is output,
along with the 3 tilt factors (xy, xz, yz) of the triclinic box,
formatted as follows:
ITEM: BOX BOUNDS xy xz yz
xlo_bound xhi_bound xy
ylo_bound yhi_bound xz
zlo_bound zhi_bound yz :pre
See the "region prism"_region.html or "read_data"_read_data.html
commands for a description of tilt factors in LAMMPS, and their
relationship to other nomenclatures for triclinic geometries,
e.g. using 3 lattice constants {a}, {b}, and {c}, and 3 angles
{alpha}, {beta} and {gamma}.
This bounding box is convenient for many visualization programs.
IMPORTANT NOTE: As the notation above indicates, for triclinic
simulation boxes, the 6 box bounds written to the dump file
(xlo_bound,xhi_bound,ylo_bound,yhi_bound,zlo_bound,zhi_bound) are NOT
equivalent to the 6 extents (xlo,xhi,ylo,yhi,zlo,zhi) in the
orthogoonal case. Instead they are the extent in each dimension of
the smallest orthogonal "bounding box" that encapsulates the entire
tricilinc simulation box, including the effects of any tilt. This
bounding box is convenient for many visualization programs and is
calculated as follows:
xlo_bound = MIN(xlo,xlo+xy,xlo+xz,xlo+xy+xz)
xhi_bound = MAX(xhi,xhi+xy,xhi+xz,xhi+xy+xz)
ylo_bound = MIN(ylo,ylo+yz)
yhi_bound = MAX(yhi,yhi+yz)
zlo_bound = zlo
zhi_bound = zhi :pre
See "this section"_Section_howto.html#4_12 of the doc pages for a
geometric description of triclinic boxes, as defined by LAMMPS, simple
formulas for how the 6 bounding box extents (xlo_bound,xhi_bound,etc)
are calculated from the triclinic parameters, and how to transform
those parameters into other commonly used triclinic representations.
The "ITEM: ATOMS" line in each snapshot lists column descriptors for
the per-atom lines that follow. For example, the descriptors would be

View File

@ -82,7 +82,7 @@ is different than the default.
<LI><I>xlo xhi</I> = simulation box boundaries in x dimension
<LI><I>ylo yhi</I> = simulation box boundaries in y dimension
<LI><I>zlo zhi</I> = simulation box boundaries in z dimension
<LI><I>xy xz yz</I> = simulation box tilt factors for triclinic domain
<LI><I>xy xz yz</I> = simulation box tilt factors for triclinic system
</UL>
<P>The initial simulation box size is determined by the lo/hi settings.
In any dimension, the system may be periodic or non-periodic; see the
@ -91,38 +91,37 @@ In any dimension, the system may be periodic or non-periodic; see the
<P>If the <I>xy xz yz</I> line does not appear, LAMMPS will set up an
axis-aligned (orthogonal) simulation box. If the line does appear,
LAMMPS creates a non-orthogonal simulation domain shaped as a
parallelepiped with triclinic symmetry. See the <A HREF = "region.html">region
prism</A> command for a description of how the extent of the
parallelepiped is defined. The parallelepiped has its "origin" at
(xlo,ylo,zlo) and 3 edge vectors starting from the origin given by a =
(xhi-xlo,0,0); b = (xy,yhi-ylo,0); c = (xz,yz,zhi-zlo). Note that if
your simulation will tilt the box, e.g. via the <A HREF = "fix_deform.html">fix
deform</A> command, the simulation box must be triclinic,
even if the tilt factors are initially 0.0.
parallelepiped with triclinic symmetry. The parallelepiped has its
"origin" at (xlo,ylo,zlo) and is defined by 3 edge vectors starting
from the origin given by A = (xhi-xlo,0,0); B = (xy,yhi-ylo,0); C =
(xz,yz,zhi-zlo). <I>Xy,xz,yz</I> can be 0.0 or positive or negative values
and are called "tilt factors" because they are the amount of
displacement applied to faces of an originally orthogonal box to
transform it into the parallelepiped.
</P>
<P>The tilt factors (xy,xz,yz) can not skew the box more than half the
distance of the parallel box length. For example, if xlo = 2 and xhi
= 12, then the x box length is 10 and the xy tilt factor must be
between -5 and 5. Similarly, both xz and yz must be between
-(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a limitation,
since if the maximum tilt factor is 5 (as in this example), then
configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all
equivalent.
distance of the corresponding parallel box length. For example, if
xlo = 2 and xhi = 12, then the x box length is 10 and the xy tilt
factor must be between -5 and 5. Similarly, both xz and yz must be
between -(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a
limitation, since if the maximum tilt factor is 5 (as in this
example), then configurations with tilt = ..., -15, -5, 5, 15, 25,
... are all geometrically equivalent.
</P>
<P>Crystal structures are often defined using three lattice constants
<I>a</I>, <I>b</I>, and <I>c</I>, and three angles <I>alpha</I>, <I>beta</I> and <I>gamma</I>. The
relationships between these quantities and the LAMMPS box dimensions
(lx,ly,lz) = (xhi-xlo,yhi-ylo,zhi-zlo) and tilt factors (xy,xz,yz) are
as follows:
<P>See <A HREF = "Section_howto.html#4_12">this section</A> of the doc pages for a
geometric description of triclinic boxes, as defined by LAMMPS, and
how to transform these parameters into other commonly used triclinic
representations.
</P>
<CENTER><IMG SRC = "Eqs/box.jpg">
</CENTER>
<P>When a triclinic system is used, the simulation domain must be
periodic in any dimensions with a non-zero tilt factor, as defined by
the <A HREF = "boundary.html">boundary</A> command. I.e. if the xy tilt factor is
non-zero, then both the x and y dimensions must be periodic.
Similarly, x and z must be periodic if xz is non-zero and y and z must
be periodic if yz is non-zero.
be periodic if yz is non-zero. Also note that if your simulation will
tilt the box, e.g. via the <A HREF = "fix_deform.html">fix deform</A> command, the
simulation box must be defined as triclinic, even if the tilt factors
are initially 0.0.
</P>
<P>For 2d simulations, the <I>zlo zhi</I> values should be set to bound the z
coords for atoms that appear in the file; the default of -0.5 0.5 is

View File

@ -79,7 +79,7 @@ is different than the default.
{xlo xhi} = simulation box boundaries in x dimension
{ylo yhi} = simulation box boundaries in y dimension
{zlo zhi} = simulation box boundaries in z dimension
{xy xz yz} = simulation box tilt factors for triclinic domain :ul
{xy xz yz} = simulation box tilt factors for triclinic system :ul
The initial simulation box size is determined by the lo/hi settings.
In any dimension, the system may be periodic or non-periodic; see the
@ -88,38 +88,37 @@ In any dimension, the system may be periodic or non-periodic; see the
If the {xy xz yz} line does not appear, LAMMPS will set up an
axis-aligned (orthogonal) simulation box. If the line does appear,
LAMMPS creates a non-orthogonal simulation domain shaped as a
parallelepiped with triclinic symmetry. See the "region
prism"_region.html command for a description of how the extent of the
parallelepiped is defined. The parallelepiped has its "origin" at
(xlo,ylo,zlo) and 3 edge vectors starting from the origin given by a =
(xhi-xlo,0,0); b = (xy,yhi-ylo,0); c = (xz,yz,zhi-zlo). Note that if
your simulation will tilt the box, e.g. via the "fix
deform"_fix_deform.html command, the simulation box must be triclinic,
even if the tilt factors are initially 0.0.
parallelepiped with triclinic symmetry. The parallelepiped has its
"origin" at (xlo,ylo,zlo) and is defined by 3 edge vectors starting
from the origin given by A = (xhi-xlo,0,0); B = (xy,yhi-ylo,0); C =
(xz,yz,zhi-zlo). {Xy,xz,yz} can be 0.0 or positive or negative values
and are called "tilt factors" because they are the amount of
displacement applied to faces of an originally orthogonal box to
transform it into the parallelepiped.
The tilt factors (xy,xz,yz) can not skew the box more than half the
distance of the parallel box length. For example, if xlo = 2 and xhi
= 12, then the x box length is 10 and the xy tilt factor must be
between -5 and 5. Similarly, both xz and yz must be between
-(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a limitation,
since if the maximum tilt factor is 5 (as in this example), then
configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all
equivalent.
distance of the corresponding parallel box length. For example, if
xlo = 2 and xhi = 12, then the x box length is 10 and the xy tilt
factor must be between -5 and 5. Similarly, both xz and yz must be
between -(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a
limitation, since if the maximum tilt factor is 5 (as in this
example), then configurations with tilt = ..., -15, -5, 5, 15, 25,
... are all geometrically equivalent.
Crystal structures are often defined using three lattice constants
{a}, {b}, and {c}, and three angles {alpha}, {beta} and {gamma}. The
relationships between these quantities and the LAMMPS box dimensions
(lx,ly,lz) = (xhi-xlo,yhi-ylo,zhi-zlo) and tilt factors (xy,xz,yz) are
as follows:
:c,image(Eqs/box.jpg)
See "this section"_Section_howto.html#4_12 of the doc pages for a
geometric description of triclinic boxes, as defined by LAMMPS, and
how to transform these parameters into other commonly used triclinic
representations.
When a triclinic system is used, the simulation domain must be
periodic in any dimensions with a non-zero tilt factor, as defined by
the "boundary"_boundary.html command. I.e. if the xy tilt factor is
non-zero, then both the x and y dimensions must be periodic.
Similarly, x and z must be periodic if xz is non-zero and y and z must
be periodic if yz is non-zero.
be periodic if yz is non-zero. Also note that if your simulation will
tilt the box, e.g. via the "fix deform"_fix_deform.html command, the
simulation box must be defined as triclinic, even if the tilt factors
are initially 0.0.
For 2d simulations, the {zlo zhi} values should be set to bound the z
coords for atoms that appear in the file; the default of -0.5 0.5 is

View File

@ -151,35 +151,29 @@ half-space in the direction of the normal vector; see the discussion
of the <I>side</I> option below.
</P>
<P>For style <I>prism</I>, a parallelepiped is defined (it's too hard to spell
parallelepiped in an input script!). Think of the parallelepiped as
initially an axis-aligned orthogonal box with the same xyz lo/hi
parameters as region style <I>block</I> would define. Then, while holding
the (xlo,ylo,zlo) corner point fixed, the box is "skewed" or "tilted"
in 3 directions. First, for the lower xy face of the box, the <I>xy</I>
factor is how far the upper y edge is shifted in the x direction. The
lower xy face is now a parallelogram. A plus or minus value for <I>xy</I>
can be specified; 0.0 means no tilt. Then, the upper xy face of the
box is translated in the x and y directions by <I>xz</I> and <I>yz</I>. This
results in a parallelepiped whose "origin" is at (xlo,ylo,zlo) with 3
edge vectors starting from its origin given by a = (xhi-xlo,0,0); b =
(xy,yhi-ylo,0); c = (xz,yz,zhi-zlo).
parallelepiped in an input script!). The parallelepiped has its
"origin" at (xlo,ylo,zlo) and is defined by 3 edge vectors starting
from the origin given by A = (xhi-xlo,0,0); B = (xy,yhi-ylo,0); C =
(xz,yz,zhi-zlo). <I>Xy,xz,yz</I> can be 0.0 or positive or negative values
and are called "tilt factors" because they are the amount of
displacement applied to faces of an originally orthogonal box to
transform it into the parallelepiped.
</P>
<P>Crystal structures are often defined using three lattice constants
<I>a</I>, <I>b</I>, and <I>c</I>, and three angles <I>alpha</I>, <I>beta</I> and <I>gamma</I>. The
relationships between these quantities and a prism with (lx,ly,lz) =
(xhi-xlo,yhi-ylo,zhi-zlo) and tilt factors (xy,xz,yz) are as follows:
</P>
<CENTER><IMG SRC = "Eqs/box.jpg">
</CENTER>
<P>A prism region used with the <A HREF = "create_box.html">create_box</A> command must
have tilt factors (xy,xz,yz) that do not skew the box more than half
the distance of the parallel box length. For example, if xlo = 2 and
<P>A prism region that will be used with the <A HREF = "create_box.html">create_box</A>
command to define a triclinic simulation box must have tilt factors
(xy,xz,yz) that do not skew the box more than half the distance of
corresponding the parallel box length. For example, if xlo = 2 and
xhi = 12, then the x box length is 10 and the xy tilt factor must be
between -5 and 5. Similarly, both xz and yz must be between
-(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a limitation,
since if the maximum tilt factor is 5 (as in this example), then
configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all
equivalent.
geometrically equivalent.
</P>
<P>See <A HREF = "Section_howto.html#4_12">this section</A> of the doc pages for a
geometric description of triclinic boxes, as defined by LAMMPS, and
how to transform these parameters into other commonly used triclinic
representations.
</P>
<P>The <I>union</I> style creates a region consisting of the volume of all the
listed regions combined. The <I>intersect</I> style creates a region

View File

@ -142,35 +142,29 @@ half-space in the direction of the normal vector; see the discussion
of the {side} option below.
For style {prism}, a parallelepiped is defined (it's too hard to spell
parallelepiped in an input script!). Think of the parallelepiped as
initially an axis-aligned orthogonal box with the same xyz lo/hi
parameters as region style {block} would define. Then, while holding
the (xlo,ylo,zlo) corner point fixed, the box is "skewed" or "tilted"
in 3 directions. First, for the lower xy face of the box, the {xy}
factor is how far the upper y edge is shifted in the x direction. The
lower xy face is now a parallelogram. A plus or minus value for {xy}
can be specified; 0.0 means no tilt. Then, the upper xy face of the
box is translated in the x and y directions by {xz} and {yz}. This
results in a parallelepiped whose "origin" is at (xlo,ylo,zlo) with 3
edge vectors starting from its origin given by a = (xhi-xlo,0,0); b =
(xy,yhi-ylo,0); c = (xz,yz,zhi-zlo).
parallelepiped in an input script!). The parallelepiped has its
"origin" at (xlo,ylo,zlo) and is defined by 3 edge vectors starting
from the origin given by A = (xhi-xlo,0,0); B = (xy,yhi-ylo,0); C =
(xz,yz,zhi-zlo). {Xy,xz,yz} can be 0.0 or positive or negative values
and are called "tilt factors" because they are the amount of
displacement applied to faces of an originally orthogonal box to
transform it into the parallelepiped.
Crystal structures are often defined using three lattice constants
{a}, {b}, and {c}, and three angles {alpha}, {beta} and {gamma}. The
relationships between these quantities and a prism with (lx,ly,lz) =
(xhi-xlo,yhi-ylo,zhi-zlo) and tilt factors (xy,xz,yz) are as follows:
:c,image(Eqs/box.jpg)
A prism region used with the "create_box"_create_box.html command must
have tilt factors (xy,xz,yz) that do not skew the box more than half
the distance of the parallel box length. For example, if xlo = 2 and
A prism region that will be used with the "create_box"_create_box.html
command to define a triclinic simulation box must have tilt factors
(xy,xz,yz) that do not skew the box more than half the distance of
corresponding the parallel box length. For example, if xlo = 2 and
xhi = 12, then the x box length is 10 and the xy tilt factor must be
between -5 and 5. Similarly, both xz and yz must be between
-(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a limitation,
since if the maximum tilt factor is 5 (as in this example), then
configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all
equivalent.
geometrically equivalent.
See "this section"_Section_howto.html#4_12 of the doc pages for a
geometric description of triclinic boxes, as defined by LAMMPS, and
how to transform these parameters into other commonly used triclinic
representations.
The {union} style creates a region consisting of the volume of all the
listed regions combined. The {intersect} style creates a region