diff --git a/doc/src/Build_extras.rst b/doc/src/Build_extras.rst index c20c3788df..68ebae15a7 100644 --- a/doc/src/Build_extras.rst +++ b/doc/src/Build_extras.rst @@ -1056,7 +1056,7 @@ binary package provided by your operating system. ---------- -.. _user-adios: +.. _adios: ADIOS package ----------------------------------- @@ -1097,7 +1097,7 @@ systems. ---------- -.. _user-atc: +.. _atc: ATC package ------------------------------- @@ -1151,7 +1151,7 @@ The ATC package requires the MANYBODY package also be installed. ---------- -.. _user-awpmd: +.. _awpmd: AWPMD package ------------------ @@ -1202,7 +1202,7 @@ AWPMD package ---------- -.. _user-colvars: +.. _colvars: COLVARS package --------------------------------------- @@ -1301,7 +1301,7 @@ at: `https://github.com/ICAMS/lammps-user-pace/ ` | :ref:`GPU ` | :ref:`KIM ` | :ref:`KOKKOS ` | :ref:`LATTE ` | :ref:`MESSAGE ` | +--------------------------------------+--------------------------------------+------------------------------------+----------------------------------+--------------------------------+--------------------------------+ -| :ref:`MSCG ` | :ref:`OPT ` | :ref:`POEMS ` | :ref:`PYTHON ` | :ref:`VORONOI ` | :ref:`ADIOS ` | +| :ref:`MSCG ` | :ref:`OPT ` | :ref:`POEMS ` | :ref:`PYTHON ` | :ref:`VORONOI ` | :ref:`ADIOS ` | +--------------------------------------+--------------------------------------+------------------------------------+----------------------------------+--------------------------------+--------------------------------+ -| :ref:`ATC ` | :ref:`AWPMD ` | :ref:`COLVARS ` | :ref:`H5MD ` | :ref:`ML-HDNNP ` | :ref:`INTEL ` | +| :ref:`ATC ` | :ref:`AWPMD ` | :ref:`COLVARS ` | :ref:`H5MD ` | :ref:`ML-HDNNP ` | :ref:`INTEL ` | +--------------------------------------+--------------------------------------+------------------------------------+----------------------------------+--------------------------------+--------------------------------+ -| :ref:`MOLFILE ` | :ref:`NETCDF ` | :ref:`ML-PACE ` | :ref:`PLUMED ` | :ref:`OPENMP ` | :ref:`QMMM ` | +| :ref:`MOLFILE ` | :ref:`NETCDF ` | :ref:`ML-PACE ` | :ref:`PLUMED ` | :ref:`OPENMP ` | :ref:`QMMM ` | +--------------------------------------+--------------------------------------+------------------------------------+----------------------------------+--------------------------------+--------------------------------+ -| :ref:`ML-QUIP ` | :ref:`SCAFACOS ` | :ref:`MACHDYN ` | :ref:`VTK ` | | | +| :ref:`ML-QUIP ` | :ref:`SCAFACOS ` | :ref:`MACHDYN ` | :ref:`VTK ` | | | +--------------------------------------+--------------------------------------+------------------------------------+----------------------------------+--------------------------------+--------------------------------+ The mechanism for including packages is simple but different for CMake @@ -60,12 +60,8 @@ versus make. -D PKG_MANYBODY=yes -D PKG_INTEL=yes - All standard and user packages are included the same way. Note - that USER packages have a hyphen between USER and the rest of the - package name, not an underscore. - - See the shortcut section below for how to install many packages at - once with CMake. + All packages are included the same way. See the shortcut section + below for how to install many packages at once with CMake. .. note:: @@ -91,10 +87,8 @@ versus make. make no-rigid make yes-intel - All standard and user packages are included the same way. - - See the shortcut section below for how to install many packages at - once with make. + All packages are included the same way. See the shortcut section + below for how to install many packages at once with make. .. note:: @@ -208,10 +202,6 @@ These commands install/un-install sets of packages: make yes-all # install all packages make no-all # uninstall all packages - make yes-standard or make yes-std # install standard packages - make no-standard or make no-std # uninstall standard packages - make yes-user # install user packages - make no-user # uninstall user packages make yes-lib # install packages that require extra libraries make no-lib # uninstall packages that require extra libraries make yes-ext # install packages that require external libraries diff --git a/doc/src/Errors.rst b/doc/src/Errors.rst index 48db5f6472..5975c22c41 100644 --- a/doc/src/Errors.rst +++ b/doc/src/Errors.rst @@ -1,11 +1,11 @@ Errors ****** -These doc pages describe the errors you can encounter when using -LAMMPS. The common problems include conceptual issues. The messages -and warnings doc pages give complete lists of all the messages the -code may generate (except those generated by USER packages), with -additional details for many of them. +These doc pages describe many of the error and warning message you can +encounter when using LAMMPS. The common problems include conceptual +issues. The messages and warnings doc pages give complete lists of all +the messages the code may generate, with additional details for many of +them. .. toctree:: :maxdepth: 1 diff --git a/doc/src/Errors_messages.rst b/doc/src/Errors_messages.rst index fba3b1bb39..3bbee1dc36 100644 --- a/doc/src/Errors_messages.rst +++ b/doc/src/Errors_messages.rst @@ -14,10 +14,6 @@ For example, a message like this: means that line #78 in the file src/velocity.cpp generated the error. Looking in the source code may help you figure out what went wrong. -Note that error messages from :doc:`user-contributed packages ` are not listed here. If such an error -occurs and is not self-explanatory, you will need to look in the source -code or contact the author of the package. - Doc page with :doc:`WARNING messages ` ---------- diff --git a/doc/src/Errors_warnings.rst b/doc/src/Errors_warnings.rst index f9b10b4893..68d6b0451a 100644 --- a/doc/src/Errors_warnings.rst +++ b/doc/src/Errors_warnings.rst @@ -14,10 +14,6 @@ generated. For example, a message like this: means that line #187 in the file src/domain.cpp generated the error. Looking in the source code may help you figure out what went wrong. -Note that warning messages from :doc:`user-contributed packages ` are not listed here. If such a warning -occurs and is not self-explanatory, you will need to look in the source -code or contact the author of the package. - Doc page with :doc:`ERROR messages ` ---------- diff --git a/doc/src/Modify_contribute.rst b/doc/src/Modify_contribute.rst index b347b95201..42ce8d2498 100644 --- a/doc/src/Modify_contribute.rst +++ b/doc/src/Modify_contribute.rst @@ -49,13 +49,11 @@ with gzip. Please only use gzip compression, as this works well and is available on all platforms. If the new features/files are broadly useful we may add them as core -files to LAMMPS or as part of a :doc:`standard package `. Else we will add them as a -user-contributed file or :doc:`user package `. Examples -of user packages are in src sub-directories that start with USER. The +files to LAMMPS or as part of a :doc:`package `. The USER-MISC package is simply a collection of (mostly) unrelated single -files, which is the simplest way to have your contribution quickly -added to the LAMMPS distribution. All the standard and user packages -are listed and described on the :doc:`Packages details ` doc page. +files, which is the simplest way to have your contribution quickly added +to the LAMMPS distribution. All packages are listed and described +on the :doc:`Packages details ` doc page. Note that by providing us files to release, you are agreeing to make them open-source, i.e. we can release them under the terms of the GPL @@ -65,27 +63,19 @@ on request only and with files that are authorized for that kind of distribution removed (e.g. interface to FFTW). See the :doc:`LAMMPS license ` doc page for details. -With user packages and files, all we are really providing (aside from -the fame and fortune that accompanies having your name in the source -code and on the `Authors page `_ -of the `LAMMPS WWW site `_), is a means for you to distribute your -work to the LAMMPS user community, and a mechanism for others to -easily try out your new feature. This may help you find bugs or make -contact with new collaborators. Note that you're also implicitly -agreeing to support your code which means answer questions, fix bugs, -and maintain it if LAMMPS changes in some way that breaks it (an -unusual event). - .. note:: - If you prefer to actively develop and support your add-on - feature yourself, then you may wish to make it available for download - from your own website, as a user package that LAMMPS users can add to - their copy of LAMMPS. See the `Offsite LAMMPS packages and tools `_ page of the LAMMPS web - site for examples of groups that do this. We are happy to advertise - your package and web site from that page. Simply email the - `developers `_ with info about - your package and we will post it there. + If you prefer to actively develop and support your add-on feature + yourself, then you may wish to make it available for download from + your own website, as a user package that LAMMPS users can add to + their copy of LAMMPS. See the `Offsite LAMMPS packages and tools + `_ page of the LAMMPS web site + for examples of groups that do this. We are happy to advertise your + package and web site from that page. Simply email the `developers + `_ with info about your package + and we will post it there. We recommend to name external packages + USER-\ so they can be easily distinguished from bundled packages + that do not have the USER- prefix. .. _lws: https://www.lammps.org @@ -167,17 +157,20 @@ packages in the src directory for examples. If you are uncertain, please ask. 2 source files. You can do this multiple times if you wish to contribute several individual features. -* If you want your contribution to be added as a user-contribution and - it is several related features, it is probably best to make it a user - package directory with a name like FOO. In addition to your new - files, the directory should contain a README text file. The README - should contain your name and contact information and a brief +* If you want your contribution to be added and it has several related + features or is dependent on an external or bundled library, it is best + to make it a package directory with a name like FOO. In addition to + your new files, the directory should contain a README text file. The + README should contain your name and contact information and a brief description of what your new package does. If your files depend on other LAMMPS style files also being installed (e.g. because your file is a derived class from the other LAMMPS class), then an Install.sh file is also needed to check for those dependencies. See other README - and Install.sh files in other USER directories as examples. Send us a - tarball of this FOO directory. + and Install.sh files in other directories as examples. Submit a pull + request on GitHub or send us a tarball of this FOO directory. Pull + requests are strongly encouraged since the greatly reduce the effort + to integrate a contribution and simplify the process of adjusting the + contributed code to cleanly integrate into the LAMMPS distribution. * Your new source files need to have the LAMMPS copyright, GPL notice, and your name and email address at the top, like other @@ -190,21 +183,21 @@ packages in the src directory for examples. If you are uncertain, please ask. code. * You **must** also create a **documentation** file for each new command - or style you are adding to LAMMPS. For simplicity and convenience, the - documentation of groups of closely related commands or styles may be - combined into a single file. This will be one file for a single-file - feature. For a package, it might be several files. These are text - files with a .rst extension using the `reStructuredText `_ - markup language, that are then converted to HTML and PDF using the - `Sphinx `_ documentation generator tool. Running Sphinx with - the included configuration requires Python 3.x. Configuration - settings and custom extensions for this conversion are included in the - source distribution, and missing python packages will be transparently - downloaded into a virtual environment via pip. Thus, if your local - system is missing required packages, you need access to the - internet. The translation can be as simple as doing "make html pdf" in - the doc folder. As appropriate, the text files can include inline - mathematical expression or figures (see doc/JPG for examples). + or style you are adding to LAMMPS. For simplicity and convenience, + the documentation of groups of closely related commands or styles may + be combined into a single file. This will be one file for a + single-file feature. For a package, it might be several files. These + are text files with a .rst extension using the `reStructuredText + `_ markup language, that are then converted to HTML and PDF + using the `Sphinx `_ documentation generator tool. Running + Sphinx with the included configuration requires Python 3.x. + Configuration settings and custom extensions for this conversion are + included in the source distribution, and missing python packages will + be transparently downloaded into a virtual environment via pip. Thus, + if your local system is missing required packages, you need access to + the internet. The translation can be as simple as doing "make html + pdf" in the doc folder. As appropriate, the text files can include + inline mathematical expression or figures (see doc/JPG for examples). Additional PDF files with further details (see doc/PDF for examples) may also be included. The doc page should also include literature citations as appropriate; see the bottom of doc/fix_nh.rst for @@ -212,15 +205,15 @@ packages in the src directory for examples. If you are uncertain, please ask. cite itself. Citation labels must be unique across all .rst files. The "Restrictions" section of the doc page should indicate if your command is only available if LAMMPS is built with the appropriate - USER-MISC or FOO package. See other user package doc files for - examples of how to do this. Please run at least "make html" and "make - spelling" and carefully inspect and proofread the resulting HTML - format doc page before submitting your code. Upon submission of a - pull request, checks for error free completion of the HTML and PDF - build will be performed and also a spell check, a check for correct - anchors and labels, and a check for completeness of references all - styles in their corresponding tables and lists is run. In case the - spell check reports false positives they can be added to the file + USER-MISC or FOO package. See other package doc files for examples of + how to do this. Please run at least "make html" and "make spelling" + and carefully inspect and proofread the resulting HTML format doc page + before submitting your code. Upon submission of a pull request, + checks for error free completion of the HTML and PDF build will be + performed and also a spell check, a check for correct anchors and + labels, and a check for completeness of references all styles in their + corresponding tables and lists is run. In case the spell check + reports false positives they can be added to the file doc/utils/sphinx-config/false_positives.txt * For a new package (or even a single command) you should include one or diff --git a/doc/src/Packages.rst b/doc/src/Packages.rst index 042485eb4b..31ac02df3c 100644 --- a/doc/src/Packages.rst +++ b/doc/src/Packages.rst @@ -14,6 +14,5 @@ LAMMPS build process. .. toctree:: :maxdepth: 1 - Packages_standard - Packages_user + Packages_list Packages_details diff --git a/doc/src/Packages_details.rst b/doc/src/Packages_details.rst index 80730dfc59..fd43465f4a 100644 --- a/doc/src/Packages_details.rst +++ b/doc/src/Packages_details.rst @@ -1,13 +1,12 @@ Package details =============== -Here is a brief description of all the standard and user packages in -LAMMPS. It lists authors (if applicable) and summarizes the package -contents. It has specific instructions on how to install the package, -including, if necessary, info on how to download or build any extra -library it requires. It also gives links to documentation, example -scripts, and pictures/movies (if available) that illustrate use of the -package. +Here is a brief description of all packages in LAMMPS. It lists authors +(if applicable) and summarizes the package contents. It has specific +instructions on how to install the package, including, if necessary, +info on how to download or build any extra library it requires. It also +gives links to documentation, example scripts, and pictures/movies (if +available) that illustrate use of the package. The majority of packages can be included in a LAMMPS build with a single setting (``-D PGK_=on`` for CMake) or command @@ -24,95 +23,121 @@ page gives those details. pair, bond, angle, etc correspond to commands with the same style name as contained in the file name. -.. table_from_list:: - :columns: 6 - - * :ref:`ASPHERE ` - * :ref:`BODY ` - * :ref:`CLASS2 ` - * :ref:`COLLOID ` - * :ref:`COMPRESS ` - * :ref:`CORESHELL ` - * :ref:`DIPOLE ` - * :ref:`GPU ` - * :ref:`GRANULAR ` - * :ref:`KIM ` - * :ref:`KOKKOS ` - * :ref:`KSPACE ` - * :ref:`LATTE ` - * :ref:`MANYBODY ` - * :ref:`MC ` - * :ref:`MESSAGE ` - * :ref:`MISC ` - * :ref:`ML-IAP ` - * :ref:`MOLECULE ` - * :ref:`MPIIO ` - * :ref:`MSCG ` - * :ref:`OPT ` - * :ref:`PERI ` - * :ref:`PLUGIN ` - * :ref:`POEMS ` - * :ref:`PYTHON ` - * :ref:`QEQ ` - * :ref:`REPLICA ` - * :ref:`RIGID ` - * :ref:`SHOCK ` - * :ref:`ML-SNAP ` - * :ref:`SPIN ` - * :ref:`SRD ` - * :ref:`VORONOI ` - .. table_from_list:: :columns: 6 * :ref:`ADIOS ` + * :ref:`ASPHERE ` * :ref:`ATC ` * :ref:`AWPMD ` * :ref:`BOCS ` + * :ref:`BODY ` * :ref:`BROWNIAN ` * :ref:`CG-DNA ` * :ref:`CG-SDK ` + * :ref:`CLASS2 ` + * :ref:`COLLOID ` * :ref:`COLVARS ` + * :ref:`COMPRESS ` + * :ref:`CORESHELL ` * :ref:`DIELECTRIC ` * :ref:`DIFFRACTION ` + * :ref:`DIPOLE ` + * :ref:`DPD-MESO ` * :ref:`DPD-REACT ` + * :ref:`DPD-SMOOTH ` * :ref:`DRUDE ` * :ref:`EFF ` * :ref:`FEP ` + * :ref:`GPU ` + * :ref:`GRANULAR ` * :ref:`H5MD ` - * :ref:`ML-HDNNP ` * :ref:`INTEL ` + * :ref:`KIM ` + * :ref:`KOKKOS ` + * :ref:`KSPACE ` * :ref:`LATBOLTZ ` + * :ref:`LATTE ` + * :ref:`MACHDYN ` * :ref:`MANIFOLD ` + * :ref:`MANYBODY ` + * :ref:`MC ` * :ref:`MDI ` * :ref:`MEAM ` - * :ref:`DPD-MESO ` * :ref:`MESONT ` + * :ref:`MESSAGE ` * :ref:`MGPT ` - * :ref:`USER-MISC ` - * :ref:`MOFFF ` - * :ref:`MOLFILE ` - * :ref:`NETCDF ` - * :ref:`OPENMP ` + * :ref:`MISC ` + * :ref:`ML-HDNNP ` + * :ref:`ML-IAP ` * :ref:`ML-PACE ` - * :ref:`PHONON ` - * :ref:`PLUMED ` - * :ref:`PTM ` - * :ref:`QMMM ` - * :ref:`QTB ` * :ref:`ML-QUIP ` * :ref:`ML-RANN ` + * :ref:`ML-SNAP ` + * :ref:`MOFFF ` + * :ref:`MOLECULE ` + * :ref:`MOLFILE ` + * :ref:`MPIIO ` + * :ref:`MSCG ` + * :ref:`NETCDF ` + * :ref:`OPENMP ` + * :ref:`OPT ` + * :ref:`PERI ` + * :ref:`PHONON ` + * :ref:`PLUGIN ` + * :ref:`PLUMED ` + * :ref:`POEMS ` + * :ref:`PTM ` + * :ref:`PYTHON ` + * :ref:`QEQ ` + * :ref:`QMMM ` + * :ref:`QTB ` * :ref:`REACTION ` * :ref:`REAXFF ` + * :ref:`REPLICA ` + * :ref:`RIGID ` * :ref:`SCAFACOS ` - * :ref:`DPD-SMOOTH ` - * :ref:`MACHDYN ` + * :ref:`SHOCK ` * :ref:`SMTBQ ` * :ref:`SPH ` + * :ref:`SPIN ` + * :ref:`SRD ` * :ref:`TALLY ` * :ref:`UEF ` + * :ref:`VORONOI ` * :ref:`VTK ` * :ref:`YAFF ` + * :ref:`USER-MISC ` + +---------- + +.. _PKG-ADIOS: + +ADIOS package +------------------ + +**Contents:** + +ADIOS is a high-performance I/O library. This package implements the +:doc:`dump atom/adios `, :doc:`dump custom/adios ` and +:doc:`read_dump ... format adios ` +commands to write and read data using the ADIOS library. + +**Authors:** Norbert Podhorszki (ORNL) from the ADIOS developer team. + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/ADIOS: filenames -> commands +* src/ADIOS/README +* examples/PACKAGES/adios +* https://github.com/ornladios/ADIOS2 +* :doc:`dump atom/adios ` +* :doc:`dump custom/adios ` +* :doc:`read_dump ` ---------- @@ -141,6 +166,93 @@ particle models including ellipsoids, 2d lines, and 3d triangles. ---------- +.. _PKG-ATC: + +ATC package +---------------- + +**Contents:** + +ATC stands for atoms-to-continuum. This package implements a :doc:`fix atc ` command to either couple molecular dynamics with +continuum finite element equations or perform on-the-fly conversion of +atomic information to continuum fields. + +**Authors:** Reese Jones, Jeremy Templeton, Jon Zimmerman (Sandia). + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/ATC: filenames -> commands +* src/ATC/README +* :doc:`fix atc ` +* examples/PACKAGES/atc +* https://www.lammps.org/pictures.html#atc + +---------- + +.. _PKG-AWPMD: + +AWPMD package +------------------ + +**Contents:** + +AWPMD stands for Antisymmetrized Wave Packet Molecular Dynamics. This +package implements an atom, pair, and fix style which allows electrons +to be treated as explicit particles in a classical molecular dynamics +model. + +**Author:** Ilya Valuev (JIHT, Russia). + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/AWPMD: filenames -> commands +* src/AWPMD/README +* :doc:`pair_style awpmd/cut ` +* examples/PACKAGES/awpmd + +---------- + +.. _PKG-BOCS: + +BOCS package +----------------- + +**Contents:** + +This package provides :doc:`fix bocs `, a modified version +of :doc:`fix npt ` which includes the pressure correction to +the barostat as outlined in: + +N. J. H. Dunn and W. G. Noid, "Bottom-up coarse-grained models that +accurately describe the structure, pressure, and compressibility of +molecular liquids," J. Chem. Phys. 143, 243148 (2015). + +**Authors:** Nicholas J. H. Dunn and Michael R. DeLyser (The +Pennsylvania State University) + +**Supporting info:** + +The BOCS package for LAMMPS is part of the BOCS software package: +`https://github.com/noid-group/BOCS `_ + +See the following reference for information about the entire package: + +Dunn, NJH; Lebold, KM; DeLyser, MR; Rudzinski, JF; Noid, WG. +"BOCS: Bottom-Up Open-Source Coarse-Graining Software." +J. Phys. Chem. B. 122, 13, 3363-3377 (2018). + +Example inputs are in the examples/PACKAGES/bocs folder. + +---------- + .. _PKG-BODY: BODY package @@ -164,6 +276,79 @@ overview. ---------- +.. _PKG-BROWNIAN: + +BROWNIAN package +--------------------- + +**Contents:** + +This package provides :doc:`fix brownian, fix brownian/sphere, and +fix brownian/asphere ` as well as +:doc:`fix propel/self ` which allow to do Brownian +Dynamics time integration of point, spherical and aspherical particles +and also support self-propelled particles. + +**Authors:** Sam Cameron (University of Bristol), +Stefan Paquay (while at Brandeis University) (initial version of fix propel/self) + +Example inputs are in the examples/PACKAGES/brownian folder. + +---------- + +.. _PKG-CG-DNA: + +CG-DNA package +------------------ + +**Contents:** + +Several pair styles, bond styles, and integration fixes for coarse-grained +modelling of single- and double-stranded DNA and RNA based on the oxDNA and +oxRNA model of Doye, Louis and Ouldridge. The package includes Langevin-type +rigid-body integrators with improved stability. + +**Author:** Oliver Henrich (University of Strathclyde, Glasgow). + +**Supporting info:** + +* src/CG-DNA: filenames -> commands +* /src/CG-DNA/README +* :doc:`pair_style oxdna/\* ` +* :doc:`pair_style oxdna2/\* ` +* :doc:`pair_style oxrna2/\* ` +* :doc:`bond_style oxdna/\* ` +* :doc:`bond_style oxdna2/\* ` +* :doc:`bond_style oxrna2/\* ` +* :doc:`fix nve/dotc/langevin ` + +---------- + +.. _PKG-CG-SDK: + +CG-SDK package +------------------ + +**Contents:** + +Several pair styles and an angle style which implement the +coarse-grained SDK model of Shinoda, DeVane, and Klein which enables +simulation of ionic liquids, electrolytes, lipids and charged amino +acids. + +**Author:** Axel Kohlmeyer (Temple U). + +**Supporting info:** + +* src/CG-SDK: filenames -> commands +* src/CG-SDK/README +* :doc:`pair_style lj/sdk/\* ` +* :doc:`angle_style sdk ` +* examples/PACKAGES/cgsdk +* https://www.lammps.org/pictures.html#cg + +---------- + .. _PKG-CLASS2: CLASS2 package @@ -215,6 +400,41 @@ Higdon's group at UIUC. ---------- +.. _PKG-COLVARS: + +COLVARS package +-------------------- + +**Contents:** + +COLVARS stands for collective variables, which can be used to +implement various enhanced sampling methods, including Adaptive +Biasing Force, Metadynamics, Steered MD, Umbrella Sampling and +Restraints. A :doc:`fix colvars ` command is implemented +which wraps a COLVARS library, which implements these methods. +simulations. + +**Authors:** The COLVARS library is written and maintained by +Giacomo Fiorin (ICMS, Temple University, Philadelphia, PA, USA) +and Jerome Henin (LISM, CNRS, Marseille, France), originally for +the NAMD MD code, but with portability in mind. Axel Kohlmeyer +(Temple U) provided the interface to LAMMPS. + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/COLVARS: filenames -> commands +* `doc/PDF/colvars-refman-lammps.pdf `_ +* src/COLVARS/README +* lib/colvars/README +* :doc:`fix colvars ` +* examples/PACKAGES/colvars + +---------- + .. _PKG-COMPRESS: COMPRESS package @@ -274,6 +494,51 @@ this package. ---------- +.. _PKG-DIELECTRIC: + +DIELECTRIC package +------------------------ + +**Contents:** + +An atom style, multiple pair styles, several fixes, Kspace styles and a +compute for simulating systems using boundary element solvers for +computing the induced charges at the interface between two media with +different dielectric constants. + +**Author:** Trung Nguyen and Monica Olvera de la Cruz (Northwestern U) + +**Supporting info:** + +* src/DIELECTRIC: filenames -> commands +* :doc:`compute efield/atom ` +* TODO: add all styles +* examples/PACKAGES/dielectric + +---------- + +.. _PKG-DIFFRACTION: + +DIFFRACTION package +------------------------ + +**Contents:** + +Two computes and a fix for calculating x-ray and electron diffraction +intensities based on kinematic diffraction theory. + +**Author:** Shawn Coleman while at the U Arkansas. + +**Supporting info:** + +* src/DIFFRACTION: filenames -> commands +* :doc:`compute saed ` +* :doc:`compute xrd ` +* :doc:`fix saed/vtk ` +* examples/PACKAGES/diffraction + +---------- + .. _PKG-DIPOLE: DIPOLE package @@ -295,6 +560,201 @@ short-range or long-range interactions. ---------- +.. _PKG-DPD-MESO: + +DPD-MESO package +-------------------- + +**Contents:** + +Several extensions of the dissipative particle dynamics (DPD) +method. Specifically, energy-conserving DPD (eDPD) that can model +non-isothermal processes, many-body DPD (mDPD) for simulating +vapor-liquid coexistence, and transport DPD (tDPD) for modeling +advection-diffusion-reaction systems. The equations of motion of these +DPD extensions are integrated through a modified velocity-Verlet (MVV) +algorithm. + +**Author:** Zhen Li (Division of Applied Mathematics, Brown University) + +**Supporting info:** + +* src/DPD-MESO: filenames -> commands +* src/DPD-MESO/README +* :doc:`atom_style edpd ` +* :doc:`pair_style edpd ` +* :doc:`pair_style mdpd ` +* :doc:`pair_style tdpd ` +* :doc:`fix mvv/dpd ` +* examples/PACKAGES/mesodpd +* https://www.lammps.org/movies.html#mesodpd + +---------- + +.. _PKG-DPD-REACT: + +DPD-REACT package +----------------- + +**Contents:** + +DPD stands for dissipative particle dynamics. This package implements +coarse-grained DPD-based models for energetic, reactive molecular +crystalline materials. It includes many pair styles specific to these +systems, including for reactive DPD, where each particle has internal +state for multiple species and a coupled set of chemical reaction ODEs +are integrated each timestep. Highly accurate time integrators for +isothermal, isoenergetic, isobaric and isenthalpic conditions are +included. These enable long timesteps via the Shardlow splitting +algorithm. + +**Authors:** Jim Larentzos (ARL), Tim Mattox (Engility Corp), and John +Brennan (ARL). + +**Supporting info:** + +* src/DPD-REACT: filenames -> commands +* /src/DPD-REACT/README +* :doc:`compute dpd ` +* :doc:`compute dpd/atom ` +* :doc:`fix eos/cv ` +* :doc:`fix eos/table ` +* :doc:`fix eos/table/rx ` +* :doc:`fix shardlow ` +* :doc:`fix rx ` +* :doc:`pair_style table/rx ` +* :doc:`pair_style dpd/fdt ` +* :doc:`pair_style dpd/fdt/energy ` +* :doc:`pair_style exp6/rx ` +* :doc:`pair_style multi/lucy ` +* :doc:`pair_style multi/lucy/rx ` +* examples/PACKAGES/dpd-react + +---------- + +.. _PKG-DPD-SMOOTH: + +DPD-SMOOTH package +------------------ + +**Contents:** + +A pair style for smoothed dissipative particle dynamics (SDPD), which +is an extension of smoothed particle hydrodynamics (SPH) to mesoscale +where thermal fluctuations are important (see the +:ref:`SPH package `). +Also two fixes for moving and rigid body integration of SPH/SDPD particles +(particles of atom_style meso). + +**Author:** Morteza Jalalvand (Institute for Advanced Studies in Basic +Sciences, Iran). + +**Supporting info:** + +* src/DPD-SMOOTH: filenames -> commands +* src/DPD-SMOOTH/README +* :doc:`pair_style sdpd/taitwater/isothermal ` +* :doc:`fix meso/move ` +* :doc:`fix rigid/meso ` +* examples/PACKAGES/dpd-smooth + +---------- + +.. _PKG-DRUDE: + +DRUDE package +------------------ + +**Contents:** + +Fixes, pair styles, and a compute to simulate thermalized Drude +oscillators as a model of polarization. See the :doc:`Howto drude ` and :doc:`Howto drude2 ` pages +for an overview of how to use the package. There are auxiliary tools +for using this package in tools/drude. + +**Authors:** Alain Dequidt (U Clermont Auvergne), Julien +Devemy (CNRS), and Agilio Padua (ENS de Lyon). + +**Supporting info:** + +* src/DRUDE: filenames -> commands +* :doc:`Howto drude ` +* :doc:`Howto drude2 ` +* :doc:`Howto polarizable ` +* src/DRUDE/README +* :doc:`fix drude ` +* :doc:`fix drude/transform/\* ` +* :doc:`compute temp/drude ` +* :doc:`pair_style thole ` +* :doc:`pair_style lj/cut/thole/long ` +* examples/PACKAGES/drude +* tools/drude + +---------- + +.. _PKG-EFF: + +EFF package +---------------- + +**Contents:** + +EFF stands for electron force field which allows a classical MD code +to model electrons as particles of variable radius. This package +contains atom, pair, fix and compute styles which implement the eFF as +described in A. Jaramillo-Botero, J. Su, Q. An, and W.A. Goddard III, +JCC, 2010. The eFF potential was first introduced by Su and Goddard, +in 2007. There are auxiliary tools for using this package in +tools/eff; see its README file. + +**Author:** Andres Jaramillo-Botero (CalTech). + +**Supporting info:** + +* src/EFF: filenames -> commands +* src/EFF/README +* :doc:`atom_style electron ` +* :doc:`fix nve/eff ` +* :doc:`fix nvt/eff ` +* :doc:`fix npt/eff ` +* :doc:`fix langevin/eff ` +* :doc:`compute temp/eff ` +* :doc:`pair_style eff/cut ` +* :doc:`pair_style eff/inline ` +* examples/PACKAGES/eff +* tools/eff/README +* tools/eff +* https://www.lammps.org/movies.html#eff + +---------- + +.. _PKG-FEP: + +FEP package +---------------- + +**Contents:** + +FEP stands for free energy perturbation. This package provides +methods for performing FEP simulations by using a :doc:`fix adapt/fep ` command with soft-core pair potentials, +which have a "soft" in their style name. There are auxiliary tools +for using this package in tools/fep; see its README file. + +**Author:** Agilio Padua (ENS de Lyon) + +**Supporting info:** + +* src/FEP: filenames -> commands +* src/FEP/README +* :doc:`fix adapt/fep ` +* :doc:`compute fep ` +* :doc:`pair_style \*/soft ` +* examples/PACKAGES/fep +* tools/fep/README +* tools/fep + +---------- + .. _PKG-GPU: GPU package @@ -367,6 +827,88 @@ potentials. ---------- +.. _PKG-H5MD: + +H5MD package +----------------- + +**Contents:** + +H5MD stands for HDF5 for MD. `HDF5 `_ is a portable, binary, +self-describing file format, used by many scientific simulations. +H5MD is a format for molecular simulations, built on top of HDF5. +This package implements a :doc:`dump h5md ` command to output +LAMMPS snapshots in this format. + +.. _HDF5: http://www.hdfgroup.org/HDF5 + +To use this package you must have the HDF5 library available on your +system. + +**Author:** Pierre de Buyl (KU Leuven) created both the package and the +H5MD format. + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/H5MD: filenames -> commands +* src/H5MD/README +* lib/h5md/README +* :doc:`dump h5md ` + +---------- + +.. _PKG-INTEL: + +INTEL package +------------------ + +**Contents:** + +Dozens of pair, fix, bond, angle, dihedral, improper, and kspace +styles which are optimized for Intel CPUs and KNLs (Knights Landing). +All of them have an "intel" in their style name. The +:doc:`INTEL package ` page gives details of what hardware and +compilers are required on your system, and how to build and use this +package. Its styles can be invoked at run time via the "-sf intel" or +"-suffix intel" :doc:`command-line switches `. Also see +the :ref:`KOKKOS `, :ref:`OPT `, and :ref:`OPENMP ` packages, +which have styles optimized for CPUs and KNLs. + +You need to have an Intel compiler, version 14 or higher to take full +advantage of this package. While compilation with GNU compilers is +supported, performance will be sub-optimal. + +.. note:: + + the INTEL package contains styles that require using the + -restrict flag, when compiling with Intel compilers. + +**Author:** Mike Brown (Intel). + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/INTEL: filenames -> commands +* src/INTEL/README +* :doc:`Accelerator packages ` +* :doc:`INTEL package ` +* :doc:`Section 2.6 -sf intel ` +* :doc:`Section 2.6 -pk intel ` +* :doc:`package intel ` +* Search the :doc:`commands ` pages (:doc:`fix `, :doc:`compute `, + :doc:`pair `, :doc:`bond, angle, dihedral, improper `, :doc:`kspace `) for styles followed by (i) +* src/INTEL/TEST +* `Benchmarks page `_ of web site + +---------- + .. _PKG-KIM: KIM package @@ -521,6 +1063,30 @@ different FFT options for your LAMPMS build. ---------- +.. _PKG-LATBOLTZ: + +LATBOLTZ package +---------------- + +**Contents:** + +Fixes which implement a background Lattice-Boltzmann (LB) fluid, which +can be used to model MD particles influenced by hydrodynamic forces. + +**Authors:** Frances Mackay and Colin Denniston (University of Western +Ontario). + +**Supporting info:** + +* src/LATBOLTZ: filenames -> commands +* src/LATBOLTZ/README +* :doc:`fix lb/fluid ` +* :doc:`fix lb/momentum ` +* :doc:`fix lb/viscous ` +* examples/PACKAGES/latboltz + +---------- + .. _PKG-LATTE: LATTE package @@ -557,6 +1123,75 @@ This package has :ref:`specific installation instructions ` on the :doc:` ---------- +.. _PKG-MACHDYN: + +MACHDYN package +---------------- + +**Contents:** + +An atom style, fixes, computes, and several pair styles which +implements smoothed Mach dynamics (SMD) for solids, which is a model +related to smoothed particle hydrodynamics (SPH) for liquids (see the +:ref:`SPH package `). + +This package solves solids mechanics problems via a state of the art +stabilized meshless method with hourglass control. It can specify +hydrostatic interactions independently from material strength models, +i.e. pressure and deviatoric stresses are separated. It provides many +material models (Johnson-Cook, plasticity with hardening, +Mie-Grueneisen, Polynomial EOS) and allows new material models to be +added. It implements rigid boundary conditions (walls) which can be +specified as surface geometries from \*.STL files. + +**Author:** Georg Ganzenmuller (Fraunhofer-Institute for High-Speed +Dynamics, Ernst Mach Institute, Germany). + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/MACHDYN: filenames -> commands +* src/MACHDYN/README +* doc/PDF/MACHDYN_LAMMPS_userguide.pdf +* examples/PACKAGES/machdyn +* https://www.lammps.org/movies.html#smd + +---------- + +.. _PKG-MANIFOLD: + +MANIFOLD package +--------------------- + +**Contents:** + +Several fixes and a "manifold" class which enable simulations of +particles constrained to a manifold (a 2D surface within the 3D +simulation box). This is done by applying the RATTLE constraint +algorithm to formulate single-particle constraint functions +g(xi,yi,zi) = 0 and their derivative (i.e. the normal of the manifold) +n = grad(g). + +**Author:** Stefan Paquay (until 2017: Eindhoven University of +Technology (TU/e), The Netherlands; since 2017: Brandeis University, +Waltham, MA, USA) + +**Supporting info:** + +* src/MANIFOLD: filenames -> commands +* src/MANIFOLD/README +* :doc:`Howto manifold ` +* :doc:`fix manifoldforce ` +* :doc:`fix nve/manifold/rattle ` +* :doc:`fix nvt/manifold/rattle ` +* examples/PACKAGES/manifold +* https://www.lammps.org/movies.html#manifold + +---------- + .. _PKG-MANYBODY: MANYBODY package @@ -610,1177 +1245,6 @@ bonds, for performing atomic swaps, and performing grand-canonical MC ---------- -.. _PKG-MESSAGE: - -MESSAGE package ---------------- - -**Contents:** - -Commands to use LAMMPS as either a client or server and couple it to -another application. - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/MESSAGE: filenames -> commands -* lib/message/README -* :doc:`message ` -* :doc:`fix client/md ` -* :doc:`server md ` -* :doc:`server mc ` -* examples/message - ----------- - -.. _PKG-MISC: - -MISC package ------------- - -**Contents:** - -A variety of compute, fix, pair, dump styles with specialized -capabilities that don't align with other packages. Do a directory -listing, "ls src/MISC", to see the list of commands. - -.. note:: - - the MISC package contains styles that require using the - -restrict flag, when compiling with Intel compilers. - -**Supporting info:** - -* src/MISC: filenames -> commands -* :doc:`compute ti ` -* :doc:`fix evaporate ` -* :doc:`fix orient/fcc ` -* :doc:`fix ttm ` -* :doc:`fix thermal/conductivity ` -* :doc:`fix viscosity ` -* examples/KAPPA -* examples/VISCOSITY -* https://www.lammps.org/pictures.html#ttm -* https://www.lammps.org/movies.html#evaporation - ----------- - -.. _PKG-ML-IAP: - -ML-IAP package --------------- - -**Contents:** - -A general interface for machine-learning interatomic potentials, including PyTorch. - -**Install:** - -To use this package, also the :ref:`ML-SNAP package ` package needs -to be installed. To make the *mliappy* model available, also the -:ref:`PYTHON package ` package needs to be installed, the version -of Python must be 3.6 or later, and the `cython `_ software -must be installed. - -**Author:** Aidan Thompson (Sandia), Nicholas Lubbers (LANL). - -**Supporting info:** - -* src/ML-IAP: filenames -> commands -* src/ML-IAP/README.md -* :doc:`pair_style mliap ` -* :doc:`compute_style mliap ` -* examples/mliap (see README) - -When built with the *mliappy* model this package includes an extension for -coupling with Python models, including PyTorch. In this case, the Python -interpreter linked to LAMMPS will need the ``cython`` and ``numpy`` modules -installed. The provided examples build models with PyTorch, which would -therefore also needs to be installed to run those examples. - ----------- - -.. _PKG-MOLECULE: - -MOLECULE package ----------------- - -**Contents:** - -A large number of atom, pair, bond, angle, dihedral, improper styles -that are used to model molecular systems with fixed covalent bonds. -The pair styles include the Dreiding (hydrogen-bonding) and CHARMM -force fields, and a TIP4P water model. - -**Supporting info:** - -* src/MOLECULE: filenames -> commands -* :doc:`atom_style ` -* :doc:`bond_style ` -* :doc:`angle_style ` -* :doc:`dihedral_style ` -* :doc:`improper_style ` -* :doc:`pair_style hbond/dreiding/lj ` -* :doc:`pair_style lj/charmm/coul/charmm ` -* :doc:`Howto bioFF ` -* examples/cmap -* examples/dreiding -* examples/micelle, -* examples/peptide -* bench/in.chain -* bench/in.rhodo - ----------- - -.. _PKG-MPIIO: - -MPIIO package -------------- - -**Contents:** - -Support for parallel output/input of dump and restart files via the -MPIIO library. It adds :doc:`dump styles ` with a "mpiio" in -their style name. Restart files with an ".mpiio" suffix are also -written and read in parallel. - -**Supporting info:** - -* src/MPIIO: filenames -> commands -* :doc:`dump ` -* :doc:`restart ` -* :doc:`write_restart ` -* :doc:`read_restart ` - ----------- - -.. _PKG-mscg: - -MSCG package ------------- - -**Contents:** - -A :doc:`fix mscg ` command which can parameterize a -Multi-Scale Coarse-Graining (MSCG) model using the open-source `MS-CG library `_. - -.. _mscg-home: https://github.com/uchicago-voth/MSCG-release - -To use this package you must have the MS-CG library available on your -system. - -**Authors:** The fix was written by Lauren Abbott (Sandia). The MS-CG -library was developed by Jacob Wagner in Greg Voth's group at the -University of Chicago. - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/MSCG: filenames -> commands -* src/MSCG/README -* lib/mscg/README -* examples/mscg - ----------- - -.. _PKG-OPT: - -OPT package ------------ - -**Contents:** - -A handful of pair styles which are optimized for improved CPU -performance on single or multiple cores. These include EAM, LJ, -CHARMM, and Morse potentials. The styles have an "opt" suffix in -their style name. The :doc:`OPT package ` page gives -details of how to build and use this package. Its styles can be -invoked at run time via the "-sf opt" or "-suffix opt" :doc:`command-line switches `. See also the :ref:`KOKKOS `, -:ref:`INTEL `, and :ref:`OPENMP ` packages, which -have styles optimized for CPU performance. - -**Authors:** James Fischer (High Performance Technologies), David Richie, -and Vincent Natoli (Stone Ridge Technology). - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/OPT: filenames -> commands -* :doc:`Accelerator packages ` -* :doc:`OPT package ` -* :doc:`Section 2.6 -sf opt ` -* Search the :doc:`pair style ` page for styles followed by (t) -* `Benchmarks page `_ of web site - ----------- - -.. _PKG-PERI: - -PERI package ------------- - -**Contents:** - -An atom style, several pair styles which implement different -Peridynamics materials models, and several computes which calculate -diagnostics. Peridynamics is a particle-based meshless continuum -model. - -**Authors:** The original package was created by Mike Parks (Sandia). -Additional Peridynamics models were added by Rezwanur Rahman and John -Foster (UTSA). - -**Supporting info:** - -* src/PERI: filenames -> commands -* `doc/PDF/PDLammps_overview.pdf `_ -* `doc/PDF/PDLammps_EPS.pdf `_ -* `doc/PDF/PDLammps_VES.pdf `_ -* :doc:`atom_style peri ` -* :doc:`pair_style peri/\* ` -* :doc:`compute damage/atom ` -* :doc:`compute plasticity/atom ` -* examples/peri -* https://www.lammps.org/movies.html#peri - ----------- - -.. _PKG-PLUGIN: - -PLUGIN package --------------- - -**Contents:** - -A :doc:`plugin ` command that can load and unload several -kind of styles in LAMMPS from shared object files at runtime without -having to recompile and relink LAMMPS. - -**Authors:** Axel Kohlmeyer (Temple U) - -**Supporting info:** - -* src/PLUGIN: filenames -> commands -* :doc:`plugin command ` -* :doc:`Information on writing plugins ` -* examples/plugin - ----------- - -.. _PKG-POEMS: - -POEMS package -------------- - -**Contents:** - -A fix that wraps the Parallelizable Open source Efficient Multibody -Software (POEMS) library, which is able to simulate the dynamics of -articulated body systems. These are systems with multiple rigid -bodies (collections of particles) whose motion is coupled by -connections at hinge points. - -**Author:** Rudra Mukherjee (JPL) while at RPI. - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/POEMS: filenames -> commands -* src/POEMS/README -* lib/poems/README -* :doc:`fix poems ` -* examples/rigid - ----------- - -.. _PKG-PYTHON: - -PYTHON package --------------- - -**Contents:** - -A :doc:`python ` command which allow you to execute Python code -from a LAMMPS input script. The code can be in a separate file or -embedded in the input script itself. See the :doc:`Python call ` page for an overview of using Python from -LAMMPS in this manner and all the :doc:`Python ` manual pages -for other ways to use LAMMPS and Python together. - -.. note:: - - Building with the PYTHON package assumes you have a Python - shared library available on your system, which needs to be a Python 2 - version, 2.6 or later. Python 3 is not yet supported. See the - lib/python/README for more details. - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/PYTHON: filenames -> commands -* :doc:`Python call ` -* lib/python/README -* examples/python - ----------- - -.. _PKG-QEQ: - -QEQ package ------------ - -**Contents:** - -Several fixes for performing charge equilibration (QEq) via different -algorithms. These can be used with pair styles that perform QEq as -part of their formulation. - -**Supporting info:** - -* src/QEQ: filenames -> commands -* :doc:`fix qeq/\* ` -* examples/qeq -* examples/streitz - ----------- - -.. _PKG-REPLICA: - -REPLICA package ---------------- - -**Contents:** - -A collection of multi-replica methods which can be used when running -multiple LAMMPS simulations (replicas). See the :doc:`Howto replica ` page for an overview of how to run -multi-replica simulations in LAMMPS. Methods in the package include -nudged elastic band (NEB), parallel replica dynamics (PRD), -temperature accelerated dynamics (TAD), parallel tempering, and a -verlet/split algorithm for performing long-range Coulombics on one set -of processors, and the remainder of the force field calculation on -another set. - -**Supporting info:** - -* src/REPLICA: filenames -> commands -* :doc:`Howto replica ` -* :doc:`neb ` -* :doc:`prd ` -* :doc:`tad ` -* :doc:`temper `, -* :doc:`run_style verlet/split ` -* examples/neb -* examples/prd -* examples/tad - ----------- - -.. _PKG-RIGID: - -RIGID package -------------- - -**Contents:** - -Fixes which enforce rigid constraints on collections of atoms or -particles. This includes SHAKE and RATTLE, as well as various -rigid-body integrators for a few large bodies or many small bodies. -Also several computes which calculate properties of rigid bodies. - -**Supporting info:** - -* src/RIGID: filenames -> commands -* :doc:`compute erotate/rigid ` -* :doc:`fix shake ` -* :doc:`fix rattle ` -* :doc:`fix rigid/\* ` -* examples/ASPHERE -* examples/rigid -* bench/in.rhodo -* https://www.lammps.org/movies.html#box -* https://www.lammps.org/movies.html#star - ----------- - -.. _PKG-SHOCK: - -SHOCK package -------------- - -**Contents:** - -Fixes for running impact simulations where a shock-wave passes through -a material. - -**Supporting info:** - -* src/SHOCK: filenames -> commands -* :doc:`fix append/atoms ` -* :doc:`fix msst ` -* :doc:`fix nphug ` -* :doc:`fix wall/piston ` -* examples/hugoniostat -* examples/msst - ----------- - -.. _PKG-ML-SNAP: - -ML-SNAP package ---------------- - -**Contents:** - -A pair style for the spectral neighbor analysis potential (SNAP). -SNAP is methodology for deriving a highly accurate classical potential -fit to a large archive of quantum mechanical (DFT) data. Also several -computes which analyze attributes of the potential. - -**Author:** Aidan Thompson (Sandia). - -**Supporting info:** - -* src/ML-SNAP: filenames -> commands -* :doc:`pair_style snap ` -* :doc:`compute sna/atom ` -* :doc:`compute snad/atom ` -* :doc:`compute snav/atom ` -* examples/snap - ----------- - -.. _PKG-SPIN: - -SPIN package ------------- - -**Contents:** - -Model atomic magnetic spins classically, coupled to atoms moving in -the usual manner via MD. Various pair, fix, and compute styles. - -**Author:** Julien Tranchida (Sandia). - -**Supporting info:** - -* src/SPIN: filenames -> commands -* :doc:`Howto spins ` -* :doc:`pair_style spin/dipole/cut ` -* :doc:`pair_style spin/dipole/long ` -* :doc:`pair_style spin/dmi ` -* :doc:`pair_style spin/exchange ` -* :doc:`pair_style spin/exchange/biquadratic ` -* :doc:`pair_style spin/magelec ` -* :doc:`pair_style spin/neel ` -* :doc:`fix nve/spin ` -* :doc:`fix langevin/spin ` -* :doc:`fix precession/spin ` -* :doc:`compute spin ` -* :doc:`neb/spin ` -* examples/SPIN - ----------- - -.. _PKG-SRD: - -SRD package ------------ - -**Contents:** - -A pair of fixes which implement the Stochastic Rotation Dynamics (SRD) -method for coarse-graining of a solvent, typically around large -colloidal particles. - -**Supporting info:** - -* src/SRD: filenames -> commands -* :doc:`fix srd ` -* :doc:`fix wall/srd ` -* examples/srd -* examples/ASPHERE -* https://www.lammps.org/movies.html#tri -* https://www.lammps.org/movies.html#line -* https://www.lammps.org/movies.html#poly - ----------- - -.. _PKG-VORONOI: - -VORONOI package ---------------- - -**Contents:** - -A compute command which calculates the Voronoi tesselation of a -collection of atoms by wrapping the `Voro++ library `_. This -can be used to calculate the local volume or each atoms or its near -neighbors. - -.. _voro-home: http://math.lbl.gov/voro++ - -To use this package you must have the Voro++ library available on your -system. - -**Author:** Daniel Schwen (INL) while at LANL. The open-source Voro++ -library was written by Chris Rycroft (Harvard U) while at UC Berkeley -and LBNL. - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/VORONOI: filenames -> commands -* src/VORONOI/README -* lib/voronoi/README -* :doc:`compute voronoi/atom ` -* examples/voronoi - ----------- - -.. _PKG-ADIOS: - -ADIOS package ------------------- - -**Contents:** - -ADIOS is a high-performance I/O library. This package implements the -:doc:`dump atom/adios `, :doc:`dump custom/adios ` and -:doc:`read_dump ... format adios ` -commands to write and read data using the ADIOS library. - -**Authors:** Norbert Podhorszki (ORNL) from the ADIOS developer team. - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/ADIOS: filenames -> commands -* src/ADIOS/README -* examples/PACKAGES/adios -* https://github.com/ornladios/ADIOS2 -* :doc:`dump atom/adios ` -* :doc:`dump custom/adios ` -* :doc:`read_dump ` - ----------- - -.. _PKG-ATC: - -ATC package ----------------- - -**Contents:** - -ATC stands for atoms-to-continuum. This package implements a :doc:`fix atc ` command to either couple molecular dynamics with -continuum finite element equations or perform on-the-fly conversion of -atomic information to continuum fields. - -**Authors:** Reese Jones, Jeremy Templeton, Jon Zimmerman (Sandia). - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/ATC: filenames -> commands -* src/ATC/README -* :doc:`fix atc ` -* examples/PACKAGES/atc -* https://www.lammps.org/pictures.html#atc - ----------- - -.. _PKG-AWPMD: - -AWPMD package ------------------- - -**Contents:** - -AWPMD stands for Antisymmetrized Wave Packet Molecular Dynamics. This -package implements an atom, pair, and fix style which allows electrons -to be treated as explicit particles in a classical molecular dynamics -model. - -**Author:** Ilya Valuev (JIHT, Russia). - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/AWPMD: filenames -> commands -* src/AWPMD/README -* :doc:`pair_style awpmd/cut ` -* examples/PACKAGES/awpmd - ----------- - -.. _PKG-BOCS: - -BOCS package ------------------ - -**Contents:** - -This package provides :doc:`fix bocs `, a modified version -of :doc:`fix npt ` which includes the pressure correction to -the barostat as outlined in: - -N. J. H. Dunn and W. G. Noid, "Bottom-up coarse-grained models that -accurately describe the structure, pressure, and compressibility of -molecular liquids," J. Chem. Phys. 143, 243148 (2015). - -**Authors:** Nicholas J. H. Dunn and Michael R. DeLyser (The -Pennsylvania State University) - -**Supporting info:** - -The BOCS user package for LAMMPS is part of the BOCS software package: -`https://github.com/noid-group/BOCS `_ - -See the following reference for information about the entire package: - -Dunn, NJH; Lebold, KM; DeLyser, MR; Rudzinski, JF; Noid, WG. -"BOCS: Bottom-Up Open-Source Coarse-Graining Software." -J. Phys. Chem. B. 122, 13, 3363-3377 (2018). - -Example inputs are in the examples/PACKAGES/bocs folder. - ----------- - -.. _PKG-BROWNIAN: - -BROWNIAN package ---------------------- - -**Contents:** - -This package provides :doc:`fix brownian, fix brownian/sphere, and -fix brownian/asphere ` as well as -:doc:`fix propel/self ` which allow to do Brownian -Dynamics time integration of point, spherical and aspherical particles -and also support self-propelled particles. - -**Authors:** Sam Cameron (University of Bristol), -Stefan Paquay (while at Brandeis University) (initial version of fix propel/self) - -Example inputs are in the examples/PACKAGES/brownian folder. - ----------- - -.. _PKG-CG-DNA: - -CG-DNA package ------------------- - -**Contents:** - -Several pair styles, bond styles, and integration fixes for coarse-grained -modelling of single- and double-stranded DNA and RNA based on the oxDNA and -oxRNA model of Doye, Louis and Ouldridge. The package includes Langevin-type -rigid-body integrators with improved stability. - -**Author:** Oliver Henrich (University of Strathclyde, Glasgow). - -**Supporting info:** - -* src/CG-DNA: filenames -> commands -* /src/CG-DNA/README -* :doc:`pair_style oxdna/\* ` -* :doc:`pair_style oxdna2/\* ` -* :doc:`pair_style oxrna2/\* ` -* :doc:`bond_style oxdna/\* ` -* :doc:`bond_style oxdna2/\* ` -* :doc:`bond_style oxrna2/\* ` -* :doc:`fix nve/dotc/langevin ` - ----------- - -.. _PKG-CG-SDK: - -CG-SDK package ------------------- - -**Contents:** - -Several pair styles and an angle style which implement the -coarse-grained SDK model of Shinoda, DeVane, and Klein which enables -simulation of ionic liquids, electrolytes, lipids and charged amino -acids. - -**Author:** Axel Kohlmeyer (Temple U). - -**Supporting info:** - -* src/CG-SDK: filenames -> commands -* src/CG-SDK/README -* :doc:`pair_style lj/sdk/\* ` -* :doc:`angle_style sdk ` -* examples/PACKAGES/cgsdk -* https://www.lammps.org/pictures.html#cg - ----------- - -.. _PKG-COLVARS: - -COLVARS package --------------------- - -**Contents:** - -COLVARS stands for collective variables, which can be used to -implement various enhanced sampling methods, including Adaptive -Biasing Force, Metadynamics, Steered MD, Umbrella Sampling and -Restraints. A :doc:`fix colvars ` command is implemented -which wraps a COLVARS library, which implements these methods. -simulations. - -**Authors:** The COLVARS library is written and maintained by -Giacomo Fiorin (ICMS, Temple University, Philadelphia, PA, USA) -and Jerome Henin (LISM, CNRS, Marseille, France), originally for -the NAMD MD code, but with portability in mind. Axel Kohlmeyer -(Temple U) provided the interface to LAMMPS. - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/COLVARS: filenames -> commands -* `doc/PDF/colvars-refman-lammps.pdf `_ -* src/COLVARS/README -* lib/colvars/README -* :doc:`fix colvars ` -* examples/PACKAGES/colvars - ----------- - -.. _PKG-DIELECTRIC: - -DIELECTRIC package ------------------------- - -**Contents:** - -An atom style, multiple pair styles, several fixes, Kspace styles and a -compute for simulating systems using boundary element solvers for -computing the induced charges at the interface between two media with -different dielectric constants. - -**Author:** Trung Nguyen and Monica Olvera de la Cruz (Northwestern U) - -**Supporting info:** - -* src/DIELECTRIC: filenames -> commands -* :doc:`compute efield/atom ` -* TODO: add all styles -* examples/PACKAGES/dielectric - ----------- - -.. _PKG-DIFFRACTION: - -DIFFRACTION package ------------------------- - -**Contents:** - -Two computes and a fix for calculating x-ray and electron diffraction -intensities based on kinematic diffraction theory. - -**Author:** Shawn Coleman while at the U Arkansas. - -**Supporting info:** - -* src/DIFFRACTION: filenames -> commands -* :doc:`compute saed ` -* :doc:`compute xrd ` -* :doc:`fix saed/vtk ` -* examples/PACKAGES/diffraction - ----------- - -.. _PKG-DPD-REACT: - -DPD-REACT package ----------------- - -**Contents:** - -DPD stands for dissipative particle dynamics. This package implements -coarse-grained DPD-based models for energetic, reactive molecular -crystalline materials. It includes many pair styles specific to these -systems, including for reactive DPD, where each particle has internal -state for multiple species and a coupled set of chemical reaction ODEs -are integrated each timestep. Highly accurate time integrators for -isothermal, isoenergetic, isobaric and isenthalpic conditions are -included. These enable long timesteps via the Shardlow splitting -algorithm. - -**Authors:** Jim Larentzos (ARL), Tim Mattox (Engility Corp), and John -Brennan (ARL). - -**Supporting info:** - -* src/DPD-REACT: filenames -> commands -* /src/DPD-REACT/README -* :doc:`compute dpd ` -* :doc:`compute dpd/atom ` -* :doc:`fix eos/cv ` -* :doc:`fix eos/table ` -* :doc:`fix eos/table/rx ` -* :doc:`fix shardlow ` -* :doc:`fix rx ` -* :doc:`pair_style table/rx ` -* :doc:`pair_style dpd/fdt ` -* :doc:`pair_style dpd/fdt/energy ` -* :doc:`pair_style exp6/rx ` -* :doc:`pair_style multi/lucy ` -* :doc:`pair_style multi/lucy/rx ` -* examples/PACKAGES/dpd-react - ----------- - -.. _PKG-DRUDE: - -DRUDE package ------------------- - -**Contents:** - -Fixes, pair styles, and a compute to simulate thermalized Drude -oscillators as a model of polarization. See the :doc:`Howto drude ` and :doc:`Howto drude2 ` pages -for an overview of how to use the package. There are auxiliary tools -for using this package in tools/drude. - -**Authors:** Alain Dequidt (U Clermont Auvergne), Julien -Devemy (CNRS), and Agilio Padua (ENS de Lyon). - -**Supporting info:** - -* src/DRUDE: filenames -> commands -* :doc:`Howto drude ` -* :doc:`Howto drude2 ` -* :doc:`Howto polarizable ` -* src/DRUDE/README -* :doc:`fix drude ` -* :doc:`fix drude/transform/\* ` -* :doc:`compute temp/drude ` -* :doc:`pair_style thole ` -* :doc:`pair_style lj/cut/thole/long ` -* examples/PACKAGES/drude -* tools/drude - ----------- - -.. _PKG-EFF: - -EFF package ----------------- - -**Contents:** - -EFF stands for electron force field which allows a classical MD code -to model electrons as particles of variable radius. This package -contains atom, pair, fix and compute styles which implement the eFF as -described in A. Jaramillo-Botero, J. Su, Q. An, and W.A. Goddard III, -JCC, 2010. The eFF potential was first introduced by Su and Goddard, -in 2007. There are auxiliary tools for using this package in -tools/eff; see its README file. - -**Author:** Andres Jaramillo-Botero (CalTech). - -**Supporting info:** - -* src/EFF: filenames -> commands -* src/EFF/README -* :doc:`atom_style electron ` -* :doc:`fix nve/eff ` -* :doc:`fix nvt/eff ` -* :doc:`fix npt/eff ` -* :doc:`fix langevin/eff ` -* :doc:`compute temp/eff ` -* :doc:`pair_style eff/cut ` -* :doc:`pair_style eff/inline ` -* examples/PACKAGES/eff -* tools/eff/README -* tools/eff -* https://www.lammps.org/movies.html#eff - ----------- - -.. _PKG-FEP: - -FEP package ----------------- - -**Contents:** - -FEP stands for free energy perturbation. This package provides -methods for performing FEP simulations by using a :doc:`fix adapt/fep ` command with soft-core pair potentials, -which have a "soft" in their style name. There are auxiliary tools -for using this package in tools/fep; see its README file. - -**Author:** Agilio Padua (ENS de Lyon) - -**Supporting info:** - -* src/FEP: filenames -> commands -* src/FEP/README -* :doc:`fix adapt/fep ` -* :doc:`compute fep ` -* :doc:`pair_style \*/soft ` -* examples/PACKAGES/fep -* tools/fep/README -* tools/fep - ----------- - -.. _PKG-H5MD: - -H5MD package ------------------ - -**Contents:** - -H5MD stands for HDF5 for MD. `HDF5 `_ is a portable, binary, -self-describing file format, used by many scientific simulations. -H5MD is a format for molecular simulations, built on top of HDF5. -This package implements a :doc:`dump h5md ` command to output -LAMMPS snapshots in this format. - -.. _HDF5: http://www.hdfgroup.org/HDF5 - -To use this package you must have the HDF5 library available on your -system. - -**Author:** Pierre de Buyl (KU Leuven) created both the package and the -H5MD format. - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/H5MD: filenames -> commands -* src/H5MD/README -* lib/h5md/README -* :doc:`dump h5md ` - ----------- - -.. _PKG-ML-HDNNP: - -ML-HDNNP package ------------------- - -**Contents:** - -A :doc:`pair_style hdnnp ` command which allows to use -high-dimensional neural network potentials (HDNNPs), a form of machine learning -potentials. HDNNPs must be carefully trained prior to their application in a -molecular dynamics simulation. - -.. _n2p2: https://github.com/CompPhysVienna/n2p2 - -To use this package you must have the `n2p2 `_ library installed and -compiled on your system. - -**Author:** Andreas Singraber - -**Install:** - -This package has :ref:`specific installation instructions ` on the -:doc:`Build extras ` page. - -**Supporting info:** - -* src/ML-HDNNP: filenames -> commands -* src/ML-HDNNP/README -* lib/hdnnp/README -* :doc:`pair_style hdnnp ` -* examples/PACKAGES/hdnnp - ----------- - -.. _PKG-INTEL: - -INTEL package ------------------- - -**Contents:** - -Dozens of pair, fix, bond, angle, dihedral, improper, and kspace -styles which are optimized for Intel CPUs and KNLs (Knights Landing). -All of them have an "intel" in their style name. The -:doc:`INTEL package ` page gives details of what hardware and -compilers are required on your system, and how to build and use this -package. Its styles can be invoked at run time via the "-sf intel" or -"-suffix intel" :doc:`command-line switches `. Also see -the :ref:`KOKKOS `, :ref:`OPT `, and :ref:`OPENMP ` packages, -which have styles optimized for CPUs and KNLs. - -You need to have an Intel compiler, version 14 or higher to take full -advantage of this package. While compilation with GNU compilers is -supported, performance will be sub-optimal. - -.. note:: - - the INTEL package contains styles that require using the - -restrict flag, when compiling with Intel compilers. - -**Author:** Mike Brown (Intel). - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/INTEL: filenames -> commands -* src/INTEL/README -* :doc:`Accelerator packages ` -* :doc:`INTEL package ` -* :doc:`Section 2.6 -sf intel ` -* :doc:`Section 2.6 -pk intel ` -* :doc:`package intel ` -* Search the :doc:`commands ` pages (:doc:`fix `, :doc:`compute `, - :doc:`pair `, :doc:`bond, angle, dihedral, improper `, :doc:`kspace `) for styles followed by (i) -* src/INTEL/TEST -* `Benchmarks page `_ of web site - ----------- - -.. _PKG-LATBOLTZ: - -LATBOLTZ package ---------------- - -**Contents:** - -Fixes which implement a background Lattice-Boltzmann (LB) fluid, which -can be used to model MD particles influenced by hydrodynamic forces. - -**Authors:** Frances Mackay and Colin Denniston (University of Western -Ontario). - -**Supporting info:** - -* src/LATBOLTZ: filenames -> commands -* src/LATBOLTZ/README -* :doc:`fix lb/fluid ` -* :doc:`fix lb/momentum ` -* :doc:`fix lb/viscous ` -* examples/PACKAGES/latboltz - ----------- - -.. _PKG-MGPT: - -MGPT package ------------------ - -**Contents:** - -A pair style which provides a fast implementation of the quantum-based -MGPT multi-ion potentials. The MGPT or model GPT method derives from -first-principles DFT-based generalized pseudopotential theory (GPT) -through a series of systematic approximations valid for mid-period -transition metals with nearly half-filled d bands. The MGPT method -was originally developed by John Moriarty at LLNL. The pair style in -this package calculates forces and energies using an optimized -matrix-MGPT algorithm due to Tomas Oppelstrup at LLNL. - -**Authors:** Tomas Oppelstrup and John Moriarty (LLNL). - -**Supporting info:** - -* src/MGPT: filenames -> commands -* src/MGPT/README -* :doc:`pair_style mgpt ` -* examples/PACKAGES/mgpt - ----------- - -.. _PKG-USER-MISC: - -USER-MISC package ------------------ - -**Contents:** - -A potpourri of (mostly) unrelated features contributed to LAMMPS by -users. Each feature is a single fix, compute, pair, bond, angle, -dihedral, improper, or command style. - -**Authors:** The author for each style in the package is listed in the -src/USER-MISC/README file. - -**Supporting info:** - -* src/USER-MISC: filenames -> commands -* src/USER-MISC/README -* one page per individual command listed in src/USER-MISC/README -* examples/USER-MISC - ----------- - -.. _PKG-MANIFOLD: - -MANIFOLD package ---------------------- - -**Contents:** - -Several fixes and a "manifold" class which enable simulations of -particles constrained to a manifold (a 2D surface within the 3D -simulation box). This is done by applying the RATTLE constraint -algorithm to formulate single-particle constraint functions -g(xi,yi,zi) = 0 and their derivative (i.e. the normal of the manifold) -n = grad(g). - -**Author:** Stefan Paquay (until 2017: Eindhoven University of -Technology (TU/e), The Netherlands; since 2017: Brandeis University, -Waltham, MA, USA) - -**Supporting info:** - -* src/MANIFOLD: filenames -> commands -* src/MANIFOLD/README -* :doc:`Howto manifold ` -* :doc:`fix manifoldforce ` -* :doc:`fix nve/manifold/rattle ` -* :doc:`fix nvt/manifold/rattle ` -* examples/PACKAGES/manifold -* https://www.lammps.org/movies.html#manifold - ----------- - .. _PKG-MDI: MDI package @@ -1828,37 +1292,6 @@ Sandia. ---------- -.. _PKG-DPD-MESO: - -DPD-MESO package --------------------- - -**Contents:** - -Several extensions of the dissipative particle dynamics (DPD) -method. Specifically, energy-conserving DPD (eDPD) that can model -non-isothermal processes, many-body DPD (mDPD) for simulating -vapor-liquid coexistence, and transport DPD (tDPD) for modeling -advection-diffusion-reaction systems. The equations of motion of these -DPD extensions are integrated through a modified velocity-Verlet (MVV) -algorithm. - -**Author:** Zhen Li (Division of Applied Mathematics, Brown University) - -**Supporting info:** - -* src/DPD-MESO: filenames -> commands -* src/DPD-MESO/README -* :doc:`atom_style edpd ` -* :doc:`pair_style edpd ` -* :doc:`pair_style mdpd ` -* :doc:`pair_style tdpd ` -* :doc:`fix mvv/dpd ` -* examples/PACKAGES/mesodpd -* https://www.lammps.org/movies.html#mesodpd - ----------- - .. _PKG-MESONT: MESONT package @@ -1906,6 +1339,284 @@ Philipp Kloza (U Cambridge) ---------- +.. _PKG-MESSAGE: + +MESSAGE package +--------------- + +**Contents:** + +Commands to use LAMMPS as either a client or server and couple it to +another application. + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/MESSAGE: filenames -> commands +* lib/message/README +* :doc:`message ` +* :doc:`fix client/md ` +* :doc:`server md ` +* :doc:`server mc ` +* examples/message + +---------- + +.. _PKG-MGPT: + +MGPT package +----------------- + +**Contents:** + +A pair style which provides a fast implementation of the quantum-based +MGPT multi-ion potentials. The MGPT or model GPT method derives from +first-principles DFT-based generalized pseudopotential theory (GPT) +through a series of systematic approximations valid for mid-period +transition metals with nearly half-filled d bands. The MGPT method +was originally developed by John Moriarty at LLNL. The pair style in +this package calculates forces and energies using an optimized +matrix-MGPT algorithm due to Tomas Oppelstrup at LLNL. + +**Authors:** Tomas Oppelstrup and John Moriarty (LLNL). + +**Supporting info:** + +* src/MGPT: filenames -> commands +* src/MGPT/README +* :doc:`pair_style mgpt ` +* examples/PACKAGES/mgpt + +---------- + +.. _PKG-MISC: + +MISC package +------------ + +**Contents:** + +A variety of compute, fix, pair, dump styles with specialized +capabilities that don't align with other packages. Do a directory +listing, "ls src/MISC", to see the list of commands. + +.. note:: + + the MISC package contains styles that require using the + -restrict flag, when compiling with Intel compilers. + +**Supporting info:** + +* src/MISC: filenames -> commands +* :doc:`compute ti ` +* :doc:`fix evaporate ` +* :doc:`fix orient/fcc ` +* :doc:`fix ttm ` +* :doc:`fix thermal/conductivity ` +* :doc:`fix viscosity ` +* examples/KAPPA +* examples/VISCOSITY +* https://www.lammps.org/pictures.html#ttm +* https://www.lammps.org/movies.html#evaporation + +---------- + +.. _PKG-ML-HDNNP: + +ML-HDNNP package +------------------ + +**Contents:** + +A :doc:`pair_style hdnnp ` command which allows to use +high-dimensional neural network potentials (HDNNPs), a form of machine learning +potentials. HDNNPs must be carefully trained prior to their application in a +molecular dynamics simulation. + +.. _n2p2: https://github.com/CompPhysVienna/n2p2 + +To use this package you must have the `n2p2 `_ library installed and +compiled on your system. + +**Author:** Andreas Singraber + +**Install:** + +This package has :ref:`specific installation instructions ` on the +:doc:`Build extras ` page. + +**Supporting info:** + +* src/ML-HDNNP: filenames -> commands +* src/ML-HDNNP/README +* lib/hdnnp/README +* :doc:`pair_style hdnnp ` +* examples/PACKAGES/hdnnp + +---------- + +.. _PKG-ML-IAP: + +ML-IAP package +-------------- + +**Contents:** + +A general interface for machine-learning interatomic potentials, including PyTorch. + +**Install:** + +To use this package, also the :ref:`ML-SNAP package ` package needs +to be installed. To make the *mliappy* model available, also the +:ref:`PYTHON package ` package needs to be installed, the version +of Python must be 3.6 or later, and the `cython `_ software +must be installed. + +**Author:** Aidan Thompson (Sandia), Nicholas Lubbers (LANL). + +**Supporting info:** + +* src/ML-IAP: filenames -> commands +* src/ML-IAP/README.md +* :doc:`pair_style mliap ` +* :doc:`compute_style mliap ` +* examples/mliap (see README) + +When built with the *mliappy* model this package includes an extension for +coupling with Python models, including PyTorch. In this case, the Python +interpreter linked to LAMMPS will need the ``cython`` and ``numpy`` modules +installed. The provided examples build models with PyTorch, which would +therefore also needs to be installed to run those examples. + +---------- + +.. _PKG-ML-PACE: + +ML-PACE package +------------------- + +**Contents:** + +A pair style for the Atomic Cluster Expansion potential (ACE). +ACE is a methodology for deriving a highly accurate classical potential +fit to a large archive of quantum mechanical (DFT) data. The ML-PACE +package provides an efficient implementation for running simulations +with ACE potentials. + +**Authors:** + +This package was written by Yury Lysogorskiy^1, +Cas van der Oord^2, Anton Bochkarev^1, +Sarath Menon^1, Matteo Rinaldi^1, Thomas Hammerschmidt^1, Matous Mrovec^1, +Aidan Thompson^3, Gabor Csanyi^2, Christoph Ortner^4, Ralf Drautz^1. + + ^1: Ruhr-University Bochum, Bochum, Germany + + ^2: University of Cambridge, Cambridge, United Kingdom + + ^3: Sandia National Laboratories, Albuquerque, New Mexico, USA + + ^4: University of British Columbia, Vancouver, BC, Canada + +**Install:** + +This package has :ref:`specific installation instructions ` on the +:doc:`Build extras ` page. + +**Supporting info:** + +* src/ML-PACE: filenames -> commands +* :doc:`pair_style pace ` +* examples/PACKAGES/pace + +---------- + +.. _PKG-ML-QUIP: + +ML-QUIP package +----------------- + +**Contents:** + +A :doc:`pair_style quip ` command which wraps the `QUIP +libAtoms library `_, which includes a variety of interatomic +potentials, including Gaussian Approximation Potential (GAP) models +developed by the Cambridge University group. + +.. _quip: https://github.com/libAtoms/QUIP + +To use this package you must have the QUIP libAtoms library available +on your system. + +**Author:** Albert Bartok (Cambridge University) + +**Install:** + +This package has :ref:`specific installation instructions ` on the +:doc:`Build extras ` page. + +**Supporting info:** + +* src/ML-QUIP: filenames -> commands +* src/ML-QUIP/README +* :doc:`pair_style quip ` +* examples/PACKAGES/quip + +---------- + +.. _PKG-ML-RANN: + +ML-RANN package +----------------- + +**Contents:** + +A pair style for using rapid atomistic neural network (RANN) potentials. +These neural network potentials work by first generating a series of symmetry +functions from the neighbor list and then using these values as the input layer +of a neural network. + +**Authors:** + +This package was written by Christopher Barrett +with contributions by Doyl Dickel, Mississippi State University. + +**Supporting info:** + +* src/ML-RANN: filenames -> commands +* :doc:`pair_style rann ` +* examples/PACKAGES/rann + +---------- + +.. _PKG-ML-SNAP: + +ML-SNAP package +--------------- + +**Contents:** + +A pair style for the spectral neighbor analysis potential (SNAP). +SNAP is methodology for deriving a highly accurate classical potential +fit to a large archive of quantum mechanical (DFT) data. Also several +computes which analyze attributes of the potential. + +**Author:** Aidan Thompson (Sandia). + +**Supporting info:** + +* src/ML-SNAP: filenames -> commands +* :doc:`pair_style snap ` +* :doc:`compute sna/atom ` +* :doc:`compute snad/atom ` +* :doc:`compute snav/atom ` +* examples/snap + +---------- + .. _PKG-MOFFF: MOFFF package @@ -1939,6 +1650,38 @@ Rochus Schmid (Ruhr-University Bochum). ---------- +.. _PKG-MOLECULE: + +MOLECULE package +---------------- + +**Contents:** + +A large number of atom, pair, bond, angle, dihedral, improper styles +that are used to model molecular systems with fixed covalent bonds. +The pair styles include the Dreiding (hydrogen-bonding) and CHARMM +force fields, and a TIP4P water model. + +**Supporting info:** + +* src/MOLECULE: filenames -> commands +* :doc:`atom_style ` +* :doc:`bond_style ` +* :doc:`angle_style ` +* :doc:`dihedral_style ` +* :doc:`improper_style ` +* :doc:`pair_style hbond/dreiding/lj ` +* :doc:`pair_style lj/charmm/coul/charmm ` +* :doc:`Howto bioFF ` +* examples/cmap +* examples/dreiding +* examples/micelle, +* examples/peptide +* bench/in.chain +* bench/in.rhodo + +---------- + .. _PKG-MOLFILE: MOLFILE package @@ -1981,6 +1724,60 @@ This package has :ref:`specific installation instructions ` on the :doc ---------- +.. _PKG-MPIIO: + +MPIIO package +------------- + +**Contents:** + +Support for parallel output/input of dump and restart files via the +MPIIO library. It adds :doc:`dump styles ` with a "mpiio" in +their style name. Restart files with an ".mpiio" suffix are also +written and read in parallel. + +**Supporting info:** + +* src/MPIIO: filenames -> commands +* :doc:`dump ` +* :doc:`restart ` +* :doc:`write_restart ` +* :doc:`read_restart ` + +---------- + +.. _PKG-MSCG: + +MSCG package +------------ + +**Contents:** + +A :doc:`fix mscg ` command which can parameterize a +Multi-Scale Coarse-Graining (MSCG) model using the open-source `MS-CG library `_. + +.. _mscg-home: https://github.com/uchicago-voth/MSCG-release + +To use this package you must have the MS-CG library available on your +system. + +**Authors:** The fix was written by Lauren Abbott (Sandia). The MS-CG +library was developed by Jacob Wagner in Greg Voth's group at the +University of Chicago. + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/MSCG: filenames -> commands +* src/MSCG/README +* lib/mscg/README +* examples/mscg + +---------- + .. _PKG-NETCDF: NETCDF package @@ -2076,44 +1873,68 @@ the :doc:`Build extras ` page. ---------- -.. _PKG-ML-PACE: +.. _PKG-OPT: -ML-PACE package -------------------- +OPT package +----------- **Contents:** -A pair style for the Atomic Cluster Expansion potential (ACE). -ACE is a methodology for deriving a highly accurate classical potential -fit to a large archive of quantum mechanical (DFT) data. The ML-PACE -package provides an efficient implementation for running simulations -with ACE potentials. +A handful of pair styles which are optimized for improved CPU +performance on single or multiple cores. These include EAM, LJ, +CHARMM, and Morse potentials. The styles have an "opt" suffix in +their style name. The :doc:`OPT package ` page gives +details of how to build and use this package. Its styles can be +invoked at run time via the "-sf opt" or "-suffix opt" :doc:`command-line switches `. See also the :ref:`KOKKOS `, +:ref:`INTEL `, and :ref:`OPENMP ` packages, which +have styles optimized for CPU performance. -**Authors:** - -This package was written by Yury Lysogorskiy^1, -Cas van der Oord^2, Anton Bochkarev^1, -Sarath Menon^1, Matteo Rinaldi^1, Thomas Hammerschmidt^1, Matous Mrovec^1, -Aidan Thompson^3, Gabor Csanyi^2, Christoph Ortner^4, Ralf Drautz^1. - - ^1: Ruhr-University Bochum, Bochum, Germany - - ^2: University of Cambridge, Cambridge, United Kingdom - - ^3: Sandia National Laboratories, Albuquerque, New Mexico, USA - - ^4: University of British Columbia, Vancouver, BC, Canada +**Authors:** James Fischer (High Performance Technologies), David Richie, +and Vincent Natoli (Stone Ridge Technology). **Install:** -This package has :ref:`specific installation instructions ` on the -:doc:`Build extras ` page. +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. **Supporting info:** -* src/ML-PACE: filenames -> commands -* :doc:`pair_style pace ` -* examples/PACKAGES/pace +* src/OPT: filenames -> commands +* :doc:`Accelerator packages ` +* :doc:`OPT package ` +* :doc:`Section 2.6 -sf opt ` +* Search the :doc:`pair style ` page for styles followed by (t) +* `Benchmarks page `_ of web site + +---------- + +.. _PKG-PERI: + +PERI package +------------ + +**Contents:** + +An atom style, several pair styles which implement different +Peridynamics materials models, and several computes which calculate +diagnostics. Peridynamics is a particle-based meshless continuum +model. + +**Authors:** The original package was created by Mike Parks (Sandia). +Additional Peridynamics models were added by Rezwanur Rahman and John +Foster (UTSA). + +**Supporting info:** + +* src/PERI: filenames -> commands +* `doc/PDF/PDLammps_overview.pdf `_ +* `doc/PDF/PDLammps_EPS.pdf `_ +* `doc/PDF/PDLammps_VES.pdf `_ +* :doc:`atom_style peri ` +* :doc:`pair_style peri/\* ` +* :doc:`compute damage/atom ` +* :doc:`compute plasticity/atom ` +* examples/peri +* https://www.lammps.org/movies.html#peri ---------- @@ -2145,6 +1966,28 @@ and Charlie Sievers (UC Davis) for "dynamical_matrix" and "third_order" ---------- +.. _PKG-PLUGIN: + +PLUGIN package +-------------- + +**Contents:** + +A :doc:`plugin ` command that can load and unload several +kind of styles in LAMMPS from shared object files at runtime without +having to recompile and relink LAMMPS. + +**Authors:** Axel Kohlmeyer (Temple U) + +**Supporting info:** + +* src/PLUGIN: filenames -> commands +* :doc:`plugin command ` +* :doc:`Information on writing plugins ` +* examples/plugin + +---------- + .. _PKG-PLUMED: PLUMED package @@ -2174,6 +2017,35 @@ This package has :ref:`specific installation instructions ` on the :doc: ---------- +.. _PKG-POEMS: + +POEMS package +------------- + +**Contents:** + +A fix that wraps the Parallelizable Open source Efficient Multibody +Software (POEMS) library, which is able to simulate the dynamics of +articulated body systems. These are systems with multiple rigid +bodies (collections of particles) whose motion is coupled by +connections at hinge points. + +**Author:** Rudra Mukherjee (JPL) while at RPI. + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/POEMS: filenames -> commands +* src/POEMS/README +* lib/poems/README +* :doc:`fix poems ` +* examples/rigid + +---------- + .. _PKG-PTM: PTM package @@ -2196,6 +2068,59 @@ Matching methodology. ---------- +.. _PKG-PYTHON: + +PYTHON package +-------------- + +**Contents:** + +A :doc:`python ` command which allow you to execute Python code +from a LAMMPS input script. The code can be in a separate file or +embedded in the input script itself. See the :doc:`Python call ` page for an overview of using Python from +LAMMPS in this manner and all the :doc:`Python ` manual pages +for other ways to use LAMMPS and Python together. + +.. note:: + + Building with the PYTHON package assumes you have a Python + shared library available on your system, which needs to be a Python 2 + version, 2.6 or later. Python 3 is not yet supported. See the + lib/python/README for more details. + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/PYTHON: filenames -> commands +* :doc:`Python call ` +* lib/python/README +* examples/python + +---------- + +.. _PKG-QEQ: + +QEQ package +----------- + +**Contents:** + +Several fixes for performing charge equilibration (QEq) via different +algorithms. These can be used with pair styles that perform QEq as +part of their formulation. + +**Supporting info:** + +* src/QEQ: filenames -> commands +* :doc:`fix qeq/\* ` +* examples/qeq +* examples/streitz + +---------- + .. _PKG-QMMM: QMMM package @@ -2269,64 +2194,6 @@ simulation. ---------- -.. _PKG-ML-QUIP: - -ML-QUIP package ------------------ - -**Contents:** - -A :doc:`pair_style quip ` command which wraps the `QUIP -libAtoms library `_, which includes a variety of interatomic -potentials, including Gaussian Approximation Potential (GAP) models -developed by the Cambridge University group. - -.. _quip: https://github.com/libAtoms/QUIP - -To use this package you must have the QUIP libAtoms library available -on your system. - -**Author:** Albert Bartok (Cambridge University) - -**Install:** - -This package has :ref:`specific installation instructions ` on the -:doc:`Build extras ` page. - -**Supporting info:** - -* src/ML-QUIP: filenames -> commands -* src/ML-QUIP/README -* :doc:`pair_style quip ` -* examples/PACKAGES/quip - ----------- - -.. _PKG-ML-RANN: - -ML-RANN package ------------------ - -**Contents:** - -A pair style for using rapid atomistic neural network (RANN) potentials. -These neural network potentials work by first generating a series of symmetry -functions from the neighbor list and then using these values as the input layer -of a neural network. - -**Authors:** - -This package was written by Christopher Barrett -with contributions by Doyl Dickel, Mississippi State University. - -**Supporting info:** - -* src/ML-RANN: filenames -> commands -* :doc:`pair_style rann ` -* examples/PACKAGES/rann - ----------- - .. _PKG-REACTION: REACTION package @@ -2383,6 +2250,64 @@ for monitoring molecules as bonds are created and destroyed. ---------- +.. _PKG-REPLICA: + +REPLICA package +--------------- + +**Contents:** + +A collection of multi-replica methods which can be used when running +multiple LAMMPS simulations (replicas). See the :doc:`Howto replica ` page for an overview of how to run +multi-replica simulations in LAMMPS. Methods in the package include +nudged elastic band (NEB), parallel replica dynamics (PRD), +temperature accelerated dynamics (TAD), parallel tempering, and a +verlet/split algorithm for performing long-range Coulombics on one set +of processors, and the remainder of the force field calculation on +another set. + +**Supporting info:** + +* src/REPLICA: filenames -> commands +* :doc:`Howto replica ` +* :doc:`neb ` +* :doc:`prd ` +* :doc:`tad ` +* :doc:`temper `, +* :doc:`run_style verlet/split ` +* examples/neb +* examples/prd +* examples/tad + +---------- + +.. _PKG-RIGID: + +RIGID package +------------- + +**Contents:** + +Fixes which enforce rigid constraints on collections of atoms or +particles. This includes SHAKE and RATTLE, as well as various +rigid-body integrators for a few large bodies or many small bodies. +Also several computes which calculate properties of rigid bodies. + +**Supporting info:** + +* src/RIGID: filenames -> commands +* :doc:`compute erotate/rigid ` +* :doc:`fix shake ` +* :doc:`fix rattle ` +* :doc:`fix rigid/\* ` +* examples/ASPHERE +* examples/rigid +* bench/in.rhodo +* https://www.lammps.org/movies.html#box +* https://www.lammps.org/movies.html#star + +---------- + .. _PKG-SCAFACOS: SCAFACOS package @@ -2418,69 +2343,25 @@ This package has :ref:`specific installation instructions ` on the :do ---------- -.. _PKG-DPD-SMOOTH: +.. _PKG-SHOCK: -DPD-SMOOTH package ------------------ +SHOCK package +------------- **Contents:** -A pair style for smoothed dissipative particle dynamics (SDPD), which -is an extension of smoothed particle hydrodynamics (SPH) to mesoscale -where thermal fluctuations are important (see the -:ref:`SPH package `). -Also two fixes for moving and rigid body integration of SPH/SDPD particles -(particles of atom_style meso). - -**Author:** Morteza Jalalvand (Institute for Advanced Studies in Basic -Sciences, Iran). +Fixes for running impact simulations where a shock-wave passes through +a material. **Supporting info:** -* src/DPD-SMOOTH: filenames -> commands -* src/DPD-SMOOTH/README -* :doc:`pair_style sdpd/taitwater/isothermal ` -* :doc:`fix meso/move ` -* :doc:`fix rigid/meso ` -* examples/PACKAGES/dpd-smooth - ----------- - -.. _PKG-MACHDYN: - -MACHDYN package ----------------- - -**Contents:** - -An atom style, fixes, computes, and several pair styles which -implements smoothed Mach dynamics (SMD) for solids, which is a model -related to smoothed particle hydrodynamics (SPH) for liquids (see the -:ref:`SPH package `). - -This package solves solids mechanics problems via a state of the art -stabilized meshless method with hourglass control. It can specify -hydrostatic interactions independently from material strength models, -i.e. pressure and deviatoric stresses are separated. It provides many -material models (Johnson-Cook, plasticity with hardening, -Mie-Grueneisen, Polynomial EOS) and allows new material models to be -added. It implements rigid boundary conditions (walls) which can be -specified as surface geometries from \*.STL files. - -**Author:** Georg Ganzenmuller (Fraunhofer-Institute for High-Speed -Dynamics, Ernst Mach Institute, Germany). - -**Install:** - -This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. - -**Supporting info:** - -* src/MACHDYN: filenames -> commands -* src/MACHDYN/README -* doc/PDF/MACHDYN_LAMMPS_userguide.pdf -* examples/PACKAGES/machdyn -* https://www.lammps.org/movies.html#smd +* src/SHOCK: filenames -> commands +* :doc:`fix append/atoms ` +* :doc:`fix msst ` +* :doc:`fix nphug ` +* :doc:`fix wall/piston ` +* examples/hugoniostat +* examples/msst ---------- @@ -2541,6 +2422,62 @@ Dynamics, Ernst Mach Institute, Germany). ---------- +.. _PKG-SPIN: + +SPIN package +------------ + +**Contents:** + +Model atomic magnetic spins classically, coupled to atoms moving in +the usual manner via MD. Various pair, fix, and compute styles. + +**Author:** Julien Tranchida (Sandia). + +**Supporting info:** + +* src/SPIN: filenames -> commands +* :doc:`Howto spins ` +* :doc:`pair_style spin/dipole/cut ` +* :doc:`pair_style spin/dipole/long ` +* :doc:`pair_style spin/dmi ` +* :doc:`pair_style spin/exchange ` +* :doc:`pair_style spin/exchange/biquadratic ` +* :doc:`pair_style spin/magelec ` +* :doc:`pair_style spin/neel ` +* :doc:`fix nve/spin ` +* :doc:`fix langevin/spin ` +* :doc:`fix precession/spin ` +* :doc:`compute spin ` +* :doc:`neb/spin ` +* examples/SPIN + +---------- + +.. _PKG-SRD: + +SRD package +----------- + +**Contents:** + +A pair of fixes which implement the Stochastic Rotation Dynamics (SRD) +method for coarse-graining of a solvent, typically around large +colloidal particles. + +**Supporting info:** + +* src/SRD: filenames -> commands +* :doc:`fix srd ` +* :doc:`fix wall/srd ` +* examples/srd +* examples/ASPHERE +* https://www.lammps.org/movies.html#tri +* https://www.lammps.org/movies.html#line +* https://www.lammps.org/movies.html#poly + +---------- + .. _PKG-TALLY: TALLY package @@ -2589,6 +2526,41 @@ supporting compute styles and an output option. ---------- +.. _PKG-VORONOI: + +VORONOI package +--------------- + +**Contents:** + +A compute command which calculates the Voronoi tesselation of a +collection of atoms by wrapping the `Voro++ library `_. This +can be used to calculate the local volume or each atoms or its near +neighbors. + +.. _voro-home: http://math.lbl.gov/voro++ + +To use this package you must have the Voro++ library available on your +system. + +**Author:** Daniel Schwen (INL) while at LANL. The open-source Voro++ +library was written by Chris Rycroft (Harvard U) while at UC Berkeley +and LBNL. + +**Install:** + +This package has :ref:`specific installation instructions ` on the :doc:`Build extras ` page. + +**Supporting info:** + +* src/VORONOI: filenames -> commands +* src/VORONOI/README +* lib/voronoi/README +* :doc:`compute voronoi/atom ` +* examples/voronoi + +---------- + .. _PKG-VTK: VTK package @@ -2655,3 +2627,26 @@ which discuss the `QuickFF `_ methodology. * :doc:`pair_style mm3/switch3/coulgauss/long ` * :doc:`pair_style lj/switch3/coulgauss/long ` * examples/PACKAGES/yaff + +---------- + +.. _PKG-USER-MISC: + +USER-MISC package +----------------- + +**Contents:** + +A potpourri of (mostly) unrelated features contributed to LAMMPS by +users. Each feature is a single fix, compute, pair, bond, angle, +dihedral, improper, or command style. + +**Authors:** The author for each style in the package is listed in the +src/USER-MISC/README file. + +**Supporting info:** + +* src/USER-MISC: filenames -> commands +* src/USER-MISC/README +* one page per individual command listed in src/USER-MISC/README +* examples/USER-MISC diff --git a/doc/src/Packages_list.rst b/doc/src/Packages_list.rst new file mode 100644 index 0000000000..502a38853d --- /dev/null +++ b/doc/src/Packages_list.rst @@ -0,0 +1,192 @@ +Available Packages +================== + +This is the list of packages included in LAMMPS. The link for each +package name gives more details. + +Packages are supported by either the LAMMPS developers or the +contributing authors and written in a syntax and style consistent with +the rest of LAMMPS. + +The "Example" column is a sub-directory in the examples directory of the +distribution which has an input script that uses the package. +E.g. "peptide" refers to the examples/peptide directory; PACKAGES/atc refers +to the examples/PACKAGES/atc directory. The "Library" column indicates +whether an extra library is needed to build and use the package: + +* no = no library +* sys = system library: you likely have it on your machine +* int = internal library: provided with LAMMPS, but you may need to build it +* ext = external library: you will need to download and install it on your machine + ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| Package | Description | Doc page | Example | Library | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`ADIOS ` | dump output via ADIOS | :doc:`dump adios ` | PACKAGES/adios | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`ASPHERE ` | aspherical particle models | :doc:`Howto spherical ` | ellipse | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`ATC ` | Atom-to-Continuum coupling | :doc:`fix atc ` | PACKAGES/atc | int | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`AWPMD ` | wave packet MD | :doc:`pair_style awpmd/cut ` | PACKAGES/awpmd | int | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`BOCS ` | BOCS bottom up coarse graining | :doc:`fix bocs ` | PACKAGES/bocs | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`BODY ` | body-style particles | :doc:`Howto body ` | body | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`BROWNIAN ` | Brownian dynamics and self-propelled particles | :doc:`fix brownian `, :doc:`fix propel/self ` | PACKAGES/brownian | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`CG-DNA ` | coarse-grained DNA force fields | src/CG-DNA/README | PACKAGES/cgdna | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`CG-SDK ` | SDK coarse-graining model | :doc:`pair_style lj/sdk ` | PACKAGES/cgsdk | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`CLASS2 ` | class 2 force fields | :doc:`pair_style lj/class2 ` | n/a | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`COLLOID ` | colloidal particles | :doc:`atom_style colloid ` | colloid | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`COLVARS ` | collective variables library | :doc:`fix colvars ` | PACKAGES/colvars | int | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`COMPRESS ` | I/O compression | :doc:`dump \*/gz ` | n/a | sys | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`CORESHELL ` | adiabatic core/shell model | :doc:`Howto coreshell ` | coreshell | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`DIELECTRIC ` | dielectric boundary solvers and force styles | :doc:`compute efield/atom ` | PACKAGES/dielectric | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`DIFFRACTION ` | virtual x-ray and electron diffraction | :doc:`compute xrd ` | PACKAGES/diffraction | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`DIPOLE ` | point dipole particles | :doc:`pair_style lj/.../dipole ` | dipole | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`DPD-MESO ` | mesoscale DPD models | :doc:`pair_style edpd ` | PACKAGES/dpd-meso | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`DPD-REACT ` | reactive dissipative particle dynamics | src/DPD-REACT/README | PACKAGES/dpd-react | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`DPD-SMOOTH ` | smoothed dissipative particle dynamics | :doc:`pair_style sdpd/taitwater/isothermal ` | PACKAGES/dpd-smooth | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`DRUDE ` | Drude oscillators | :doc:`Howto drude ` | PACKAGES/drude | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`EFF ` | electron force field | :doc:`pair_style eff/cut ` | PACKAGES/eff | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`FEP ` | free energy perturbation | :doc:`compute fep ` | PACKAGES/fep | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`GPU ` | GPU-enabled styles | :doc:`Section gpu ` | `Benchmarks `_ | int | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`GRANULAR ` | granular systems | :doc:`Howto granular ` | pour | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`H5MD ` | dump output via HDF5 | :doc:`dump h5md ` | n/a | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`INTEL ` | optimized Intel CPU and KNL styles | :doc:`Speed intel ` | `Benchmarks `_ | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`KIM ` | OpenKIM wrapper | :doc:`pair_style kim ` | kim | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`KOKKOS ` | Kokkos-enabled styles | :doc:`Speed kokkos ` | `Benchmarks `_ | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`KSPACE ` | long-range Coulombic solvers | :doc:`kspace_style ` | peptide | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`LATBOLTZ ` | Lattice Boltzmann fluid | :doc:`fix lb/fluid ` | PACKAGES/latboltz | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`LATTE ` | quantum DFTB forces via LATTE | :doc:`fix latte ` | latte | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MACHDYN ` | smoothed Mach dynamics | `SMD User Guide `_ | PACKAGES/machdyn | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MANIFOLD ` | motion on 2d surfaces | :doc:`fix manifoldforce ` | PACKAGES/manifold | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MANYBODY ` | many-body potentials | :doc:`pair_style tersoff ` | shear | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MC ` | Monte Carlo options | :doc:`fix gcmc ` | n/a | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MDI ` | client-server coupling | :doc:`MDI Howto ` | PACKAGES/mdi | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MEAM ` | modified EAM potential (C++) | :doc:`pair_style meam ` | meam | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MESONT ` | mesoscopic tubular potential model for nanotubes | pair style :doc:`mesont/tpm `, :doc:`mesocnt ` | PACKAGES/mesont | int | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MESSAGE ` | client/server messaging | :doc:`message ` | message | int | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MGPT ` | fast MGPT multi-ion potentials | :doc:`pair_style mgpt ` | PACKAGES/mgpt | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MISC ` | miscellaneous single-file commands | n/a | no | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`ML-HDNNP ` | High-dimensional neural network potentials | :doc:`pair_style hdnnp ` | PACKAGES/hdnnp | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`ML-IAP ` | multiple machine learning potentials | :doc:`pair_style mliap ` | mliap | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`ML-PACE ` | Atomic Cluster Expansion (ACE) potential | :doc:`pair pace ` | PACKAGES/pace | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`ML-QUIP ` | QUIP/libatoms interface | :doc:`pair_style quip ` | PACKAGES/quip | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`ML-RANN ` | rapid atomistic neural network (RANN) potentials | :doc:`pair rann ` | PACKAGES/rann | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`ML-SNAP ` | quantum-fitted potential | :doc:`pair_style snap ` | snap | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MOFFF ` | styles for `MOF-FF `_ force field | :doc:`pair_style buck6d/coul/gauss ` | PACKAGES/mofff | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MOLECULE ` | molecular system force fields | :doc:`Howto bioFF ` | peptide | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MOLFILE ` | `VMD `_ molfile plug-ins | :doc:`dump molfile ` | n/a | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MPIIO ` | MPI parallel I/O dump and restart | :doc:`dump ` | n/a | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`MSCG ` | multi-scale coarse-graining wrapper | :doc:`fix mscg ` | mscg | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`NETCDF ` | dump output via NetCDF | :doc:`dump netcdf ` | n/a | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`OPENMP ` | OpenMP-enabled styles | :doc:`Speed omp ` | `Benchmarks `_ | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`OPT ` | optimized pair styles | :doc:`Speed opt ` | `Benchmarks `_ | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`PERI ` | Peridynamics models | :doc:`pair_style peri ` | peri | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`PHONON ` | phonon dynamical matrix | :doc:`fix phonon ` | PACKAGES/phonon | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`PLUGIN ` | Plugin loader command | :doc:`plugin ` | plugins | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`PLUMED ` | :ref:`PLUMED ` free energy library | :doc:`fix plumed ` | PACKAGES/plumed | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`POEMS ` | coupled rigid body motion | :doc:`fix poems ` | rigid | int | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`PTM ` | Polyhedral Template Matching | :doc:`compute ptm/atom ` | n/a | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`PYTHON ` | embed Python code in an input script | :doc:`python ` | python | sys | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`QEQ ` | QEq charge equilibration | :doc:`fix qeq ` | qeq | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`QMMM ` | QM/MM coupling | :doc:`fix qmmm ` | PACKAGES/qmmm | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`QTB ` | quantum nuclear effects | :doc:`fix qtb ` :doc:`fix qbmsst ` | qtb | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`REACTION ` | chemical reactions in classical MD | :doc:`fix bond/react ` | PACKAGES/reaction | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`REAXFF ` | ReaxFF potential (C/C++) | :doc:`pair_style reaxc ` | reax | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`REPLICA ` | multi-replica methods | :doc:`Howto replica ` | tad | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`RIGID ` | rigid bodies and constraints | :doc:`fix rigid ` | rigid | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`SCAFACOS ` | wrapper for ScaFaCoS Kspace solver | :doc:`kspace_style scafacos ` | PACKAGES/scafacos | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`SHOCK ` | shock loading methods | :doc:`fix msst ` | n/a | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`SMTBQ ` | second moment tight binding QEq potential | :doc:`pair_style smtbq ` | PACKAGES/smtbq | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`SPH ` | smoothed particle hydrodynamics | `SPH User Guide `_ | PACKAGES/sph | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`SPIN ` | magnetic atomic spin dynamics | :doc:`Howto spins ` | SPIN | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`SRD ` | stochastic rotation dynamics | :doc:`fix srd ` | srd | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`TALLY ` | pairwise tally computes | :doc:`compute XXX/tally ` | PACKAGES/tally | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`UEF ` | extensional flow | :doc:`fix nvt/uef ` | PACKAGES/uef | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`USER-MISC ` | single-file contributions | USER-MISC/README | USER-MISC | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`VORONOI ` | Voronoi tesselation | :doc:`compute voronoi/atom ` | n/a | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`VTK ` | dump output via VTK | :doc:`compute vtk ` | n/a | ext | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ +| :ref:`YAFF ` | additional styles implemented in YAFF | :doc:`angle_style cross ` | PACKAGES/yaff | no | ++------------------------------------------------+---------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ + +.. _MOFplus: https://www.mofplus.org/content/show/MOF-FF +.. _PLUMED: https://www.plumed.org +.. _VMD: https://www.ks.uiuc.edu/Research/vmd/ diff --git a/doc/src/Packages_standard.rst b/doc/src/Packages_standard.rst deleted file mode 100644 index 7701c174e9..0000000000 --- a/doc/src/Packages_standard.rst +++ /dev/null @@ -1,95 +0,0 @@ -Standard packages -================= - -This is the list of standard packages in LAMMPS. The link for each -package name gives more details. - -Standard packages are supported by the LAMMPS developers and are -written in a syntax and style consistent with the rest of LAMMPS. -This means the developers will answer questions about them, debug and -fix them if necessary, and keep them compatible with future changes to -LAMMPS. - -The "Example" column is a sub-directory in the examples directory of -the distribution which has an input script that uses the package. -E.g. "peptide" refers to the examples/peptide directory; USER/atc -refers to the examples/PACKAGES/atc directory. The "Library" column -indicates whether an extra library is needed to build and use the -package: - -* no = no library -* sys = system library: you likely have it on your machine -* int = internal library: provided with LAMMPS, but you may need to build it -* ext = external library: you will need to download and install it on your machine - -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| Package | Description | Doc page | Example | Library | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`ASPHERE ` | aspherical particle models | :doc:`Howto spherical ` | ellipse | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`BODY ` | body-style particles | :doc:`Howto body ` | body | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`CLASS2 ` | class 2 force fields | :doc:`pair_style lj/class2 ` | n/a | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`COLLOID ` | colloidal particles | :doc:`atom_style colloid ` | colloid | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`COMPRESS ` | I/O compression | :doc:`dump \*/gz ` | n/a | sys | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`CORESHELL ` | adiabatic core/shell model | :doc:`Howto coreshell ` | coreshell | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`DIPOLE ` | point dipole particles | :doc:`pair_style lj/.../dipole ` | dipole | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`GPU ` | GPU-enabled styles | :doc:`Section gpu ` | `Benchmarks `_ | int | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`GRANULAR ` | granular systems | :doc:`Howto granular ` | pour | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`KIM ` | OpenKIM wrapper | :doc:`pair_style kim ` | kim | ext | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`KOKKOS ` | Kokkos-enabled styles | :doc:`Speed kokkos ` | `Benchmarks `_ | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`KSPACE ` | long-range Coulombic solvers | :doc:`kspace_style ` | peptide | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`LATTE ` | quantum DFTB forces via LATTE | :doc:`fix latte ` | latte | ext | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MANYBODY ` | many-body potentials | :doc:`pair_style tersoff ` | shear | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MC ` | Monte Carlo options | :doc:`fix gcmc ` | n/a | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MESSAGE ` | client/server messaging | :doc:`message ` | message | int | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MISC ` | miscellaneous single-file commands | n/a | no | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`ML-IAP ` | multiple machine learning potentials | :doc:`pair_style mliap ` | mliap | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MOLECULE ` | molecular system force fields | :doc:`Howto bioFF ` | peptide | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MPIIO ` | MPI parallel I/O dump and restart | :doc:`dump ` | n/a | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MSCG ` | multi-scale coarse-graining wrapper | :doc:`fix mscg ` | mscg | ext | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`OPT ` | optimized pair styles | :doc:`Speed opt ` | `Benchmarks `_ | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`PERI ` | Peridynamics models | :doc:`pair_style peri ` | peri | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`PLUGIN ` | Plugin loader command | :doc:`plugin ` | plugins | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`POEMS ` | coupled rigid body motion | :doc:`fix poems ` | rigid | int | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`PYTHON ` | embed Python code in an input script | :doc:`python ` | python | sys | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`QEQ ` | QEq charge equilibration | :doc:`fix qeq ` | qeq | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`REPLICA ` | multi-replica methods | :doc:`Howto replica ` | tad | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`RIGID ` | rigid bodies and constraints | :doc:`fix rigid ` | rigid | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`SHOCK ` | shock loading methods | :doc:`fix msst ` | n/a | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`ML-SNAP ` | quantum-fitted potential | :doc:`pair_style snap ` | snap | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`SPIN ` | magnetic atomic spin dynamics | :doc:`Howto spins ` | SPIN | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`SRD ` | stochastic rotation dynamics | :doc:`fix srd ` | srd | no | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`VORONOI ` | Voronoi tesselation | :doc:`compute voronoi/atom ` | n/a | ext | -+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+ diff --git a/doc/src/Packages_user.rst b/doc/src/Packages_user.rst deleted file mode 100644 index 41eac29290..0000000000 --- a/doc/src/Packages_user.rst +++ /dev/null @@ -1,132 +0,0 @@ -User packages -============= - -This is a list of user packages in LAMMPS. The link for each package -name gives more details. - -User packages have been contributed by users, and begin with the -"user" prefix. If a contribution is a single command (single file), -it is typically in the USER-MISC package. User packages don't -necessarily meet the requirements of the :doc:`standard packages `. This means the developers will try -to keep things working and usually can answer technical questions -about compiling the package. If you have problems using a specific -feature provided in a user package, you may need to contact the -contributor directly to get help. Information on how to submit -additions you make to LAMMPS as single files or as a standard or user -package is explained on the :doc:`Modify contribute ` -doc page. - -The "Example" column is a sub-directory in the examples directory of -the distribution which has an input script that uses the package. -E.g. "peptide" refers to the examples/peptide directory; USER/atc -refers to the examples/PACKAGES/atc directory. The "Library" column -indicates whether an extra library is needed to build and use the -package: - -* no = no library -* sys = system library: you likely have it on your machine -* int = internal library: provided with LAMMPS, but you may need to build it -* ext = external library: you will need to download and install it on your machine - -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| Package | Description | Doc page | Example | Library | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`ADIOS ` | dump output via ADIOS | :doc:`dump adios ` | USER/adios | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`ATC ` | Atom-to-Continuum coupling | :doc:`fix atc ` | USER/atc | int | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`AWPMD ` | wave packet MD | :doc:`pair_style awpmd/cut ` | USER/awpmd | int | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`BOCS ` | BOCS bottom up coarse graining | :doc:`fix bocs ` | USER/bocs | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`BROWNIAN ` | Brownian dynamics and self-propelled particles | :doc:`fix brownian `, :doc:`fix propel/self ` | USER/brownian | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`CG-DNA ` | coarse-grained DNA force fields | src/CG-DNA/README | USER/cgdna | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`CG-SDK ` | SDK coarse-graining model | :doc:`pair_style lj/sdk ` | USER/cgsdk | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`COLVARS ` | collective variables library | :doc:`fix colvars ` | USER/colvars | int | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`DIELECTRIC ` | dielectric boundary solvers and force styles | :doc:`compute efield/atom ` | USER/dielectric | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`DIFFRACTION ` | virtual x-ray and electron diffraction | :doc:`compute xrd ` | USER/diffraction | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`DPD-REACT ` | reactive dissipative particle dynamics | src/DPD-REACT/README | USER/dpd | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`DRUDE ` | Drude oscillators | :doc:`Howto drude ` | USER/drude | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`EFF ` | electron force field | :doc:`pair_style eff/cut ` | USER/eff | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`FEP ` | free energy perturbation | :doc:`compute fep ` | USER/fep | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`H5MD ` | dump output via HDF5 | :doc:`dump h5md ` | n/a | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`ML-HDNNP ` | High-dimensional neural network potentials | :doc:`pair_style hdnnp ` | USER/hdnnp | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`INTEL ` | optimized Intel CPU and KNL styles | :doc:`Speed intel ` | `Benchmarks `_ | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`LATBOLTZ ` | Lattice Boltzmann fluid | :doc:`fix lb/fluid ` | USER/lb | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MANIFOLD ` | motion on 2d surfaces | :doc:`fix manifoldforce ` | USER/manifold | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MDI ` | client-server coupling | :doc:`MDI Howto ` | USER/mdi | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MEAM ` | modified EAM potential (C++) | :doc:`pair_style meam ` | meam | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`DPD-MESO ` | mesoscale DPD models | :doc:`pair_style edpd ` | USER/mesodpd | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MESONT ` | mesoscopic tubular potential model for nanotubes | pair style :doc:`mesont/tpm `, :doc:`mesocnt ` | USER/mesont | int | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MGPT ` | fast MGPT multi-ion potentials | :doc:`pair_style mgpt ` | USER/mgpt | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`USER-MISC ` | single-file contributions | USER-MISC/README | USER/misc | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MOFFF ` | styles for `MOF-FF `_ force field | :doc:`pair_style buck6d/coul/gauss ` | USER/mofff | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MOLFILE ` | `VMD `_ molfile plug-ins | :doc:`dump molfile ` | n/a | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`NETCDF ` | dump output via NetCDF | :doc:`dump netcdf ` | n/a | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`OPENMP ` | OpenMP-enabled styles | :doc:`Speed omp ` | `Benchmarks `_ | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`ML-PACE ` | Fast implementation of Atomic Cluster Expansion (ACE) potential | :doc:`pair pace ` | USER/pace | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`PHONON ` | phonon dynamical matrix | :doc:`fix phonon ` | USER/phonon | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`PLUMED ` | :ref:`PLUMED ` free energy library | :doc:`fix plumed ` | USER/plumed | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`PTM ` | Polyhedral Template Matching | :doc:`compute ptm/atom ` | n/a | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`QMMM ` | QM/MM coupling | :doc:`fix qmmm ` | USER/qmmm | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`QTB ` | quantum nuclear effects | :doc:`fix qtb ` :doc:`fix qbmsst ` | qtb | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`ML-QUIP ` | QUIP/libatoms interface | :doc:`pair_style quip ` | USER/quip | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`ML-RANN ` | rapid atomistic neural network (RANN) potentials | :doc:`pair rann ` | USER/rann | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`REACTION ` | chemical reactions in classical MD | :doc:`fix bond/react ` | USER/reaction | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`REAXFF ` | ReaxFF potential (C/C++) | :doc:`pair_style reaxc ` | reax | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`SCAFACOS ` | wrapper on ScaFaCoS solver | :doc:`kspace_style scafacos ` | USER/scafacos | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`DPD-SMOOTH ` | smoothed dissipative particle dynamics | :doc:`pair_style sdpd/taitwater/isothermal ` | USER/sdpd | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`MACHDYN ` | smoothed Mach dynamics | `SMD User Guide `_ | USER/smd | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`SMTBQ ` | second moment tight binding QEq potential | :doc:`pair_style smtbq ` | USER/smtbq | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`SPH ` | smoothed particle hydrodynamics | `SPH User Guide `_ | USER/sph | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`TALLY ` | pairwise tally computes | :doc:`compute XXX/tally ` | USER/tally | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`UEF ` | extensional flow | :doc:`fix nvt/uef ` | USER/uef | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`VTK ` | dump output via VTK | :doc:`compute vtk ` | n/a | ext | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ -| :ref:`YAFF ` | additional styles implemented in YAFF | :doc:`angle_style cross ` | USER/yaff | no | -+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+ - -.. _MOFplus: https://www.mofplus.org/content/show/MOF-FF -.. _PLUMED: https://www.plumed.org diff --git a/doc/src/Run_options.rst b/doc/src/Run_options.rst index bfe769a8eb..f8c6925dba 100644 --- a/doc/src/Run_options.rst +++ b/doc/src/Run_options.rst @@ -10,7 +10,7 @@ letter abbreviation can be used: * :ref:`-i or -in ` * :ref:`-k or -kokkos ` * :ref:`-l or -log ` -* :ref:`-mdi ` +* :ref:`-mdi ` * :ref:`-m or -mpicolor ` * :ref:`-c or -cite ` * :ref:`-nc or -nocite ` @@ -197,7 +197,7 @@ Option -plog will override the name of the partition log files file.N. ---------- -.. _mdi: +.. _mdi_flags: **-mdi 'multiple flags'** diff --git a/doc/src/Speed_packages.rst b/doc/src/Speed_packages.rst index 32ed314230..be3f205f4b 100644 --- a/doc/src/Speed_packages.rst +++ b/doc/src/Speed_packages.rst @@ -12,17 +12,16 @@ All of these commands are in packages provided with LAMMPS. An overview of packages is give on the :doc:`Packages ` doc pages. -These are the accelerator packages currently in LAMMPS, either as -standard or user packages: +These are the accelerator packages currently in LAMMPS: +-----------------------------------------+-------------------------------------------------------+ | :doc:`GPU Package ` | for GPUs via CUDA, OpenCL, or ROCm HIP | +-----------------------------------------+-------------------------------------------------------+ -| :doc:`INTEL Package ` | for Intel CPUs and Intel Xeon Phi | +| :doc:`INTEL Package ` | for Intel CPUs and Intel Xeon Phi | +-----------------------------------------+-------------------------------------------------------+ | :doc:`KOKKOS Package ` | for NVIDIA GPUs, Intel Xeon Phi, and OpenMP threading | +-----------------------------------------+-------------------------------------------------------+ -| :doc:`OPENMP Package ` | for OpenMP threading and generic CPU optimizations | +| :doc:`OPENMP Package ` | for OpenMP threading and generic CPU optimizations | +-----------------------------------------+-------------------------------------------------------+ | :doc:`OPT Package ` | generic CPU optimizations | +-----------------------------------------+-------------------------------------------------------+ @@ -41,11 +40,11 @@ Inverting this list, LAMMPS currently has acceleration support for three kinds of hardware, via the listed packages: +-----------------+-----------------------------------------------------------------------------------------------------------------------------+ -| Many-core CPUs | :doc:`INTEL `, :doc:`KOKKOS `, :doc:`OPENMP `, :doc:`OPT ` packages | +| Many-core CPUs | :doc:`INTEL `, :doc:`KOKKOS `, :doc:`OPENMP `, :doc:`OPT ` packages | +-----------------+-----------------------------------------------------------------------------------------------------------------------------+ | GPUs | :doc:`GPU `, :doc:`KOKKOS ` packages | +-----------------+-----------------------------------------------------------------------------------------------------------------------------+ -| Intel Phi/AVX | :doc:`INTEL `, :doc:`KOKKOS ` packages | +| Intel Phi/AVX | :doc:`INTEL `, :doc:`KOKKOS ` packages | +-----------------+-----------------------------------------------------------------------------------------------------------------------------+ Which package is fastest for your hardware may depend on the size @@ -84,9 +83,9 @@ listed above: +--------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+ | build the accelerator library | only for GPU package | +--------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+ -| install the accelerator package | make yes-opt, make yes-intel, etc | +| install the accelerator package | make yes-opt, make yes-intel, etc | +--------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+ -| add compile/link flags to Makefile.machine in src/MAKE | only for INTEL, KOKKOS, OPENMP, OPT packages | +| add compile/link flags to Makefile.machine in src/MAKE | only for INTEL, KOKKOS, OPENMP, OPT packages | +--------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+ | re-build LAMMPS | make machine | +--------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------------------------+ diff --git a/doc/src/Tools.rst b/doc/src/Tools.rst index 582fc4d3ad..65a96ce44a 100644 --- a/doc/src/Tools.rst +++ b/doc/src/Tools.rst @@ -67,7 +67,7 @@ Post-processing tools * :ref:`amber2lmp ` * :ref:`binary2txt ` * :ref:`ch2lmp ` - * :ref:`colvars ` + * :ref:`colvars ` * :ref:`eff ` * :ref:`fep ` * :ref:`lmp2arc ` @@ -214,7 +214,7 @@ tool and the specific name of the program used (e.g. ``ninja-v1.10`` or ---------- -.. _colvars: +.. _colvars_tools: colvars tools --------------------------- diff --git a/doc/utils/check-packages.py b/doc/utils/check-packages.py index f7cbb2795a..cb64259f15 100755 --- a/doc/utils/check-packages.py +++ b/doc/utils/check-packages.py @@ -41,12 +41,10 @@ if not os.path.isdir(doc_dir): pkgdirs = glob(os.path.join(src_dir, '[A-Z][A-Z]*')) dirs = re.compile(".*/([0-9A-Z-]+)$") -user = re.compile(".*") -stdpkg = [] -usrpkg = [] +pkgs = [] -# find package names and add to standard and user package lists. +# find package names and add package list. # anything starting with at least two upper case characters, is a # folder, and is not called 'MAKE' is a package @@ -54,47 +52,29 @@ for d in pkgdirs: pkg = dirs.match(d).group(1) if not os.path.isdir(os.path.join(src_dir, pkg)): continue if pkg in ['DEPEND','MAKE','STUBS']: continue - if user.match(pkg): - usrpkg.append(pkg) - else: - stdpkg.append(pkg) + pkgs.append(pkg) -print(f"Found {len(stdpkg)} standard and {len(usrpkg)} user packages") +print(f"Found {len(pkgs)} packages") counter = 0 -with open(os.path.join(doc_dir, 'Packages_standard.rst')) as fp: +with open(os.path.join(doc_dir, 'Packages_list.rst')) as fp: text = fp.read() matches = set(re.findall(':ref:`([A-Z0-9-]+) <[A-Z0-9-]+>`', text, re.MULTILINE)) -for p in stdpkg: +for p in pkgs: if not p in matches: counter += 1 - print(f"Standard package {p} missing in Packages_standard.rst") - -with open(os.path.join(doc_dir, 'Packages_user.rst')) as fp: - text = fp.read() - -matches = set(re.findall(':ref:`([A-Z0-9-]+) <[A-Z0-9-]+>`', text, re.MULTILINE)) -for p in usrpkg: - if not p in matches: - counter += 1 - print(f"User package {p} missing in Packages_user.rst") + print(f"Package {p} missing in Packages_list.rst") with open(os.path.join(doc_dir, 'Packages_details.rst')) as fp: text = fp.read() -matches = set(re.findall(':ref:`([A-Z0-9]+) `', text, re.MULTILINE)) -for p in stdpkg: +matches = set(re.findall(':ref:`([A-Z0-9-]+) `', text, re.MULTILINE)) +for p in pkgs: if not p in matches: counter += 1 - print(f"Standard package {p} missing in Packages_details.rst") - -matches = set(re.findall(':ref:`([A-Z0-9]+) `', text, re.MULTILINE)) -for p in usrpkg: - if not p in matches: - counter +=1 - print(f"User package {p} missing in Packages_details.rst") + print(f"Package {p} missing in Packages_details.rst") if counter: print(f"Found {counter} issue(s) with package lists") diff --git a/doc/utils/check-styles.py b/doc/utils/check-styles.py index f9a7d3e39a..16a7cf2a5c 100755 --- a/doc/utils/check-styles.py +++ b/doc/utils/check-styles.py @@ -267,9 +267,9 @@ counter += check_style('Commands_fix.rst', doc_dir, ":doc:`(.+) `", counter += check_style('fix.rst', doc_dir, ":doc:`(.+) ` -", fix,'Fix',skip=('python', 'NEIGH_HISTORY/omp'),suffix=False) counter += check_style('Commands_pair.rst', doc_dir, ":doc:`(.+) `", - pair,'Pair',skip=('meam','lj/sf'),suffix=True) + pair,'Pair',skip=('meam/c','lj/sf'),suffix=True) counter += check_style('pair_style.rst', doc_dir, ":doc:`(.+) ` -", - pair,'Pair',skip=('meam','lj/sf'),suffix=False) + pair,'Pair',skip=('meam/c','lj/sf'),suffix=False) counter += check_style('Commands_bond.rst', doc_dir, ":doc:`(.+) `", bond,'Bond',suffix=True) counter += check_style('bond_style.rst', doc_dir, ":doc:`(.+) ` -", @@ -301,7 +301,7 @@ counter += check_style_index("bond_style", bond, index["bond_style"]) counter += check_style_index("dihedral_style", dihedral, index["dihedral_style"]) counter += check_style_index("improper_style", improper, index["improper_style"]) counter += check_style_index("kspace_style", kspace, index["kspace_style"]) -counter += check_style_index("pair_style", pair, index["pair_style"], skip=['meam', 'lj/sf']) +counter += check_style_index("pair_style", pair, index["pair_style"], skip=['meam/c', 'lj/sf']) if counter: print(f"Found {counter} issue(s) with style index") diff --git a/doc/utils/sphinx-config/false_positives.txt b/doc/utils/sphinx-config/false_positives.txt index 20231c4be5..12e6fc88f0 100644 --- a/doc/utils/sphinx-config/false_positives.txt +++ b/doc/utils/sphinx-config/false_positives.txt @@ -1325,6 +1325,7 @@ hyperradius hyperspherical hysteretic hz +IAP Ibanez iatom ibar @@ -1647,6 +1648,8 @@ larentzos Larentzos Laroche lars +LATBOLTZ +latboltz latencies Latour latourr @@ -1797,6 +1800,8 @@ Lysogorskiy Lyulin lz Maaravi +MACHDYN +machdyn Mackay Mackrodt Macromolecules @@ -2734,7 +2739,7 @@ README realtime reamin reax -REAXC +REAXFF ReaxFF rebo recursing