support for general tri edge vectors in thermo output
This commit is contained in:
@ -94,19 +94,20 @@ restricted triclinic parallelepiped.
|
||||
simulation boxes in LAMMPS.
|
||||
|
||||
Note that the :doc:`thermo_style custom <thermo_style>` command has
|
||||
keywords for outputting the various parameters that define both
|
||||
restricted and general triclinic simulation boxes. Thus you can check
|
||||
the restricted triclinic box parameters LAMMPS generates to rotate a
|
||||
general triclinic box to restricted triclinic form.
|
||||
keywords for outputting the various parameters that define the size
|
||||
and shape of orthogonal, restricted triclinic, and general triclinic
|
||||
simulation boxes.
|
||||
|
||||
For orthogonal boxes there these are the 6 thermo keywords
|
||||
(xlo,ylo,zlo) and (xhi,yhi,zhi).
|
||||
|
||||
For restricted triclinic boxes these are the 9 thermo keywords for
|
||||
(xlo,ylo,zlo), (xhi,yhi,zhi), and the (xy,xz,yz) tilt factors. For
|
||||
general triclinic boxes these are the 12 thermo keywords for
|
||||
(xlo,ylo,zlo), (xhi,yhi,zhi), and the (xy,xz,yz) tilt factors.
|
||||
|
||||
For general triclinic boxes these are the 12 thermo keywords for
|
||||
(xlo,ylo,zhi) and the components of the **A**, **B**, **C** edge
|
||||
vectors. For both orthogonal and restricted triclinic boxes, the
|
||||
thermo keywords lx/ly/lz refer to the box sizes, namely lx = xhi -
|
||||
xlo, etc. Lx,ly,lz are the box edge vector lengths for orthogonal and
|
||||
restricted/general triclinic simulation boxes.
|
||||
vectors, namely (avecx,avecy,avecz), (bvecx,bvecy,bvecz), and
|
||||
(cvecx,cvecy,cvecz),
|
||||
|
||||
The remainder of this doc page explains (a) how LAMMPS operates with
|
||||
general triclinic simulation boxes, (b) mathematical transformations
|
||||
|
||||
@ -25,12 +25,18 @@ Syntax
|
||||
evdwl, ecoul, epair, ebond, eangle, edihed, eimp,
|
||||
emol, elong, etail,
|
||||
enthalpy, ecouple, econserve,
|
||||
vol, density, lx, ly, lz, xlo, xhi, ylo, yhi, zlo, zhi,
|
||||
xy, xz, yz, xlat, ylat, zlat,
|
||||
bonds, angles, dihedrals, impropers,
|
||||
pxx, pyy, pzz, pxy, pxz, pyz,
|
||||
fmax, fnorm, nbuild, ndanger,
|
||||
vol, density,
|
||||
xlo, xhi, ylo, yhi, zlo, zhi,
|
||||
xy, xz, yz,
|
||||
avecx, avecy, avecz,
|
||||
bvecx, bvecy, bvecz,
|
||||
cvecx, cvecy, cvecz,
|
||||
lx, ly, lz,
|
||||
xlat, ylat, zlat,
|
||||
cella, cellb, cellc, cellalpha, cellbeta, cellgamma,
|
||||
pxx, pyy, pzz, pxy, pxz, pyz,
|
||||
bonds, angles, dihedrals, impropers,
|
||||
fmax, fnorm, nbuild, ndanger,
|
||||
c_ID, c_ID[I], c_ID[I][J],
|
||||
f_ID, f_ID[I], f_ID[I][J],
|
||||
v_name, v_name[I]
|
||||
@ -66,18 +72,21 @@ Syntax
|
||||
econserve = pe + ke + ecouple = etotal + ecouple
|
||||
vol = volume
|
||||
density = mass density of system
|
||||
lx,ly,lz = box lengths in x,y,z
|
||||
xlo,xhi,ylo,yhi,zlo,zhi = box boundaries
|
||||
xy,xz,yz = box tilt for restricted triclinic (non-orthogonal) simulation boxes
|
||||
avecx,avecy,avecz = components of edge vector A for general triclinic simulation boxes
|
||||
bvecx,bvecy,bvecz = components of edge vector B for general triclinic simulation boxes
|
||||
cvecx,cvecy,cvecz = components of edge vector C for general triclinic simulation boxes
|
||||
lx,ly,lz = box lengths in x,y,z
|
||||
xlat,ylat,zlat = lattice spacings as calculated by :doc:`lattice <lattice>` command
|
||||
bonds,angles,dihedrals,impropers = # of these interactions defined
|
||||
cella,cellb,cellc = periodic cell lattice constants a,b,c
|
||||
cellalpha, cellbeta, cellgamma = periodic cell angles alpha,beta,gamma
|
||||
pxx,pyy,pzz,pxy,pxz,pyz = 6 components of pressure tensor
|
||||
bonds,angles,dihedrals,impropers = # of these interactions defined
|
||||
fmax = max component of force on any atom in any dimension
|
||||
fnorm = length of force vector for all atoms
|
||||
nbuild = # of neighbor list builds
|
||||
ndanger = # of dangerous neighbor list builds
|
||||
cella,cellb,cellc = periodic cell lattice constants a,b,c
|
||||
cellalpha, cellbeta, cellgamma = periodic cell angles alpha,beta,gamma
|
||||
c_ID = global scalar value calculated by a compute with ID
|
||||
c_ID[I] = Ith component of global vector calculated by a compute with ID, I can include wildcard (see below)
|
||||
c_ID[I][J] = I,J component of global array calculated by a compute with ID
|
||||
@ -248,7 +257,7 @@ and *pxx*, *pyy*, etc.
|
||||
----------
|
||||
|
||||
Here is more information on other keywords whose meaning may not be
|
||||
clear:
|
||||
clear.
|
||||
|
||||
The *step*, *elapsed*, and *elaplong* keywords refer to timestep
|
||||
count. *Step* is the current timestep, or iteration count when a
|
||||
@ -322,6 +331,38 @@ thermostatting or barostatting to their coupling reservoirs -- that is,
|
||||
the NVT, NPH, or NPT ensembles, the *econserve* quantity should remain
|
||||
constant over time even though *etotal* may change.
|
||||
|
||||
In LAMMPS, the simulation box can be defined as orthogonal or
|
||||
triclinic (non-orthogonal). See the :doc:`Howto_triclinic
|
||||
<Howto_triclinic>` doc page for a detailed explanation of orthogonal,
|
||||
restricted triclinic, and general triclinic simulation boxes and how
|
||||
LAMMPS rotates a general triclinic box to be restricted triclinic
|
||||
internally.
|
||||
|
||||
The *lx*, *ly*, *lz* keywords are the extent of the simulation box in
|
||||
each dimension. The *xlo*, *xhi*, *ylo*, *yhi*, *zlo*, *zhi* keywords
|
||||
are the lower and upper bounds of the simulation box in each
|
||||
dimension. I.e. *lx* = *xhi* - *xlo). These 9 values are the same
|
||||
for all 3 kinds of boxes. I.e. for a restricted triclinic box, they
|
||||
are the values as if the box were not tilted. For a general triclinic
|
||||
box, they are the values after it is internally rotated to be a
|
||||
restricted triclinic box.
|
||||
|
||||
THe *xy*, *xz*, *yz* are the current tilt factors for a triclinic box.
|
||||
They are the same for restricted and general triclinic boxes.
|
||||
|
||||
The *avecx*, *avecy*, *avecz*, *bvecx*, *bvecy*, *bvecz*, *cvecx*,
|
||||
*cvecy*, *cvecz* are the components of the 3 edge vectors of the
|
||||
current general triclinic box. They are only non-zero if a general
|
||||
triclinic box was defined when the simultion box was created.
|
||||
|
||||
The *cella*, *cellb*, *cellc*, *cellalpha*, *cellbeta*, *cellgamma*
|
||||
keywords correspond to the usual crystallographic quantities that
|
||||
define the periodic simulation box of a crystalline system. See the
|
||||
:doc:`Howto triclinic <Howto_triclinic>` page for a precise definition
|
||||
of these quantities in terms of the LAMMPS representation of a
|
||||
restricted triclinic simulation box via *lx*, *ly*, *lz*, *yz*, *xz*,
|
||||
*xy*\ .
|
||||
|
||||
The *pxx,pyy,pzz,pxy,pxz,pyz* keywords are the 6 components of the
|
||||
symmetric pressure tensor for the system. See the :doc:`compute
|
||||
pressure <compute_pressure>` command doc page for details of how it is
|
||||
@ -329,7 +370,7 @@ calculated.
|
||||
|
||||
If the :doc:`thermo_modify triclinic/general <thermo_modify>` option
|
||||
is set and the simulation box was created as a general triclinic box,
|
||||
then the components will be output as values consistent with the
|
||||
then the 6 components will be output as values consistent with the
|
||||
orientation of the general triclinic box relative to the standard xyz
|
||||
coordinate axes. If this keyword is not used, the values will be
|
||||
consistent with the orientation of the restricted triclinic box (which
|
||||
@ -362,14 +403,6 @@ to reduce the delay factor to ensure no force interactions are missed
|
||||
by atoms moving beyond the neighbor skin distance before a rebuild
|
||||
takes place.
|
||||
|
||||
The keywords *cella*, *cellb*, *cellc*, *cellalpha*, *cellbeta*,
|
||||
*cellgamma*, correspond to the usual crystallographic quantities that
|
||||
define the periodic unit cell of a crystal. See the :doc:`Howto
|
||||
triclinic <Howto_triclinic>` page for a geometric description of
|
||||
restricted triclinic periodic cells, including a precise definition of
|
||||
these quantities in terms of the internal LAMMPS cell dimensions *lx*,
|
||||
*ly*, *lz*, *yz*, *xz*, *xy*\ .
|
||||
|
||||
----------
|
||||
|
||||
For output values from a compute or fix or variable, the bracketed
|
||||
|
||||
Reference in New Issue
Block a user