forked from lijiext/lammps
97 lines
3.1 KiB
Plaintext
97 lines
3.1 KiB
Plaintext
.. index:: compute bond/local
|
|
|
|
compute bond/local command
|
|
==========================
|
|
|
|
Syntax
|
|
""""""
|
|
|
|
.. parsed-literal::
|
|
|
|
compute ID group-ID bond/local input1 input2 ...
|
|
|
|
* ID, group-ID are documented in :doc:`compute <compute>` command
|
|
* bond/local = style name of this compute command
|
|
* one or more keywords may be appended
|
|
* keyword = *dist* or *eng*
|
|
.. parsed-literal::
|
|
|
|
*dist* = bond distance
|
|
*eng* = bond energy
|
|
*force* = bond force
|
|
|
|
|
|
|
|
Examples
|
|
""""""""
|
|
|
|
.. parsed-literal::
|
|
|
|
compute 1 all bond/local eng
|
|
compute 1 all bond/local dist eng force
|
|
|
|
Description
|
|
"""""""""""
|
|
|
|
Define a computation that calculates properties of individual bond
|
|
interactions. The number of datums generated, aggregated across all
|
|
processors, equals the number of bonds in the system, modified
|
|
by the group parameter as explained below.
|
|
|
|
The local data stored by this command is generated by looping over all
|
|
the atoms owned on a processor and their bonds. A bond will only be
|
|
included if both atoms in the bond are in the specified compute group.
|
|
Any bonds that have been broken (see the :doc:`bond_style <bond_style>`
|
|
command) by setting their bond type to 0 are not included. Bonds that
|
|
have been turned off (see the :doc:`fix shake <fix_shake>` or
|
|
:doc:`delete_bonds <delete_bonds>` commands) by setting their bond type
|
|
negative are written into the file, but their energy will be 0.0.
|
|
|
|
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, bond output from the :doc:`compute property/local <compute_property_local>` command can be combined
|
|
with data from this command and output by the :doc:`dump local <dump>`
|
|
command in a consistent way.
|
|
|
|
Here is an example of how to do this:
|
|
|
|
.. parsed-literal::
|
|
|
|
compute 1 all property/local batom1 batom2 btype
|
|
compute 2 all bond/local dist eng
|
|
dump 1 all local 1000 tmp.dump index c_1[1] c_1[2] c_1[3] c_2[1] c_2[2]
|
|
|
|
**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 bonds. 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 :ref:`this section <howto_15>` for an overview of LAMMPS output
|
|
options.
|
|
|
|
The output for *dist* will be in distance :doc:`units <units>`. The
|
|
output for *eng* will be in energy :doc:`units <units>`. The output for
|
|
*force* will be in force :doc:`units <units>`.
|
|
|
|
Restrictions
|
|
""""""""""""
|
|
none
|
|
|
|
Related commands
|
|
""""""""""""""""
|
|
|
|
:doc:`dump local <dump>`, :doc:`compute property/local <compute_property_local>`
|
|
|
|
**Default:** none
|
|
|
|
|
|
.. _lws: http://lammps.sandia.gov
|
|
.. _ld: Manual.html
|
|
.. _lc: Section_commands.html#comm
|