forked from lijiext/lammps
159 lines
7.3 KiB
HTML
159 lines
7.3 KiB
HTML
<HTML>
|
|
<CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A>
|
|
</CENTER>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<HR>
|
|
|
|
<H3>fix nvt/eff command
|
|
</H3>
|
|
<H3>fix npt/eff command
|
|
</H3>
|
|
<H3>fix nph/eff command
|
|
</H3>
|
|
<P><B>Syntax:</B>
|
|
</P>
|
|
<PRE>fix ID group-ID style_name keyword value ...
|
|
</PRE>
|
|
<UL><LI>ID, group-ID are documented in <A HREF = "fix.html">fix</A> command
|
|
|
|
<LI>style_name = <I>nvt/eff</I> or <I>npt/eff</I> or <I>nph/eff</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>
|
|
<I>temp</I> values = Tstart Tstop Tdamp
|
|
Tstart,Tstop = external temperature at start/end of run
|
|
Tdamp = temperature damping parameter (time units)
|
|
<I>iso</I> or <I>aniso</I> or <I>tri</I> values = Pstart Pstop Pdamp
|
|
Pstart,Pstop = scalar external pressure at start/end of run (pressure units)
|
|
Pdamp = pressure damping parameter (time units)
|
|
<I>x</I> or <I>y</I> or <I>z</I> or <I>xy</I> or <I>yz</I> or <I>xz</I> values = Pstart Pstop Pdamp
|
|
Pstart,Pstop = external stress tensor component at start/end of run (pressure units)
|
|
Pdamp = stress damping parameter (time units)
|
|
<I>couple</I> = <I>none</I> or <I>xyz</I> or <I>xy</I> or <I>yz</I> or <I>xz</I>
|
|
<I>tchain</I> value = length of thermostat chain (1 = single thermostat)
|
|
<I>pchain</I> values = length of thermostat chain on barostat (0 = no thermostat)
|
|
<I>mtk</I> value = <I>yes</I> or <I>no</I> = add in MTK adjustment term or not
|
|
<I>tloop</I> value = number of sub-cycles to perform on thermostat
|
|
<I>ploop</I> value = number of sub-cycles to perform on barostat thermostat
|
|
<I>nreset</I> value = reset reference cell every this many timesteps
|
|
<I>drag</I> value = drag factor added to barostat/thermostat (0.0 = no drag)
|
|
<I>dilate</I> value = <I>all</I> or <I>partial</I>
|
|
</PRE>
|
|
|
|
</UL>
|
|
<P><B>Examples:</B>
|
|
</P>
|
|
<PRE>fix 1 all nvt/eff temp 300.0 300.0 0.1
|
|
fix 1 part npt/eff temp 300.0 300.0 0.1 iso 0.0 0.0 1.0
|
|
fix 2 part npt/eff temp 300.0 300.0 0.1 tri 5.0 5.0 1.0
|
|
fix 2 ice nph/eff x 1.0 1.0 0.5 y 2.0 2.0 0.5 z 3.0 3.0 0.5 yz 0.1 0.1 0.5 xz 0.2 0.2 0.5 xy 0.3 0.3 0.5 nreset 1000
|
|
</PRE>
|
|
<P><B>Description:</B>
|
|
</P>
|
|
<P>These commands perform time integration on Nose-Hoover style
|
|
non-Hamiltonian equations of motion for nuclei and electrons in the
|
|
group for the <A HREF = "pair_eff.html">electron force field</A> model. The fixes
|
|
are designed to generate positions and velocities sampled from the
|
|
canonical (nvt), isothermal-isobaric (npt), and isenthalpic (nph)
|
|
ensembles. This is achieved by adding some dynamic variables which
|
|
are coupled to the particle velocities (thermostatting) and simulation
|
|
domain dimensions (barostatting). In addition to basic thermostatting
|
|
and barostatting, these fixes can also create a chain of thermostats
|
|
coupled to the particle thermostat, and another chain of thermostats
|
|
coupled to the barostat variables. The barostat can be coupled to the
|
|
overall box volume, or to individual dimensions, including the <I>xy</I>,
|
|
<I>xz</I> and <I>yz</I> tilt dimensions. The external pressure of the barostat
|
|
can be specified as either a scalar pressure (isobaric ensemble) or as
|
|
components of a symmetric stress tensor (constant stress ensemble).
|
|
When used correctly, the time-averaged temperature and stress tensor
|
|
of the particles will match the target values specified by
|
|
Tstart/Tstop and Pstart/Pstop.
|
|
</P>
|
|
<P>The operation of these fixes is exactly like that described by the
|
|
<A HREF = "fix_nh.html">fix nvt, npt, and nph</A> commands, except that the radius
|
|
and radial velocity of electrons are also updated. Likewise the
|
|
temperature and pressure calculated by the fix, using the computes it
|
|
creates (as discussed in the <A HREF = "fix_nh.html">fix nvt, npt, and nph</A>
|
|
doc page), are performed with computes that include the eFF contribution
|
|
to the temperature or kinetic energy from the electron radial velocity.
|
|
</P>
|
|
<P>IMPORTANT NOTE: there are two different pressures that can be reported
|
|
for eFF when defining the pair_style (see <A HREF = "pair_eff_cut.html">pair
|
|
eff/cut</A> to understand these settings), one
|
|
(default) that considers electrons do not contribute radial virial
|
|
components (i.e. electrons treated as incompressible 'rigid' spheres)
|
|
and one that does. The radial electronic contributions to the virials
|
|
are only tallied if the flexible pressure option is set, and this will
|
|
affect both global and per-atom quantities. In principle, the true
|
|
pressure of a system is somewhere in between the rigid and the
|
|
flexible eFF pressures, but, for most cases, the difference between
|
|
these two pressures will not be significant over long-term averaged
|
|
runs (i.e. even though the energy partitioning changes, the total
|
|
energy remains similar).
|
|
</P>
|
|
<P>IMPORTANT NOTE: currently, there is no available option for the user
|
|
to set or create temperature distributions that include the radial
|
|
electronic degrees of freedom with the <A HREF = "velocity.html">velocity</A>
|
|
command, so the the user must allow for these degrees of freedom to
|
|
equilibrate (i.e. equi-partitioning of energy) through time
|
|
integration.
|
|
</P>
|
|
<P><B>Restart, fix_modify, output, run start/stop, minimize info:</B>
|
|
</P>
|
|
<P>See the doc page for the <A HREF = "fix_nh.html">fix nvt, npt, and nph</A> commands
|
|
for details.
|
|
</P>
|
|
<P><B>Restrictions:</B>
|
|
</P>
|
|
<P>This fix is part of the "user-eff" package. It is only enabled if
|
|
LAMMPS was built with that package. See the <A HREF = "Section_start.html#2_3">Making
|
|
LAMMPS</A> section for more info.
|
|
</P>
|
|
<P>Other restriction discussed on the doc page for the <A HREF = "fix_nh.html">fix nvt, npt, and
|
|
nph</A> commands also apply.
|
|
</P>
|
|
<P>IMPORTANT NOTE: The temperature for systems (regions or groups) with
|
|
only electrons and no nuclei is 0.0 (i.e. not defined) in the current
|
|
temperature calculations, a practical example would be a uniform
|
|
electron gas or a very hot plasma, where electrons remain delocalized
|
|
from the nuclei. This is because, even though electron virials are
|
|
included in the temperature calculation, these are averaged over the
|
|
nuclear degrees of freedom only. In such cases a corrective term must
|
|
be added to the pressure to get the correct kinetic contribution.
|
|
</P>
|
|
<P><B>Related commands:</B>
|
|
</P>
|
|
<P><A HREF = "fix_nh.html">fix nvt</A>, <A HREF = "fix_nh.html">fix nph</A>, <A HREF = "fix_nh.html">fix npt</A>,
|
|
<A HREF = "fix_modify.html">fix_modify</A>, <A HREF = "run_style.html">run_style</A>
|
|
</P>
|
|
<P><B>Default:</B>
|
|
</P>
|
|
<P>The keyword defaults are tchain = 3, pchain = 3, mtk = yes, tloop =
|
|
ploop = 1, nreset = 0, drag = 0.0, dilate = all, and couple = none.
|
|
</P>
|
|
<HR>
|
|
|
|
<A NAME = "Martyna"></A>
|
|
|
|
<P><B>(Martyna)</B> Martyna, Tobias and Klein, J Chem Phys, 101, 4177 (1994).
|
|
</P>
|
|
<A NAME = "Parrinello"></A>
|
|
|
|
<P><B>(Parrinello)</B> Parrinello and Rahman, J Appl Phys, 52, 7182 (1981).
|
|
</P>
|
|
<A NAME = "Tuckerman"></A>
|
|
|
|
<P><B>(Tuckerman)</B> Tuckerman, Alejandre, Lopez-Rendon, Jochim, and
|
|
Martyna, J Phys A: Math Gen, 39, 5629 (2006).
|
|
</P>
|
|
<A NAME = "Shinoda"></A>
|
|
|
|
<P><B>(Shinoda)</B> Shinoda, Shiga, and Mikami, Phys Rev B, 69, 134103 (2004).
|
|
</P>
|
|
</HTML>
|