104 lines
3.5 KiB
ReStructuredText
104 lines
3.5 KiB
ReStructuredText
.. index:: compute pair
|
|
|
|
compute pair command
|
|
====================
|
|
|
|
Syntax
|
|
""""""
|
|
|
|
.. code-block:: LAMMPS
|
|
|
|
compute ID group-ID pair pstyle [nstyle] [evalue]
|
|
|
|
* ID, group-ID are documented in :doc:`compute <compute>` command
|
|
* pair = style name of this compute command
|
|
* pstyle = style name of a pair style that calculates additional values
|
|
* nsub = *n*\ -instance of a sub-style, if a pair style is used multiple times in a hybrid style
|
|
* *evalue* = *epair* or *evdwl* or *ecoul* or blank (optional)
|
|
|
|
Examples
|
|
""""""""
|
|
|
|
.. code-block:: LAMMPS
|
|
|
|
compute 1 all pair gauss
|
|
compute 1 all pair lj/cut/coul/cut ecoul
|
|
compute 1 all pair tersoff 2 epair
|
|
compute 1 all pair reaxff
|
|
|
|
Description
|
|
"""""""""""
|
|
|
|
Define a computation that extracts additional values calculated by a
|
|
pair style, and makes them accessible for output or further processing
|
|
by other commands.
|
|
|
|
.. note::
|
|
|
|
The group specified for this command is **ignored**\ .
|
|
|
|
The specified *pstyle* must be a pair style used in your simulation
|
|
either by itself or as a sub-style in a :doc:`pair_style hybrid or hybrid/overlay <pair_hybrid>` command. If the sub-style is
|
|
used more than once, an additional number *nsub* has to be specified
|
|
in order to choose which instance of the sub-style will be used by
|
|
the compute. Not specifying the number in this case will cause the
|
|
compute to fail.
|
|
|
|
The *evalue* setting is optional. All
|
|
pair styles tally a potential energy *epair* which may be broken into
|
|
two parts: *evdwl* and *ecoul* such that *epair* = *evdwl* + *ecoul*\ .
|
|
If the pair style calculates Coulombic interactions, their energy will
|
|
be tallied in *ecoul*\ . Everything else (whether it is a Lennard-Jones
|
|
style van der Waals interaction or not) is tallied in *evdwl*\ . If
|
|
*evalue* is blank or specified as *epair*, then *epair* is stored
|
|
as a global scalar by this compute. This is useful when using
|
|
:doc:`pair_style hybrid <pair_hybrid>` if you want to know the portion
|
|
of the total energy contributed by one sub-style. If *evalue* is
|
|
specified as *evdwl* or *ecoul*, then just that portion of the energy
|
|
is stored as a global scalar.
|
|
|
|
.. note::
|
|
|
|
The energy returned by the *evdwl* keyword does not include tail
|
|
corrections, even if they are enabled via the
|
|
:doc:`pair_modify <pair_modify>` command.
|
|
|
|
Some pair styles tally additional quantities, e.g. a breakdown of
|
|
potential energy into 14 components is tallied by the
|
|
:doc:`pair_style reaxff <pair_reaxff>` command. These values (1 or more)
|
|
are stored as a global vector by this compute. See the page for
|
|
:doc:`individual pair styles <pair_style>` for info on these values.
|
|
|
|
Output info
|
|
"""""""""""
|
|
|
|
This compute calculates a global scalar which is *epair* or *evdwl* or
|
|
*ecoul*\ . If the pair style supports it, it also calculates a global
|
|
vector of length :math:`\ge` 1, as determined by the pair style. These values
|
|
can be used by any command that uses global scalar or vector values
|
|
from a compute as input. See the :doc:`Howto output <Howto_output>` doc
|
|
page for an overview of LAMMPS output options.
|
|
|
|
The scalar and vector values calculated by this compute are
|
|
"extensive".
|
|
|
|
The scalar value will be in energy :doc:`units <units>`. The vector
|
|
values will typically also be in energy :doc:`units <units>`, but see
|
|
the page for the pair style for details.
|
|
|
|
Restrictions
|
|
""""""""""""
|
|
none
|
|
|
|
Related commands
|
|
""""""""""""""""
|
|
|
|
:doc:`compute pe <compute_pe>`, :doc:`compute bond <compute_bond>`,
|
|
:doc:`fix pair <fix_pair>`
|
|
|
|
|
|
Default
|
|
"""""""
|
|
|
|
The keyword defaults are *evalue* = *epair*, nsub = 0.
|