From a1513a7d3b04c760fff222a275c7e18d09afd540 Mon Sep 17 00:00:00 2001 From: jtclemm Date: Thu, 15 Jun 2023 23:06:50 -0600 Subject: [PATCH] rattler documentation --- doc/src/compute_contact_atom.rst | 3 -- doc/src/compute_rattlers.rst | 65 +++++++++++++------------- doc/src/fix_nonaffine_displacement.rst | 10 ++-- 3 files changed, 36 insertions(+), 42 deletions(-) diff --git a/doc/src/compute_contact_atom.rst b/doc/src/compute_contact_atom.rst index 384ede290f..b7ed062ff6 100644 --- a/doc/src/compute_contact_atom.rst +++ b/doc/src/compute_contact_atom.rst @@ -69,6 +69,3 @@ Default """"""" *group2-ID* = all - - -none diff --git a/doc/src/compute_rattlers.rst b/doc/src/compute_rattlers.rst index c26f2b4252..a4ae2d3d16 100644 --- a/doc/src/compute_rattlers.rst +++ b/doc/src/compute_rattlers.rst @@ -1,6 +1,6 @@ -.. index:: compute contact/atom +.. index:: compute rattlers -compute contact/atom command +compute rattlers command ============================ Syntax @@ -8,67 +8,68 @@ Syntax .. parsed-literal:: - compute ID group-ID contact/atom group2-ID + compute ID group-ID rattlers cutoff zmin ntries * ID, group-ID are documented in :doc:`compute ` command -* contact/atom = style name of this compute command -* group2-ID = optional argument select group-ID to restrict which atoms to consider for contacts (see below) +* rattlers = style name of this compute command +* cutoff = *type* or *radius* + + .. parsed-literal:: + + *type* = cutoffs determined based on atom types + *radius* = cutoffs determined based on atom diameters (atom style sphere) + +* zmin = minimum coordination for a non-rattler particle +* ntries = maximum number of interations to remove rattlers Examples """""""" .. code-block:: LAMMPS - compute 1 all contact/atom - compute 1 all contact/atom mygroup + compute 1 all rattlers type 4 10 Description """"""""""" -Define a computation that calculates the number of contacts -for each atom in a group. - -The contact number is defined for finite-size spherical particles as -the number of neighbor atoms which overlap the central particle, -meaning that their distance of separation is less than or equal to the -sum of the radii of the two particles. - -The value of the contact number will be 0.0 for atoms not in the -specified compute group. - -The optional *group2-ID* argument allows to specify from which group atoms -contribute to the coordination number. Default setting is group 'all'. +Define a compute that identifies rattlers in a system. Rattlers are +identified using an interative approach. The coordination number of +all atoms is first calculated. The *type* and *radius* settings are +used to select whether interactions cutoffs are determined by atom +types or by the sum of atomic radii (atom style sphere), respectively. +Rattlers are then identified as particles with a coordination number +less than *zmin* and are removed from consideration. A coordination +number is then recalaculated, excluding previously identified rattlers, +to identify new rattlers. This process is looped, up to a maximum +of *ntries*, until no new rattlers are identified and the remaining +atoms form a stable network of contacts. Output info """"""""""" -This compute calculates a per-atom vector, whose values can be -accessed by any command that uses per-atom values from a compute as -input. See the :doc:`Howto output ` page for an +This compute calculates a per-atom vector and a global scalar. The vector +designates which atoms are rattlers, indicated by a value 1. Non-rattlers +have a value of 0. The global scalar returns the total number of rattlers +in the system. See the :doc:`Howto output ` page for an overview of LAMMPS output options. -The per-atom vector values will be a number >= 0.0, as explained -above. - Restrictions """""""""""" -This compute is part of the GRANULAR package. It is only enabled if +This compute is part of the EXTRA-COMPUTE package. It is only enabled if LAMMPS was built with that package. See the :doc:`Build package ` page for more info. -This compute requires that atoms store a radius as defined by the -:doc:`atom_style sphere ` command. +The *radius* cutoff option requires that atoms store a radius as defined by the +:doc:`atom_style sphere ` or similar commands. Related commands """""""""""""""" :doc:`compute coord/atom ` +:doc:`compute contact/atom ` Default """"""" -*group2-ID* = all - - none diff --git a/doc/src/fix_nonaffine_displacement.rst b/doc/src/fix_nonaffine_displacement.rst index 7b0f7669ed..51084c9501 100644 --- a/doc/src/fix_nonaffine_displacement.rst +++ b/doc/src/fix_nonaffine_displacement.rst @@ -1,18 +1,14 @@ -.. index:: fix gravity -.. index:: fix gravity/omp -.. index:: fix gravity/kk +.. index:: fix nonaffine/displacement -fix gravity command +fix nonaffine/displacement command =================== -Accelerator Variants: *gravity/omp*, *gravity/kk* - Syntax """""" .. parsed-literal:: - fix ID group gravity magnitude style args + fix ID group nonaffine/displacement style args reference/style args * ID, group are documented in :doc:`fix ` command * gravity = style name of this fix command