forked from lijiext/lammps
158 lines
6.8 KiB
Plaintext
158 lines
6.8 KiB
Plaintext
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
|
|
|
:link(lws,http://lammps.sandia.gov)
|
|
:link(ld,Manual.html)
|
|
:link(lc,Commands_all.html)
|
|
|
|
:line
|
|
|
|
compute pair/local command :h3
|
|
|
|
[Syntax:]
|
|
|
|
compute ID group-ID pair/local value1 value2 ... keyword args ... :pre
|
|
|
|
ID, group-ID are documented in "compute"_compute.html command :ulb,l
|
|
pair/local = style name of this compute command :l
|
|
one or more values may be appended :l
|
|
value = {dist} or {eng} or {force} or {fx} or {fy} or {fz} or {pN} :l
|
|
{dist} = pairwise distance
|
|
{eng} = pairwise energy
|
|
{force} = pairwise force
|
|
{fx},{fy},{fz} = components of pairwise force
|
|
{pN} = pair style specific quantities for allowed N values :pre
|
|
zero or more keyword/arg pairs may be appended :l
|
|
keyword = {cutoff} :l
|
|
{cutoff} arg = {type} or {radius} :pre
|
|
:ule
|
|
|
|
[Examples:]
|
|
|
|
compute 1 all pair/local eng
|
|
compute 1 all pair/local dist eng force
|
|
compute 1 all pair/local dist eng fx fy fz
|
|
compute 1 all pair/local dist fx fy fz p1 p2 p3 :pre
|
|
|
|
[Description:]
|
|
|
|
Define a computation that calculates properties of individual pairwise
|
|
interactions. The number of datums generated, aggregated across all
|
|
processors, equals the number of pairwise interactions in the system.
|
|
|
|
The local data stored by this command is generated by looping over the
|
|
pairwise neighbor list. Info about an individual pairwise interaction
|
|
will only be included if both atoms in the pair are in the specified
|
|
compute group, and if the current pairwise distance is less than the
|
|
force cutoff distance for that interaction, as defined by the
|
|
"pair_style"_pair_style.html and "pair_coeff"_pair_coeff.html
|
|
commands.
|
|
|
|
The value {dist} is the distance between the pair of atoms.
|
|
|
|
The value {eng} is the interaction energy for the pair of atoms.
|
|
|
|
The value {force} is the force acting between the pair of atoms, which
|
|
is positive for a repulsive force and negative for an attractive
|
|
force. The values {fx}, {fy}, and {fz} are the xyz components of
|
|
{force} on atom I.
|
|
|
|
A pair style may define additional pairwise quantities which can be
|
|
accessed as {p1} to {pN}, where N is defined by the pair style. Most
|
|
pair styles do not define any additional quantities, so N = 0. An
|
|
example of ones that do are the "granular pair styles"_pair_gran.html
|
|
which calculate the tangential force between two particles and return
|
|
its components and magnitude acting on atom I for N = 1,2,3,4. See
|
|
individual pair styles for details.
|
|
|
|
When using {pN} with pair style {hybrid}, the output will be the Nth
|
|
quantity from the sub-style that computes the pairwise interaction
|
|
(based on atom types). If that sub-style does not define a {pN},
|
|
the output will be 0.0. The maximum allowed N is the maximum number
|
|
of quantities provided by any sub-style.
|
|
|
|
When using {pN} with pair style {hybrid/overlay} the quantities
|
|
from all sub-styles that provide them are concatenated together
|
|
into one long list. For example, if there are 3 sub-styles and
|
|
2 of them have additional output (with 3 and 4 quantities,
|
|
respectively), then 7 values ({p1} up to {p7}) are defined.
|
|
The values {p1} to {p3} refer to quantities defined by the first
|
|
of the two sub-styles. Values {p4} to {p7} refer to quantities
|
|
from the second of the two sub-styles. If the referenced {pN}
|
|
is not computed for the specific pairwise interaction (based on
|
|
atom types), then the output will be 0.0.
|
|
|
|
The value {dist} will be in distance "units"_units.html. The value
|
|
{eng} will be in energy "units"_units.html. The values {force}, {fx},
|
|
{fy}, and {fz} will be in force "units"_units.html. The values {pN}
|
|
will be in whatever units the pair style defines.
|
|
|
|
The optional {cutoff} keyword determines how the force cutoff distance
|
|
for an interaction is determined. For the default setting of {type},
|
|
the pairwise cutoff defined by the "pair_style"_pair_style.html
|
|
command for the types of the two atoms is used. For the {radius}
|
|
setting, the sum of the radii of the two particles is used as a
|
|
cutoff. For example, this is appropriate for granular particles which
|
|
only interact when they are overlapping, as computed by "granular pair
|
|
styles"_pair_gran.html. Note that if a granular model defines atom
|
|
types such that all particles of a specific type are monodisperse
|
|
(same diameter), then the two settings are effectively identical.
|
|
|
|
Note that as atoms migrate from processor to processor, there will be
|
|
no consistent ordering of the entries within the local vector or array
|
|
from one timestep to the next. The only consistency that is
|
|
guaranteed is that the ordering on a particular timestep will be the
|
|
same for local vectors or arrays generated by other compute commands.
|
|
For example, pair output from the "compute
|
|
property/local"_compute_property_local.html command can be combined
|
|
with data from this command and output by the "dump local"_dump.html
|
|
command in a consistent way.
|
|
|
|
Here is an example of how to do this:
|
|
|
|
compute 1 all property/local patom1 patom2
|
|
compute 2 all pair/local dist eng force
|
|
dump 1 all local 1000 tmp.dump index c_1\[1\] c_1\[2\] c_2\[1\] c_2\[2\] c_2\[3\] :pre
|
|
|
|
NOTE: For pairs, if two atoms I,J are involved in 1-2, 1-3, 1-4
|
|
interactions within the molecular topology, their pairwise interaction
|
|
may be turned off, and thus they may not appear in the neighbor list,
|
|
and will not be part of the local data created by this command. More
|
|
specifically, this will be true of I,J pairs with a weighting factor
|
|
of 0.0; pairs with a non-zero weighting factor are included. The
|
|
weighting factors for 1-2, 1-3, and 1-4 pairwise interactions are set
|
|
by the "special_bonds"_special_bonds.html command. An exception is if
|
|
long-range Coulombics are being computed via the
|
|
"kspace_style"_kspace_style.html command, then atom pairs with
|
|
weighting factors of zero are still included in the neighbor list, so
|
|
that a portion of the long-range interaction contribution can be
|
|
computed in the pair style. Hence in that case, those atom pairs will
|
|
be part of the local data created by this command.
|
|
|
|
[Output info:]
|
|
|
|
This compute calculates a local vector or local array depending on the
|
|
number of keywords. The length of the vector or number of rows in the
|
|
array is the number of pairs. If a single keyword is specified, a
|
|
local vector is produced. If two or more keywords are specified, a
|
|
local array is produced where the number of columns = the number of
|
|
keywords. The vector or array can be accessed by any command that
|
|
uses local values from a compute as input. See the "Howto
|
|
output"_Howto_output.html doc page for an overview of LAMMPS output
|
|
options.
|
|
|
|
The output for {dist} will be in distance "units"_units.html. The
|
|
output for {eng} will be in energy "units"_units.html. The output for
|
|
{force}, {fx}, {fy}, and {fz} will be in force "units"_units.html.
|
|
The output for {pN} will be in whatever units the pair style defines.
|
|
|
|
[Restrictions:] none
|
|
|
|
[Related commands:]
|
|
|
|
"dump local"_dump.html, "compute
|
|
property/local"_compute_property_local.html
|
|
|
|
[Default:]
|
|
|
|
The keyword default is cutoff = type.
|