Added tilt factor scaling and fixed-point features to fix box/relax

git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@8471 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
athomps 2012-07-03 22:49:40 +00:00
parent f3404420e4
commit 959f12463b
4 changed files with 71 additions and 5 deletions

View File

@ -20,13 +20,18 @@
<LI>box/relax = style name of this fix command
<PRE>one or more keyword value pairs may be appended
keyword = <I>iso</I> or <I>aniso</I> or <I>tri</I> or <I>x</I> or <I>y</I> or <I>z</I> or <I>xy</I> or <I>yz</I> or <I>xz</I> or <I>couple</I> or <I>nreset</I> or <I>vmax</I> or <I>dilate</I>
keyword = <I>iso</I> or <I>aniso</I> or <I>tri</I> or <I>x</I> or <I>y</I> or <I>z</I> or <I>xy</I> or <I>yz</I> or <I>xz</I> or <I>couple</I> or <I>nreset</I> or <I>vmax</I> or <I>dilate</I> or <I>scaleyz</I> or <I>scalexz</I> or <I>scalexy</I> or <I>fixedpoint</I>
<I>iso</I> or <I>aniso</I> or <I>tri</I> value = Ptarget = desired pressure (pressure units)
<I>x</I> or <I>y</I> or <I>z</I> or <I>xy</I> or <I>yz</I> or <I>xz</I> value = Ptarget = desired pressure (pressure units)
<I>couple</I> = <I>none</I> or <I>xyz</I> or <I>xy</I> or <I>yz</I> or <I>xz</I>
<I>nreset</I> value = reset reference cell every this many minimizer iterations
<I>vmax</I> value = fraction = max allowed volume change in one iteration
<I>dilate</I> value = <I>all</I> or <I>partial</I>
<I>scaleyz</I> value = <I>yes</I> or <I>no</I> = scale yz with lz
<I>scalexz</I> value = <I>yes</I> or <I>no</I> = scale xz with lz
<I>scalexy</I> value = <I>yes</I> or <I>no</I> = scale xy with ly
<I>fixedpoint</I> values = x y z
x,y,z = perform relaxation dilation/contraction around this point (distance units)
</PRE>
</UL>
@ -82,6 +87,27 @@ re-scaled. This can be useful for leaving the coordinates of atoms in
a solid substrate unchanged and controlling the pressure of a
surrounding fluid.
</P>
<P>The <I>scaleyz</I>, <I>scalexz</I>, and <I>scalexy</I> keywords control whether or
not the corresponding tilt factors are scaled with the associated box
dimensions when relaxing triclinic periodic cells. The default
values <I>yes</I> will turn on scaling, which corresponds to adjusting the
linear dimensions of the cell while preserving its shape. Choosing
<I>no</I> ensures that the tilt factors are not scaled with the box
dimensions. See below for restrictions and default values in different
situations. In older versions of LAMMPS, scaling of tilt factors was
not performed. The old behavior can be recovered by setting all three
scale keywords to <I>no</I>.
</P>
<P>The <I>fixedpoint</I> keyword specifies the fixed point for cell relaxation.
By default, it is the center of the box. Whatever point is
chosen will not move during the simulation. For example, if the lower
periodic boundaries pass through (0,0,0), and this point is provided
to <I>fixedpoint</I>, then the lower periodic boundaries will remain at
(0,0,0), while the upper periodic boundaries will move twice as
far. In all cases, the particle positions at each iteration are
unaffected by the chosen value, except that all particles are
displaced by the same amount, different on each iteration.
</P>
<P>IMPORTANT NOTE: Appling an external pressure to tilt dimensions <I>xy</I>,
<I>xz</I>, <I>yz</I> can sometimes result in arbitrarily large values of the
tilt dimensions, i.e. a dramatically deformed simulation box. This
@ -302,6 +328,12 @@ available if the simulation domain is non-orthogonal. The
simulation box is orthogonal or non-orthogonal (triclinic) and explain
the meaning of the xy,xz,yz tilt factors.
</P>
<P>The <I>scaleyz yes</I> and <I>scalexz yes</I> keyword/value pairs can not be used
for 2D simulations. <I>scaleyz yes</I>, <I>scalexz yes</I>, and <I>scalexy yes</I> options
can only be used if the 2nd dimension in the keyword is periodic,
and if the tilt factor is not coupled to the barostat via keywords
<I>tri</I>, <I>yz</I>, <I>xz</I>, and <I>xy</I>.
</P>
<P><B>Related commands:</B>
</P>
<P><A HREF = "fix_nh.html">fix npt</A>, <A HREF = "minimize.html">minimize</A>

View File

