2006-09-22 00:22:34 +08:00
|
|
|
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
|
|
|
|
|
|
|
:link(lws,http://lammps.sandia.gov)
|
|
|
|
:link(ld,Manual.html)
|
|
|
|
:link(lc,Section_commands.html#comm)
|
|
|
|
|
|
|
|
:line
|
|
|
|
|
|
|
|
thermo_modify command :h3
|
|
|
|
|
|
|
|
[Syntax:]
|
|
|
|
|
|
|
|
thermo_modify keyword value ... :pre
|
|
|
|
|
|
|
|
one or more keyword/value pairs may be listed :ulb,l
|
2013-12-17 22:13:04 +08:00
|
|
|
keyword = {lost} or {lost/bond} or {norm} or {flush} or {line} or {format} or {temp} or {press}:l
|
2006-09-22 00:22:34 +08:00
|
|
|
{lost} value = {error} or {warn} or {ignore}
|
2013-12-17 22:13:04 +08:00
|
|
|
{lost/bond} value = {error} or {warn} or {ignore}
|
2006-09-22 00:22:34 +08:00
|
|
|
{norm} value = {yes} or {no}
|
|
|
|
{flush} value = {yes} or {no}
|
|
|
|
{line} value = {one} or {multi}
|
2007-04-07 02:03:05 +08:00
|
|
|
{format} values = {int} string or {float} string or M string
|
|
|
|
M = integer from 1 to N, where N = # of quantities being printed
|
2006-09-22 00:22:34 +08:00
|
|
|
string = C-style format string
|
2007-02-10 05:37:30 +08:00
|
|
|
{temp} value = compute ID that calculates a temperature
|
2012-08-31 22:56:40 +08:00
|
|
|
{press} value = compute ID that calculates a pressure :pre
|
2006-09-22 00:22:34 +08:00
|
|
|
:ule
|
|
|
|
|
|
|
|
[Examples:]
|
|
|
|
|
2007-06-20 20:56:17 +08:00
|
|
|
thermo_modify lost ignore flush yes
|
2007-04-07 02:03:05 +08:00
|
|
|
thermo_modify temp myTemp format 3 %15.8g
|
|
|
|
thermo_modify line multi format float %g :pre
|
2006-09-22 00:22:34 +08:00
|
|
|
|
|
|
|
[Description:]
|
|
|
|
|
2007-02-10 05:37:30 +08:00
|
|
|
Set options for how thermodynamic information is computed and printed
|
|
|
|
by LAMMPS.
|
2006-09-22 00:22:34 +08:00
|
|
|
|
2007-06-20 20:56:17 +08:00
|
|
|
IMPORTANT NOTE: These options apply to the currently defined thermo
|
2007-06-26 08:03:39 +08:00
|
|
|
style. When you specify a "thermo_style"_thermo_style.html command,
|
|
|
|
all thermodynamic settings are restored to their default values,
|
2009-03-19 02:15:38 +08:00
|
|
|
including those previously reset by a thermo_modify command. Thus if
|
2007-06-26 08:03:39 +08:00
|
|
|
your input script specifies a thermo_style command, you should use the
|
|
|
|
thermo_modify command after it.
|
2007-06-20 20:56:17 +08:00
|
|
|
|
2007-02-10 05:37:30 +08:00
|
|
|
The {lost} keyword determines whether LAMMPS checks for lost atoms
|
|
|
|
each time it computes thermodynamics and what it does if atoms are
|
2010-06-03 04:38:41 +08:00
|
|
|
lost. An atom can be "lost" if it moves across a non-periodic
|
|
|
|
simulation box "boundary"_boundary.html or if it moves more than a box
|
|
|
|
length outside the simulation domain (or more than a processor
|
|
|
|
sub-domain length) before reneighboring occurs. The latter case is
|
|
|
|
typically due to bad dynamics, e.g. too large a timestep or huge
|
|
|
|
forces and velocities. If the value is {ignore}, LAMMPS does not
|
|
|
|
check for lost atoms. If the value is {error} or {warn}, LAMMPS
|
|
|
|
checks and either issues an error or warning. The code will exit with
|
|
|
|
an error and continue with a warning. A warning will only be issued
|
|
|
|
once, the first time an atom is lost. This can be a useful debugging
|
|
|
|
option.
|
2006-09-22 00:22:34 +08:00
|
|
|
|
2013-12-17 22:13:04 +08:00
|
|
|
The {lost/bond} keyword determines whether LAMMPS throws an error or
|
|
|
|
not if an atom in a bonded interaction (bond, angle, etc) cannot be
|
|
|
|
found when it creates bonded neighbor lists. By default this is a
|
|
|
|
fatal error. However in some scenarios it may be desirable to only
|
|
|
|
issue a warning or ignore it and skip the computation of the missing
|
|
|
|
bond, angle, etc. An example would be when gas molecules in a vapor
|
|
|
|
are drifting out of the box through a fixed boundary condition (see
|
|
|
|
the "boundary"_boundary.html command). In this case one atom may be
|
|
|
|
deleted before the rest of the molecule is, on a later timestep.
|
|
|
|
|
2009-01-06 07:48:45 +08:00
|
|
|
The {norm} keyword determines whether various thermodynamic output
|
|
|
|
values are normalized by the number of atoms or not, depending on
|
|
|
|
whether it is set to {yes} or {no}. Different unit styles have
|
|
|
|
different defaults for this setting (see below). Even if {norm} is
|
|
|
|
set to {yes}, a value is only normalized if it is an "extensive"
|
|
|
|
quantity, meaning that it scales with the number of atoms in the
|
|
|
|
system. For the thermo keywords described by the doc page for the
|
|
|
|
"thermo_style"_thermo_style.html command, all energy-related keywords
|
|
|
|
are extensive, such as {pe} or {ebond} or {enthalpy}. Other keywords
|
|
|
|
such as {temp} or {press} are "intensive" meaning their value is
|
|
|
|
independent (in a statistical sense) of the number of atoms in the
|
|
|
|
system and thus are never normalized. For thermodynamic output values
|
|
|
|
extracted from fixes and computes in a "thermo_style
|
|
|
|
custom"_thermo_style.html command, the doc page for the individual
|
|
|
|
"fix"_fix.html or "compute"_compute.html lists whether the value is
|
|
|
|
"extensive" or "intensive" and thus whether it is normalized.
|
|
|
|
Thermodynamic output values calculated by a variable formula are
|
|
|
|
assumed to be "intensive" and thus are never normalized. You can
|
|
|
|
always include a divide by the number of atoms in the variable formula
|
|
|
|
if this is not the case.
|
2006-09-22 00:22:34 +08:00
|
|
|
|
2007-02-10 05:37:30 +08:00
|
|
|
The {flush} keyword invokes a flush operation after thermodynamic info
|
2006-09-22 00:22:34 +08:00
|
|
|
is written to the log file. This insures the output in that file is
|
|
|
|
current (no buffering by the OS), even if LAMMPS halts before the
|
|
|
|
simulation completes.
|
|
|
|
|
2007-02-10 05:37:30 +08:00
|
|
|
The {line} keyword determines whether thermodynamics will be printed
|
|
|
|
as a series of numeric values on one line or in a multi-line format
|
|
|
|
with 3 quantities with text strings per line and a dashed-line header
|
2006-09-22 00:22:34 +08:00
|
|
|
containing the timestep and CPU time. This modify option overrides
|
|
|
|
the {one} and {multi} thermo_style settings.
|
|
|
|
|
2007-02-10 05:37:30 +08:00
|
|
|
The {format} keyword sets the numeric format of individual printed
|
2007-04-07 02:03:05 +08:00
|
|
|
quantities. The {int} and {float} keywords set the format for all
|
2006-09-22 00:22:34 +08:00
|
|
|
integer or floating-point quantities printed. The setting with a
|
2011-01-05 03:00:12 +08:00
|
|
|
numeric value M (e.g. format 5 %10.4g) sets the format of the Mth
|
|
|
|
value printed in each output line, e.g. the 5th column of output in
|
|
|
|
this case. If the format for a specific column has been set, it will
|
|
|
|
take precedent over the {int} or {float} setting.
|
|
|
|
|
|
|
|
IMPORTANT NOTE: The thermo output values {step} and {atoms} are stored
|
2011-12-22 23:33:47 +08:00
|
|
|
internally as 8-byte signed integers, rather than the usual 4-byte
|
2011-01-05 03:00:12 +08:00
|
|
|
signed integers. When specifying the "format int" keyword you can use
|
|
|
|
a "%d"-style format identifier in the format string and LAMMPS will
|
|
|
|
convert this to the corresponding "%lu" form when it is applied to
|
|
|
|
those keywords. However, when specifying the "format M string"
|
|
|
|
keyword for {step} and {natoms}, you should specify a string
|
2011-12-22 23:33:47 +08:00
|
|
|
appropriate for an 8-byte signed integer, e.g. one with "%ld".
|
2006-09-22 00:22:34 +08:00
|
|
|
|
2007-02-10 05:37:30 +08:00
|
|
|
The {temp} keyword is used to determine how thermodynamic temperature
|
|
|
|
is calculated, which is used by all thermo quantities that require a
|
2008-02-13 22:59:22 +08:00
|
|
|
temperature ("temp", "press", "ke", "etotal", "enthalpy", "pxx", etc).
|
|
|
|
The specified compute ID must have been previously defined by the user
|
|
|
|
via the "compute"_compute.html command and it must be a style of
|
|
|
|
compute that calculates a temperature. As described in the
|
|
|
|
"thermo_style"_thermo_style.html command, thermo output uses a default
|
|
|
|
compute for temperature with ID = {thermo_temp}. This option allows
|
|
|
|
the user to override the default.
|
2007-02-10 05:37:30 +08:00
|
|
|
|
|
|
|
The {press} keyword is used to determine how thermodynamic pressure is
|
|
|
|
calculated, which is used by all thermo quantities that require a
|
2008-02-13 22:59:22 +08:00
|
|
|
pressure ("press", "enthalpy", "pxx", etc). The specified compute ID
|
|
|
|
must have been previously defined by the user via the
|
2007-02-10 05:37:30 +08:00
|
|
|
"compute"_compute.html command and it must be a style of compute that
|
|
|
|
calculates a pressure. As described in the
|
2007-06-20 20:56:17 +08:00
|
|
|
"thermo_style"_thermo_style.html command, thermo output uses a default
|
2008-01-18 07:46:30 +08:00
|
|
|
compute for pressure with ID = {thermo_press}. This option allows the
|
|
|
|
user to override the default.
|
2007-02-10 05:37:30 +08:00
|
|
|
|
2008-03-11 01:48:22 +08:00
|
|
|
IMPORTANT NOTE: If both the {temp} and {press} keywords are used in a
|
2008-03-12 00:37:01 +08:00
|
|
|
single thermo_modify command (or in two separate commands), then the
|
|
|
|
order in which the keywords are specified is important. Note that a
|
|
|
|
"pressure compute"_compute_pressure.html defines its own temperature
|
|
|
|
compute as an argument when it is specified. The {temp} keyword will
|
|
|
|
override this (for the pressure compute being used by thermodynamics),
|
|
|
|
but only if the {temp} keyword comes after the {press} keyword. If
|
|
|
|
the {temp} keyword comes before the {press} keyword, then the new
|
|
|
|
pressure compute specified by the {press} keyword will be unaffected
|
|
|
|
by the {temp} setting.
|
2008-03-11 01:48:22 +08:00
|
|
|
|
2006-09-22 00:22:34 +08:00
|
|
|
[Restrictions:] none
|
|
|
|
|
|
|
|
[Related commands:]
|
|
|
|
|
2007-03-22 04:37:22 +08:00
|
|
|
"thermo"_thermo.html, "thermo_style"_thermo_style.html
|
2006-09-22 00:22:34 +08:00
|
|
|
|
|
|
|
[Default:]
|
|
|
|
|
2007-02-10 05:37:30 +08:00
|
|
|
The option defaults are lost = error, norm = yes for unit style of
|
|
|
|
{lj}, norm = no for unit style of {real} and {metal}, flush = no,
|
2012-06-08 22:49:44 +08:00
|
|
|
and temp/press = compute IDs defined by thermo_style.
|
2007-02-10 05:37:30 +08:00
|
|
|
|
|
|
|
The defaults for the line and format options depend on the thermo
|
2011-01-05 03:00:12 +08:00
|
|
|
style. For styles "one" and "custom", the line and format defaults
|
2008-03-18 07:43:56 +08:00
|
|
|
are "one", "%8d", and "%12.8g". For style "multi", the line and
|
|
|
|
format defaults are "multi", "%8d", and "%14.4f".
|