Merge branch 'master' into fix-ttm-grid
This commit is contained in:
@ -1,15 +1,15 @@
|
||||
Development build options (CMake only)
|
||||
======================================
|
||||
Development build options
|
||||
=========================
|
||||
|
||||
The CMake build procedure of LAMMPS offers a few extra options which are
|
||||
The build procedures in LAMMPS offers a few extra options which are
|
||||
useful during development, testing or debugging.
|
||||
|
||||
----------
|
||||
|
||||
.. _compilation:
|
||||
|
||||
Monitor compilation flags
|
||||
-------------------------
|
||||
Monitor compilation flags (CMake only)
|
||||
--------------------------------------
|
||||
|
||||
Sometimes it is necessary to verify the complete sequence of compilation flags
|
||||
generated by the CMake build. To enable a more verbose output during
|
||||
@ -30,8 +30,8 @@ variable VERBOSE set to 1:
|
||||
|
||||
.. _clang-tidy:
|
||||
|
||||
Enable static code analysis with clang-tidy
|
||||
-------------------------------------------
|
||||
Enable static code analysis with clang-tidy (CMake only)
|
||||
--------------------------------------------------------
|
||||
|
||||
The `clang-tidy tool <https://clang.llvm.org/extra/clang-tidy/>`_ is a
|
||||
static code analysis tool to diagnose (and potentially fix) typical
|
||||
@ -52,8 +52,8 @@ significantly more time consuming than the compilation itself.
|
||||
|
||||
.. _iwyu_processing:
|
||||
|
||||
Report missing and unneeded '#include' statements
|
||||
-------------------------------------------------
|
||||
Report missing and unneeded '#include' statements (CMake only)
|
||||
--------------------------------------------------------------
|
||||
|
||||
The conventions for how and when to use and order include statements in
|
||||
LAMMPS are `documented in a separate file <https://github.com/lammps/lammps/blob/master/doc/include-file-conventions.md>`_
|
||||
@ -86,8 +86,8 @@ on recording all commands required to do the compilation.
|
||||
|
||||
.. _sanitizer:
|
||||
|
||||
Address, Undefined Behavior, and Thread Sanitizer Support
|
||||
---------------------------------------------------------
|
||||
Address, Undefined Behavior, and Thread Sanitizer Support (CMake only)
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Compilers such as GCC and Clang support generating instrumented binaries
|
||||
which use different sanitizer libraries to detect problems in the code
|
||||
@ -116,8 +116,8 @@ compilation and linking stages. This is done through setting the
|
||||
|
||||
.. _testing:
|
||||
|
||||
Code Coverage and Unit Testing
|
||||
------------------------------
|
||||
Code Coverage and Unit Testing (CMake only)
|
||||
-------------------------------------------
|
||||
|
||||
The LAMMPS code is subject to multiple levels of automated testing
|
||||
during development: integration testing (i.e. whether the code compiles
|
||||
@ -464,7 +464,8 @@ Coding style utilities
|
||||
|
||||
To aid with enforcing some of the coding style conventions in LAMMPS
|
||||
some additional build targets have been added. These require Python 3.5
|
||||
or later and will only work on Unix-like operating and file systems.
|
||||
or later and will only work properly on Unix-like operating and file systems.
|
||||
|
||||
The following options are available.
|
||||
|
||||
.. code-block:: bash
|
||||
@ -476,17 +477,43 @@ The following options are available.
|
||||
make check-permissions # search for files with permissions issues
|
||||
make fix-permissions # correct permissions issues in files
|
||||
|
||||
These should help to replace all TAB characters with blanks and remove
|
||||
any trailing whitespace. Also all LAMMPS homepage URL references can be
|
||||
updated to the location change from Sandia to the lammps.org domain.
|
||||
And the permission check can remove executable permissions from non-executable
|
||||
files (like source code).
|
||||
|
||||
Clang-format support
|
||||
--------------------
|
||||
|
||||
For the code in the ``unittest`` and ``src`` trees we are transitioning
|
||||
to use the `clang-format` tool to assist with having a consistent source
|
||||
code style. The `clang-format` command bundled with Clang version 8.0
|
||||
or later is required. The configuration is in files ``.clang-format``
|
||||
in the respective folders. Since the modifications from `clang-format`
|
||||
can be significant and - especially for "legacy style code" - also is
|
||||
not always improving readability, a large number of files currently have
|
||||
a ``// clang-format off`` at the top, which will disable the processing.
|
||||
Over time, files will be refactored and updated to that `clang-format`
|
||||
may be applied to them (at least in part).
|
||||
code formatting style. The `clang-format` command bundled with Clang
|
||||
version 8.0 or later is required. The configuration is in files called
|
||||
``.clang-format`` in the respective folders. Since the modifications
|
||||
from `clang-format` can be significant and - especially for "legacy
|
||||
style code" - they are not always improving readability, a large number
|
||||
of files currently have a ``// clang-format off`` at the top, which will
|
||||
disable the processing. As of fall 2021 all files have been either
|
||||
"protected" this way or are enabled for full or partial `clang-format`
|
||||
processing. Over time, the "protected" files will be refactored and
|
||||
updated so that `clang-format` may be applied to them as well.
|
||||
|
||||
If `clang-format` is available, the source code files in the ``unittest``
|
||||
tree can be updated to conform to the formatting settings using
|
||||
``make format-tests`` and the files in ``src`` with ``make format-src``.
|
||||
It is recommended for all newly contributed files to use the clang-format
|
||||
processing while writing the code or do the coding style processing
|
||||
(including the scripts mentioned in the previous paragraph)
|
||||
|
||||
If `clang-format` is available, files can be updated individually with
|
||||
commands like the following:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ clang-format -i some_file.cpp
|
||||
|
||||
|
||||
The following target are available for both, GNU make and CMake:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
make format-src # apply clang-format to all files in src and the package folders
|
||||
make format-tests # apply clang-format to all files in the unittest tree
|
||||
|
||||
@ -152,7 +152,7 @@ KOKKOS, o = OPENMP, t = OPT.
|
||||
* :doc:`temp/chunk <compute_temp_chunk>`
|
||||
* :doc:`temp/com <compute_temp_com>`
|
||||
* :doc:`temp/cs <compute_temp_cs>`
|
||||
* :doc:`temp/deform <compute_temp_deform>`
|
||||
* :doc:`temp/deform (k) <compute_temp_deform>`
|
||||
* :doc:`temp/deform/eff <compute_temp_deform_eff>`
|
||||
* :doc:`temp/drude <compute_temp_drude>`
|
||||
* :doc:`temp/eff <compute_temp_eff>`
|
||||
|
||||
@ -148,7 +148,7 @@ OPT.
|
||||
* :doc:`nvt/body <fix_nvt_body>`
|
||||
* :doc:`nvt/eff <fix_nh_eff>`
|
||||
* :doc:`nvt/manifold/rattle <fix_nvt_manifold_rattle>`
|
||||
* :doc:`nvt/sllod (io) <fix_nvt_sllod>`
|
||||
* :doc:`nvt/sllod (iko) <fix_nvt_sllod>`
|
||||
* :doc:`nvt/sllod/eff <fix_nvt_sllod_eff>`
|
||||
* :doc:`nvt/sphere (o) <fix_nvt_sphere>`
|
||||
* :doc:`nvt/uef <fix_nh_uef>`
|
||||
|
||||
@ -24,6 +24,7 @@ OPT.
|
||||
|
||||
* :doc:`ewald (o) <kspace_style>`
|
||||
* :doc:`ewald/disp <kspace_style>`
|
||||
* :doc:`ewald/disp/dipole <kspace_style>`
|
||||
* :doc:`ewald/dipole <kspace_style>`
|
||||
* :doc:`ewald/dipole/spin <kspace_style>`
|
||||
* :doc:`msm (o) <kspace_style>`
|
||||
|
||||
@ -53,7 +53,8 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
MOLECULE package.
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -64,7 +64,7 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -50,7 +50,7 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -49,7 +49,7 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -49,7 +49,7 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -57,7 +57,7 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -50,7 +50,7 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This bond style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -56,7 +56,7 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This bond style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -54,7 +54,7 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This bond style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -1,8 +1,11 @@
|
||||
.. index:: compute temp/deform
|
||||
.. index:: compute temp/deform/kk
|
||||
|
||||
compute temp/deform command
|
||||
===========================
|
||||
|
||||
Accelerator Variants: *temp/deform/kk*
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
|
||||
@ -54,8 +54,8 @@ or :doc:`read_restart <read_restart>` commands:
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
This dihedral style can only be used if LAMMPS was built with the
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -50,8 +50,8 @@ or :doc:`read_restart <read_restart>` commands:
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
This dihedral style can only be used if LAMMPS was built with the
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -55,8 +55,8 @@ radian\^2.
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This angle style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
This dihedral style can only be used if LAMMPS was built with the
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -89,7 +89,7 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This dihedral style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -244,9 +244,10 @@ script after reading the restart file.
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
These dihedral styles can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
The *table* dihedral style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. The *table/cut* dihedral style can only be used if
|
||||
LAMMPS was built with the EXTRA-MOLECULE package. See the
|
||||
:doc:`Build package <Build_package>` doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -65,7 +65,7 @@ The second use case is a collection of polymer chains with some
|
||||
fraction of their sites identified as "sticker" sites. Initially each
|
||||
polymer chain is isolated from the others in a topological sense, and
|
||||
there is an intra-chain bond between every pair of sticker sites on
|
||||
the same chain. Over time, bonds swap so that inter-moleculer sticker
|
||||
the same chain. Over time, bonds swap so that inter-molecular sticker
|
||||
bonds are created. This models a vitrification-style process whereby
|
||||
the polymer chains all become interconnected. For this use case, if
|
||||
angles are defined they should not include bonds between sticker
|
||||
@ -97,7 +97,7 @@ means that bond pairs which straddle processor boundaries are not
|
||||
eligible for swapping on this step.
|
||||
|
||||
(3) The distances between 4 pairs of atoms -- (A1,A2), (B1,B2),
|
||||
(A1,B2), (B1,A2) -- must all be less thann the specified *cutoff*\ .
|
||||
(A1,B2), (B1,A2) -- must all be less than the specified *cutoff*\ .
|
||||
|
||||
(4) The molecule IDs of A1 and B1 must be the same (see below).
|
||||
|
||||
@ -116,7 +116,7 @@ Boltzmann constant, and T is the current temperature of the system.
|
||||
|
||||
IMPORTANT: Whether the swap is accepted or rejected, no other swaps
|
||||
are attempted by this processor on this timestep. No other
|
||||
eliglble 4-tuples of atoms are considered. This means that each
|
||||
eligible 4-tuples of atoms are considered. This means that each
|
||||
processor will perform either a single swap or none on timesteps
|
||||
this fix is invoked.
|
||||
|
||||
|
||||
@ -1,11 +1,12 @@
|
||||
.. index:: fix nvt/sllod
|
||||
.. index:: fix nvt/sllod/intel
|
||||
.. index:: fix nvt/sllod/omp
|
||||
.. index:: fix nvt/sllod/kk
|
||||
|
||||
fix nvt/sllod command
|
||||
=====================
|
||||
|
||||
Accelerator Variants: *nvt/sllod/intel*, *nvt/sllod/omp*
|
||||
Accelerator Variants: *nvt/sllod/intel*, *nvt/sllod/omp*, *nvt/sllod/kk*
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
.. index:: kspace_style ewald/dipole
|
||||
.. index:: kspace_style ewald/dipole/spin
|
||||
.. index:: kspace_style ewald/disp
|
||||
.. index:: kspace_style ewald/disp/dipole
|
||||
.. index:: kspace_style ewald/omp
|
||||
.. index:: kspace_style pppm
|
||||
.. index:: kspace_style pppm/kk
|
||||
@ -39,7 +40,7 @@ Syntax
|
||||
|
||||
kspace_style style value
|
||||
|
||||
* style = *none* or *ewald* or *ewald/dipole* or *ewald/dipole/spin* or *ewald/disp* or *ewald/omp* or *pppm* or *pppm/cg* or *pppm/disp* or *pppm/tip4p* or *pppm/stagger* or *pppm/disp/tip4p* or *pppm/gpu* or *pppm/intel* or *pppm/disp/intel* or *pppm/kk* or *pppm/omp* or *pppm/cg/omp* or *pppm/disp/tip4p/omp* or *pppm/tip4p/omp* or *pppm/dielectic* or *pppm/disp/dielectric* or *msm* or *msm/cg* or *msm/omp* or *msm/cg/omp* or *msm/dielectric* or *scafacos*
|
||||
* style = *none* or *ewald* or *ewald/dipole* or *ewald/dipole/spin* or *ewald/disp* or *ewald/disp/dipole* or *ewald/omp* or *pppm* or *pppm/cg* or *pppm/disp* or *pppm/tip4p* or *pppm/stagger* or *pppm/disp/tip4p* or *pppm/gpu* or *pppm/intel* or *pppm/disp/intel* or *pppm/kk* or *pppm/omp* or *pppm/cg/omp* or *pppm/disp/tip4p/omp* or *pppm/tip4p/omp* or *pppm/dielectic* or *pppm/disp/dielectric* or *msm* or *msm/cg* or *msm/omp* or *msm/cg/omp* or *msm/dielectric* or *scafacos*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
@ -52,6 +53,8 @@ Syntax
|
||||
accuracy = desired relative error in forces
|
||||
*ewald/disp* value = accuracy
|
||||
accuracy = desired relative error in forces
|
||||
*ewald/disp/dipole* value = accuracy
|
||||
accuracy = desired relative error in forces
|
||||
*ewald/omp* value = accuracy
|
||||
accuracy = desired relative error in forces
|
||||
*pppm* value = accuracy
|
||||
@ -156,6 +159,8 @@ matching keyword to the name of the KSpace style, as in this table:
|
||||
+----------------------+-----------------------+
|
||||
| tip4p/long | tip4p |
|
||||
+----------------------+-----------------------+
|
||||
| dipole/long | dipole |
|
||||
+----------------------+-----------------------+
|
||||
|
||||
----------
|
||||
|
||||
@ -168,7 +173,8 @@ The *ewald/disp* style adds a long-range dispersion sum option for
|
||||
but in a more efficient manner than the *ewald* style. The :math:`1/r^6`
|
||||
capability means that Lennard-Jones or Buckingham potentials can be
|
||||
used without a cutoff, i.e. they become full long-range potentials.
|
||||
The *ewald/disp* style can also be used with point-dipoles, see
|
||||
|
||||
The *ewald/disp/dipole* style can also be used with point-dipoles, see
|
||||
:ref:`(Toukmaji) <Toukmaji>`.
|
||||
|
||||
The *ewald/dipole* style adds long-range standard Ewald summations
|
||||
|
||||
Reference in New Issue
Block a user