@ -15,13 +15,20 @@ fix ID group-ID box/relax keyword value ... :pre
ID, group-ID are documented in "fix"_fix.html command :ulb,l
box/relax = style name of this fix command :l
one or more keyword value pairs may be appended
keyword = {iso} or {aniso} or {tri} or {x} or {y} or {z} or {xy} or {yz} or {xz} or {couple} or {nreset} or {vmax} or {dilate}
keyword = {iso} or {aniso} or {tri} or {x} or {y} or {z} or {xy} or {yz} or {xz} or {couple} or {nreset} or {vmax} or {dilate} or {scaleyz} or {scalexz} or {scalexy} or {fixedpoint}
{iso} or {aniso} or {tri} value = Ptarget = desired pressure (pressure units)
{x} or {y} or {z} or {xy} or {yz} or {xz} value = Ptarget = desired pressure (pressure units)
{couple} = {none} or {xyz} or {xy} or {yz} or {xz}
{nreset} value = reset reference cell every this many minimizer iterations
{vmax} value = fraction = max allowed volume change in one iteration
{dilate} value = {all} or {partial} :pre
{dilate} value = {all} or {partial}
{scaleyz} value = {yes} or {no} = scale yz with lz
{scalexz} value = {yes} or {no} = scale xz with lz
{scalexy} value = {yes} or {no} = scale xy with ly
{fixedpoint} values = x y z
x,y,z = perform relaxation dilation/contraction around this point (distance units) :pre
:ule
[Examples:]
@ -76,6 +83,27 @@ re-scaled. This can be useful for leaving the coordinates of atoms in
a solid substrate unchanged and controlling the pressure of a
surrounding fluid.
The {scaleyz}, {scalexz}, and {scalexy} keywords control whether or
not the corresponding tilt factors are scaled with the associated box
dimensions when relaxing triclinic periodic cells. The default
values {yes} will turn on scaling, which corresponds to adjusting the
linear dimensions of the cell while preserving its shape. Choosing
{no} ensures that the tilt factors are not scaled with the box
dimensions. See below for restrictions and default values in different
situations. In older versions of LAMMPS, scaling of tilt factors was
not performed. The old behavior can be recovered by setting all three
scale keywords to {no}.
The {fixedpoint} keyword specifies the fixed point for cell relaxation.
By default, it is the center of the box. Whatever point is
chosen will not move during the simulation. For example, if the lower
periodic boundaries pass through (0,0,0), and this point is provided
to {fixedpoint}, then the lower periodic boundaries will remain at
(0,0,0), while the upper periodic boundaries will move twice as
far. In all cases, the particle positions at each iteration are
unaffected by the chosen value, except that all particles are
displaced by the same amount, different on each iteration.
IMPORTANT NOTE: Appling an external pressure to tilt dimensions {xy},
{xz}, {yz} can sometimes result in arbitrarily large values of the
tilt dimensions, i.e. a dramatically deformed simulation box. This
@ -296,6 +324,12 @@ available if the simulation domain is non-orthogonal. The
simulation box is orthogonal or non-orthogonal (triclinic) and explain
the meaning of the xy,xz,yz tilt factors.
The {scaleyz yes} and {scalexz yes} keyword/value pairs can not be used
for 2D simulations. {scaleyz yes}, {scalexz yes}, and {scalexy yes} options
can only be used if the 2nd dimension in the keyword is periodic,
and if the tilt factor is not coupled to the barostat via keywords
{tri}, {yz}, {xz}, and {xy}.
[Related commands:]
"fix npt"_fix_nh.html, "minimize"_minimize.html

View File

@ -28,7 +28,7 @@
<LI>style_name = <I>nvt</I> or <I>npt</I> or <I>nph</I>
<PRE>one or more keyword value pairs may be appended
keyword = <I>temp</I> or <I>iso</I> or <I>aniso</I> or <I>tri</I> or <I>x</I> or <I>y</I> or <I>z</I> or <I>xy</I> or <I>yz</I> or <I>xz</I> or <I>couple</I> or <I>tchain</I> or <I>pchain</I> or <I>mtk</I> or <I>tloop</I> or <I>ploop</I> or <I>nreset</I> or <I>drag</I> or <I>dilate</I> or <I>scaleyz</I> or <I>scalexz</I> or <I>scalexy</I>
keyword = <I>temp</I> or <I>iso</I> or <I>aniso</I> or <I>tri</I> or <I>x</I> or <I>y</I> or <I>z</I> or <I>xy</I> or <I>yz</I> or <I>xz</I> or <I>couple</I> or <I>tchain</I> or <I>pchain</I> or <I>mtk</I> or <I>tloop</I> or <I>ploop</I> or <I>nreset</I> or <I>drag</I> or <I>dilate</I> or <I>scaleyz</I> or <I>scalexz</I> or <I>scalexy</I> or <I>fixedpoint</I>
<I>temp</I> values = Tstart Tstop Tdamp
Tstart,Tstop = external temperature at start/end of run
Tdamp = temperature damping parameter (time units)

View File

@ -19,7 +19,7 @@ fix ID group-ID style_name keyword value ... :pre
ID, group-ID are documented in "fix"_fix.html command :ulb,l
style_name = {nvt} or {npt} or {nph} :l
one or more keyword value pairs may be appended
keyword = {temp} or {iso} or {aniso} or {tri} or {x} or {y} or {z} or {xy} or {yz} or {xz} or {couple} or {tchain} or {pchain} or {mtk} or {tloop} or {ploop} or {nreset} or {drag} or {dilate} or {scaleyz} or {scalexz} or {scalexy}
keyword = {temp} or {iso} or {aniso} or {tri} or {x} or {y} or {z} or {xy} or {yz} or {xz} or {couple} or {tchain} or {pchain} or {mtk} or {tloop} or {ploop} or {nreset} or {drag} or {dilate} or {scaleyz} or {scalexz} or {scalexy} or {fixedpoint}
{temp} values = Tstart Tstop Tdamp
Tstart,Tstop = external temperature at start/end of run
Tdamp = temperature damping parameter (time units)