Merge remote-tracking branch 'github/develop' into collected-small-fixes
This commit is contained in:
@ -118,6 +118,7 @@ KOKKOS, o = OPENMP, t = OPT.
|
||||
* :doc:`ptm/atom <compute_ptm_atom>`
|
||||
* :doc:`rattlers/atom <compute_rattlers_atom>`
|
||||
* :doc:`rdf <compute_rdf>`
|
||||
* :doc:`reaxff/atom (k) <compute_reaxff_atom>`
|
||||
* :doc:`reduce <compute_reduce>`
|
||||
* :doc:`reduce/chunk <compute_reduce_chunk>`
|
||||
* :doc:`reduce/region <compute_reduce>`
|
||||
|
||||
@ -282,6 +282,7 @@ The individual style names on the :doc:`Commands compute <Commands_compute>` pag
|
||||
* :doc:`ptm/atom <compute_ptm_atom>` - determines the local lattice structure based on the Polyhedral Template Matching method
|
||||
* :doc:`rattlers/atom <compute_rattlers_atom>` - identify under-coordinated rattler atoms
|
||||
* :doc:`rdf <compute_rdf>` - radial distribution function :math:`g(r)` histogram of group of atoms
|
||||
* :doc:`reaxff/atom <compute_reaxff_atom>` - extract ReaxFF bond information
|
||||
* :doc:`reduce <compute_reduce>` - combine per-atom quantities into a single global value
|
||||
* :doc:`reduce/chunk <compute_reduce_chunk>` - reduce per-atom quantities within each chunk
|
||||
* :doc:`reduce/region <compute_reduce>` - same as compute reduce, within a region
|
||||
|
||||
97
doc/src/compute_reaxff_atom.rst
Normal file
97
doc/src/compute_reaxff_atom.rst
Normal file
@ -0,0 +1,97 @@
|
||||
.. index:: compute reaxff/atom
|
||||
.. index:: compute reaxff/atom/kk
|
||||
|
||||
compute reaxff/atom command
|
||||
===========================
|
||||
|
||||
Accelerator Variants: *reaxff/atom/kk*
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute ID group-ID reaxff/atom attribute args ... keyword value ...
|
||||
|
||||
* ID, group-ID are documented in :doc:`compute <compute>` command
|
||||
* reaxff/atom = name of this compute command
|
||||
* attribute = *pair*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*pair* args = nsub
|
||||
nsub = *n*-instance of a sub-style, if a pair style is used multiple times in a hybrid style
|
||||
|
||||
* keyword = *bonds*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*bonds* value = *no* or *yes*
|
||||
*no* = ignore list of local bonds
|
||||
*yes* = include list of local bonds
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute 1 all reaxff/atom bonds yes
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
.. versionadded:: TBD
|
||||
|
||||
Define a computation that extracts bond information computed by the ReaxFF
|
||||
potential specified by :doc:`pair_style reaxff <pair_reaxff>`.
|
||||
|
||||
By default, it produces per-atom data that includes the following columns:
|
||||
|
||||
* abo = atom bond order (sum of all bonds)
|
||||
* nlp = number of lone pairs
|
||||
* nb = number of bonds
|
||||
|
||||
Bonds will only be included if its atoms are in the group.
|
||||
|
||||
In addition, if ``bonds`` is set to ``yes``, the compute will also produce a
|
||||
local array of all bonds on the current processor whose atoms are in the group.
|
||||
The columns of each entry of this local array are:
|
||||
|
||||
* id_i = atom i id of bond
|
||||
* id_j = atom j id of bond
|
||||
* bo = bond order of bond
|
||||
|
||||
Output info
|
||||
"""""""""""
|
||||
|
||||
This compute calculates a per-atom array and local array depending on the
|
||||
number of keywords. The number of rows in the local array is the number of
|
||||
bonds as described above. Both per-atom and local array have 3 columns.
|
||||
|
||||
The arrays can be accessed by any command that uses local and per-atom values
|
||||
from a compute as input. See the :doc:`Howto output <Howto_output>` page for
|
||||
an overview of LAMMPS output options.
|
||||
|
||||
----------
|
||||
|
||||
.. include:: accel_styles.rst
|
||||
|
||||
----------
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
The compute reaxff/atom command requires that the :doc:`pair_style reaxff
|
||||
<pair_reaxff>` is invoked. This fix is part of the REAXFF package. It is only
|
||||
enabled if LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`pair_style reaxff <pair_reaxff>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
The option defaults are *bonds* = *no*.
|
||||
@ -18,7 +18,7 @@ Syntax
|
||||
* style = *stress/mop* or *stress/mop/profile*
|
||||
* dir = *x* or *y* or *z* is the direction normal to the plane
|
||||
* args = argument specific to the compute style
|
||||
* keywords = *kin* or *conf* or *total* or *pair* or *bond* or *angle* (one or more can be specified)
|
||||
* keywords = *kin* or *conf* or *total* or *pair* or *bond* or *angle* or *dihedral* (one or more can be specified)
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
@ -68,15 +68,13 @@ Verlet algorithm.
|
||||
|
||||
.. versionadded:: 15Jun2023
|
||||
|
||||
contributions from bond and angle potentials
|
||||
contributions from bond, angle and dihedral potentials
|
||||
|
||||
Between one and six keywords can be used to indicate which contributions
|
||||
Between one and seven keywords can be used to indicate which contributions
|
||||
to the stress must be computed: total stress (total), kinetic stress
|
||||
(kin), configurational stress (conf), stress due to bond stretching
|
||||
(bond), stress due to angle bending (angle) and/or due to pairwise
|
||||
non-bonded interactions (pair). The angle keyword is currently
|
||||
available only for the *stress/mop* command and **not** the
|
||||
*stress/mop/profile* command.
|
||||
(bond), stress due to angle bending (angle), stress due to dihedral terms (dihedral)
|
||||
and/or due to pairwise non-bonded interactions (pair).
|
||||
|
||||
NOTE 1: The configurational stress is computed considering all pairs of
|
||||
atoms where at least one atom belongs to group group-ID.
|
||||
@ -134,14 +132,9 @@ size does not change in time, and axis-aligned planes.
|
||||
The method only works with two-body pair interactions, because it
|
||||
requires the class method ``Pair::single()`` to be implemented, which is
|
||||
not possible for manybody potentials. In particular, compute
|
||||
*stress/mop/profile* does not work with more than two-body pair
|
||||
*stress/mop/profile* and *stress/mop* do not work with more than two-body pair
|
||||
interactions, long range (kspace) interactions and
|
||||
angle/dihedral/improper intramolecular interactions. Similarly, compute
|
||||
*stress/mop* does not work with more than two-body pair interactions,
|
||||
long range (kspace) interactions and dihedral/improper intramolecular
|
||||
interactions but works with all bond interactions with the class method
|
||||
single() implemented and all angle interactions with the class method
|
||||
born_matrix() implemented.
|
||||
improper intramolecular interactions.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -373,7 +373,8 @@ Related commands
|
||||
|
||||
:doc:`pair_coeff <pair_coeff>`, :doc:`fix qeq/reaxff <fix_qeq_reaxff>`,
|
||||
:doc:`fix acks2/reaxff <fix_acks2_reaxff>`, :doc:`fix reaxff/bonds <fix_reaxff_bonds>`,
|
||||
:doc:`fix reaxff/species <fix_reaxff_species>`
|
||||
:doc:`fix reaxff/species <fix_reaxff_species>`,
|
||||
:doc:`compute reaxff/atom <compute_reaxff_atom>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
Reference in New Issue
Block a user