collapse multiple empty lines into a single empty line
This commit is contained in:
@ -8,7 +8,6 @@ for use with GNU make or gmake, or a build environment generated by CMake
|
|||||||
alternative you can download a package with pre-built executables
|
alternative you can download a package with pre-built executables
|
||||||
as described on the :doc:`Install <Install>` doc page.
|
as described on the :doc:`Install <Install>` doc page.
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
|||||||
@ -10,10 +10,8 @@ CMake and make:
|
|||||||
* :ref:`Build the LAMMPS documentation <doc>`
|
* :ref:`Build the LAMMPS documentation <doc>`
|
||||||
* :ref:`Install LAMMPS after a build <install>`
|
* :ref:`Install LAMMPS after a build <install>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _serial:
|
.. _serial:
|
||||||
|
|
||||||
Serial vs parallel build
|
Serial vs parallel build
|
||||||
@ -57,7 +55,6 @@ The build with traditional makefiles has to be done inside the source folder `sr
|
|||||||
make serial # serial build, produces lmp_serial using Makefile/serial
|
make serial # serial build, produces lmp_serial using Makefile/serial
|
||||||
make mybox # uses Makefile.mybox to produce lmp_mybox
|
make mybox # uses Makefile.mybox to produce lmp_mybox
|
||||||
|
|
||||||
|
|
||||||
Any "make machine" command will look up the make settings from a file
|
Any "make machine" command will look up the make settings from a file
|
||||||
Makefile.machine, create a folder Obj\_machine with all objects and
|
Makefile.machine, create a folder Obj\_machine with all objects and
|
||||||
generated files and an executable called *lmp\_machine*\ . The standard
|
generated files and an executable called *lmp\_machine*\ . The standard
|
||||||
@ -154,10 +151,8 @@ while dropping all 'shared()' directives. The script
|
|||||||
'src/USER-OMP/hack\_openmp\_for\_pgi\_gcc9.sh' can be used to automate
|
'src/USER-OMP/hack\_openmp\_for\_pgi\_gcc9.sh' can be used to automate
|
||||||
this conversion.
|
this conversion.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _compile:
|
.. _compile:
|
||||||
|
|
||||||
Choice of compiler and compile/link options
|
Choice of compiler and compile/link options
|
||||||
@ -204,7 +199,6 @@ for all the C++ files:
|
|||||||
-D CMAKE_C_FLAGS=string # flags to use with C compiler
|
-D CMAKE_C_FLAGS=string # flags to use with C compiler
|
||||||
-D CMAKE_Fortran_FLAGS=string # flags to use with Fortran compiler
|
-D CMAKE_Fortran_FLAGS=string # flags to use with Fortran compiler
|
||||||
|
|
||||||
|
|
||||||
A few example command lines are:
|
A few example command lines are:
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
@ -347,7 +341,6 @@ build may generate an error. This means you will need to install a
|
|||||||
shared library version of the auxiliary library. The build instructions
|
shared library version of the auxiliary library. The build instructions
|
||||||
for the library should tell you how to do this.
|
for the library should tell you how to do this.
|
||||||
|
|
||||||
|
|
||||||
As an example, here is how to build and install the `MPICH library
|
As an example, here is how to build and install the `MPICH library
|
||||||
<mpich_>`_, a popular open-source version of MPI, as a shared library
|
<mpich_>`_, a popular open-source version of MPI, as a shared library
|
||||||
in the default /usr/local/lib location:
|
in the default /usr/local/lib location:
|
||||||
@ -377,7 +370,6 @@ recommended to ensure the integrity of the system software installation.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _doc:
|
.. _doc:
|
||||||
|
|
||||||
Build the LAMMPS documentation
|
Build the LAMMPS documentation
|
||||||
@ -412,7 +404,6 @@ LAMMPS source distribution.
|
|||||||
make package_check # check for complete and consistent package lists
|
make package_check # check for complete and consistent package lists
|
||||||
make spelling # spell-check the manual
|
make spelling # spell-check the manual
|
||||||
|
|
||||||
|
|
||||||
Thus "make html" will create a "doc/html" directory with the HTML format
|
Thus "make html" will create a "doc/html" directory with the HTML format
|
||||||
manual pages so that you can browse them with a web browser locally on
|
manual pages so that you can browse them with a web browser locally on
|
||||||
your system.
|
your system.
|
||||||
@ -423,7 +414,6 @@ your system.
|
|||||||
current LAMMPS version (HTML and PDF files), from the website
|
current LAMMPS version (HTML and PDF files), from the website
|
||||||
`download page <http://lammps.sandia.gov/download.html>`_.
|
`download page <http://lammps.sandia.gov/download.html>`_.
|
||||||
|
|
||||||
|
|
||||||
**CMake build option**\ :
|
**CMake build option**\ :
|
||||||
|
|
||||||
It is also possible to create the HTML version of the manual within
|
It is also possible to create the HTML version of the manual within
|
||||||
@ -436,10 +426,8 @@ the "install" step when installing LAMMPS after the CMake build via
|
|||||||
|
|
||||||
-D BUILD_DOC=value # yes or no (default)
|
-D BUILD_DOC=value # yes or no (default)
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _tools:
|
.. _tools:
|
||||||
|
|
||||||
Build LAMMPS tools
|
Build LAMMPS tools
|
||||||
@ -450,7 +438,6 @@ using CMake or Make.
|
|||||||
|
|
||||||
**CMake build3**\ :
|
**CMake build3**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D BUILD_TOOLS=value # yes or no (default)
|
-D BUILD_TOOLS=value # yes or no (default)
|
||||||
@ -460,7 +447,6 @@ The generated binaries will also become part of the LAMMPS installation
|
|||||||
|
|
||||||
**Traditional make**\ :
|
**Traditional make**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cd lammps/tools
|
cd lammps/tools
|
||||||
@ -470,10 +456,8 @@ The generated binaries will also become part of the LAMMPS installation
|
|||||||
make micelle2d # build only micelle2d tool
|
make micelle2d # build only micelle2d tool
|
||||||
make thermo_extract # build only thermo_extract tool
|
make thermo_extract # build only thermo_extract tool
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _install:
|
.. _install:
|
||||||
|
|
||||||
Install LAMMPS after a build
|
Install LAMMPS after a build
|
||||||
@ -487,7 +471,6 @@ you want to copy files to is protected.
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cmake -D CMAKE_INSTALL_PREFIX=path [options ...] ../cmake
|
cmake -D CMAKE_INSTALL_PREFIX=path [options ...] ../cmake
|
||||||
|
|||||||
@ -9,17 +9,14 @@ Richard Berger (Temple U) has also written a `more comprehensive guide <https://
|
|||||||
for how to use CMake to build LAMMPS. If you are new to CMake it is a
|
for how to use CMake to build LAMMPS. If you are new to CMake it is a
|
||||||
good place to start.
|
good place to start.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Building LAMMPS with CMake is a two-step process. First you use CMake
|
Building LAMMPS with CMake is a two-step process. First you use CMake
|
||||||
to create a build environment in a new directory. On Linux systems,
|
to create a build environment in a new directory. On Linux systems,
|
||||||
this will be based on makefiles for use with make. Then you use the
|
this will be based on makefiles for use with make. Then you use the
|
||||||
make command to build LAMMPS, which uses the created
|
make command to build LAMMPS, which uses the created
|
||||||
Makefile(s). Example:
|
Makefile(s). Example:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cd lammps # change to the LAMMPS distribution directory
|
cd lammps # change to the LAMMPS distribution directory
|
||||||
@ -51,7 +48,6 @@ even more.
|
|||||||
After compilation, you may optionally install the LAMMPS executable into
|
After compilation, you may optionally install the LAMMPS executable into
|
||||||
your system with:
|
your system with:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
make install # optional, copy LAMMPS executable & library elsewhere
|
make install # optional, copy LAMMPS executable & library elsewhere
|
||||||
@ -62,10 +58,8 @@ manpages, potential and force field files. The location of the installation
|
|||||||
tree is set by the CMake variable "CMAKE\_INSTALL\_PREFIX" which defaults
|
tree is set by the CMake variable "CMAKE\_INSTALL\_PREFIX" which defaults
|
||||||
to ${HOME}/.local
|
to ${HOME}/.local
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
There are 3 variants of CMake: a command-line version (cmake), a text mode
|
There are 3 variants of CMake: a command-line version (cmake), a text mode
|
||||||
UI version (ccmake), and a graphical GUI version (cmake-GUI). You can use
|
UI version (ccmake), and a graphical GUI version (cmake-GUI). You can use
|
||||||
any of them interchangeably to configure and create the LAMMPS build
|
any of them interchangeably to configure and create the LAMMPS build
|
||||||
@ -106,13 +100,10 @@ ccmake or cmake-gui) again from the same build directory and alter
|
|||||||
various options; see details below. Or you can remove the entire build
|
various options; see details below. Or you can remove the entire build
|
||||||
folder, recreate the directory and start over.
|
folder, recreate the directory and start over.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Command-line version of CMake**\ :
|
**Command-line version of CMake**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cmake [options ...] /path/to/lammps/cmake # build from any dir
|
cmake [options ...] /path/to/lammps/cmake # build from any dir
|
||||||
@ -124,7 +115,6 @@ cmake directory which contains the CMakeLists.txt file.
|
|||||||
The argument can be preceeded or followed by various CMake
|
The argument can be preceeded or followed by various CMake
|
||||||
command-line options. Several useful ones are:
|
command-line options. Several useful ones are:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D CMAKE_INSTALL_PREFIX=path # where to install LAMMPS executable/lib if desired
|
-D CMAKE_INSTALL_PREFIX=path # where to install LAMMPS executable/lib if desired
|
||||||
@ -168,13 +158,10 @@ In these cases it is usually better to first remove all the
|
|||||||
files/directories in the build directory, or start with a fresh build
|
files/directories in the build directory, or start with a fresh build
|
||||||
directory.
|
directory.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Curses version (terminal-style menu) of CMake**\ :
|
**Curses version (terminal-style menu) of CMake**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
ccmake ../cmake
|
ccmake ../cmake
|
||||||
@ -186,13 +173,10 @@ required to edit some of the entries of CMake configuration variables
|
|||||||
in between. Please see the `ccmake manual <https://cmake.org/cmake/help/latest/manual/ccmake.1.html>`_ for
|
in between. Please see the `ccmake manual <https://cmake.org/cmake/help/latest/manual/ccmake.1.html>`_ for
|
||||||
more information.
|
more information.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**GUI version of CMake**\ :
|
**GUI version of CMake**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cmake-gui ../cmake
|
cmake-gui ../cmake
|
||||||
@ -205,15 +189,12 @@ edit some of the entries of CMake configuration variables in between.
|
|||||||
Please see the `cmake-gui manual <https://cmake.org/cmake/help/latest/manual/cmake-gui.1.html>`_
|
Please see the `cmake-gui manual <https://cmake.org/cmake/help/latest/manual/cmake-gui.1.html>`_
|
||||||
for more information.
|
for more information.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Installing CMake**
|
**Installing CMake**
|
||||||
|
|
||||||
Check if your machine already has CMake installed:
|
Check if your machine already has CMake installed:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
which cmake # do you have it?
|
which cmake # do you have it?
|
||||||
@ -223,7 +204,6 @@ Check if your machine already has CMake installed:
|
|||||||
On clusters or supercomputers which use environment modules to manage
|
On clusters or supercomputers which use environment modules to manage
|
||||||
software packages, do this:
|
software packages, do this:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
module list # is a module for cmake already loaded?
|
module list # is a module for cmake already loaded?
|
||||||
|
|||||||
@ -4,10 +4,8 @@ Development build options (CMake only)
|
|||||||
The CMake build of LAMMPS has a few extra options which are useful during
|
The CMake build of LAMMPS has a few extra options which are useful during
|
||||||
development, testing or debugging.
|
development, testing or debugging.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _compilation:
|
.. _compilation:
|
||||||
|
|
||||||
Verify compilation flags
|
Verify compilation flags
|
||||||
@ -17,22 +15,18 @@ Sometimes it is necessary to verify the complete sequence of compilation flags
|
|||||||
generated by the CMake build. To enable a more verbose output during
|
generated by the CMake build. To enable a more verbose output during
|
||||||
compilation you can use the following option.
|
compilation you can use the following option.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D CMAKE_VERBOSE_MAKEFILE=value # value = no (default) or yes
|
-D CMAKE_VERBOSE_MAKEFILE=value # value = no (default) or yes
|
||||||
|
|
||||||
Another way of doing this without reconfiguration is calling make with variable VERBOSE set to 1:
|
Another way of doing this without reconfiguration is calling make with variable VERBOSE set to 1:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
make VERBOSE=1
|
make VERBOSE=1
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _sanitizer:
|
.. _sanitizer:
|
||||||
|
|
||||||
Address, Undefined Behavior, and Thread Sanitizer Support
|
Address, Undefined Behavior, and Thread Sanitizer Support
|
||||||
@ -47,17 +41,14 @@ The following settings allow you enable these features if your compiler supports
|
|||||||
it. Please note that they come with a performance hit. However, they are
|
it. Please note that they come with a performance hit. However, they are
|
||||||
usually faster than using tools like Valgrind.
|
usually faster than using tools like Valgrind.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D ENABLE_SANITIZE_ADDRESS=value # enable Address Sanitizer, value = no (default) or yes
|
-D ENABLE_SANITIZE_ADDRESS=value # enable Address Sanitizer, value = no (default) or yes
|
||||||
-D ENABLE_SANITIZE_UNDEFINED=value # enable Undefined Behaviour Sanitizer, value = no (default) or yes
|
-D ENABLE_SANITIZE_UNDEFINED=value # enable Undefined Behaviour Sanitizer, value = no (default) or yes
|
||||||
-D ENABLE_SANITIZE_THREAD=value # enable Thread Sanitizer, value = no (default) or yes
|
-D ENABLE_SANITIZE_THREAD=value # enable Thread Sanitizer, value = no (default) or yes
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _testing:
|
.. _testing:
|
||||||
|
|
||||||
Code Coverage and Testing
|
Code Coverage and Testing
|
||||||
@ -71,7 +62,6 @@ developers can run the tests directly on their workstation.
|
|||||||
|
|
||||||
this is incomplete and only represents a small subset of tests that we run
|
this is incomplete and only represents a small subset of tests that we run
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D ENABLE_TESTING=value # enable simple run tests of LAMMPS, value = no (default) or yes
|
-D ENABLE_TESTING=value # enable simple run tests of LAMMPS, value = no (default) or yes
|
||||||
@ -80,7 +70,6 @@ developers can run the tests directly on their workstation.
|
|||||||
|
|
||||||
If you enable testing in the CMake build it will create an additional target called "test". You can run them with:
|
If you enable testing in the CMake build it will create an additional target called "test". You can run them with:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
make test
|
make test
|
||||||
@ -92,14 +81,12 @@ faster.
|
|||||||
You can also collect code coverage metrics while running the tests by enabling
|
You can also collect code coverage metrics while running the tests by enabling
|
||||||
coverage support during building.
|
coverage support during building.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D ENABLE_COVERAGE=value # enable coverage measurements, value = no (default) or yes
|
-D ENABLE_COVERAGE=value # enable coverage measurements, value = no (default) or yes
|
||||||
|
|
||||||
This will also add the following targets to generate coverage reports after running the LAMMPS executable:
|
This will also add the following targets to generate coverage reports after running the LAMMPS executable:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
make test # run tests first!
|
make test # run tests first!
|
||||||
@ -108,7 +95,6 @@ This will also add the following targets to generate coverage reports after runn
|
|||||||
|
|
||||||
These reports require GCOVR to be installed. The easiest way to do this to install it via pip:
|
These reports require GCOVR to be installed. The easiest way to do this to install it via pip:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
pip install git+https://github.com/gcovr/gcovr.git
|
pip install git+https://github.com/gcovr/gcovr.git
|
||||||
|
|||||||
@ -4,7 +4,6 @@ Packages with extra build options
|
|||||||
When building with some packages, additional steps may be required,
|
When building with some packages, additional steps may be required,
|
||||||
in addition to:
|
in addition to:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ cmake -D PKG_NAME=yes
|
$ cmake -D PKG_NAME=yes
|
||||||
@ -57,7 +56,6 @@ This is the list of packages that may require additional steps.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _compress:
|
.. _compress:
|
||||||
|
|
||||||
COMPRESS package
|
COMPRESS package
|
||||||
@ -70,7 +68,6 @@ available on your system.
|
|||||||
|
|
||||||
If CMake cannot find the library, you can set these variables:
|
If CMake cannot find the library, you can set these variables:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D ZLIB_INCLUDE_DIR=path # path to zlib.h header file
|
-D ZLIB_INCLUDE_DIR=path # path to zlib.h header file
|
||||||
@ -82,10 +79,8 @@ If make cannot find the library, you can edit the file
|
|||||||
lib/compress/Makefile.lammps to specify the paths and library
|
lib/compress/Makefile.lammps to specify the paths and library
|
||||||
name.
|
name.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _gpu:
|
.. _gpu:
|
||||||
|
|
||||||
GPU package
|
GPU package
|
||||||
@ -96,7 +91,6 @@ which GPU hardware to build for.
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D GPU_API=value # value = opencl (default) or cuda
|
-D GPU_API=value # value = opencl (default) or cuda
|
||||||
@ -146,7 +140,6 @@ You can also build the library in one step from the lammps/src dir,
|
|||||||
using a command like these, which simply invoke the lib/gpu/Install.py
|
using a command like these, which simply invoke the lib/gpu/Install.py
|
||||||
script with the specified args:
|
script with the specified args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-gpu # print help message
|
$ make lib-gpu # print help message
|
||||||
@ -188,10 +181,8 @@ lib/gpu/Makefile.lammps may need to be edited.
|
|||||||
package uses the library settings from the lib/gpu/Makefile.machine
|
package uses the library settings from the lib/gpu/Makefile.machine
|
||||||
used to build the GPU library.
|
used to build the GPU library.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _kim:
|
.. _kim:
|
||||||
|
|
||||||
KIM package
|
KIM package
|
||||||
@ -214,7 +205,6 @@ minutes to hours) to build. Of course you only need to do that once.)
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D DOWNLOAD_KIM=value # download OpenKIM API v2 for build, value = no (default) or yes
|
-D DOWNLOAD_KIM=value # download OpenKIM API v2 for build, value = no (default) or yes
|
||||||
@ -251,7 +241,6 @@ follow the instructions in lib/kim/README. You can also do it in one
|
|||||||
step from the lammps/src dir, using a command like these, which simply
|
step from the lammps/src dir, using a command like these, which simply
|
||||||
invoke the lib/kim/Install.py script with the specified args.
|
invoke the lib/kim/Install.py script with the specified args.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-kim # print help message
|
$ make lib-kim # print help message
|
||||||
@ -272,7 +261,6 @@ using. For example:
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _kokkos:
|
.. _kokkos:
|
||||||
|
|
||||||
KOKKOS package
|
KOKKOS package
|
||||||
@ -323,7 +311,6 @@ case-sensitive values, e.g. BDW, not bdw.
|
|||||||
|
|
||||||
For multicore CPUs using OpenMP, set these 2 variables.
|
For multicore CPUs using OpenMP, set these 2 variables.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D KOKKOS_ARCH=archCPU # archCPU = CPU from list above
|
-D KOKKOS_ARCH=archCPU # archCPU = CPU from list above
|
||||||
@ -331,7 +318,6 @@ For multicore CPUs using OpenMP, set these 2 variables.
|
|||||||
|
|
||||||
For Intel KNLs using OpenMP, set these 2 variables:
|
For Intel KNLs using OpenMP, set these 2 variables:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D KOKKOS_ARCH=KNL
|
-D KOKKOS_ARCH=KNL
|
||||||
@ -339,7 +325,6 @@ For Intel KNLs using OpenMP, set these 2 variables:
|
|||||||
|
|
||||||
For NVIDIA GPUs using CUDA, set these 4 variables:
|
For NVIDIA GPUs using CUDA, set these 4 variables:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D KOKKOS_ARCH="archCPU;archGPU" # archCPU = CPU from list above that is hosting the GPU
|
-D KOKKOS_ARCH="archCPU;archGPU" # archCPU = CPU from list above that is hosting the GPU
|
||||||
@ -352,7 +337,6 @@ The wrapper value is the Cuda nvcc compiler wrapper provided in the
|
|||||||
Kokkos library: lib/kokkos/bin/nvcc\_wrapper. The setting should
|
Kokkos library: lib/kokkos/bin/nvcc\_wrapper. The setting should
|
||||||
include the full path name to the wrapper, e.g.
|
include the full path name to the wrapper, e.g.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D CMAKE_CXX_COMPILER=/home/username/lammps/lib/kokkos/bin/nvcc_wrapper
|
-D CMAKE_CXX_COMPILER=/home/username/lammps/lib/kokkos/bin/nvcc_wrapper
|
||||||
@ -365,7 +349,6 @@ src/MAKE/OPTIONS/Makefile.kokkos\* files for examples.
|
|||||||
|
|
||||||
For multicore CPUs using OpenMP:
|
For multicore CPUs using OpenMP:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
KOKKOS_DEVICES = OpenMP
|
KOKKOS_DEVICES = OpenMP
|
||||||
@ -373,7 +356,6 @@ For multicore CPUs using OpenMP:
|
|||||||
|
|
||||||
For Intel KNLs using OpenMP:
|
For Intel KNLs using OpenMP:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
KOKKOS_DEVICES = OpenMP
|
KOKKOS_DEVICES = OpenMP
|
||||||
@ -381,7 +363,6 @@ For Intel KNLs using OpenMP:
|
|||||||
|
|
||||||
For NVIDIA GPUs using CUDA:
|
For NVIDIA GPUs using CUDA:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
KOKKOS_DEVICES = Cuda
|
KOKKOS_DEVICES = Cuda
|
||||||
@ -396,17 +377,14 @@ The 2 lines define a nvcc wrapper compiler, which will use nvcc for
|
|||||||
compiling CUDA files and use a C++ compiler for non-Kokkos, non-CUDA
|
compiling CUDA files and use a C++ compiler for non-Kokkos, non-CUDA
|
||||||
files.
|
files.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
KOKKOS_ABSOLUTE_PATH = $(shell cd $(KOKKOS_PATH); pwd)
|
KOKKOS_ABSOLUTE_PATH = $(shell cd $(KOKKOS_PATH); pwd)
|
||||||
export OMPI_CXX = $(KOKKOS_ABSOLUTE_PATH)/config/nvcc_wrapper
|
export OMPI_CXX = $(KOKKOS_ABSOLUTE_PATH)/config/nvcc_wrapper
|
||||||
CC = mpicxx
|
CC = mpicxx
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _latte:
|
.. _latte:
|
||||||
|
|
||||||
LATTE package
|
LATTE package
|
||||||
@ -417,7 +395,6 @@ library.
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D DOWNLOAD_LATTE=value # download LATTE for build, value = no (default) or yes
|
-D DOWNLOAD_LATTE=value # download LATTE for build, value = no (default) or yes
|
||||||
@ -437,7 +414,6 @@ one step from the lammps/src dir, using a command like these, which
|
|||||||
simply invokes the lib/latte/Install.py script with the specified
|
simply invokes the lib/latte/Install.py script with the specified
|
||||||
args:
|
args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-latte # print help message
|
$ make lib-latte # print help message
|
||||||
@ -452,10 +428,8 @@ dir. When LAMMPS itself is built it will use these links. You should
|
|||||||
also check that the Makefile.lammps file you create is appropriate for
|
also check that the Makefile.lammps file you create is appropriate for
|
||||||
the compiler you use on your system to build LATTE.
|
the compiler you use on your system to build LATTE.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _message:
|
.. _message:
|
||||||
|
|
||||||
MESSAGE package
|
MESSAGE package
|
||||||
@ -467,7 +441,6 @@ be installed on your system.
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D MESSAGE_ZMQ=value # build with ZeroMQ support, value = no (default) or yes
|
-D MESSAGE_ZMQ=value # build with ZeroMQ support, value = no (default) or yes
|
||||||
@ -482,7 +455,6 @@ follow the instructions in lib/message/README. You can also do it in
|
|||||||
one step from the lammps/src dir, using a command like these, which
|
one step from the lammps/src dir, using a command like these, which
|
||||||
simply invoke the lib/message/Install.py script with the specified args:
|
simply invoke the lib/message/Install.py script with the specified args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-message # print help message
|
$ make lib-message # print help message
|
||||||
@ -494,10 +466,8 @@ and lib/message/Makefile.lammps. The latter is copied from an
|
|||||||
existing Makefile.lammps.\* and has settings to link with the ZeroMQ
|
existing Makefile.lammps.\* and has settings to link with the ZeroMQ
|
||||||
library if requested in the build.
|
library if requested in the build.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _mscg:
|
.. _mscg:
|
||||||
|
|
||||||
MSCG package
|
MSCG package
|
||||||
@ -511,7 +481,6 @@ lib/mscg/README and MSCG/Install files for more details.
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D DOWNLOAD_MSCG=value # download MSCG for build, value = no (default) or yes
|
-D DOWNLOAD_MSCG=value # download MSCG for build, value = no (default) or yes
|
||||||
@ -532,7 +501,6 @@ follow the instructions in lib/mscg/README. You can also do it in one
|
|||||||
step from the lammps/src dir, using a command like these, which simply
|
step from the lammps/src dir, using a command like these, which simply
|
||||||
invoke the lib/mscg/Install.py script with the specified args:
|
invoke the lib/mscg/Install.py script with the specified args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-mscg # print help message
|
$ make lib-mscg # print help message
|
||||||
@ -547,10 +515,8 @@ be created in lib/mscg to point to the MS-CG src/installation dir.
|
|||||||
When LAMMPS is built in src it will use these links. You should not
|
When LAMMPS is built in src it will use these links. You should not
|
||||||
need to edit the lib/mscg/Makefile.lammps file.
|
need to edit the lib/mscg/Makefile.lammps file.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _opt:
|
.. _opt:
|
||||||
|
|
||||||
OPT package
|
OPT package
|
||||||
@ -567,10 +533,8 @@ package when using Intel compilers. It should be added to the CCFLAGS
|
|||||||
line of your Makefile.machine. See src/MAKE/OPTIONS/Makefile.opt for
|
line of your Makefile.machine. See src/MAKE/OPTIONS/Makefile.opt for
|
||||||
an example.
|
an example.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _poems:
|
.. _poems:
|
||||||
|
|
||||||
POEMS package
|
POEMS package
|
||||||
@ -588,7 +552,6 @@ lib/poems/README. You can also do it in one step from the lammps/src
|
|||||||
dir, using a command like these, which simply invoke the
|
dir, using a command like these, which simply invoke the
|
||||||
lib/poems/Install.py script with the specified args:
|
lib/poems/Install.py script with the specified args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-poems # print help message
|
$ make lib-poems # print help message
|
||||||
@ -604,10 +567,8 @@ necessary, you can edit/create a new lib/poems/Makefile.machine file
|
|||||||
for your system, which should define an EXTRAMAKE variable to specify
|
for your system, which should define an EXTRAMAKE variable to specify
|
||||||
a corresponding Makefile.lammps.machine file.
|
a corresponding Makefile.lammps.machine file.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _python:
|
.. _python:
|
||||||
|
|
||||||
PYTHON package
|
PYTHON package
|
||||||
@ -620,7 +581,6 @@ lib/python/README for more details.
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D PYTHON_EXECUTABLE=path # path to Python executable to use
|
-D PYTHON_EXECUTABLE=path # path to Python executable to use
|
||||||
@ -639,10 +599,8 @@ process to find Python. You should only need to create a new
|
|||||||
Makefile.lammps.\* file (and copy it to Makefile.lammps) if the LAMMPS
|
Makefile.lammps.\* file (and copy it to Makefile.lammps) if the LAMMPS
|
||||||
build fails.
|
build fails.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _voronoi:
|
.. _voronoi:
|
||||||
|
|
||||||
VORONOI package
|
VORONOI package
|
||||||
@ -652,11 +610,8 @@ To build with this package, you must download and build the `Voro++ library <vor
|
|||||||
|
|
||||||
.. _voro-home: http://math.lbl.gov/voro++
|
.. _voro-home: http://math.lbl.gov/voro++
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D DOWNLOAD_VORO=value # download Voro++ for build, value = no (default) or yes
|
-D DOWNLOAD_VORO=value # download Voro++ for build, value = no (default) or yes
|
||||||
@ -678,7 +633,6 @@ one step from the lammps/src dir, using a command like these, which
|
|||||||
simply invoke the lib/voronoi/Install.py script with the specified
|
simply invoke the lib/voronoi/Install.py script with the specified
|
||||||
args:
|
args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-voronoi # print help message
|
$ make lib-voronoi # print help message
|
||||||
@ -691,10 +645,8 @@ created in lib/voronoi to point to the Voro++ src dir. When LAMMPS
|
|||||||
builds in src it will use these links. You should not need to edit
|
builds in src it will use these links. You should not need to edit
|
||||||
the lib/voronoi/Makefile.lammps file.
|
the lib/voronoi/Makefile.lammps file.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-adios:
|
.. _user-adios:
|
||||||
|
|
||||||
USER-ADIOS package
|
USER-ADIOS package
|
||||||
@ -709,7 +661,6 @@ installation and the instructions below are followed for the respective build sy
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D ADIOS2_DIR=path # path is where ADIOS 2.x is installed
|
-D ADIOS2_DIR=path # path is where ADIOS 2.x is installed
|
||||||
@ -719,22 +670,18 @@ installation and the instructions below are followed for the respective build sy
|
|||||||
|
|
||||||
Turn on the USER-ADIOS package before building LAMMPS. If the ADIOS 2.x software is installed in PATH, there is nothing else to do:
|
Turn on the USER-ADIOS package before building LAMMPS. If the ADIOS 2.x software is installed in PATH, there is nothing else to do:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make yes-user-adios
|
$ make yes-user-adios
|
||||||
|
|
||||||
otherwise, set ADIOS2\_DIR environment variable when turning on the package:
|
otherwise, set ADIOS2\_DIR environment variable when turning on the package:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ ADIOS2_DIR=path make yes-user-adios # path is where ADIOS 2.x is installed
|
$ ADIOS2_DIR=path make yes-user-adios # path is where ADIOS 2.x is installed
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-atc:
|
.. _user-atc:
|
||||||
|
|
||||||
USER-ATC package
|
USER-ATC package
|
||||||
@ -755,7 +702,6 @@ lib/atc/README. You can also do it in one step from the lammps/src
|
|||||||
dir, using a command like these, which simply invoke the
|
dir, using a command like these, which simply invoke the
|
||||||
lib/atc/Install.py script with the specified args:
|
lib/atc/Install.py script with the specified args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-atc # print help message
|
$ make lib-atc # print help message
|
||||||
@ -777,7 +723,6 @@ can either exist on your system, or you can use the files provided in
|
|||||||
lib/linalg. In the latter case you also need to build the library in
|
lib/linalg. In the latter case you also need to build the library in
|
||||||
lib/linalg with a command like these:
|
lib/linalg with a command like these:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-linalg # print help message
|
$ make lib-linalg # print help message
|
||||||
@ -785,10 +730,8 @@ lib/linalg with a command like these:
|
|||||||
$ make lib-linalg args="-m mpi" # build with default MPI Fortran compiler (settings as with "make mpi")
|
$ make lib-linalg args="-m mpi" # build with default MPI Fortran compiler (settings as with "make mpi")
|
||||||
$ make lib-linalg args="-m gfortran" # build with GNU Fortran compiler
|
$ make lib-linalg args="-m gfortran" # build with GNU Fortran compiler
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-awpmd:
|
.. _user-awpmd:
|
||||||
|
|
||||||
USER-AWPMD package
|
USER-AWPMD package
|
||||||
@ -806,7 +749,6 @@ lib/awpmd/README. You can also do it in one step from the lammps/src
|
|||||||
dir, using a command like these, which simply invoke the
|
dir, using a command like these, which simply invoke the
|
||||||
lib/awpmd/Install.py script with the specified args:
|
lib/awpmd/Install.py script with the specified args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-awpmd # print help message
|
$ make lib-awpmd # print help message
|
||||||
@ -828,7 +770,6 @@ these can either exist on your system, or you can use the files
|
|||||||
provided in lib/linalg. In the latter case you also need to build the
|
provided in lib/linalg. In the latter case you also need to build the
|
||||||
library in lib/linalg with a command like these:
|
library in lib/linalg with a command like these:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-linalg # print help message
|
$ make lib-linalg # print help message
|
||||||
@ -836,10 +777,8 @@ library in lib/linalg with a command like these:
|
|||||||
$ make lib-linalg args="-m mpi" # build with default MPI Fortran compiler (settings as with "make mpi")
|
$ make lib-linalg args="-m mpi" # build with default MPI Fortran compiler (settings as with "make mpi")
|
||||||
$ make lib-linalg args="-m gfortran" # build with GNU Fortran compiler
|
$ make lib-linalg args="-m gfortran" # build with GNU Fortran compiler
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-colvars:
|
.. _user-colvars:
|
||||||
|
|
||||||
USER-COLVARS package
|
USER-COLVARS package
|
||||||
@ -880,7 +819,6 @@ LAMMPS. This is best carried out from the LAMMPS src directory using a
|
|||||||
command like these, which simply invoke the lib/colvars/Install.py script with
|
command like these, which simply invoke the lib/colvars/Install.py script with
|
||||||
the specified args:
|
the specified args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-colvars # print help message
|
$ make lib-colvars # print help message
|
||||||
@ -905,10 +843,8 @@ The build should produce two files: the library lib/colvars/libcolvars.a
|
|||||||
lib/colvars/Makefile.lammps. The latter is auto-generated, and normally does
|
lib/colvars/Makefile.lammps. The latter is auto-generated, and normally does
|
||||||
not need to be edited.
|
not need to be edited.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-plumed:
|
.. _user-plumed:
|
||||||
|
|
||||||
USER-PLUMED package
|
USER-PLUMED package
|
||||||
@ -923,7 +859,6 @@ The USER-PLUMED package has been tested to work with Plumed versions
|
|||||||
2.4.x, 2.5.x, and 2.6.x and will error out, when trying to run calculations
|
2.4.x, 2.5.x, and 2.6.x and will error out, when trying to run calculations
|
||||||
with a different version of the Plumed kernel.
|
with a different version of the Plumed kernel.
|
||||||
|
|
||||||
|
|
||||||
PLUMED can be linked into MD codes in three different modes: static,
|
PLUMED can be linked into MD codes in three different modes: static,
|
||||||
shared, and runtime. With the "static" mode, all the code that PLUMED
|
shared, and runtime. With the "static" mode, all the code that PLUMED
|
||||||
requires is linked statically into LAMMPS. LAMMPS is then fully
|
requires is linked statically into LAMMPS. LAMMPS is then fully
|
||||||
@ -959,7 +894,6 @@ must ensure that GSL is installed in locations that are specified in
|
|||||||
your environment. There are then two additional commands that control
|
your environment. There are then two additional commands that control
|
||||||
the manner in which PLUMED is obtained and linked into LAMMPS.
|
the manner in which PLUMED is obtained and linked into LAMMPS.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D DOWNLOAD_PLUMED=value # download PLUMED for build, value = no (default) or yes
|
-D DOWNLOAD_PLUMED=value # download PLUMED for build, value = no (default) or yes
|
||||||
@ -995,7 +929,6 @@ discussion of PLUMED linkage modes, please see above.
|
|||||||
Download/compilation/configuration of the plumed library can be done
|
Download/compilation/configuration of the plumed library can be done
|
||||||
from the src folder through the following make args:
|
from the src folder through the following make args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-plumed # print help message
|
$ make lib-plumed # print help message
|
||||||
@ -1011,7 +944,6 @@ suitable for LAMMPS to compile and link PLUMED using the desired linkage
|
|||||||
mode. After this step is completed, you can install the USER-PLUMED
|
mode. After this step is completed, you can install the USER-PLUMED
|
||||||
package and compile LAMMPS in the usual manner:
|
package and compile LAMMPS in the usual manner:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make yes-user-plumed
|
$ make yes-user-plumed
|
||||||
@ -1031,10 +963,8 @@ lib-plumed" with the desired settings **and** do a re-install if the
|
|||||||
USER-PLUMED package with "make yes-user-plumed" to update the required
|
USER-PLUMED package with "make yes-user-plumed" to update the required
|
||||||
makefile settings with the changes in the lib/plumed folder.
|
makefile settings with the changes in the lib/plumed folder.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-h5md:
|
.. _user-h5md:
|
||||||
|
|
||||||
USER-H5MD package
|
USER-H5MD package
|
||||||
@ -1062,7 +992,6 @@ lib/h5md/README. You can also do it in one step from the lammps/src
|
|||||||
dir, using a command like these, which simply invoke the
|
dir, using a command like these, which simply invoke the
|
||||||
lib/h5md/Install.py script with the specified args:
|
lib/h5md/Install.py script with the specified args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-h5md # print help message
|
$ make lib-h5md # print help message
|
||||||
@ -1076,10 +1005,8 @@ lib/h5md/Makefile.machine file for your system, which should define an
|
|||||||
EXTRAMAKE variable to specify a corresponding Makefile.lammps.machine
|
EXTRAMAKE variable to specify a corresponding Makefile.lammps.machine
|
||||||
file.
|
file.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-intel:
|
.. _user-intel:
|
||||||
|
|
||||||
USER-INTEL package
|
USER-INTEL package
|
||||||
@ -1093,7 +1020,6 @@ on the :doc:`Speed intel <Speed_intel>` doc page.
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D INTEL_ARCH=value # value = cpu (default) or knl
|
-D INTEL_ARCH=value # value = cpu (default) or knl
|
||||||
@ -1120,7 +1046,6 @@ additional information.
|
|||||||
|
|
||||||
For CPUs:
|
For CPUs:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits -qopt-zmm-usage=high
|
OPTFLAGS = -xHost -O2 -fp-model fast=2 -no-prec-div -qoverride-limits -qopt-zmm-usage=high
|
||||||
@ -1130,7 +1055,6 @@ For CPUs:
|
|||||||
|
|
||||||
For KNLs:
|
For KNLs:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
OPTFLAGS = -xMIC-AVX512 -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
|
OPTFLAGS = -xMIC-AVX512 -O2 -fp-model fast=2 -no-prec-div -qoverride-limits
|
||||||
@ -1138,10 +1062,8 @@ For KNLs:
|
|||||||
LINKFLAGS = -g -qopenmp $(OPTFLAGS)
|
LINKFLAGS = -g -qopenmp $(OPTFLAGS)
|
||||||
LIB = -ltbbmalloc
|
LIB = -ltbbmalloc
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-molfile:
|
.. _user-molfile:
|
||||||
|
|
||||||
USER-MOLFILE package
|
USER-MOLFILE package
|
||||||
@ -1149,7 +1071,6 @@ USER-MOLFILE package
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D MOLFILE_INCLUDE_DIRS=path # (optional) path where VMD molfile plugin headers are installed
|
-D MOLFILE_INCLUDE_DIRS=path # (optional) path where VMD molfile plugin headers are installed
|
||||||
@ -1176,10 +1097,8 @@ default headers, but these are not compatible with all VMD versions,
|
|||||||
so it is often best to change this setting to the location of the
|
so it is often best to change this setting to the location of the
|
||||||
same include files of the local VMD installation in use.
|
same include files of the local VMD installation in use.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-netcdf:
|
.. _user-netcdf:
|
||||||
|
|
||||||
USER-NETCDF package
|
USER-NETCDF package
|
||||||
@ -1205,10 +1124,8 @@ and library files which LAMMPS needs to build with this package. If
|
|||||||
the settings are not valid for your system, you will need to edit the
|
the settings are not valid for your system, you will need to edit the
|
||||||
Makefile.lammps file. See lib/netcdf/README for details.
|
Makefile.lammps file. See lib/netcdf/README for details.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-omp:
|
.. _user-omp:
|
||||||
|
|
||||||
USER-OMP package
|
USER-OMP package
|
||||||
@ -1227,7 +1144,6 @@ styles supporting OpenMP) the following compile and link flags must
|
|||||||
be added to your Makefile.machine file.
|
be added to your Makefile.machine file.
|
||||||
See src/MAKE/OPTIONS/Makefile.omp for an example.
|
See src/MAKE/OPTIONS/Makefile.omp for an example.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
CCFLAGS: -fopenmp # for GNU and Clang Compilers
|
CCFLAGS: -fopenmp # for GNU and Clang Compilers
|
||||||
@ -1239,10 +1155,8 @@ For other platforms and compilers, please consult the documentation
|
|||||||
about OpenMP support for your compiler. Please see the note about
|
about OpenMP support for your compiler. Please see the note about
|
||||||
how to address compatibility :ref:`issues with the 'default(none)' directive <default-none-issues>` of some compilers.
|
how to address compatibility :ref:`issues with the 'default(none)' directive <default-none-issues>` of some compilers.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-qmmm:
|
.. _user-qmmm:
|
||||||
|
|
||||||
USER-QMMM package
|
USER-QMMM package
|
||||||
@ -1282,7 +1196,6 @@ go back to the lib/qmmm folder and follow the instructions on the
|
|||||||
README file to build the combined LAMMPS/QE QM/MM executable
|
README file to build the combined LAMMPS/QE QM/MM executable
|
||||||
(pwqmmm.x) in the lib/qmmm folder. You need to make certain, that
|
(pwqmmm.x) in the lib/qmmm folder. You need to make certain, that
|
||||||
|
|
||||||
|
|
||||||
**Traditional make**\ :
|
**Traditional make**\ :
|
||||||
|
|
||||||
Before building LAMMPS, you must build the QMMM library in lib/qmmm.
|
Before building LAMMPS, you must build the QMMM library in lib/qmmm.
|
||||||
@ -1291,7 +1204,6 @@ explained in lib/qmmm/README. You can also do it in one step from the
|
|||||||
lammps/src dir, using a command like these, which simply invoke the
|
lammps/src dir, using a command like these, which simply invoke the
|
||||||
lib/qmmm/Install.py script with the specified args:
|
lib/qmmm/Install.py script with the specified args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-qmmm # print help message
|
$ make lib-qmmm # print help message
|
||||||
@ -1316,7 +1228,6 @@ lib/qmmm folder.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-quip:
|
.. _user-quip:
|
||||||
|
|
||||||
USER-QUIP package
|
USER-QUIP package
|
||||||
@ -1330,7 +1241,6 @@ lib/quip/README file for details on how to do this.
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D QUIP_LIBRARY=path # path to libquip.a (only needed if a custom location)
|
-D QUIP_LIBRARY=path # path to libquip.a (only needed if a custom location)
|
||||||
@ -1349,10 +1259,8 @@ LAMMPS with this package. You should only need to edit
|
|||||||
Makefile.lammps if the LAMMPS build can not use its settings to
|
Makefile.lammps if the LAMMPS build can not use its settings to
|
||||||
successfully build on your system.
|
successfully build on your system.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-scafacos:
|
.. _user-scafacos:
|
||||||
|
|
||||||
USER-SCAFACOS package
|
USER-SCAFACOS package
|
||||||
@ -1362,11 +1270,8 @@ To build with this package, you must download and build the `ScaFaCoS Coulomb so
|
|||||||
|
|
||||||
.. _scafacos-home: http://www.scafacos.de
|
.. _scafacos-home: http://www.scafacos.de
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D DOWNLOAD_SCAFACOS=value # download ScaFaCoS for build, value = no (default) or yes
|
-D DOWNLOAD_SCAFACOS=value # download ScaFaCoS for build, value = no (default) or yes
|
||||||
@ -1397,10 +1302,8 @@ created in lib/scafacos to point to the ScaFaCoS src dir. When LAMMPS
|
|||||||
builds in src it will use these links. You should not need to edit
|
builds in src it will use these links. You should not need to edit
|
||||||
the lib/scafacos/Makefile.lammps file.
|
the lib/scafacos/Makefile.lammps file.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-smd:
|
.. _user-smd:
|
||||||
|
|
||||||
USER-SMD package
|
USER-SMD package
|
||||||
@ -1411,7 +1314,6 @@ Eigen3 is a template library, so you do not need to build it.
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D DOWNLOAD_EIGEN3 # download Eigen3, value = no (default) or yes
|
-D DOWNLOAD_EIGEN3 # download Eigen3, value = no (default) or yes
|
||||||
@ -1429,7 +1331,6 @@ instructions in lib/smd/README. You can also do it in one step from
|
|||||||
the lammps/src dir, using a command like these, which simply invoke
|
the lammps/src dir, using a command like these, which simply invoke
|
||||||
the lib/smd/Install.py script with the specified args:
|
the lib/smd/Install.py script with the specified args:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make lib-smd # print help message
|
$ make lib-smd # print help message
|
||||||
@ -1441,10 +1342,8 @@ lib/smd to point to the Eigen dir. When LAMMPS builds it will use
|
|||||||
this link. You should not need to edit the lib/smd/Makefile.lammps
|
this link. You should not need to edit the lib/smd/Makefile.lammps
|
||||||
file.
|
file.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _user-vtk:
|
.. _user-vtk:
|
||||||
|
|
||||||
USER-VTK package
|
USER-VTK package
|
||||||
|
|||||||
@ -31,7 +31,6 @@ these 2 files:
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Link with LAMMPS as a static library**\ :
|
**Link with LAMMPS as a static library**\ :
|
||||||
|
|
||||||
The calling application can link to LAMMPS as a static library with
|
The calling application can link to LAMMPS as a static library with
|
||||||
@ -54,7 +53,6 @@ link the coupled executable are then:
|
|||||||
mpicc -c -O $(pkgconf liblammps --cflags) caller.c
|
mpicc -c -O $(pkgconf liblammps --cflags) caller.c
|
||||||
mpicxx -o caller caller.o -$(pkgconf liblammps --libs)
|
mpicxx -o caller caller.o -$(pkgconf liblammps --libs)
|
||||||
|
|
||||||
|
|
||||||
*Traditional make*\ :
|
*Traditional make*\ :
|
||||||
|
|
||||||
This assumes that LAMMPS has been compiled in the folder
|
This assumes that LAMMPS has been compiled in the folder
|
||||||
@ -193,7 +191,6 @@ would add something like this to your ~/.profile file:
|
|||||||
For the csh or tcsh shells, you would equivalently add something like this
|
For the csh or tcsh shells, you would equivalently add something like this
|
||||||
to your ~/.cshrc file:
|
to your ~/.cshrc file:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: csh
|
.. code-block:: csh
|
||||||
|
|
||||||
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${HOME}/lammps/src
|
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${HOME}/lammps/src
|
||||||
@ -212,7 +209,6 @@ You can verify whether all required shared libraries are found with the
|
|||||||
libc.so.6 => /lib64/libc.so.6 (0x00007fc91b65b000)
|
libc.so.6 => /lib64/libc.so.6 (0x00007fc91b65b000)
|
||||||
/lib64/ld-linux-x86-64.so.2 (0x00007fc91c094000)
|
/lib64/ld-linux-x86-64.so.2 (0x00007fc91c094000)
|
||||||
|
|
||||||
|
|
||||||
If a required library is missing, you would get a 'not found' entry:
|
If a required library is missing, you would get a 'not found' entry:
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
@ -226,10 +222,8 @@ If a required library is missing, you would get a 'not found' entry:
|
|||||||
libc.so.6 => /usr/lib64/libc.so.6 (0x00007fb7c7b5d000)
|
libc.so.6 => /usr/lib64/libc.so.6 (0x00007fb7c7b5d000)
|
||||||
/lib64/ld-linux-x86-64.so.2 (0x00007fb7c80a2000)
|
/lib64/ld-linux-x86-64.so.2 (0x00007fb7c80a2000)
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Calling the LAMMPS library**\ :
|
**Calling the LAMMPS library**\ :
|
||||||
|
|
||||||
Either flavor of library (static or shared) allows one or more LAMMPS
|
Either flavor of library (static or shared) allows one or more LAMMPS
|
||||||
|
|||||||
@ -73,7 +73,6 @@ in the LAMMPS distribution. Typing "make machine" uses
|
|||||||
use Makefile.serial and Makefile.mpi, respectively. Other makefiles
|
use Makefile.serial and Makefile.mpi, respectively. Other makefiles
|
||||||
are in these directories:
|
are in these directories:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
OPTIONS # Makefiles which enable specific options
|
OPTIONS # Makefiles which enable specific options
|
||||||
@ -93,7 +92,6 @@ customized machine Makefile are contributed by users. Since both
|
|||||||
compilers, OS configurations, and LAMMPS itself keep changing, their
|
compilers, OS configurations, and LAMMPS itself keep changing, their
|
||||||
settings may become outdated:
|
settings may become outdated:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
make mac # build serial LAMMPS on a Mac
|
make mac # build serial LAMMPS on a Mac
|
||||||
|
|||||||
@ -47,14 +47,12 @@ versus make.
|
|||||||
|
|
||||||
**CMake build**\ :
|
**CMake build**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D PKG_NAME=value # yes or no (default)
|
-D PKG_NAME=value # yes or no (default)
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D PKG_MANYBODY=yes
|
-D PKG_MANYBODY=yes
|
||||||
@ -76,7 +74,6 @@ once with CMake.
|
|||||||
|
|
||||||
**Traditional make**\ :
|
**Traditional make**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cd lammps/src
|
cd lammps/src
|
||||||
@ -87,7 +84,6 @@ once with CMake.
|
|||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
make no-rigid
|
make no-rigid
|
||||||
@ -132,10 +128,8 @@ src directory.
|
|||||||
That is no longer the case, so that CMake will build as-is without the
|
That is no longer the case, so that CMake will build as-is without the
|
||||||
need to un-install those packages.
|
need to un-install those packages.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**CMake shortcuts for installing many packages**\ :
|
**CMake shortcuts for installing many packages**\ :
|
||||||
|
|
||||||
Instead of specifying all the CMake options via the command-line,
|
Instead of specifying all the CMake options via the command-line,
|
||||||
@ -169,7 +163,6 @@ one of them as a starting point and customize it to your needs.
|
|||||||
|
|
||||||
**Example:**
|
**Example:**
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
# build LAMMPS with most commonly used packages, but then remove
|
# build LAMMPS with most commonly used packages, but then remove
|
||||||
@ -186,10 +179,8 @@ one of them as a starting point and customize it to your needs.
|
|||||||
# but leaving all other settings untouched. You can run:
|
# but leaving all other settings untouched. You can run:
|
||||||
cmake -C ../cmake/presets/no_all.cmake .
|
cmake -C ../cmake/presets/no_all.cmake .
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Make shortcuts for installing many packages**\ :
|
**Make shortcuts for installing many packages**\ :
|
||||||
|
|
||||||
The following commands are useful for managing package source files
|
The following commands are useful for managing package source files
|
||||||
|
|||||||
@ -14,10 +14,8 @@ explain how to do this for building both with CMake and make.
|
|||||||
* :ref:`Workaround for long long integers <longlong>`
|
* :ref:`Workaround for long long integers <longlong>`
|
||||||
* :ref:`Error handling exceptions <exceptions>` when using LAMMPS as a library
|
* :ref:`Error handling exceptions <exceptions>` when using LAMMPS as a library
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _cxx11:
|
.. _cxx11:
|
||||||
|
|
||||||
C++11 standard compliance
|
C++11 standard compliance
|
||||||
@ -35,7 +33,6 @@ flags to enable C++11 compliance. Example for GNU c++ 4.8.x:
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _fft:
|
.. _fft:
|
||||||
|
|
||||||
FFT library
|
FFT library
|
||||||
@ -49,7 +46,6 @@ LAMMPS can use them if they are available on your system.
|
|||||||
|
|
||||||
**CMake variables**\ :
|
**CMake variables**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D FFT=value # FFTW3 or MKL or KISS, default is FFTW3 if found, else KISS
|
-D FFT=value # FFTW3 or MKL or KISS, default is FFTW3 if found, else KISS
|
||||||
@ -69,7 +65,6 @@ OpenMP threads are enabled and a packages like KOKKOS or USER-OMP is
|
|||||||
used. If CMake cannot detect the FFT library, you can set these variables
|
used. If CMake cannot detect the FFT library, you can set these variables
|
||||||
to assist:
|
to assist:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D FFTW3_INCLUDE_DIRS=path # path to FFTW3 include files
|
-D FFTW3_INCLUDE_DIRS=path # path to FFTW3 include files
|
||||||
@ -81,7 +76,6 @@ to assist:
|
|||||||
|
|
||||||
**Makefile.machine settings**\ :
|
**Makefile.machine settings**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
FFT_INC = -DFFT_FFTW3 # -DFFT_FFTW3, -DFFT_FFTW (same as -DFFT_FFTW3), -DFFT_MKL, or -DFFT_KISS
|
FFT_INC = -DFFT_FFTW3 # -DFFT_FFTW3, -DFFT_FFTW (same as -DFFT_FFTW3), -DFFT_MKL, or -DFFT_KISS
|
||||||
@ -93,7 +87,6 @@ to assist:
|
|||||||
|
|
||||||
# default is FFT\_PACK\_ARRAY if not specified
|
# default is FFT\_PACK\_ARRAY if not specified
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
FFT_INC = -I/usr/local/include
|
FFT_INC = -I/usr/local/include
|
||||||
@ -159,7 +152,6 @@ library a second time with support for single-precision.
|
|||||||
For FFTW3, do the following, which should produce the additional
|
For FFTW3, do the following, which should produce the additional
|
||||||
library libfftw3f.a or libfftw3f.so.
|
library libfftw3f.a or libfftw3f.so.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
make clean
|
make clean
|
||||||
@ -172,10 +164,8 @@ Depending on the machine, the size of the FFT grid, the number of
|
|||||||
processors used, one option may be slightly faster. The default is
|
processors used, one option may be slightly faster. The default is
|
||||||
ARRAY mode.
|
ARRAY mode.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _size:
|
.. _size:
|
||||||
|
|
||||||
Size of LAMMPS data types
|
Size of LAMMPS data types
|
||||||
@ -187,14 +177,12 @@ adequate.
|
|||||||
|
|
||||||
**CMake variable**\ :
|
**CMake variable**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D LAMMPS_SIZES=value # smallbig (default) or bigbig or smallsmall
|
-D LAMMPS_SIZES=value # smallbig (default) or bigbig or smallsmall
|
||||||
|
|
||||||
**Makefile.machine setting**\ :
|
**Makefile.machine setting**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
LMP_INC = -DLAMMPS_SMALLBIG # or -DLAMMPS_BIGBIG or -DLAMMPS_SMALLSMALL
|
LMP_INC = -DLAMMPS_SMALLBIG # or -DLAMMPS_BIGBIG or -DLAMMPS_SMALLSMALL
|
||||||
@ -249,10 +237,8 @@ compiled with the same size setting, or the link will fail. A CMake
|
|||||||
build does this automatically. When building with make, the setting
|
build does this automatically. When building with make, the setting
|
||||||
in whichever lib/gpu/Makefile is used must be the same as above.
|
in whichever lib/gpu/Makefile is used must be the same as above.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _graphics:
|
.. _graphics:
|
||||||
|
|
||||||
Output of JPG, PNG, and movie files
|
Output of JPG, PNG, and movie files
|
||||||
@ -265,7 +251,6 @@ following settings:
|
|||||||
|
|
||||||
**CMake variables**\ :
|
**CMake variables**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D WITH_JPEG=value # yes or no
|
-D WITH_JPEG=value # yes or no
|
||||||
@ -279,7 +264,6 @@ Usually these settings are all that is needed. If CMake cannot find
|
|||||||
the graphics header, library, executable files, you can set these
|
the graphics header, library, executable files, you can set these
|
||||||
variables:
|
variables:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D JPEG_INCLUDE_DIR=path # path to jpeglib.h header file
|
-D JPEG_INCLUDE_DIR=path # path to jpeglib.h header file
|
||||||
@ -292,7 +276,6 @@ variables:
|
|||||||
|
|
||||||
**Makefile.machine settings**\ :
|
**Makefile.machine settings**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
LMP_INC = -DLAMMPS_JPEG
|
LMP_INC = -DLAMMPS_JPEG
|
||||||
@ -321,10 +304,8 @@ supports the "popen" function in the standard runtime library.
|
|||||||
communication library and lead to simulations using ffmpeg to hang or
|
communication library and lead to simulations using ffmpeg to hang or
|
||||||
crash.
|
crash.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _gzip:
|
.. _gzip:
|
||||||
|
|
||||||
Read or write compressed files
|
Read or write compressed files
|
||||||
@ -336,7 +317,6 @@ gzip compression by several LAMMPS commands, including
|
|||||||
|
|
||||||
**CMake variables**\ :
|
**CMake variables**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D WITH_GZIP=value # yes or no
|
-D WITH_GZIP=value # yes or no
|
||||||
@ -345,7 +325,6 @@ gzip compression by several LAMMPS commands, including
|
|||||||
|
|
||||||
**Makefile.machine setting**\ :
|
**Makefile.machine setting**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
LMP_INC = -DLAMMPS_GZIP
|
LMP_INC = -DLAMMPS_GZIP
|
||||||
@ -365,10 +344,8 @@ found by LAMMPS during a run.
|
|||||||
I/O is also available using a compression library instead, which is
|
I/O is also available using a compression library instead, which is
|
||||||
what the :ref:`COMPRESS package <PKG-COMPRESS>` enables.
|
what the :ref:`COMPRESS package <PKG-COMPRESS>` enables.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _align:
|
.. _align:
|
||||||
|
|
||||||
Memory allocation alignment
|
Memory allocation alignment
|
||||||
@ -385,7 +362,6 @@ aligned on 64-byte boundaries.
|
|||||||
|
|
||||||
**CMake variable**\ :
|
**CMake variable**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D LAMMPS_MEMALIGN=value # 0, 8, 16, 32, 64 (default)
|
-D LAMMPS_MEMALIGN=value # 0, 8, 16, 32, 64 (default)
|
||||||
@ -397,7 +373,6 @@ and this setting ignored.
|
|||||||
|
|
||||||
**Makefile.machine setting**\ :
|
**Makefile.machine setting**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
LMP_INC = -DLAMMPS_MEMALIGN=value # 8, 16, 32, 64
|
LMP_INC = -DLAMMPS_MEMALIGN=value # 8, 16, 32, 64
|
||||||
@ -408,10 +383,8 @@ be used on Windows, as it does use different function calls for
|
|||||||
allocating aligned memory, that are not compatible with how LAMMPS
|
allocating aligned memory, that are not compatible with how LAMMPS
|
||||||
manages its dynamical memory.
|
manages its dynamical memory.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _longlong:
|
.. _longlong:
|
||||||
|
|
||||||
Workaround for long long integers
|
Workaround for long long integers
|
||||||
@ -424,22 +397,18 @@ those systems:
|
|||||||
|
|
||||||
**CMake variable**\ :
|
**CMake variable**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D LAMMPS_LONGLONG_TO_LONG=value # yes or no (default)
|
-D LAMMPS_LONGLONG_TO_LONG=value # yes or no (default)
|
||||||
|
|
||||||
**Makefile.machine setting**\ :
|
**Makefile.machine setting**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
LMP_INC = -DLAMMPS_LONGLONG_TO_LONG
|
LMP_INC = -DLAMMPS_LONGLONG_TO_LONG
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _exceptions:
|
.. _exceptions:
|
||||||
|
|
||||||
Exception handling when using LAMMPS as a library
|
Exception handling when using LAMMPS as a library
|
||||||
@ -453,14 +422,12 @@ e.g. to Python. Of course the calling code has to be set up to
|
|||||||
|
|
||||||
**CMake variable**\ :
|
**CMake variable**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
-D LAMMPS_EXCEPTIONS=value # yes or no (default)
|
-D LAMMPS_EXCEPTIONS=value # yes or no (default)
|
||||||
|
|
||||||
**Makefile.machine setting**\ :
|
**Makefile.machine setting**\ :
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: make
|
.. code-block:: make
|
||||||
|
|
||||||
LMP_INC = -DLAMMPS_EXCEPTIONS
|
LMP_INC = -DLAMMPS_EXCEPTIONS
|
||||||
|
|||||||
@ -6,10 +6,8 @@ Notes for building LAMMPS on Windows
|
|||||||
* :ref:`Using GNU GCC ported to Windows <gnu>`
|
* :ref:`Using GNU GCC ported to Windows <gnu>`
|
||||||
* :ref:`Using a cross-compiler <cross>`
|
* :ref:`Using a cross-compiler <cross>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _generic:
|
.. _generic:
|
||||||
|
|
||||||
General remarks
|
General remarks
|
||||||
|
|||||||
@ -4,7 +4,6 @@ Commands
|
|||||||
These pages describe how a LAMMPS input script is formatted and the
|
These pages describe how a LAMMPS input script is formatted and the
|
||||||
commands in it are used to define a LAMMPS simulation.
|
commands in it are used to define a LAMMPS simulation.
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
|||||||
@ -99,7 +99,6 @@ have accelerated versions. This is indicated by additional letters in
|
|||||||
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = USER-OMP, t =
|
parenthesis: g = GPU, i = USER-INTEL, k = KOKKOS, o = USER-OMP, t =
|
||||||
OPT.
|
OPT.
|
||||||
|
|
||||||
|
|
||||||
.. table_from_list::
|
.. table_from_list::
|
||||||
:columns: 4
|
:columns: 4
|
||||||
|
|
||||||
|
|||||||
@ -16,7 +16,6 @@ simulation with all the settings. Rather, the input script is read
|
|||||||
one line at a time and each command takes effect when it is read.
|
one line at a time and each command takes effect when it is read.
|
||||||
Thus this sequence of commands:
|
Thus this sequence of commands:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
timestep 0.5
|
timestep 0.5
|
||||||
@ -25,7 +24,6 @@ Thus this sequence of commands:
|
|||||||
|
|
||||||
does something different than this sequence:
|
does something different than this sequence:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
run 100
|
run 100
|
||||||
|
|||||||
@ -86,7 +86,6 @@ LAMMPS:
|
|||||||
|
|
||||||
This can be useful for formatting print output to a desired precision:
|
This can be useful for formatting print output to a desired precision:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
print "Final energy per atom: $(pe/atoms:%10.3f) eV/atom"
|
print "Final energy per atom: $(pe/atoms:%10.3f) eV/atom"
|
||||||
|
|||||||
@ -7,7 +7,6 @@ and warnings doc pages give complete lists of all the messages the
|
|||||||
code may generate (except those generated by USER packages), with
|
code may generate (except those generated by USER packages), with
|
||||||
additional details for many of them.
|
additional details for many of them.
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
|||||||
@ -63,7 +63,6 @@ is an integer or floating-point number, respectively, and reject the
|
|||||||
input with an error message (for instance, when an integer is required,
|
input with an error message (for instance, when an integer is required,
|
||||||
but a floating-point number 1.0 is provided):
|
but a floating-point number 1.0 is provided):
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
ERROR: Expected integer parameter instead of '1.0' in input script or data file
|
ERROR: Expected integer parameter instead of '1.0' in input script or data file
|
||||||
@ -81,7 +80,6 @@ reading the input and before parsing commands,
|
|||||||
the documentation of the corresponding command explicitly says it is.
|
the documentation of the corresponding command explicitly says it is.
|
||||||
Otherwise, you will receive an error message of this kind:
|
Otherwise, you will receive an error message of this kind:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
ERROR: Expected floating point parameter instead of 'v_name' in input script or data file
|
ERROR: Expected floating point parameter instead of 'v_name' in input script or data file
|
||||||
|
|||||||
@ -7,7 +7,6 @@ documentation for the offending command may help. Error messages also
|
|||||||
list the source file and line number where the error was generated.
|
list the source file and line number where the error was generated.
|
||||||
For example, a message like this:
|
For example, a message like this:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
ERROR: Illegal velocity command (velocity.cpp:78)
|
ERROR: Illegal velocity command (velocity.cpp:78)
|
||||||
@ -21,12 +20,8 @@ code or contact the author of the package.
|
|||||||
|
|
||||||
Doc page with :doc:`WARNING messages <Errors_warnings>`
|
Doc page with :doc:`WARNING messages <Errors_warnings>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
*1-3 bond count is inconsistent*
|
*1-3 bond count is inconsistent*
|
||||||
An inconsistency was detected when computing the number of 1-3
|
An inconsistency was detected when computing the number of 1-3
|
||||||
neighbors for each atom. This likely means something is wrong with
|
neighbors for each atom. This likely means something is wrong with
|
||||||
|
|||||||
@ -7,7 +7,6 @@ documentation for the offending command may help. Warning messages
|
|||||||
also list the source file and line number where the warning was
|
also list the source file and line number where the warning was
|
||||||
generated. For example, a message like this:
|
generated. For example, a message like this:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
WARNING: Bond atom missing in box size check (domain.cpp:187)
|
WARNING: Bond atom missing in box size check (domain.cpp:187)
|
||||||
@ -21,12 +20,8 @@ code or contact the author of the package.
|
|||||||
|
|
||||||
Doc page with :doc:`ERROR messages <Errors_messages>`
|
Doc page with :doc:`ERROR messages <Errors_messages>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
*Adjusting Coulombic cutoff for MSM, new cutoff = %g*
|
*Adjusting Coulombic cutoff for MSM, new cutoff = %g*
|
||||||
The adjust/cutoff command is turned on and the Coulombic cutoff has been
|
The adjust/cutoff command is turned on and the Coulombic cutoff has been
|
||||||
adjusted to match the user-specified accuracy.
|
adjusted to match the user-specified accuracy.
|
||||||
|
|||||||
@ -38,10 +38,8 @@ particular quantity.
|
|||||||
|
|
||||||
Lists of both kinds of directories are given below.
|
Lists of both kinds of directories are given below.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Lowercase directories
|
Lowercase directories
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
@ -157,7 +155,6 @@ Lowercase directories
|
|||||||
|
|
||||||
Here is how you can run and visualize one of the sample problems:
|
Here is how you can run and visualize one of the sample problems:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
cd indent
|
cd indent
|
||||||
@ -180,15 +177,12 @@ like ImageMagick or QuickTime or various Windows-based tools. See the
|
|||||||
Imagemagick command would create a GIF file suitable for viewing in a
|
Imagemagick command would create a GIF file suitable for viewing in a
|
||||||
browser.
|
browser.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
% convert -loop 1 \*.jpg foo.gif
|
% convert -loop 1 \*.jpg foo.gif
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Uppercase directories
|
Uppercase directories
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
|
|||||||
@ -12,7 +12,6 @@ also show how to setup and run various kinds of simulations.
|
|||||||
Tutorials howto
|
Tutorials howto
|
||||||
===============
|
===============
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:name: tutorials
|
:name: tutorials
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
@ -24,7 +23,6 @@ Tutorials howto
|
|||||||
General howto
|
General howto
|
||||||
=============
|
=============
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:name: general_howto
|
:name: general_howto
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
@ -40,7 +38,6 @@ General howto
|
|||||||
Settings howto
|
Settings howto
|
||||||
==============
|
==============
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:name: settings_howto
|
:name: settings_howto
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
@ -56,7 +53,6 @@ Settings howto
|
|||||||
Analysis howto
|
Analysis howto
|
||||||
==============
|
==============
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:name: analysis_howto
|
:name: analysis_howto
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
@ -72,7 +68,6 @@ Analysis howto
|
|||||||
Force fields howto
|
Force fields howto
|
||||||
==================
|
==================
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:name: force_howto
|
:name: force_howto
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
@ -85,7 +80,6 @@ Force fields howto
|
|||||||
Packages howto
|
Packages howto
|
||||||
==============
|
==============
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:name: packages_howto
|
:name: packages_howto
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|||||||
@ -11,7 +11,6 @@ simulation box, set the z dimensions narrow, but finite, so that the
|
|||||||
create\_atoms command will tile the 3d simulation box with a single z
|
create\_atoms command will tile the 3d simulation box with a single z
|
||||||
plane of atoms - e.g.
|
plane of atoms - e.g.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
:doc:`create box <create_box>` 1 -10 10 -10 10 -0.25 0.25
|
:doc:`create box <create_box>` 1 -10 10 -10 10 -0.25 0.25
|
||||||
|
|||||||
@ -3,10 +3,8 @@ Using LAMMPS with Bash on Windows
|
|||||||
|
|
||||||
**written by Richard Berger**
|
**written by Richard Berger**
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Starting with Windows 10 you can install Linux tools directly in Windows. This
|
Starting with Windows 10 you can install Linux tools directly in Windows. This
|
||||||
allows you to compile LAMMPS following the same procedure as on a real Ubuntu
|
allows you to compile LAMMPS following the same procedure as on a real Ubuntu
|
||||||
Linux installation. Software can be easily installed using the package manager
|
Linux installation. Software can be easily installed using the package manager
|
||||||
@ -82,10 +80,8 @@ Congratulations, you have installed **Bash on Ubuntu on Windows**\ .
|
|||||||
|
|
||||||
.. image:: JPG/bow_tutorial_10.png
|
.. image:: JPG/bow_tutorial_10.png
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Compiling LAMMPS in Bash on Windows
|
Compiling LAMMPS in Bash on Windows
|
||||||
-----------------------------------
|
-----------------------------------
|
||||||
|
|
||||||
@ -97,7 +93,6 @@ Installing prerequisite packages
|
|||||||
|
|
||||||
First upgrade all existing packages using
|
First upgrade all existing packages using
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
sudo apt update
|
sudo apt update
|
||||||
@ -106,7 +101,6 @@ First upgrade all existing packages using
|
|||||||
Next install the following packages, which include compilers and libraries
|
Next install the following packages, which include compilers and libraries
|
||||||
needed for various LAMMPS features:
|
needed for various LAMMPS features:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
sudo apt install -y build-essential ccache gfortran openmpi-bin libopenmpi-dev libfftw3-dev libjpeg-dev libpng12-dev python-dev python-virtualenv libblas-dev liblapack-dev libhdf5-serial-dev hdf5-tools
|
sudo apt install -y build-essential ccache gfortran openmpi-bin libopenmpi-dev libfftw3-dev libjpeg-dev libpng12-dev python-dev python-virtualenv libblas-dev liblapack-dev libhdf5-serial-dev hdf5-tools
|
||||||
@ -126,7 +120,6 @@ Obtain a copy of the LAMMPS code and go into it using "cd"
|
|||||||
Option 1: Downloading LAMMPS tarball using wget
|
Option 1: Downloading LAMMPS tarball using wget
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
wget http://lammps.sandia.gov/tars/lammps-stable.tar.gz
|
wget http://lammps.sandia.gov/tars/lammps-stable.tar.gz
|
||||||
@ -136,7 +129,6 @@ Option 1: Downloading LAMMPS tarball using wget
|
|||||||
Option 2: Obtaining LAMMPS code from GitHub
|
Option 2: Obtaining LAMMPS code from GitHub
|
||||||
"""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
git clone https://github.com/lammps/lammps.git
|
git clone https://github.com/lammps/lammps.git
|
||||||
@ -150,7 +142,6 @@ At this point you can compile LAMMPS like on Ubuntu Linux.
|
|||||||
Compiling serial version
|
Compiling serial version
|
||||||
""""""""""""""""""""""""
|
""""""""""""""""""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cd src/
|
cd src/
|
||||||
@ -161,7 +152,6 @@ This will create an executable called lmp\_serial in the src/ directory
|
|||||||
Compiling MPI version
|
Compiling MPI version
|
||||||
"""""""""""""""""""""
|
"""""""""""""""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cd src/
|
cd src/
|
||||||
@ -169,20 +159,16 @@ Compiling MPI version
|
|||||||
|
|
||||||
This will create an executable called lmp\_mpi in the src/ directory
|
This will create an executable called lmp\_mpi in the src/ directory
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Finally, please note the absolute path of your src folder. You can get this using
|
Finally, please note the absolute path of your src folder. You can get this using
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
pwd
|
pwd
|
||||||
|
|
||||||
or
|
or
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
echo $PWD
|
echo $PWD
|
||||||
@ -190,22 +176,18 @@ or
|
|||||||
To run any examples you need the location of the executable. For now, let us
|
To run any examples you need the location of the executable. For now, let us
|
||||||
save this location in a temporary variable
|
save this location in a temporary variable
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
LAMMPS_DIR=$PWD
|
LAMMPS_DIR=$PWD
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Running an example script
|
Running an example script
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
Once compiled you can execute some of the LAMMPS examples. Switch into the
|
Once compiled you can execute some of the LAMMPS examples. Switch into the
|
||||||
examples/melt folder
|
examples/melt folder
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cd ../examples/melt
|
cd ../examples/melt
|
||||||
@ -214,14 +196,12 @@ The full path of the serial executable is $LAMMPS\_DIR/lmp\_serial, while the mp
|
|||||||
version is $LAMMPS\_DIR/lmp\_mpi. You can run the melt example with either
|
version is $LAMMPS\_DIR/lmp\_mpi. You can run the melt example with either
|
||||||
version as follows:
|
version as follows:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$LAMMPS_DIR/lmp_serial -in in.melt
|
$LAMMPS_DIR/lmp_serial -in in.melt
|
||||||
|
|
||||||
or
|
or
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
mpirun -np 4 $LAMMPS_DIR/lmp_mpi -in in.melt
|
mpirun -np 4 $LAMMPS_DIR/lmp_mpi -in in.melt
|
||||||
@ -235,21 +215,18 @@ Adding your executable directory to your PATH
|
|||||||
You can avoid having to type the full path of your LAMMPS binary by adding its
|
You can avoid having to type the full path of your LAMMPS binary by adding its
|
||||||
parent folder to the PATH environment variable as follows:
|
parent folder to the PATH environment variable as follows:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
export PATH=$LAMMPS_DIR:$PATH
|
export PATH=$LAMMPS_DIR:$PATH
|
||||||
|
|
||||||
Input scripts can then be run like this:
|
Input scripts can then be run like this:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
lmp_serial -in in.melt
|
lmp_serial -in in.melt
|
||||||
|
|
||||||
or
|
or
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
mpirun -np 4 lmp_mpi -in in.melt
|
mpirun -np 4 lmp_mpi -in in.melt
|
||||||
@ -258,7 +235,6 @@ However, this PATH variable will not persist if you close your bash window.
|
|||||||
To persist this setting edit the $HOME/.bashrc file using your favorite editor
|
To persist this setting edit the $HOME/.bashrc file using your favorite editor
|
||||||
and add this line
|
and add this line
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
export PATH=/full/path/to/your/lammps/src:$PATH
|
export PATH=/full/path/to/your/lammps/src:$PATH
|
||||||
@ -267,14 +243,12 @@ and add this line
|
|||||||
|
|
||||||
For an executable lmp\_serial with a full path
|
For an executable lmp\_serial with a full path
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
/home/richard/lammps/src/lmp_serial
|
/home/richard/lammps/src/lmp_serial
|
||||||
|
|
||||||
the PATH variable should be
|
the PATH variable should be
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
export PATH=/home/richard/lammps/src:$PATH
|
export PATH=/home/richard/lammps/src:$PATH
|
||||||
|
|||||||
@ -20,12 +20,8 @@ force field.
|
|||||||
|
|
||||||
.. _charmm: http://www.scripps.edu/brooks
|
.. _charmm: http://www.scripps.edu/brooks
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _amber: http://amber.scripps.edu
|
.. _amber: http://amber.scripps.edu
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
The interaction styles listed below compute force field formulas that
|
The interaction styles listed below compute force field formulas that
|
||||||
are consistent with common options in CHARMM or AMBER. See each
|
are consistent with common options in CHARMM or AMBER. See each
|
||||||
command's documentation for the formula it computes.
|
command's documentation for the formula it computes.
|
||||||
@ -114,33 +110,23 @@ documentation for the formula it computes.
|
|||||||
|
|
||||||
* :doc:`special_bonds <special_bonds>` dreiding
|
* :doc:`special_bonds <special_bonds>` dreiding
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _howto-MacKerell:
|
.. _howto-MacKerell:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(MacKerell)** MacKerell, Bashford, Bellott, Dunbrack, Evanseck, Field,
|
**(MacKerell)** MacKerell, Bashford, Bellott, Dunbrack, Evanseck, Field,
|
||||||
Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
|
Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
|
||||||
|
|
||||||
.. _howto-Cornell:
|
.. _howto-Cornell:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Cornell)** Cornell, Cieplak, Bayly, Gould, Merz, Ferguson,
|
**(Cornell)** Cornell, Cieplak, Bayly, Gould, Merz, Ferguson,
|
||||||
Spellmeyer, Fox, Caldwell, Kollman, JACS 117, 5179-5197 (1995).
|
Spellmeyer, Fox, Caldwell, Kollman, JACS 117, 5179-5197 (1995).
|
||||||
|
|
||||||
.. _howto-Sun:
|
.. _howto-Sun:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Sun)** Sun, J. Phys. Chem. B, 102, 7338-7364 (1998).
|
**(Sun)** Sun, J. Phys. Chem. B, 102, 7338-7364 (1998).
|
||||||
|
|
||||||
.. _howto-Mayo:
|
.. _howto-Mayo:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Mayo)** Mayo, Olfason, Goddard III, J Phys Chem, 94, 8897-8909
|
**(Mayo)** Mayo, Olfason, Goddard III, J Phys Chem, 94, 8897-8909
|
||||||
(1990).
|
(1990).
|
||||||
|
|||||||
@ -33,10 +33,8 @@ style are described below.
|
|||||||
More styles may be added in the future. See the :doc:`Modify body <Modify_body>` doc page for details on how to add a new body
|
More styles may be added in the future. See the :doc:`Modify body <Modify_body>` doc page for details on how to add a new body
|
||||||
style to the code.
|
style to the code.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**When to use body particles:**
|
**When to use body particles:**
|
||||||
|
|
||||||
You should not use body particles to model a rigid body made of
|
You should not use body particles to model a rigid body made of
|
||||||
@ -104,10 +102,8 @@ particles of different styles
|
|||||||
The pair styles defined for use with specific body styles are listed
|
The pair styles defined for use with specific body styles are listed
|
||||||
in the sections below.
|
in the sections below.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Specifics of body style nparticle:**
|
**Specifics of body style nparticle:**
|
||||||
|
|
||||||
The *nparticle* body style represents body particles as a rigid body
|
The *nparticle* body style represents body particles as a rigid body
|
||||||
@ -119,7 +115,6 @@ duplicates its functionality.
|
|||||||
The atom\_style body command for this body style takes two additional
|
The atom\_style body command for this body style takes two additional
|
||||||
arguments:
|
arguments:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
atom_style body nparticle Nmin Nmax
|
atom_style body nparticle Nmin Nmax
|
||||||
@ -133,7 +128,6 @@ When the :doc:`read_data <read_data>` command reads a data file for this
|
|||||||
body style, the following information must be provided for each entry
|
body style, the following information must be provided for each entry
|
||||||
in the *Bodies* section of the data file:
|
in the *Bodies* section of the data file:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
atom-ID 1 M
|
atom-ID 1 M
|
||||||
@ -170,7 +164,6 @@ For output purposes via the :doc:`compute body/local <compute_body_local>` and :
|
|||||||
commands, this body style produces one datum for each of the N
|
commands, this body style produces one datum for each of the N
|
||||||
sub-particles in a body particle. The datum has 3 values:
|
sub-particles in a body particle. The datum has 3 values:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
1 = x position of sub-particle
|
1 = x position of sub-particle
|
||||||
@ -188,10 +181,8 @@ collection of spheres, one for each sub-particle. The size of each
|
|||||||
sphere is determined by the *bflag1* parameter for the *body* keyword.
|
sphere is determined by the *bflag1* parameter for the *body* keyword.
|
||||||
The *bflag2* argument is ignored.
|
The *bflag2* argument is ignored.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Specifics of body style rounded/polygon:**
|
**Specifics of body style rounded/polygon:**
|
||||||
|
|
||||||
The *rounded/polygon* body style represents body particles as a 2d
|
The *rounded/polygon* body style represents body particles as a 2d
|
||||||
@ -207,7 +198,6 @@ described in :ref:`Fraige <body-Fraige>`.
|
|||||||
Similar to body style *nparticle*\ , the atom\_style body command for
|
Similar to body style *nparticle*\ , the atom\_style body command for
|
||||||
this body style takes two additional arguments:
|
this body style takes two additional arguments:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
atom_style body rounded/polygon Nmin Nmax
|
atom_style body rounded/polygon Nmin Nmax
|
||||||
@ -221,7 +211,6 @@ When the :doc:`read_data <read_data>` command reads a data file for this
|
|||||||
body style, the following information must be provided for each entry
|
body style, the following information must be provided for each entry
|
||||||
in the *Bodies* section of the data file:
|
in the *Bodies* section of the data file:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
atom-ID 1 M
|
atom-ID 1 M
|
||||||
@ -262,7 +251,6 @@ orientation of the square is aligned with the xy coordinate axes which
|
|||||||
is consistent with the 6 moments of inertia: ixx iyy izz ixy ixz iyz =
|
is consistent with the 6 moments of inertia: ixx iyy izz ixy ixz iyz =
|
||||||
1 1 4 0 0 0. Note that only Izz matters in 2D simulations.
|
1 1 4 0 0 0. Note that only Izz matters in 2D simulations.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
3 1 27
|
3 1 27
|
||||||
@ -281,7 +269,6 @@ is consistent with the 6 moments of inertia: ixx iyy izz ixy ixz iyz =
|
|||||||
A rod in 2D, whose length is 4.0, mass 1.0, rounded at two ends
|
A rod in 2D, whose length is 4.0, mass 1.0, rounded at two ends
|
||||||
by circles of diameter 0.5, is specified as follows:
|
by circles of diameter 0.5, is specified as follows:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
1 1 13
|
1 1 13
|
||||||
@ -293,7 +280,6 @@ by circles of diameter 0.5, is specified as follows:
|
|||||||
|
|
||||||
A disk, whose diameter is 3.0, mass 1.0, is specified as follows:
|
A disk, whose diameter is 3.0, mass 1.0, is specified as follows:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
1 1 10
|
1 1 10
|
||||||
@ -308,10 +294,8 @@ interactions. The :doc:`fix wall/body/polygon <fix_wall_body_polygon>`
|
|||||||
command can be used with this body style to compute the interaction of
|
command can be used with this body style to compute the interaction of
|
||||||
body particles with a wall.
|
body particles with a wall.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Specifics of body style rounded/polyhedron:**
|
**Specifics of body style rounded/polyhedron:**
|
||||||
|
|
||||||
The *rounded/polyhedron* body style represents body particles as a 3d
|
The *rounded/polyhedron* body style represents body particles as a 3d
|
||||||
@ -330,7 +314,6 @@ This body style is for 3d discrete element models, as described in
|
|||||||
Similar to body style *rounded/polygon*\ , the atom\_style body command
|
Similar to body style *rounded/polygon*\ , the atom\_style body command
|
||||||
for this body style takes two additional arguments:
|
for this body style takes two additional arguments:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
atom_style body rounded/polyhedron Nmin Nmax
|
atom_style body rounded/polyhedron Nmin Nmax
|
||||||
@ -344,7 +327,6 @@ When the :doc:`read_data <read_data>` command reads a data file for this
|
|||||||
body style, the following information must be provided for each entry
|
body style, the following information must be provided for each entry
|
||||||
in the *Bodies* section of the data file:
|
in the *Bodies* section of the data file:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
atom-ID 3 M
|
atom-ID 3 M
|
||||||
@ -401,7 +383,6 @@ The orientation of the cube is aligned with the xyz coordinate axes
|
|||||||
which is consistent with the 6 moments of inertia: ixx iyy izz ixy ixz
|
which is consistent with the 6 moments of inertia: ixx iyy izz ixy ixz
|
||||||
iyz = 0.667 0.667 0.667 0 0 0.
|
iyz = 0.667 0.667 0.667 0 0 0.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
1 3 79
|
1 3 79
|
||||||
@ -438,7 +419,6 @@ iyz = 0.667 0.667 0.667 0 0 0.
|
|||||||
A rod in 3D, whose length is 4.0, mass 1.0 and rounded at two ends
|
A rod in 3D, whose length is 4.0, mass 1.0 and rounded at two ends
|
||||||
by circles of diameter 0.5, is specified as follows:
|
by circles of diameter 0.5, is specified as follows:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
1 1 13
|
1 1 13
|
||||||
@ -450,7 +430,6 @@ by circles of diameter 0.5, is specified as follows:
|
|||||||
|
|
||||||
A sphere whose diameter is 3.0 and mass 1.0, is specified as follows:
|
A sphere whose diameter is 3.0 and mass 1.0, is specified as follows:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
1 1 10
|
1 1 10
|
||||||
@ -465,15 +444,12 @@ be used with this body style to compute body/body interactions. The
|
|||||||
used with this body style to compute the interaction of body particles
|
used with this body style to compute the interaction of body particles
|
||||||
with a wall.
|
with a wall.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
For output purposes via the :doc:`compute body/local <compute_body_local>` and :doc:`dump local <dump>`
|
For output purposes via the :doc:`compute body/local <compute_body_local>` and :doc:`dump local <dump>`
|
||||||
commands, this body style produces one datum for each of the N
|
commands, this body style produces one datum for each of the N
|
||||||
sub-particles in a body particle. The datum has 3 values:
|
sub-particles in a body particle. The datum has 3 values:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
1 = x position of vertex
|
1 = x position of vertex
|
||||||
@ -495,20 +471,14 @@ tangent to the spheres). The drawn diameter of each line segment is
|
|||||||
determined by the *bflag1* parameter for the *body* keyword. The
|
determined by the *bflag1* parameter for the *body* keyword. The
|
||||||
*bflag2* argument is ignored.
|
*bflag2* argument is ignored.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _body-Fraige:
|
.. _body-Fraige:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Fraige)** F. Y. Fraige, P. A. Langston, A. J. Matchett, J. Dodds,
|
**(Fraige)** F. Y. Fraige, P. A. Langston, A. J. Matchett, J. Dodds,
|
||||||
Particuology, 6, 455 (2008).
|
Particuology, 6, 455 (2008).
|
||||||
|
|
||||||
.. _body-Wang:
|
.. _body-Wang:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Wang)** J. Wang, H. S. Yu, P. A. Langston, F. Y. Fraige, Granular
|
**(Wang)** J. Wang, H. S. Yu, P. A. Langston, F. Y. Fraige, Granular
|
||||||
Matter, 13, 1 (2011).
|
Matter, 13, 1 (2011).
|
||||||
|
|||||||
@ -150,7 +150,6 @@ properties:
|
|||||||
|
|
||||||
(1) Average velocity in each of 1000 2d spatial bins:
|
(1) Average velocity in each of 1000 2d spatial bins:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
compute cc1 all chunk/atom bin/2d x 0.0 0.1 y lower 0.01 units reduced
|
compute cc1 all chunk/atom bin/2d x 0.0 0.1 y lower 0.01 units reduced
|
||||||
@ -159,7 +158,6 @@ properties:
|
|||||||
(2) Temperature in each spatial bin, after subtracting a flow
|
(2) Temperature in each spatial bin, after subtracting a flow
|
||||||
velocity:
|
velocity:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
compute cc1 all chunk/atom bin/2d x 0.0 0.1 y lower 0.1 units reduced
|
compute cc1 all chunk/atom bin/2d x 0.0 0.1 y lower 0.1 units reduced
|
||||||
@ -168,7 +166,6 @@ velocity:
|
|||||||
|
|
||||||
(3) Center of mass of each molecule:
|
(3) Center of mass of each molecule:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
compute cc1 all chunk/atom molecule
|
compute cc1 all chunk/atom molecule
|
||||||
@ -177,7 +174,6 @@ velocity:
|
|||||||
|
|
||||||
(4) Total force on each molecule and ave/max across all molecules:
|
(4) Total force on each molecule and ave/max across all molecules:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
compute cc1 all chunk/atom molecule
|
compute cc1 all chunk/atom molecule
|
||||||
@ -189,7 +185,6 @@ velocity:
|
|||||||
|
|
||||||
(5) Histogram of cluster sizes:
|
(5) Histogram of cluster sizes:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
compute cluster all cluster/atom 1.0
|
compute cluster all cluster/atom 1.0
|
||||||
|
|||||||
@ -134,7 +134,6 @@ together to exchange MPI messages between them.
|
|||||||
|
|
||||||
For message exchange in *file*\ , *zmq*\ , or *mpi/two* modes:
|
For message exchange in *file*\ , *zmq*\ , or *mpi/two* modes:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
% mpirun -np 1 lmp_mpi -log log.client < in.client &
|
% mpirun -np 1 lmp_mpi -log log.client < in.client &
|
||||||
@ -150,7 +149,6 @@ For message exchange in *mpi/one* mode:
|
|||||||
|
|
||||||
Launch both codes in a single mpirun command:
|
Launch both codes in a single mpirun command:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
mpirun -np 2 lmp_mpi -mpicolor 0 -in in.message.client -log log.client : -np 4 lmp_mpi -mpicolor 1 -in in.message.server -log log.server
|
mpirun -np 2 lmp_mpi -mpicolor 0 -in in.message.client -log log.client : -np 4 lmp_mpi -mpicolor 1 -in in.message.server -log log.server
|
||||||
|
|||||||
@ -24,7 +24,6 @@ shell of a core/shell pair should be bonded to each other with a
|
|||||||
harmonic bond that provides the spring force. For example, a data file
|
harmonic bond that provides the spring force. For example, a data file
|
||||||
for NaCl, as found in examples/coreshell, has this format:
|
for NaCl, as found in examples/coreshell, has this format:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
432 atoms # core and shell atoms
|
432 atoms # core and shell atoms
|
||||||
@ -87,7 +86,6 @@ Ewald solvers can be used.
|
|||||||
For the NaCL example problem, these pair style and bond style settings
|
For the NaCL example problem, these pair style and bond style settings
|
||||||
are used:
|
are used:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
pair_style born/coul/long/cs 20.0 20.0
|
pair_style born/coul/long/cs 20.0 20.0
|
||||||
@ -131,7 +129,6 @@ this temperature be output for the overall system.
|
|||||||
|
|
||||||
For the NaCl example, this can be done as follows:
|
For the NaCl example, this can be done as follows:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
group cores type 1 2
|
group cores type 1 2
|
||||||
@ -150,7 +147,6 @@ the default :doc:`temperature <compute_temp>` and specifying it as a
|
|||||||
second argument in :doc:`fix modify <fix_modify>` and
|
second argument in :doc:`fix modify <fix_modify>` and
|
||||||
:doc:`thermo_modify <thermo_modify>` resulting in:
|
:doc:`thermo_modify <thermo_modify>` resulting in:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
(...)
|
(...)
|
||||||
@ -174,7 +170,6 @@ the pairs. This can be done by using the *bias* keyword of the
|
|||||||
:doc:`velocity create <velocity>` command and assigning the :doc:`compute temp/cs <compute_temp_cs>` command to the *temp* keyword of the
|
:doc:`velocity create <velocity>` command and assigning the :doc:`compute temp/cs <compute_temp_cs>` command to the *temp* keyword of the
|
||||||
:doc:`velocity <velocity>` command, e.g.
|
:doc:`velocity <velocity>` command, e.g.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
velocity all create 1427 134 bias yes temp CSequ
|
velocity all create 1427 134 bias yes temp CSequ
|
||||||
@ -211,7 +206,6 @@ pairs as chunks.
|
|||||||
|
|
||||||
For example if core/shell pairs are the only molecules:
|
For example if core/shell pairs are the only molecules:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
read_data NaCl_CS_x0.1_prop.data
|
read_data NaCl_CS_x0.1_prop.data
|
||||||
@ -222,7 +216,6 @@ For example if core/shell pairs are the only molecules:
|
|||||||
|
|
||||||
For example if core/shell pairs and other molecules are present:
|
For example if core/shell pairs and other molecules are present:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
fix csinfo all property/atom i_CSID # property/atom command
|
fix csinfo all property/atom i_CSID # property/atom command
|
||||||
@ -232,7 +225,6 @@ For example if core/shell pairs and other molecules are present:
|
|||||||
|
|
||||||
The additional section in the date file would be formatted like this:
|
The additional section in the date file would be formatted like this:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
CS-Info # header of additional section
|
CS-Info # header of additional section
|
||||||
@ -247,20 +239,14 @@ The additional section in the date file would be formatted like this:
|
|||||||
8 4
|
8 4
|
||||||
(...)
|
(...)
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _MitchellFincham:
|
.. _MitchellFincham:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Mitchell and Fincham)** Mitchell, Fincham, J Phys Condensed Matter,
|
**(Mitchell and Fincham)** Mitchell, Fincham, J Phys Condensed Matter,
|
||||||
5, 1031-1038 (1993).
|
5, 1031-1038 (1993).
|
||||||
|
|
||||||
.. _MitchellFincham2:
|
.. _MitchellFincham2:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Fincham)** Fincham, Mackrodt and Mitchell, J Phys Condensed Matter,
|
**(Fincham)** Fincham, Mackrodt and Mitchell, J Phys Condensed Matter,
|
||||||
6, 393-404 (1994).
|
6, 393-404 (1994).
|
||||||
|
|||||||
@ -12,10 +12,8 @@ LAMMPS can be coupled to other codes in at least 4 ways. Each has
|
|||||||
advantages and disadvantages, which you will have to think about in the
|
advantages and disadvantages, which you will have to think about in the
|
||||||
context of your application.
|
context of your application.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
(1) Define a new :doc:`fix <fix>` command that calls the other code. In
|
(1) Define a new :doc:`fix <fix>` command that calls the other code. In
|
||||||
this scenario, LAMMPS is the driver code. During its timestepping,
|
this scenario, LAMMPS is the driver code. During its timestepping,
|
||||||
the fix is invoked, and can make library calls to the other code,
|
the fix is invoked, and can make library calls to the other code,
|
||||||
@ -27,12 +25,8 @@ LAMMPS.
|
|||||||
|
|
||||||
.. _poems: http://www.rpi.edu/~anderk5/lab
|
.. _poems: http://www.rpi.edu/~anderk5/lab
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
(2) Define a new LAMMPS command that calls the other code. This is
|
(2) Define a new LAMMPS command that calls the other code. This is
|
||||||
conceptually similar to method (1), but in this case LAMMPS and the
|
conceptually similar to method (1), but in this case LAMMPS and the
|
||||||
other code are on a more equal footing. Note that now the other code
|
other code are on a more equal footing. Note that now the other code
|
||||||
@ -53,10 +47,8 @@ command writes and reads.
|
|||||||
See the :doc:`Modify command <Modify_command>` doc page for info on how
|
See the :doc:`Modify command <Modify_command>` doc page for info on how
|
||||||
to add a new command to LAMMPS.
|
to add a new command to LAMMPS.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
(3) Use LAMMPS as a library called by another code. In this case the
|
(3) Use LAMMPS as a library called by another code. In this case the
|
||||||
other code is the driver and calls LAMMPS as needed. Or a wrapper
|
other code is the driver and calls LAMMPS as needed. Or a wrapper
|
||||||
code could link and call both LAMMPS and another code as libraries.
|
code could link and call both LAMMPS and another code as libraries.
|
||||||
@ -78,15 +70,10 @@ examples/COUPLE/README for more details:
|
|||||||
a kinetic Monte Carlo model for grain growth using MD to calculate
|
a kinetic Monte Carlo model for grain growth using MD to calculate
|
||||||
strain induced across grain boundaries
|
strain induced across grain boundaries
|
||||||
|
|
||||||
|
|
||||||
.. _quest: http://dft.sandia.gov/Quest
|
.. _quest: http://dft.sandia.gov/Quest
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _spparks: http://www.sandia.gov/~sjplimp/spparks.html
|
.. _spparks: http://www.sandia.gov/~sjplimp/spparks.html
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
The :doc:`Build basics <Build_basics>` doc page describes how to build
|
The :doc:`Build basics <Build_basics>` doc page describes how to build
|
||||||
LAMMPS as a library. Once this is done, you can interface with LAMMPS
|
LAMMPS as a library. Once this is done, you can interface with LAMMPS
|
||||||
either via C++, C, Fortran, or Python (or any other language that
|
either via C++, C, Fortran, or Python (or any other language that
|
||||||
@ -113,10 +100,8 @@ LAMMPS and half to the other code and run both codes simultaneously
|
|||||||
before syncing them up periodically. Or it might instantiate multiple
|
before syncing them up periodically. Or it might instantiate multiple
|
||||||
instances of LAMMPS to perform different calculations.
|
instances of LAMMPS to perform different calculations.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
(4) Couple LAMMPS with another code in a client/server mode. This is
|
(4) Couple LAMMPS with another code in a client/server mode. This is
|
||||||
described on the :doc:`Howto client/server <Howto_client_server>` doc
|
described on the :doc:`Howto client/server <Howto_client_server>` doc
|
||||||
page.
|
page.
|
||||||
|
|||||||
@ -56,12 +56,8 @@ with a Coulomb pair style. It may be useful to use *coul/long/cs* or
|
|||||||
similar from the CORESHELL package if the core and Drude particle come
|
similar from the CORESHELL package if the core and Drude particle come
|
||||||
too close, which can cause numerical issues.
|
too close, which can cause numerical issues.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _howto-Lamoureux:
|
.. _howto-Lamoureux:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Lamoureux and Roux)** G. Lamoureux, B. Roux, J. Chem. Phys 119, 3025 (2003)
|
**(Lamoureux and Roux)** G. Lamoureux, B. Roux, J. Chem. Phys 119, 3025 (2003)
|
||||||
|
|||||||
@ -30,7 +30,6 @@ zero. The (half-)stiffness of the :doc:`harmonic bond <bond_harmonic>`
|
|||||||
:math:`K_D = k_D/2` and the Drude charge :math:`q_D` are related to the atom
|
:math:`K_D = k_D/2` and the Drude charge :math:`q_D` are related to the atom
|
||||||
polarizability :math:`\alpha` by
|
polarizability :math:`\alpha` by
|
||||||
|
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
K_D = \frac 1 2\, \frac {q_D^2} \alpha
|
K_D = \frac 1 2\, \frac {q_D^2} \alpha
|
||||||
@ -46,7 +45,6 @@ fields:
|
|||||||
* Alternately :ref:`Schroeder and Steinhauser <Schroeder>` suggest adopting a global charge :math:`q_D` = -1.0e and a global mass :math:`m_D` = 0.1 g/mol (or u) for all Drude particles, and to calculate the force constant for each type of core-Drude bond from equation (1). The timesteps used by these authors are between 0.5 and 2 fs, with the degrees of freedom of the Drude oscillators kept cold at 1 K.
|
* Alternately :ref:`Schroeder and Steinhauser <Schroeder>` suggest adopting a global charge :math:`q_D` = -1.0e and a global mass :math:`m_D` = 0.1 g/mol (or u) for all Drude particles, and to calculate the force constant for each type of core-Drude bond from equation (1). The timesteps used by these authors are between 0.5 and 2 fs, with the degrees of freedom of the Drude oscillators kept cold at 1 K.
|
||||||
* In both these force fields hydrogen atoms are treated as non-polarizable.
|
* In both these force fields hydrogen atoms are treated as non-polarizable.
|
||||||
|
|
||||||
|
|
||||||
The motion of of the Drude particles can be calculated by minimizing
|
The motion of of the Drude particles can be calculated by minimizing
|
||||||
the energy of the induced dipoles at each timestep, by an iterative,
|
the energy of the induced dipoles at each timestep, by an iterative,
|
||||||
self-consistent procedure. The Drude particles can be massless and
|
self-consistent procedure. The Drude particles can be massless and
|
||||||
@ -85,7 +83,6 @@ You can use the *polarizer* tool (Python script distributed with the
|
|||||||
USER-DRUDE package) to convert a non-polarizable data file (here
|
USER-DRUDE package) to convert a non-polarizable data file (here
|
||||||
*data.102494.lmp*\ ) to a polarizable data file (\ *data-p.lmp*\ )
|
*data.102494.lmp*\ ) to a polarizable data file (\ *data-p.lmp*\ )
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
polarizer -q -f phenol.dff data.102494.lmp data-p.lmp
|
polarizer -q -f phenol.dff data.102494.lmp data-p.lmp
|
||||||
@ -96,7 +93,6 @@ from *phenol.dff*\ , as well as the DC-DP bond constants. The file
|
|||||||
*phenol.dff* contains the polarizabilities of the atom types
|
*phenol.dff* contains the polarizabilities of the atom types
|
||||||
and the mass of the Drude particles, for instance:
|
and the mass of the Drude particles, for instance:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
# units: kJ/mol, A, deg
|
# units: kJ/mol, A, deg
|
||||||
@ -113,7 +109,6 @@ have to be specified as comments at the end of lines of the *Masses*
|
|||||||
section. You probably need to edit it to add these names. It should
|
section. You probably need to edit it to add these names. It should
|
||||||
look like
|
look like
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
Masses
|
Masses
|
||||||
@ -124,10 +119,8 @@ look like
|
|||||||
4 1.008 # HA
|
4 1.008 # HA
|
||||||
5 1.008 # HO
|
5 1.008 # HO
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Basic input file**
|
**Basic input file**
|
||||||
|
|
||||||
The atom style should be set to (or derive from) *full*\ , so that you
|
The atom style should be set to (or derive from) *full*\ , so that you
|
||||||
@ -138,7 +131,6 @@ script (the use of these lines will be explained below). In order for
|
|||||||
LAMMPS to recognize that you are using Drude oscillators, you should
|
LAMMPS to recognize that you are using Drude oscillators, you should
|
||||||
use the fix *drude*\ . The command is
|
use the fix *drude*\ . The command is
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
fix DRUDE all drude C C C N N D D D
|
fix DRUDE all drude C C C N N D D D
|
||||||
@ -159,7 +151,6 @@ command. With our phenol, there is 1 more special neighbor for which
|
|||||||
space is required. Otherwise LAMMPS crashes and gives the required
|
space is required. Otherwise LAMMPS crashes and gives the required
|
||||||
value.
|
value.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
read_data data-p.lmp extra/special/per/atom 1
|
read_data data-p.lmp extra/special/per/atom 1
|
||||||
@ -173,7 +164,6 @@ include Coulomb interactions, for instance *lj/cut/coul/long* with
|
|||||||
*kspace\_style pppm*. For example, with a cutoff of 10. and a precision
|
*kspace\_style pppm*. For example, with a cutoff of 10. and a precision
|
||||||
1.e-4:
|
1.e-4:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
pair_style lj/cut/coul/long 10.0
|
pair_style lj/cut/coul/long 10.0
|
||||||
@ -184,14 +174,12 @@ to be added for the DPs. Since the DPs have no Lennard-Jones
|
|||||||
interactions, their :math:`\epsilon` is 0. so the only *pair\_coeff* line
|
interactions, their :math:`\epsilon` is 0. so the only *pair\_coeff* line
|
||||||
that needs to be added is
|
that needs to be added is
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
pair_coeff * 6* 0.0 0.0 # All-DPs
|
pair_coeff * 6* 0.0 0.0 # All-DPs
|
||||||
|
|
||||||
Now for the thermalization, the simplest choice is to use the :doc:`fix langevin/drude <fix_langevin_drude>`.
|
Now for the thermalization, the simplest choice is to use the :doc:`fix langevin/drude <fix_langevin_drude>`.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
fix LANG all langevin/drude 300. 100 12435 1. 20 13977
|
fix LANG all langevin/drude 300. 100 12435 1. 20 13977
|
||||||
@ -205,7 +193,6 @@ atoms need to be in this fix's group. LAMMPS will thermostat the DPs
|
|||||||
together with their DC. For this, ghost atoms need to know their
|
together with their DC. For this, ghost atoms need to know their
|
||||||
velocities. Thus you need to add the following command:
|
velocities. Thus you need to add the following command:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
comm_modify vel yes
|
comm_modify vel yes
|
||||||
@ -217,7 +204,6 @@ can add the *zero yes* option at the end of the fix line.
|
|||||||
If the fix *shake* is used to constrain the C-H bonds, it should be
|
If the fix *shake* is used to constrain the C-H bonds, it should be
|
||||||
invoked after the fix *langevin/drude* for more accuracy.
|
invoked after the fix *langevin/drude* for more accuracy.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
fix SHAKE ATOMS shake 0.0001 20 0 t 4 5
|
fix SHAKE ATOMS shake 0.0001 20 0 t 4 5
|
||||||
@ -231,7 +217,6 @@ Since the fix *langevin/drude* does not perform time integration (just
|
|||||||
modification of forces but no position/velocity updates), the fix
|
modification of forces but no position/velocity updates), the fix
|
||||||
*nve* should be used in conjunction.
|
*nve* should be used in conjunction.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
fix NVE all nve
|
fix NVE all nve
|
||||||
@ -240,7 +225,6 @@ Finally, do not forget to update the atom type elements if you use
|
|||||||
them in a *dump\_modify ... element ...* command, by adding the element
|
them in a *dump\_modify ... element ...* command, by adding the element
|
||||||
type of the DPs. Here for instance
|
type of the DPs. Here for instance
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
dump DUMP all custom 10 dump.lammpstrj id mol type element x y z ix iy iz
|
dump DUMP all custom 10 dump.lammpstrj id mol type element x y z ix iy iz
|
||||||
@ -254,7 +238,6 @@ standard atoms in his default compute. If you want to output the
|
|||||||
temperatures of the DC-DP pair centers of mass and of the DPs relative
|
temperatures of the DC-DP pair centers of mass and of the DPs relative
|
||||||
to their DCs, you should use the :doc:`compute temp\_drude <compute_temp_drude>`
|
to their DCs, you should use the :doc:`compute temp\_drude <compute_temp_drude>`
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
compute TDRUDE all temp/drude
|
compute TDRUDE all temp/drude
|
||||||
@ -263,15 +246,12 @@ And then output the correct temperatures of the Drude oscillators
|
|||||||
using *thermo\_style custom* with respectively *c\_TDRUDE[1]* and
|
using *thermo\_style custom* with respectively *c\_TDRUDE[1]* and
|
||||||
*c\_TDRUDE[2]*. These should be close to 300.0 and 1.0 on average.
|
*c\_TDRUDE[2]*. These should be close to 300.0 and 1.0 on average.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
thermo_style custom step temp c_TDRUDE[1] c_TDRUDE[2]
|
thermo_style custom step temp c_TDRUDE[1] c_TDRUDE[2]
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Thole screening**
|
**Thole screening**
|
||||||
|
|
||||||
Dipolar interactions represented by point charges on springs may not
|
Dipolar interactions represented by point charges on springs may not
|
||||||
@ -289,7 +269,6 @@ the interactions between the charges representing the induced dipoles.
|
|||||||
It is to be used as *hybrid/overlay* with any standard *coul* pair
|
It is to be used as *hybrid/overlay* with any standard *coul* pair
|
||||||
style. In our example, we would use
|
style. In our example, we would use
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
pair_style hybrid/overlay lj/cut/coul/long 10.0 thole 2.6 10.0
|
pair_style hybrid/overlay lj/cut/coul/long 10.0 thole 2.6 10.0
|
||||||
@ -305,7 +284,6 @@ explicitly defined. The output of the *polarizer* script can be used
|
|||||||
to complete the *pair\_coeff* section of the input file. In our
|
to complete the *pair\_coeff* section of the input file. In our
|
||||||
example, this will look like:
|
example, this will look like:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
pair_coeff 1 1 lj/cut/coul/long 0.0700 3.550
|
pair_coeff 1 1 lj/cut/coul/long 0.0700 3.550
|
||||||
@ -349,7 +327,6 @@ For the *thole* pair style the coefficients are
|
|||||||
specified by the pair\_style command)
|
specified by the pair\_style command)
|
||||||
#. the cutoff (optional, default value defined by the pair\_style command)
|
#. the cutoff (optional, default value defined by the pair\_style command)
|
||||||
|
|
||||||
|
|
||||||
The special neighbors have charge-charge and charge-dipole
|
The special neighbors have charge-charge and charge-dipole
|
||||||
interactions screened by the *coul* factors of the *special\_bonds*
|
interactions screened by the *coul* factors of the *special\_bonds*
|
||||||
command (0.0, 0.0, and 0.5 in the example above). Without using the
|
command (0.0, 0.0, and 0.5 in the example above). Without using the
|
||||||
@ -361,16 +338,13 @@ example 1-2 neighbors: using the pair\_style *thole*\ , their dipoles
|
|||||||
will see each other (despite the *coul* factor being 0.) and the
|
will see each other (despite the *coul* factor being 0.) and the
|
||||||
interactions between these dipoles will be damped by Thole's function.
|
interactions between these dipoles will be damped by Thole's function.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Thermostats and barostats**
|
**Thermostats and barostats**
|
||||||
|
|
||||||
Using a Nose-Hoover barostat with the *langevin/drude* thermostat is
|
Using a Nose-Hoover barostat with the *langevin/drude* thermostat is
|
||||||
straightforward using fix *nph* instead of *nve*\ . For example:
|
straightforward using fix *nph* instead of *nve*\ . For example:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
fix NPH all nph iso 1. 1. 500
|
fix NPH all nph iso 1. 1. 500
|
||||||
@ -385,7 +359,6 @@ with respect to their DC. The *fix drude/transform/inverse* performs
|
|||||||
the reverse transformation. For a NVT simulation, with the DCs and
|
the reverse transformation. For a NVT simulation, with the DCs and
|
||||||
atoms at 300 K and the DPs at 1 K relative to their DC one would use
|
atoms at 300 K and the DPs at 1 K relative to their DC one would use
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
fix DIRECT all drude/transform/direct
|
fix DIRECT all drude/transform/direct
|
||||||
@ -395,7 +368,6 @@ atoms at 300 K and the DPs at 1 K relative to their DC one would use
|
|||||||
|
|
||||||
For our phenol example, the groups would be defined as
|
For our phenol example, the groups would be defined as
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
group ATOMS type 1 2 3 4 5 # DCs and non-polarizable atoms
|
group ATOMS type 1 2 3 4 5 # DCs and non-polarizable atoms
|
||||||
@ -409,7 +381,6 @@ times and for the forces also). To avoid the flying ice cube artifact
|
|||||||
center of mass of the whole system drifts faster and faster, the *fix
|
center of mass of the whole system drifts faster and faster, the *fix
|
||||||
momentum* can be used. For instance:
|
momentum* can be used. For instance:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
fix MOMENTUM all momentum 100 linear 1 1 1
|
fix MOMENTUM all momentum 100 linear 1 1 1
|
||||||
@ -424,7 +395,6 @@ the temperature to correspond to the fix group only. We must then use
|
|||||||
the *fix\_modify* command for this. In the end, the block of
|
the *fix\_modify* command for this. In the end, the block of
|
||||||
instructions for thermostatting and barostatting will look like
|
instructions for thermostatting and barostatting will look like
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
compute TATOMS ATOMS temp
|
compute TATOMS ATOMS temp
|
||||||
@ -434,10 +404,8 @@ instructions for thermostatting and barostatting will look like
|
|||||||
fix NVT DRUDES nvt temp 1. 1. 20
|
fix NVT DRUDES nvt temp 1. 1. 20
|
||||||
fix INVERSE all drude/transform/inverse
|
fix INVERSE all drude/transform/inverse
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Rigid bodies**
|
**Rigid bodies**
|
||||||
|
|
||||||
You may want to simulate molecules as rigid bodies (but polarizable).
|
You may want to simulate molecules as rigid bodies (but polarizable).
|
||||||
@ -448,7 +416,6 @@ review the different thermostats and ensemble combinations.
|
|||||||
|
|
||||||
NVT ensemble using Langevin thermostat:
|
NVT ensemble using Langevin thermostat:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
comm_modify vel yes
|
comm_modify vel yes
|
||||||
@ -458,7 +425,6 @@ NVT ensemble using Langevin thermostat:
|
|||||||
|
|
||||||
NVT ensemble using Nose-Hoover thermostat:
|
NVT ensemble using Nose-Hoover thermostat:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
fix DIRECT all drude/transform/direct
|
fix DIRECT all drude/transform/direct
|
||||||
@ -468,7 +434,6 @@ NVT ensemble using Nose-Hoover thermostat:
|
|||||||
|
|
||||||
NPT ensemble with Langevin thermostat:
|
NPT ensemble with Langevin thermostat:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
comm_modify vel yes
|
comm_modify vel yes
|
||||||
@ -478,7 +443,6 @@ NPT ensemble with Langevin thermostat:
|
|||||||
|
|
||||||
NPT ensemble using Nose-Hoover thermostat:
|
NPT ensemble using Nose-Hoover thermostat:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
compute TATOM ATOMS temp
|
compute TATOM ATOMS temp
|
||||||
@ -488,45 +452,31 @@ NPT ensemble using Nose-Hoover thermostat:
|
|||||||
fix NVT DRUDES nvt temp 1. 1. 20
|
fix NVT DRUDES nvt temp 1. 1. 20
|
||||||
fix INVERSE all drude/transform/inverse
|
fix INVERSE all drude/transform/inverse
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _Lamoureux2:
|
.. _Lamoureux2:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Lamoureux)** Lamoureux and Roux, J Chem Phys, 119, 3025-3039 (2003)
|
**(Lamoureux)** Lamoureux and Roux, J Chem Phys, 119, 3025-3039 (2003)
|
||||||
|
|
||||||
.. _Schroeder:
|
.. _Schroeder:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Schroeder)** Schroeder and Steinhauser, J Chem Phys, 133,
|
**(Schroeder)** Schroeder and Steinhauser, J Chem Phys, 133,
|
||||||
154511 (2010).
|
154511 (2010).
|
||||||
|
|
||||||
.. _Jiang2:
|
.. _Jiang2:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Jiang)** Jiang, Hardy, Phillips, MacKerell, Schulten, and Roux,
|
**(Jiang)** Jiang, Hardy, Phillips, MacKerell, Schulten, and Roux,
|
||||||
J Phys Chem Lett, 2, 87-92 (2011).
|
J Phys Chem Lett, 2, 87-92 (2011).
|
||||||
|
|
||||||
.. _Thole2:
|
.. _Thole2:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Thole)** Chem Phys, 59, 341 (1981).
|
**(Thole)** Chem Phys, 59, 341 (1981).
|
||||||
|
|
||||||
.. _Noskov2:
|
.. _Noskov2:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Noskov)** Noskov, Lamoureux and Roux, J Phys Chem B, 109, 6705 (2005).
|
**(Noskov)** Noskov, Lamoureux and Roux, J Phys Chem B, 109, 6705 (2005).
|
||||||
|
|
||||||
.. _SWM4-NDP:
|
.. _SWM4-NDP:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(SWM4-NDP)** Lamoureux, Harder, Vorobyov, Roux, MacKerell, Chem Phys
|
**(SWM4-NDP)** Lamoureux, Harder, Vorobyov, Roux, MacKerell, Chem Phys
|
||||||
Let, 418, 245-249 (2006)
|
Let, 418, 245-249 (2006)
|
||||||
|
|||||||
@ -33,12 +33,8 @@ tensor. Another approach is to sample the triclinic cell fluctuations
|
|||||||
that occur in an NPT simulation. This method can also be slow to
|
that occur in an NPT simulation. This method can also be slow to
|
||||||
converge and requires careful post-processing :ref:`(Shinoda) <Shinoda1>`
|
converge and requires careful post-processing :ref:`(Shinoda) <Shinoda1>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _Shinoda1:
|
.. _Shinoda1:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Shinoda)** Shinoda, Shiga, and Mikami, Phys Rev B, 69, 134103 (2004).
|
**(Shinoda)** Shinoda, Shiga, and Mikami, Phys Rev B, 69, 134103 (2004).
|
||||||
|
|||||||
@ -22,10 +22,8 @@ and will reduce the time until the integration is complete. For more
|
|||||||
information on the requirements to have your code included into LAMMPS
|
information on the requirements to have your code included into LAMMPS
|
||||||
please see the :doc:`Modify contribute <Modify_contribute>` doc page.
|
please see the :doc:`Modify contribute <Modify_contribute>` doc page.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Making an account**
|
**Making an account**
|
||||||
|
|
||||||
First of all, you need a GitHub account. This is fairly simple, just
|
First of all, you need a GitHub account. This is fairly simple, just
|
||||||
@ -34,10 +32,8 @@ the "Sign up for GitHub" button. Once your account is created, you
|
|||||||
can sign in by clicking the button in the top left and filling in your
|
can sign in by clicking the button in the top left and filling in your
|
||||||
username or e-mail address and password.
|
username or e-mail address and password.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Forking the repository**
|
**Forking the repository**
|
||||||
|
|
||||||
To get changes into LAMMPS, you need to first fork the `lammps/lammps`
|
To get changes into LAMMPS, you need to first fork the `lammps/lammps`
|
||||||
@ -63,10 +59,8 @@ At the same time, you can set things up, so you can include changes from
|
|||||||
upstream into your repository and thus keep it in sync with the ongoing
|
upstream into your repository and thus keep it in sync with the ongoing
|
||||||
LAMMPS development.
|
LAMMPS development.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Adding changes to your own fork**
|
**Adding changes to your own fork**
|
||||||
|
|
||||||
Additions to the upstream version of LAMMPS are handled using *feature
|
Additions to the upstream version of LAMMPS are handled using *feature
|
||||||
@ -81,14 +75,12 @@ explained in more detail here: `feature branch workflow <https://www.atlassian.c
|
|||||||
First of all, create a clone of your version on github on your local
|
First of all, create a clone of your version on github on your local
|
||||||
machine via HTTPS:
|
machine via HTTPS:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git clone https://github.com/<your user name>/lammps.git <some name>
|
$ git clone https://github.com/<your user name>/lammps.git <some name>
|
||||||
|
|
||||||
or, if you have set up your GitHub account for using SSH keys, via SSH:
|
or, if you have set up your GitHub account for using SSH keys, via SSH:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git clone git@github.com:<your user name>/lammps.git
|
$ git clone git@github.com:<your user name>/lammps.git
|
||||||
@ -108,7 +100,6 @@ test them without interfering with the repository on GitHub.
|
|||||||
To pull changes from upstream into this copy, you can go to the directory
|
To pull changes from upstream into this copy, you can go to the directory
|
||||||
and use git pull:
|
and use git pull:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ cd mylammps
|
$ cd mylammps
|
||||||
@ -117,7 +108,6 @@ and use git pull:
|
|||||||
|
|
||||||
You can also add this URL as a remote:
|
You can also add this URL as a remote:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git remote add lammps_upstream https://www.github.com/lammps/lammps
|
$ git remote add lammps_upstream https://www.github.com/lammps/lammps
|
||||||
@ -127,7 +117,6 @@ branch for the feature you want to work on. This tutorial contains the
|
|||||||
workflow that updated this tutorial, and hence we will call the branch
|
workflow that updated this tutorial, and hence we will call the branch
|
||||||
"github-tutorial-update":
|
"github-tutorial-update":
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git checkout -b github-tutorial-update master
|
$ git checkout -b github-tutorial-update master
|
||||||
@ -140,7 +129,6 @@ unrelated feature, you should switch branches!
|
|||||||
|
|
||||||
After everything is done, add the files to the branch and commit them:
|
After everything is done, add the files to the branch and commit them:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git add doc/src/Howto_github.txt
|
$ git add doc/src/Howto_github.txt
|
||||||
@ -165,14 +153,12 @@ After everything is done, add the files to the branch and commit them:
|
|||||||
After adding all files, the change set can be committed with some
|
After adding all files, the change set can be committed with some
|
||||||
useful message that explains the change.
|
useful message that explains the change.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git commit -m 'Finally updated the github tutorial'
|
$ git commit -m 'Finally updated the github tutorial'
|
||||||
|
|
||||||
After the commit, the changes can be pushed to the same branch on GitHub:
|
After the commit, the changes can be pushed to the same branch on GitHub:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git push
|
$ git push
|
||||||
@ -181,7 +167,6 @@ Git will ask you for your user name and password on GitHub if you have
|
|||||||
not configured anything. If your local branch is not present on GitHub yet,
|
not configured anything. If your local branch is not present on GitHub yet,
|
||||||
it will ask you to add it by running
|
it will ask you to add it by running
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git push --set-upstream origin github-tutorial-update
|
$ git push --set-upstream origin github-tutorial-update
|
||||||
@ -192,22 +177,18 @@ password, the feature branch should be added to your fork on GitHub.
|
|||||||
If you want to make really sure you push to the right repository
|
If you want to make really sure you push to the right repository
|
||||||
(which is good practice), you can provide it explicitly:
|
(which is good practice), you can provide it explicitly:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git push origin
|
$ git push origin
|
||||||
|
|
||||||
or using an explicit URL:
|
or using an explicit URL:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git push git@github.com:Pakketeretet2/lammps.git
|
$ git push git@github.com:Pakketeretet2/lammps.git
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Filing a pull request**
|
**Filing a pull request**
|
||||||
|
|
||||||
Up to this point in the tutorial, all changes were to *your* clones of
|
Up to this point in the tutorial, all changes were to *your* clones of
|
||||||
@ -255,10 +236,8 @@ Now just write some nice comments and click on "Create pull request".
|
|||||||
.. image:: JPG/tutorial_create_new_pull_request2.png
|
.. image:: JPG/tutorial_create_new_pull_request2.png
|
||||||
:align: center
|
:align: center
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**After filing a pull request**
|
**After filing a pull request**
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
@ -408,7 +387,6 @@ Because the changes are OK with us, we are going to merge by clicking on
|
|||||||
Now, since in the meantime our local text for the tutorial also changed,
|
Now, since in the meantime our local text for the tutorial also changed,
|
||||||
we need to pull Axel's change back into our branch, and merge them:
|
we need to pull Axel's change back into our branch, and merge them:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git add Howto_github.txt
|
$ git add Howto_github.txt
|
||||||
@ -425,7 +403,6 @@ With Axel's changes merged in and some final text updates, our feature
|
|||||||
branch is now perfect as far as we are concerned, so we are going to
|
branch is now perfect as far as we are concerned, so we are going to
|
||||||
commit and push again:
|
commit and push again:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git add Howto_github.txt
|
$ git add Howto_github.txt
|
||||||
@ -438,10 +415,8 @@ This merge also shows up on the lammps GitHub page:
|
|||||||
.. image:: JPG/tutorial_reverse_pull_request7.png
|
.. image:: JPG/tutorial_reverse_pull_request7.png
|
||||||
:align: center
|
:align: center
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**After a merge**
|
**After a merge**
|
||||||
|
|
||||||
When everything is fine, the feature branch is merged into the master branch:
|
When everything is fine, the feature branch is merged into the master branch:
|
||||||
@ -456,7 +431,6 @@ It is in principle safe to delete them from your own fork. This helps
|
|||||||
keep it a bit more tidy. Note that you first have to switch to another
|
keep it a bit more tidy. Note that you first have to switch to another
|
||||||
branch!
|
branch!
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git checkout master
|
$ git checkout master
|
||||||
@ -472,7 +446,6 @@ first delete and then pull, everything should still be fine.
|
|||||||
Finally, if you delete the branch locally, you might want to push this
|
Finally, if you delete the branch locally, you might want to push this
|
||||||
to your remote(s) as well:
|
to your remote(s) as well:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git push origin :github-tutorial-update
|
$ git push origin :github-tutorial-update
|
||||||
|
|||||||
@ -62,20 +62,14 @@ auto-correlation. See the doc page for the :doc:`compute heat/flux <compute_hea
|
|||||||
that calculates the thermal conductivity of solid Ar via the GK
|
that calculates the thermal conductivity of solid Ar via the GK
|
||||||
formalism.
|
formalism.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _howto-Ikeshoji:
|
.. _howto-Ikeshoji:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Ikeshoji)** Ikeshoji and Hafskjold, Molecular Physics, 81, 251-261
|
**(Ikeshoji)** Ikeshoji and Hafskjold, Molecular Physics, 81, 251-261
|
||||||
(1994).
|
(1994).
|
||||||
|
|
||||||
.. _howto-Wirnsberger:
|
.. _howto-Wirnsberger:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Wirnsberger)** Wirnsberger, Frenkel, and Dellago, J Chem Phys, 143, 124104
|
**(Wirnsberger)** Wirnsberger, Frenkel, and Dellago, J Chem Phys, 143, 124104
|
||||||
(2015).
|
(2015).
|
||||||
|
|||||||
@ -58,7 +58,6 @@ details.
|
|||||||
The added functions can access or change any internal LAMMPS data you
|
The added functions can access or change any internal LAMMPS data you
|
||||||
wish.
|
wish.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: c
|
.. code-block:: c
|
||||||
|
|
||||||
void lammps_open(int, char **, MPI_Comm, void **)
|
void lammps_open(int, char **, MPI_Comm, void **)
|
||||||
@ -136,7 +135,6 @@ information from LAMMPS and setting value within LAMMPS. Again, see
|
|||||||
the documentation in the src/library.cpp file for details, including
|
the documentation in the src/library.cpp file for details, including
|
||||||
which quantities can be queried by name:
|
which quantities can be queried by name:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: c
|
.. code-block:: c
|
||||||
|
|
||||||
int lammps_extract_setting(void *, char *)
|
int lammps_extract_setting(void *, char *)
|
||||||
@ -163,7 +161,6 @@ is not listed. For the other extract functions, the underlying
|
|||||||
storage may be reallocated as LAMMPS runs, so you need to re-call the
|
storage may be reallocated as LAMMPS runs, so you need to re-call the
|
||||||
function to assure a current pointer or returned value(s).
|
function to assure a current pointer or returned value(s).
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: c
|
.. code-block:: c
|
||||||
|
|
||||||
double lammps_get_thermo(void *, char *)
|
double lammps_get_thermo(void *, char *)
|
||||||
@ -187,7 +184,6 @@ The lammps\_reset\_box() function resets the size and shape of the
|
|||||||
simulation box, e.g. as part of restoring a previously extracted and
|
simulation box, e.g. as part of restoring a previously extracted and
|
||||||
saved state of a simulation.
|
saved state of a simulation.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: c
|
.. code-block:: c
|
||||||
|
|
||||||
void lammps_gather_atoms(void *, char *, int, int, void *)
|
void lammps_gather_atoms(void *, char *, int, int, void *)
|
||||||
@ -230,7 +226,6 @@ those values to each atom in the system. The
|
|||||||
lammps\_scatter\_atoms\_subset() function takes a subset of IDs as an
|
lammps\_scatter\_atoms\_subset() function takes a subset of IDs as an
|
||||||
argument and only scatters those values to the owning atoms.
|
argument and only scatters those values to the owning atoms.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: c
|
.. code-block:: c
|
||||||
|
|
||||||
void lammps_create_atoms(void *, int, tagint *, int *, double *, double *,
|
void lammps_create_atoms(void *, int, tagint *, int *, double *, double *,
|
||||||
|
|||||||
@ -46,7 +46,5 @@ to the relevant fixes.
|
|||||||
|
|
||||||
.. _Paquay1:
|
.. _Paquay1:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Paquay)** Paquay and Kusters, Biophys. J., 110, 6, (2016).
|
**(Paquay)** Paquay and Kusters, Biophys. J., 110, 6, (2016).
|
||||||
preprint available at `arXiv:1411.3019 <http://arxiv.org/abs/1411.3019/>`_.
|
preprint available at `arXiv:1411.3019 <http://arxiv.org/abs/1411.3019/>`_.
|
||||||
|
|||||||
@ -8,7 +8,6 @@ If "multiple simulations" means continue a previous simulation for
|
|||||||
more timesteps, then you simply use the :doc:`run <run>` command
|
more timesteps, then you simply use the :doc:`run <run>` command
|
||||||
multiple times. For example, this script
|
multiple times. For example, this script
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
units lj
|
units lj
|
||||||
@ -27,7 +26,6 @@ If you wish to run totally different simulations, one after the other,
|
|||||||
the :doc:`clear <clear>` command can be used in between them to
|
the :doc:`clear <clear>` command can be used in between them to
|
||||||
re-initialize LAMMPS. For example, this script
|
re-initialize LAMMPS. For example, this script
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
units lj
|
units lj
|
||||||
@ -48,7 +46,6 @@ For large numbers of independent simulations, you can use
|
|||||||
multiple times with different settings. For example, this
|
multiple times with different settings. For example, this
|
||||||
script, named in.polymer
|
script, named in.polymer
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
variable d index run1 run2 run3 run4 run5 run6 run7 run8
|
variable d index run1 run2 run3 run4 run5 run6 run7 run8
|
||||||
@ -65,7 +62,6 @@ file in each directory. The same concept could be used to run the
|
|||||||
same system at 8 different temperatures, using a temperature variable
|
same system at 8 different temperatures, using a temperature variable
|
||||||
and storing the output in different log and dump files, for example
|
and storing the output in different log and dump files, for example
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
variable a loop 8
|
variable a loop 8
|
||||||
|
|||||||
@ -43,13 +43,9 @@ NEMD simulations can also be used to measure transport properties of a fluid
|
|||||||
through a pore or channel. Simulations of steady-state flow can be performed
|
through a pore or channel. Simulations of steady-state flow can be performed
|
||||||
using the :doc:`fix flow/gauss <fix_flow_gauss>` command.
|
using the :doc:`fix flow/gauss <fix_flow_gauss>` command.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _Daivis-nemd:
|
.. _Daivis-nemd:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Daivis and Todd)** Daivis and Todd, Nonequilibrium Molecular Dynamics (book),
|
**(Daivis and Todd)** Daivis and Todd, Nonequilibrium Molecular Dynamics (book),
|
||||||
Cambridge University Press, https://doi.org/10.1017/9781139017848, (2017).
|
Cambridge University Press, https://doi.org/10.1017/9781139017848, (2017).
|
||||||
|
|||||||
@ -12,7 +12,6 @@ There are four basic kinds of LAMMPS output:
|
|||||||
screen.
|
screen.
|
||||||
* :doc:`Restart files <restart>`.
|
* :doc:`Restart files <restart>`.
|
||||||
|
|
||||||
|
|
||||||
A simulation prints one set of thermodynamic output and (optionally)
|
A simulation prints one set of thermodynamic output and (optionally)
|
||||||
restart files. It can generate any number of dump files and fix
|
restart files. It can generate any number of dump files and fix
|
||||||
output files, depending on what :doc:`dump <dump>` and :doc:`fix <fix>`
|
output files, depending on what :doc:`dump <dump>` and :doc:`fix <fix>`
|
||||||
|
|||||||
@ -56,7 +56,6 @@ output support enabled.
|
|||||||
|
|
||||||
Step 1a: For the CMake based build system, the steps are:
|
Step 1a: For the CMake based build system, the steps are:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
mkdir $LAMMPS_DIR/build-shared
|
mkdir $LAMMPS_DIR/build-shared
|
||||||
@ -68,7 +67,6 @@ Step 1a: For the CMake based build system, the steps are:
|
|||||||
|
|
||||||
Step 1b: For the legacy, make based build system, the steps are:
|
Step 1b: For the legacy, make based build system, the steps are:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cd $LAMMPS_DIR/src
|
cd $LAMMPS_DIR/src
|
||||||
@ -85,7 +83,6 @@ Step 2: Installing the LAMMPS Python package
|
|||||||
PyLammps is part of the lammps Python package. To install it simply install
|
PyLammps is part of the lammps Python package. To install it simply install
|
||||||
that package into your current Python installation with:
|
that package into your current Python installation with:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
make install-python
|
make install-python
|
||||||
@ -110,7 +107,6 @@ Benefits of using a virtualenv
|
|||||||
|
|
||||||
**Prerequisite (e.g. on Ubuntu)**
|
**Prerequisite (e.g. on Ubuntu)**
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
apt-get install python-virtualenv
|
apt-get install python-virtualenv
|
||||||
@ -118,7 +114,6 @@ Benefits of using a virtualenv
|
|||||||
Creating a virtualenv with lammps installed
|
Creating a virtualenv with lammps installed
|
||||||
"""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
# create virtualenv named 'testing'
|
# create virtualenv named 'testing'
|
||||||
@ -132,7 +127,6 @@ When using CMake and the shared library has already been build, you
|
|||||||
need to re-run CMake to update the location of the python executable
|
need to re-run CMake to update the location of the python executable
|
||||||
to the location in the virtual environment with:
|
to the location in the virtual environment with:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
cmake . -DPYTHON_EXECUTABLE=$(which python)
|
cmake . -DPYTHON_EXECUTABLE=$(which python)
|
||||||
@ -154,7 +148,6 @@ Creating a new instance of PyLammps
|
|||||||
To create a PyLammps object you need to first import the class from the lammps
|
To create a PyLammps object you need to first import the class from the lammps
|
||||||
module. By using the default constructor, a new *lammps* instance is created.
|
module. By using the default constructor, a new *lammps* instance is created.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
from lammps import PyLammps
|
from lammps import PyLammps
|
||||||
@ -162,7 +155,6 @@ module. By using the default constructor, a new *lammps* instance is created.
|
|||||||
|
|
||||||
You can also initialize PyLammps on top of this existing *lammps* object:
|
You can also initialize PyLammps on top of this existing *lammps* object:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
from lammps import lammps, PyLammps
|
from lammps import lammps, PyLammps
|
||||||
@ -177,7 +169,6 @@ the command method of the lammps object instance.
|
|||||||
|
|
||||||
For instance, let's take the following LAMMPS command:
|
For instance, let's take the following LAMMPS command:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
region box block 0 10 0 5 -0.5 0.5
|
region box block 0 10 0 5 -0.5 0.5
|
||||||
@ -185,7 +176,6 @@ For instance, let's take the following LAMMPS command:
|
|||||||
In the original interface this command can be executed with the following
|
In the original interface this command can be executed with the following
|
||||||
Python code if *L* was a lammps instance:
|
Python code if *L* was a lammps instance:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
L.command("region box block 0 10 0 5 -0.5 0.5")
|
L.command("region box block 0 10 0 5 -0.5 0.5")
|
||||||
@ -193,7 +183,6 @@ Python code if *L* was a lammps instance:
|
|||||||
With the PyLammps interface, any command can be split up into arbitrary parts
|
With the PyLammps interface, any command can be split up into arbitrary parts
|
||||||
separated by white-space, passed as individual arguments to a region method.
|
separated by white-space, passed as individual arguments to a region method.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
L.region("box block", 0, 10, 0, 5, -0.5, 0.5)
|
L.region("box block", 0, 10, 0, 5, -0.5, 0.5)
|
||||||
@ -206,7 +195,6 @@ The benefit of this approach is avoiding redundant command calls and easier
|
|||||||
parameterization. In the original interface parameterization needed to be done
|
parameterization. In the original interface parameterization needed to be done
|
||||||
manually by creating formatted strings.
|
manually by creating formatted strings.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
L.command("region box block %f %f %f %f %f %f" % (xlo, xhi, ylo, yhi, zlo, zhi))
|
L.command("region box block %f %f %f %f %f %f" % (xlo, xhi, ylo, yhi, zlo, zhi))
|
||||||
@ -214,7 +202,6 @@ manually by creating formatted strings.
|
|||||||
In contrast, methods of PyLammps accept parameters directly and will convert
|
In contrast, methods of PyLammps accept parameters directly and will convert
|
||||||
them automatically to a final command string.
|
them automatically to a final command string.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
L.region("box block", xlo, xhi, ylo, yhi, zlo, zhi)
|
L.region("box block", xlo, xhi, ylo, yhi, zlo, zhi)
|
||||||
@ -225,8 +212,6 @@ System state
|
|||||||
In addition to dispatching commands directly through the PyLammps object, it
|
In addition to dispatching commands directly through the PyLammps object, it
|
||||||
also provides several properties which allow you to query the system state.
|
also provides several properties which allow you to query the system state.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
L.system
|
L.system
|
||||||
Is a dictionary describing the system such as the bounding box or number of atoms
|
Is a dictionary describing the system such as the bounding box or number of atoms
|
||||||
|
|
||||||
@ -260,8 +245,6 @@ L.dump
|
|||||||
L.groups
|
L.groups
|
||||||
List of groups present in the current system
|
List of groups present in the current system
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Working with LAMMPS variables
|
Working with LAMMPS variables
|
||||||
-----------------------------
|
-----------------------------
|
||||||
|
|
||||||
@ -269,7 +252,6 @@ LAMMPS variables can be both defined and accessed via the PyLammps interface.
|
|||||||
|
|
||||||
To define a variable you can use the :doc:`variable <variable>` command:
|
To define a variable you can use the :doc:`variable <variable>` command:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
L.variable("a index 2")
|
L.variable("a index 2")
|
||||||
@ -279,7 +261,6 @@ A dictionary of all variables is returned by L.variables
|
|||||||
you can access an individual variable by retrieving a variable object from the
|
you can access an individual variable by retrieving a variable object from the
|
||||||
L.variables dictionary by name
|
L.variables dictionary by name
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
a = L.variables['a']
|
a = L.variables['a']
|
||||||
@ -287,7 +268,6 @@ L.variables dictionary by name
|
|||||||
The variable value can then be easily read and written by accessing the value
|
The variable value can then be easily read and written by accessing the value
|
||||||
property of this object.
|
property of this object.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
print(a.value)
|
print(a.value)
|
||||||
@ -300,7 +280,6 @@ LAMMPS expressions can be immediately evaluated by using the eval method. The
|
|||||||
passed string parameter can be any expression containing global thermo values,
|
passed string parameter can be any expression containing global thermo values,
|
||||||
variables, compute or fix data.
|
variables, compute or fix data.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
result = L.eval("ke") # kinetic energy
|
result = L.eval("ke") # kinetic energy
|
||||||
@ -315,7 +294,6 @@ All atoms in the current simulation can be accessed by using the L.atoms list.
|
|||||||
Each element of this list is an object which exposes its properties (id, type,
|
Each element of this list is an object which exposes its properties (id, type,
|
||||||
position, velocity, force, etc.).
|
position, velocity, force, etc.).
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
# access first atom
|
# access first atom
|
||||||
@ -329,7 +307,6 @@ position, velocity, force, etc.).
|
|||||||
|
|
||||||
Some properties can also be used to set:
|
Some properties can also be used to set:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
# set position in 2D simulation
|
# set position in 2D simulation
|
||||||
@ -347,7 +324,6 @@ after a run via the L.runs list. This list contains a growing list of run data.
|
|||||||
The first element is the output of the first run, the second element that of
|
The first element is the output of the first run, the second element that of
|
||||||
the second run.
|
the second run.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
L.run(1000)
|
L.run(1000)
|
||||||
@ -359,7 +335,6 @@ the second run.
|
|||||||
Each run contains a dictionary of all trajectories. Each trajectory is
|
Each run contains a dictionary of all trajectories. Each trajectory is
|
||||||
accessible through its thermo name:
|
accessible through its thermo name:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
L.runs[0].thermo.Step # list of time steps in first run
|
L.runs[0].thermo.Step # list of time steps in first run
|
||||||
@ -367,7 +342,6 @@ accessible through its thermo name:
|
|||||||
|
|
||||||
Together with matplotlib plotting data out of LAMMPS becomes simple:
|
Together with matplotlib plotting data out of LAMMPS becomes simple:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
import matplotlib.plot as plt
|
import matplotlib.plot as plt
|
||||||
@ -406,7 +380,6 @@ tutorials and showcasing your latest research.
|
|||||||
To launch an instance of Jupyter simply run the following command inside your
|
To launch an instance of Jupyter simply run the following command inside your
|
||||||
Python environment (this assumes you followed the Quick Start instructions):
|
Python environment (this assumes you followed the Quick Start instructions):
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
jupyter notebook
|
jupyter notebook
|
||||||
@ -429,7 +402,6 @@ Four atoms are placed in the simulation and the dihedral potential is applied on
|
|||||||
them using a datafile. Then one of the atoms is rotated along the central axis by
|
them using a datafile. Then one of the atoms is rotated along the central axis by
|
||||||
setting its position from Python, which changes the dihedral angle.
|
setting its position from Python, which changes the dihedral angle.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
phi = [d \* math.pi / 180 for d in range(360)]
|
phi = [d \* math.pi / 180 for d in range(360)]
|
||||||
@ -463,7 +435,6 @@ Initially, a 2D system is created in a state with minimal energy.
|
|||||||
|
|
||||||
It is then disordered by moving each atom by a random delta.
|
It is then disordered by moving each atom by a random delta.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
random.seed(27848)
|
random.seed(27848)
|
||||||
@ -483,7 +454,6 @@ It is then disordered by moving each atom by a random delta.
|
|||||||
Finally, the Monte Carlo algorithm is implemented in Python. It continuously
|
Finally, the Monte Carlo algorithm is implemented in Python. It continuously
|
||||||
moves random atoms by a random delta and only accepts certain moves.
|
moves random atoms by a random delta and only accepts certain moves.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
estart = L.eval("pe")
|
estart = L.eval("pe")
|
||||||
@ -536,7 +506,6 @@ Using PyLammps and mpi4py (Experimental)
|
|||||||
|
|
||||||
PyLammps can be run in parallel using mpi4py. This python package can be installed using
|
PyLammps can be run in parallel using mpi4py. This python package can be installed using
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
pip install mpi4py
|
pip install mpi4py
|
||||||
@ -544,7 +513,6 @@ PyLammps can be run in parallel using mpi4py. This python package can be install
|
|||||||
The following is a short example which reads in an existing LAMMPS input file and
|
The following is a short example which reads in an existing LAMMPS input file and
|
||||||
executes it in parallel. You can find in.melt in the examples/melt folder.
|
executes it in parallel. You can find in.melt in the examples/melt folder.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
from mpi4py import MPI
|
from mpi4py import MPI
|
||||||
@ -561,7 +529,6 @@ executes it in parallel. You can find in.melt in the examples/melt folder.
|
|||||||
To run this script (melt.py) in parallel using 4 MPI processes we invoke the
|
To run this script (melt.py) in parallel using 4 MPI processes we invoke the
|
||||||
following mpirun command:
|
following mpirun command:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
mpirun -np 4 python melt.py
|
mpirun -np 4 python melt.py
|
||||||
|
|||||||
@ -37,7 +37,6 @@ replica. The processors assigned to each replica are determined at
|
|||||||
run-time by using the :doc:`-partition command-line switch <Run_options>` to launch LAMMPS on multiple partitions,
|
run-time by using the :doc:`-partition command-line switch <Run_options>` to launch LAMMPS on multiple partitions,
|
||||||
which in this context are the same as replicas. E.g. these commands:
|
which in this context are the same as replicas. E.g. these commands:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
mpirun -np 16 lmp_linux -partition 8x2 -in in.temper
|
mpirun -np 16 lmp_linux -partition 8x2 -in in.temper
|
||||||
|
|||||||
@ -21,7 +21,6 @@ Look at the *in.chain* input script provided in the *bench* directory
|
|||||||
of the LAMMPS distribution to see the original script that these 2
|
of the LAMMPS distribution to see the original script that these 2
|
||||||
scripts are based on. If that script had the line
|
scripts are based on. If that script had the line
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
restart 50 tmp.restart
|
restart 50 tmp.restart
|
||||||
@ -32,7 +31,6 @@ and tmp.restart.100) as it ran.
|
|||||||
This script could be used to read the 1st restart file and re-run the
|
This script could be used to read the 1st restart file and re-run the
|
||||||
last 50 timesteps:
|
last 50 timesteps:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
read_restart tmp.restart.50
|
read_restart tmp.restart.50
|
||||||
@ -62,14 +60,12 @@ uses random numbers in a way that does not allow for perfect restarts.
|
|||||||
As an alternate approach, the restart file could be converted to a data
|
As an alternate approach, the restart file could be converted to a data
|
||||||
file as follows:
|
file as follows:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
lmp_g++ -r tmp.restart.50 tmp.restart.data
|
lmp_g++ -r tmp.restart.50 tmp.restart.data
|
||||||
|
|
||||||
Then, this script could be used to re-run the last 50 steps:
|
Then, this script could be used to re-run the last 50 steps:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
units lj
|
units lj
|
||||||
|
|||||||
@ -40,13 +40,9 @@ the SPC and SPC/E models.
|
|||||||
|
|
||||||
Wikipedia also has a nice article on `water models <http://en.wikipedia.org/wiki/Water_model>`_.
|
Wikipedia also has a nice article on `water models <http://en.wikipedia.org/wiki/Water_model>`_.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _howto-Berendsen:
|
.. _howto-Berendsen:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Berendsen)** Berendsen, Grigera, Straatsma, J Phys Chem, 91,
|
**(Berendsen)** Berendsen, Grigera, Straatsma, J Phys Chem, 91,
|
||||||
6269-6271 (1987).
|
6269-6271 (1987).
|
||||||
|
|||||||
@ -38,7 +38,6 @@ The dipole style does not actually define finite-size particles, but
|
|||||||
is often used in conjunction with spherical particles, via a command
|
is often used in conjunction with spherical particles, via a command
|
||||||
like
|
like
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
atom_style hybrid sphere dipole
|
atom_style hybrid sphere dipole
|
||||||
|
|||||||
@ -56,13 +56,9 @@ the magnetic energy. The second command is :doc:`compute property/atom <compute_
|
|||||||
per atom magnetic quantities. Typically, the orientation of a given
|
per atom magnetic quantities. Typically, the orientation of a given
|
||||||
magnetic spin, or the magnetic force acting on this spin.
|
magnetic spin, or the magnetic force acting on this spin.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _Tranchida:
|
.. _Tranchida:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Tranchida)** Tranchida, Plimpton, Thibaudeau and Thompson,
|
**(Tranchida)** Tranchida, Plimpton, Thibaudeau and Thompson,
|
||||||
Journal of Computational Physics, 372, 406-425, (2018).
|
Journal of Computational Physics, 372, 406-425, (2018).
|
||||||
|
|||||||
@ -82,13 +82,9 @@ specify them explicitly via the :doc:`thermo_style custom <thermo_style>` comman
|
|||||||
:doc:`thermo_modify <thermo_modify>` command to re-define what
|
:doc:`thermo_modify <thermo_modify>` command to re-define what
|
||||||
temperature compute is used for default thermodynamic output.
|
temperature compute is used for default thermodynamic output.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _Daivis-thermostat:
|
.. _Daivis-thermostat:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Daivis and Todd)** Daivis and Todd, Nonequilibrium Molecular Dynamics (book),
|
**(Daivis and Todd)** Daivis and Todd, Nonequilibrium Molecular Dynamics (book),
|
||||||
Cambridge University Press, https://doi.org/10.1017/9781139017848, (2017).
|
Cambridge University Press, https://doi.org/10.1017/9781139017848, (2017).
|
||||||
|
|||||||
@ -51,26 +51,18 @@ details:
|
|||||||
|
|
||||||
Wikipedia also has a nice article on `water models <http://en.wikipedia.org/wiki/Water_model>`_.
|
Wikipedia also has a nice article on `water models <http://en.wikipedia.org/wiki/Water_model>`_.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _howto-tip3p:
|
.. _howto-tip3p:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(MacKerell)** MacKerell, Bashford, Bellott, Dunbrack, Evanseck, Field,
|
**(MacKerell)** MacKerell, Bashford, Bellott, Dunbrack, Evanseck, Field,
|
||||||
Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
|
Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
|
||||||
|
|
||||||
.. _Jorgensen1:
|
.. _Jorgensen1:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Jorgensen)** Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
|
**(Jorgensen)** Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
|
||||||
Phys, 79, 926 (1983).
|
Phys, 79, 926 (1983).
|
||||||
|
|
||||||
.. _Price1:
|
.. _Price1:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Price)** Price and Brooks, J Chem Phys, 121, 10096 (2004).
|
**(Price)** Price and Brooks, J Chem Phys, 121, 10096 (2004).
|
||||||
|
|||||||
@ -99,13 +99,9 @@ and Coulombic cutoffs are set in the :doc:`pair_style lj/cut/tip4p/long <pair_lj
|
|||||||
|
|
||||||
Wikipedia also has a nice article on `water models <http://en.wikipedia.org/wiki/Water_model>`_.
|
Wikipedia also has a nice article on `water models <http://en.wikipedia.org/wiki/Water_model>`_.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _Jorgensen5:
|
.. _Jorgensen5:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Jorgensen)** Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
|
**(Jorgensen)** Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
|
||||||
Phys, 79, 926 (1983).
|
Phys, 79, 926 (1983).
|
||||||
|
|||||||
@ -200,7 +200,6 @@ an orthogonal bounding box which encloses the triclinic simulation box
|
|||||||
is output, along with the 3 tilt factors (xy, xz, yz) of the triclinic
|
is output, along with the 3 tilt factors (xy, xz, yz) of the triclinic
|
||||||
box, formatted as follows:
|
box, formatted as follows:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
ITEM: BOX BOUNDS xy xz yz
|
ITEM: BOX BOUNDS xy xz yz
|
||||||
@ -212,7 +211,6 @@ This bounding box is convenient for many visualization programs and is
|
|||||||
calculated from the 9 triclinic box parameters
|
calculated from the 9 triclinic box parameters
|
||||||
(xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) as follows:
|
(xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) as follows:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
xlo_bound = xlo + MIN(0.0,xy,xz,xy+xz)
|
xlo_bound = xlo + MIN(0.0,xy,xz,xy+xz)
|
||||||
|
|||||||
@ -62,7 +62,6 @@ simulation box.
|
|||||||
Here is an example input script that calculates the viscosity of
|
Here is an example input script that calculates the viscosity of
|
||||||
liquid Ar via the GK formalism:
|
liquid Ar via the GK formalism:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
# Sample LAMMPS input script for viscosity of liquid Ar
|
# Sample LAMMPS input script for viscosity of liquid Ar
|
||||||
@ -131,13 +130,9 @@ time-integrated momentum fluxes play the role of Cartesian
|
|||||||
coordinates, whose mean-square displacement increases linearly
|
coordinates, whose mean-square displacement increases linearly
|
||||||
with time at sufficiently long times.
|
with time at sufficiently long times.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _Daivis-viscosity:
|
.. _Daivis-viscosity:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Daivis and Todd)** Daivis and Todd, Nonequilibrium Molecular Dynamics (book),
|
**(Daivis and Todd)** Daivis and Todd, Nonequilibrium Molecular Dynamics (book),
|
||||||
Cambridge University Press, https://doi.org/10.1017/9781139017848, (2017).
|
Cambridge University Press, https://doi.org/10.1017/9781139017848, (2017).
|
||||||
|
|||||||
@ -27,10 +27,6 @@ snapshots.
|
|||||||
|
|
||||||
.. _pizza: http://www.sandia.gov/~sjplimp/pizza.html
|
.. _pizza: http://www.sandia.gov/~sjplimp/pizza.html
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _ensight: http://www.ensight.com
|
.. _ensight: http://www.ensight.com
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _atomeye: http://mt.seas.upenn.edu/Archive/Graphics/A
|
.. _atomeye: http://mt.seas.upenn.edu/Archive/Graphics/A
|
||||||
|
|||||||
@ -8,7 +8,6 @@ have more flexibility as to what features to include or exclude in the
|
|||||||
build. If you plan to :doc:`modify or extend LAMMPS <Modify>`, then you
|
build. If you plan to :doc:`modify or extend LAMMPS <Modify>`, then you
|
||||||
need the source code.
|
need the source code.
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
|||||||
@ -16,7 +16,6 @@ commands explained below to communicate with the git servers on
|
|||||||
GitHub. For people still using subversion (svn), GitHub also
|
GitHub. For people still using subversion (svn), GitHub also
|
||||||
provides `limited support for subversion clients <svn_>`_.
|
provides `limited support for subversion clients <svn_>`_.
|
||||||
|
|
||||||
|
|
||||||
.. warning::
|
.. warning::
|
||||||
|
|
||||||
As of October 2016, the official home of public LAMMPS development is
|
As of October 2016, the official home of public LAMMPS development is
|
||||||
@ -35,7 +34,6 @@ You can follow LAMMPS development on 3 different git branches:
|
|||||||
To access the git repositories on your box, use the clone command to
|
To access the git repositories on your box, use the clone command to
|
||||||
create a local copy of the LAMMPS repository with a command like:
|
create a local copy of the LAMMPS repository with a command like:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git clone -b unstable https://github.com/lammps/lammps.git mylammps
|
$ git clone -b unstable https://github.com/lammps/lammps.git mylammps
|
||||||
@ -57,7 +55,6 @@ LAMMPS, as listed on :doc:`this page <Errors_bugs>`, you can stay
|
|||||||
up-to-date by typing the following git commands from within the
|
up-to-date by typing the following git commands from within the
|
||||||
"mylammps" directory:
|
"mylammps" directory:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ git checkout unstable # not needed if you always stay in this branch
|
$ git checkout unstable # not needed if you always stay in this branch
|
||||||
@ -92,7 +89,6 @@ Once you have updated your local files with a "git pull" (or "git
|
|||||||
checkout"), you still need to re-build LAMMPS if any source files have
|
checkout"), you still need to re-build LAMMPS if any source files have
|
||||||
changed. To do this, you should cd to the src directory and type:
|
changed. To do this, you should cd to the src directory and type:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ make purge # remove any deprecated src files
|
$ make purge # remove any deprecated src files
|
||||||
|
|||||||
@ -206,7 +206,6 @@ Gentoo Linux executable
|
|||||||
LAMMPS is part of Gentoo's main package tree and can be installed by
|
LAMMPS is part of Gentoo's main package tree and can be installed by
|
||||||
typing:
|
typing:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
% emerge --ask lammps
|
% emerge --ask lammps
|
||||||
@ -216,7 +215,6 @@ built on the your machine.
|
|||||||
|
|
||||||
Certain LAMMPS packages can be enable via USE flags, type
|
Certain LAMMPS packages can be enable via USE flags, type
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
% equery uses lammps
|
% equery uses lammps
|
||||||
|
|||||||
@ -10,7 +10,6 @@ GPU, KOKKOS, LATTE, MSCG, MESSAGE, MPIIO POEMS VORONOI.
|
|||||||
After installing Homebrew, you can install LAMMPS on your system with
|
After installing Homebrew, you can install LAMMPS on your system with
|
||||||
the following commands:
|
the following commands:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
% brew install lammps
|
% brew install lammps
|
||||||
@ -21,7 +20,6 @@ the LAMMPS "doc", "potentials", "tools", "bench", and "examples" directories.
|
|||||||
Once LAMMPS is installed, you can test the installation with the
|
Once LAMMPS is installed, you can test the installation with the
|
||||||
Lennard-Jones benchmark file:
|
Lennard-Jones benchmark file:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
% brew test lammps -v
|
% brew test lammps -v
|
||||||
@ -31,7 +29,6 @@ results in Homebrew also installing the `kim-api` binaries when LAMMPS is
|
|||||||
installed. In order to use potentials from `openkim.org <openkim_>`_, you can
|
installed. In order to use potentials from `openkim.org <openkim_>`_, you can
|
||||||
install the `openkim-models` package
|
install the `openkim-models` package
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
% brew install openkim-models
|
% brew install openkim-models
|
||||||
@ -44,5 +41,4 @@ If you have problems with the installation you can post issues to
|
|||||||
Thanks to Derek Thomas (derekt at cello.t.u-tokyo.ac.jp) for setting
|
Thanks to Derek Thomas (derekt at cello.t.u-tokyo.ac.jp) for setting
|
||||||
up the Homebrew capability.
|
up the Homebrew capability.
|
||||||
|
|
||||||
|
|
||||||
.. _openkim: https://openkim.org
|
.. _openkim: https://openkim.org
|
||||||
|
|||||||
@ -52,7 +52,6 @@ the next patch release tarball.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
If you download a current LAMMPS tarball, one way to stay current as
|
If you download a current LAMMPS tarball, one way to stay current as
|
||||||
new patch tarballs are released, is to download a patch file which you
|
new patch tarballs are released, is to download a patch file which you
|
||||||
can apply to your local directory to update it for each new patch
|
can apply to your local directory to update it for each new patch
|
||||||
|
|||||||
@ -3,7 +3,6 @@ Introduction
|
|||||||
|
|
||||||
These pages provide a brief introduction to LAMMPS.
|
These pages provide a brief introduction to LAMMPS.
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
|||||||
@ -13,23 +13,18 @@ University:
|
|||||||
.. _sjp: http://www.cs.sandia.gov/~sjplimp
|
.. _sjp: http://www.cs.sandia.gov/~sjplimp
|
||||||
.. _lws: http://lammps.sandia.gov
|
.. _lws: http://lammps.sandia.gov
|
||||||
|
|
||||||
|
|
||||||
Past developers include Paul Crozier and Mark Stevens, both at Sandia,
|
Past developers include Paul Crozier and Mark Stevens, both at Sandia,
|
||||||
and Ray Shan, now at Materials Design.
|
and Ray Shan, now at Materials Design.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
The `Authors page <http://lammps.sandia.gov/authors.html>`_ of the
|
The `Authors page <http://lammps.sandia.gov/authors.html>`_ of the
|
||||||
`LAMMPS website <lws_>`_ has a comprehensive list of all the individuals
|
`LAMMPS website <lws_>`_ has a comprehensive list of all the individuals
|
||||||
who have contributed code for a new feature or command or tool to
|
who have contributed code for a new feature or command or tool to
|
||||||
LAMMPS.
|
LAMMPS.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
The following folks deserve special recognition. Many of the packages
|
The following folks deserve special recognition. Many of the packages
|
||||||
they have written are unique for an MD code and LAMMPS would not be as
|
they have written are unique for an MD code and LAMMPS would not be as
|
||||||
general-purpose as it is without their expertise and efforts.
|
general-purpose as it is without their expertise and efforts.
|
||||||
@ -49,10 +44,8 @@ general-purpose as it is without their expertise and efforts.
|
|||||||
* Ilya Valuev (JIHT), USER-AWPMD package for wave packet MD
|
* Ilya Valuev (JIHT), USER-AWPMD package for wave packet MD
|
||||||
* Greg Wagner (Northwestern U), MEAM package for MEAM potential
|
* Greg Wagner (Northwestern U), MEAM package for MEAM potential
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
As discussed on the `History page <http://lammps.sandia.gov/history.html>`_ of the website, LAMMPS
|
As discussed on the `History page <http://lammps.sandia.gov/history.html>`_ of the website, LAMMPS
|
||||||
originated as a cooperative project between DOE labs and industrial
|
originated as a cooperative project between DOE labs and industrial
|
||||||
partners. Folks involved in the design and testing of the original
|
partners. Folks involved in the design and testing of the original
|
||||||
|
|||||||
@ -16,10 +16,8 @@ classes of functionality:
|
|||||||
10. :ref:`Pre- and post-processing <prepost>`
|
10. :ref:`Pre- and post-processing <prepost>`
|
||||||
11. :ref:`Specialized features (beyond MD itself) <special>`
|
11. :ref:`Specialized features (beyond MD itself) <special>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _general:
|
.. _general:
|
||||||
|
|
||||||
General features
|
General features
|
||||||
@ -191,12 +189,8 @@ Pre- and post-processing
|
|||||||
|
|
||||||
.. _pizza: http://www.sandia.gov/~sjplimp/pizza.html
|
.. _pizza: http://www.sandia.gov/~sjplimp/pizza.html
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _python: http://www.python.org
|
.. _python: http://www.python.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _special:
|
.. _special:
|
||||||
|
|
||||||
Specialized features
|
Specialized features
|
||||||
|
|||||||
@ -15,16 +15,10 @@ distribution.
|
|||||||
|
|
||||||
.. _gnu: http://www.gnu.org/copyleft/gpl.html
|
.. _gnu: http://www.gnu.org/copyleft/gpl.html
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _gnuorg: http://www.gnu.org
|
.. _gnuorg: http://www.gnu.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _opensource: http://www.opensource.org
|
.. _opensource: http://www.opensource.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Here is a summary of what the GPL means for LAMMPS users:
|
Here is a summary of what the GPL means for LAMMPS users:
|
||||||
|
|
||||||
(1) Anyone is free to use, modify, or extend LAMMPS in any way they
|
(1) Anyone is free to use, modify, or extend LAMMPS in any way they
|
||||||
|
|||||||
@ -5,7 +5,6 @@ Depending on how you obtained LAMMPS, the doc directory has up
|
|||||||
to 6 sub-directories, 2 Nroff files, and optionally 2 PDF files
|
to 6 sub-directories, 2 Nroff files, and optionally 2 PDF files
|
||||||
plus 2 e-book format files:
|
plus 2 e-book format files:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
src # content files for LAMMPS documentation
|
src # content files for LAMMPS documentation
|
||||||
@ -49,11 +48,9 @@ b. You can build the HTML or PDF files yourself, by typing "make html"
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
The generation of all documentation is managed by the Makefile in
|
The generation of all documentation is managed by the Makefile in
|
||||||
the doc directory.
|
the doc directory.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
Documentation Build Options:
|
Documentation Build Options:
|
||||||
@ -74,7 +71,6 @@ the doc directory.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Installing prerequisites for HTML build
|
Installing prerequisites for HTML build
|
||||||
=======================================
|
=======================================
|
||||||
|
|
||||||
@ -84,7 +80,6 @@ have to be installed. Here are instructions for common setups:
|
|||||||
Ubuntu
|
Ubuntu
|
||||||
------
|
------
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
sudo apt-get install python-virtualenv
|
sudo apt-get install python-virtualenv
|
||||||
@ -92,7 +87,6 @@ Ubuntu
|
|||||||
Fedora (up to version 21) and Red Hat Enterprise Linux or CentOS (up to version 7.x)
|
Fedora (up to version 21) and Red Hat Enterprise Linux or CentOS (up to version 7.x)
|
||||||
------------------------------------------------------------------------------------
|
------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
sudo yum install python3-virtualenv
|
sudo yum install python3-virtualenv
|
||||||
@ -100,7 +94,6 @@ Fedora (up to version 21) and Red Hat Enterprise Linux or CentOS (up to version
|
|||||||
Fedora (since version 22)
|
Fedora (since version 22)
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
sudo dnf install python3-virtualenv
|
sudo dnf install python3-virtualenv
|
||||||
@ -121,17 +114,14 @@ virtualenv
|
|||||||
|
|
||||||
Once Python 3 is installed, open a Terminal and type
|
Once Python 3 is installed, open a Terminal and type
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
pip3 install virtualenv
|
pip3 install virtualenv
|
||||||
|
|
||||||
This will install virtualenv from the Python Package Index.
|
This will install virtualenv from the Python Package Index.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Installing prerequisites for epub build
|
Installing prerequisites for epub build
|
||||||
=======================================
|
=======================================
|
||||||
|
|
||||||
|
|||||||
@ -10,7 +10,6 @@ If you add a new feature to LAMMPS and think it will be of interest to
|
|||||||
general users, we encourage you to submit it for inclusion in LAMMPS
|
general users, we encourage you to submit it for inclusion in LAMMPS
|
||||||
as a pull request on our `GitHub site <https://github.com/lammps/lammps>`_, after reading the :doc:`Modify contribute <Modify_contribute>` doc page.
|
as a pull request on our `GitHub site <https://github.com/lammps/lammps>`_, after reading the :doc:`Modify contribute <Modify_contribute>` doc page.
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
|||||||
@ -98,7 +98,6 @@ The code for these classes can use the per-atom properties defined by
|
|||||||
fix property/atom. The Atom class has a find\_custom() method that is
|
fix property/atom. The Atom class has a find\_custom() method that is
|
||||||
useful in this context:
|
useful in this context:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
int index = atom->find_custom(char \*name, int &flag);
|
int index = atom->find_custom(char \*name, int &flag);
|
||||||
@ -109,7 +108,6 @@ that it exists and its index is returned. The method also sets flag =
|
|||||||
The vector of values associated with the attribute can then be
|
The vector of values associated with the attribute can then be
|
||||||
accessed using the returned index as
|
accessed using the returned index as
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
int \*ivector = atom->ivector[index];
|
int \*ivector = atom->ivector[index];
|
||||||
|
|||||||
@ -203,7 +203,6 @@ packages in the src directory for examples. If you are uncertain, please ask.
|
|||||||
usage. That kind of citation should just be in the doc page you
|
usage. That kind of citation should just be in the doc page you
|
||||||
provide.
|
provide.
|
||||||
|
|
||||||
|
|
||||||
Finally, as a general rule-of-thumb, the more clear and
|
Finally, as a general rule-of-thumb, the more clear and
|
||||||
self-explanatory you make your documentation and README files, and the
|
self-explanatory you make your documentation and README files, and the
|
||||||
easier you make it for people to get started, e.g. by providing example
|
easier you make it for people to get started, e.g. by providing example
|
||||||
|
|||||||
@ -31,14 +31,12 @@ potentials described in the classic 1997 :ref:`paper <Foo>` by Foo, et al.
|
|||||||
If you wish to invoke those potentials in a LAMMPS input script with a
|
If you wish to invoke those potentials in a LAMMPS input script with a
|
||||||
command like
|
command like
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
pair_style foo 0.1 3.5
|
pair_style foo 0.1 3.5
|
||||||
|
|
||||||
then your pair\_foo.h file should be structured as follows:
|
then your pair\_foo.h file should be structured as follows:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: c++
|
.. code-block:: c++
|
||||||
|
|
||||||
#ifdef PAIR_CLASS
|
#ifdef PAIR_CLASS
|
||||||
@ -103,5 +101,4 @@ functionality:
|
|||||||
|
|
||||||
.. _Foo:
|
.. _Foo:
|
||||||
|
|
||||||
|
|
||||||
**(Foo)** Foo, Morefoo, and Maxfoo, J of Classic Potentials, 75, 345 (1997).
|
**(Foo)** Foo, Morefoo, and Maxfoo, J of Classic Potentials, 75, 345 (1997).
|
||||||
|
|||||||
@ -9,7 +9,6 @@ via the :doc:`print <print>`, :doc:`fix print <fix_print>`, or
|
|||||||
"equal" can compute complex equations that involve the following types
|
"equal" can compute complex equations that involve the following types
|
||||||
of arguments:
|
of arguments:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
thermo keywords = ke, vol, atoms, ...
|
thermo keywords = ke, vol, atoms, ...
|
||||||
|
|||||||
@ -11,7 +11,6 @@ distribution. The :doc:`Build package <Build_package>` doc page gives
|
|||||||
general info on how to install and un-install packages as part of the
|
general info on how to install and un-install packages as part of the
|
||||||
LAMMPS build process.
|
LAMMPS build process.
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
|||||||
@ -60,7 +60,6 @@ page gives those details.
|
|||||||
* :ref:`SRD <PKG-SRD>`
|
* :ref:`SRD <PKG-SRD>`
|
||||||
* :ref:`VORONOI <PKG-VORONOI>`
|
* :ref:`VORONOI <PKG-VORONOI>`
|
||||||
|
|
||||||
|
|
||||||
.. table_from_list::
|
.. table_from_list::
|
||||||
:columns: 6
|
:columns: 6
|
||||||
|
|
||||||
@ -106,10 +105,8 @@ page gives those details.
|
|||||||
* :ref:`USER-VTK <PKG-USER-VTK>`
|
* :ref:`USER-VTK <PKG-USER-VTK>`
|
||||||
* :ref:`USER-YAFF <PKG-USER-YAFF>`
|
* :ref:`USER-YAFF <PKG-USER-YAFF>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-ASPHERE:
|
.. _PKG-ASPHERE:
|
||||||
|
|
||||||
ASPHERE package
|
ASPHERE package
|
||||||
@ -133,10 +130,8 @@ particle models including ellipsoids, 2d lines, and 3d triangles.
|
|||||||
* http://lammps.sandia.gov/movies.html#line
|
* http://lammps.sandia.gov/movies.html#line
|
||||||
* http://lammps.sandia.gov/movies.html#tri
|
* http://lammps.sandia.gov/movies.html#tri
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-BODY:
|
.. _PKG-BODY:
|
||||||
|
|
||||||
BODY package
|
BODY package
|
||||||
@ -158,10 +153,8 @@ overview.
|
|||||||
* :doc:`pair_style body/nparticle <pair_body_nparticle>`
|
* :doc:`pair_style body/nparticle <pair_body_nparticle>`
|
||||||
* examples/body
|
* examples/body
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-CLASS2:
|
.. _PKG-CLASS2:
|
||||||
|
|
||||||
CLASS2 package
|
CLASS2 package
|
||||||
@ -181,10 +174,8 @@ CLASS2 molecular force field.
|
|||||||
* :doc:`improper_style class2 <improper_class2>`
|
* :doc:`improper_style class2 <improper_class2>`
|
||||||
* :doc:`pair_style lj/class2 <pair_class2>`
|
* :doc:`pair_style lj/class2 <pair_class2>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-COLLOID:
|
.. _PKG-COLLOID:
|
||||||
|
|
||||||
COLLOID package
|
COLLOID package
|
||||||
@ -213,10 +204,8 @@ Higdon's group at UIUC.
|
|||||||
* examples/colloid
|
* examples/colloid
|
||||||
* examples/srd
|
* examples/srd
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-COMPRESS:
|
.. _PKG-COMPRESS:
|
||||||
|
|
||||||
COMPRESS package
|
COMPRESS package
|
||||||
@ -246,10 +235,8 @@ This package has :ref:`specific installation instructions <compress>` on the :do
|
|||||||
* :doc:`dump custom/gz <dump>`
|
* :doc:`dump custom/gz <dump>`
|
||||||
* :doc:`dump xyz/gz <dump>`
|
* :doc:`dump xyz/gz <dump>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-CORESHELL:
|
.. _PKG-CORESHELL:
|
||||||
|
|
||||||
CORESHELL package
|
CORESHELL package
|
||||||
@ -276,10 +263,8 @@ this package.
|
|||||||
* :doc:`pair_style lj/cut/coul/long/cs <pair_lj>`
|
* :doc:`pair_style lj/cut/coul/long/cs <pair_lj>`
|
||||||
* examples/coreshell
|
* examples/coreshell
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-DIPOLE:
|
.. _PKG-DIPOLE:
|
||||||
|
|
||||||
DIPOLE package
|
DIPOLE package
|
||||||
@ -299,10 +284,8 @@ short-range or long-range interactions.
|
|||||||
* :doc:`pair_style lj/long/dipole/long <pair_dipole>`
|
* :doc:`pair_style lj/long/dipole/long <pair_dipole>`
|
||||||
* examples/dipole
|
* examples/dipole
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-GPU:
|
.. _PKG-GPU:
|
||||||
|
|
||||||
GPU package
|
GPU package
|
||||||
@ -341,10 +324,8 @@ This package has :ref:`specific installation instructions <gpu>` on the :doc:`Bu
|
|||||||
for styles followed by (g)
|
for styles followed by (g)
|
||||||
* `Benchmarks page <http://lammps.sandia.gov/bench.html>`_ of web site
|
* `Benchmarks page <http://lammps.sandia.gov/bench.html>`_ of web site
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-GRANULAR:
|
.. _PKG-GRANULAR:
|
||||||
|
|
||||||
GRANULAR package
|
GRANULAR package
|
||||||
@ -373,10 +354,8 @@ potentials.
|
|||||||
* http://lammps.sandia.gov/movies.html#brazil
|
* http://lammps.sandia.gov/movies.html#brazil
|
||||||
* http://lammps.sandia.gov/movies.html#granregion
|
* http://lammps.sandia.gov/movies.html#granregion
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-KIM:
|
.. _PKG-KIM:
|
||||||
|
|
||||||
KIM package
|
KIM package
|
||||||
@ -430,10 +409,8 @@ This package has :ref:`specific installation instructions <kim>` on the :doc:`Bu
|
|||||||
* lib/kim/README
|
* lib/kim/README
|
||||||
* examples/kim
|
* examples/kim
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-KOKKOS:
|
.. _PKG-KOKKOS:
|
||||||
|
|
||||||
KOKKOS package
|
KOKKOS package
|
||||||
@ -486,10 +463,8 @@ This package has :ref:`specific installation instructions <kokkos>` on the :doc:
|
|||||||
:doc:`kspace <Commands_kspace>`) for styles followed by (k)
|
:doc:`kspace <Commands_kspace>`) for styles followed by (k)
|
||||||
* `Benchmarks page <http://lammps.sandia.gov/bench.html>`_ of web site
|
* `Benchmarks page <http://lammps.sandia.gov/bench.html>`_ of web site
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-KSPACE:
|
.. _PKG-KSPACE:
|
||||||
|
|
||||||
KSPACE package
|
KSPACE package
|
||||||
@ -523,10 +498,8 @@ different FFT options for your LAMPMS build.
|
|||||||
* examples/peptide
|
* examples/peptide
|
||||||
* bench/in.rhodo
|
* bench/in.rhodo
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-LATTE:
|
.. _PKG-LATTE:
|
||||||
|
|
||||||
LATTE package
|
LATTE package
|
||||||
@ -544,8 +517,6 @@ description is given with the :doc:`fix latte <fix_latte>` command.
|
|||||||
|
|
||||||
.. _latte-home: https://github.com/lanl/LATTE
|
.. _latte-home: https://github.com/lanl/LATTE
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**Authors:** Christian Negre (LANL) and Steve Plimpton (Sandia). LATTE
|
**Authors:** Christian Negre (LANL) and Steve Plimpton (Sandia). LATTE
|
||||||
itself is developed at Los Alamos National Laboratory by Marc
|
itself is developed at Los Alamos National Laboratory by Marc
|
||||||
Cawkwell, Anders Niklasson, and Christian Negre.
|
Cawkwell, Anders Niklasson, and Christian Negre.
|
||||||
@ -563,10 +534,8 @@ This package has :ref:`specific installation instructions <latte>` on the :doc:`
|
|||||||
* examples/latte
|
* examples/latte
|
||||||
* `LAMMPS-LATTE tutorial <https://github.com/lanl/LATTE/wiki/Using-LATTE-through-LAMMPS>`_
|
* `LAMMPS-LATTE tutorial <https://github.com/lanl/LATTE/wiki/Using-LATTE-through-LAMMPS>`_
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-MANYBODY:
|
.. _PKG-MANYBODY:
|
||||||
|
|
||||||
MANYBODY package
|
MANYBODY package
|
||||||
@ -589,10 +558,8 @@ A variety of many-body and bond-order potentials. These include
|
|||||||
* examples/vashishta
|
* examples/vashishta
|
||||||
* bench/in.eam
|
* bench/in.eam
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-MC:
|
.. _PKG-MC:
|
||||||
|
|
||||||
MC package
|
MC package
|
||||||
@ -616,10 +583,8 @@ bonds, for performing atomic swaps, and performing grand-canonical MC
|
|||||||
* :doc:`pair_style dsmc <pair_dsmc>`
|
* :doc:`pair_style dsmc <pair_dsmc>`
|
||||||
* http://lammps.sandia.gov/movies.html#gcmc
|
* http://lammps.sandia.gov/movies.html#gcmc
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-MESSAGE:
|
.. _PKG-MESSAGE:
|
||||||
|
|
||||||
MESSAGE package
|
MESSAGE package
|
||||||
@ -644,10 +609,8 @@ This package has :ref:`specific installation instructions <message>` on the :doc
|
|||||||
* :doc:`server mc <server_mc>`
|
* :doc:`server mc <server_mc>`
|
||||||
* examples/message
|
* examples/message
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-MISC:
|
.. _PKG-MISC:
|
||||||
|
|
||||||
MISC package
|
MISC package
|
||||||
@ -678,10 +641,8 @@ listing, "ls src/MISC", to see the list of commands.
|
|||||||
* http://lammps.sandia.gov/pictures.html#ttm
|
* http://lammps.sandia.gov/pictures.html#ttm
|
||||||
* http://lammps.sandia.gov/movies.html#evaporation
|
* http://lammps.sandia.gov/movies.html#evaporation
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-MOLECULE:
|
.. _PKG-MOLECULE:
|
||||||
|
|
||||||
MOLECULE package
|
MOLECULE package
|
||||||
@ -712,10 +673,8 @@ force fields, and a TIP4P water model.
|
|||||||
* bench/in.chain
|
* bench/in.chain
|
||||||
* bench/in.rhodo
|
* bench/in.rhodo
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-MPIIO:
|
.. _PKG-MPIIO:
|
||||||
|
|
||||||
MPIIO package
|
MPIIO package
|
||||||
@ -736,10 +695,8 @@ written and read in parallel.
|
|||||||
* :doc:`write_restart <write_restart>`
|
* :doc:`write_restart <write_restart>`
|
||||||
* :doc:`read_restart <read_restart>`
|
* :doc:`read_restart <read_restart>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-mscg:
|
.. _PKG-mscg:
|
||||||
|
|
||||||
MSCG package
|
MSCG package
|
||||||
@ -752,8 +709,6 @@ Multi-Scale Coarse-Graining (MSCG) model using the open-source `MS-CG library <m
|
|||||||
|
|
||||||
.. _mscg-home: https://github.com/uchicago-voth/MSCG-release
|
.. _mscg-home: https://github.com/uchicago-voth/MSCG-release
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
To use this package you must have the MS-CG library available on your
|
To use this package you must have the MS-CG library available on your
|
||||||
system.
|
system.
|
||||||
|
|
||||||
@ -772,10 +727,8 @@ This package has :ref:`specific installation instructions <mscg>` on the :doc:`B
|
|||||||
* lib/mscg/README
|
* lib/mscg/README
|
||||||
* examples/mscg
|
* examples/mscg
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-OPT:
|
.. _PKG-OPT:
|
||||||
|
|
||||||
OPT package
|
OPT package
|
||||||
@ -808,10 +761,8 @@ This package has :ref:`specific installation instructions <opt>` on the :doc:`Bu
|
|||||||
* Search the :doc:`pair style <Commands_pair>` page for styles followed by (t)
|
* Search the :doc:`pair style <Commands_pair>` page for styles followed by (t)
|
||||||
* `Benchmarks page <http://lammps.sandia.gov/bench.html>`_ of web site
|
* `Benchmarks page <http://lammps.sandia.gov/bench.html>`_ of web site
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-PERI:
|
.. _PKG-PERI:
|
||||||
|
|
||||||
PERI package
|
PERI package
|
||||||
@ -841,10 +792,8 @@ Foster (UTSA).
|
|||||||
* examples/peri
|
* examples/peri
|
||||||
* http://lammps.sandia.gov/movies.html#peri
|
* http://lammps.sandia.gov/movies.html#peri
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-POEMS:
|
.. _PKG-POEMS:
|
||||||
|
|
||||||
POEMS package
|
POEMS package
|
||||||
@ -872,10 +821,8 @@ This package has :ref:`specific installation instructions <poems>` on the :doc:`
|
|||||||
* :doc:`fix poems <fix_poems>`
|
* :doc:`fix poems <fix_poems>`
|
||||||
* examples/rigid
|
* examples/rigid
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-PYTHON:
|
.. _PKG-PYTHON:
|
||||||
|
|
||||||
PYTHON package
|
PYTHON package
|
||||||
@ -907,10 +854,8 @@ This package has :ref:`specific installation instructions <python>` on the :doc:
|
|||||||
* lib/python/README
|
* lib/python/README
|
||||||
* examples/python
|
* examples/python
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-QEQ:
|
.. _PKG-QEQ:
|
||||||
|
|
||||||
QEQ package
|
QEQ package
|
||||||
@ -929,10 +874,8 @@ part of their formulation.
|
|||||||
* examples/qeq
|
* examples/qeq
|
||||||
* examples/streitz
|
* examples/streitz
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-REPLICA:
|
.. _PKG-REPLICA:
|
||||||
|
|
||||||
REPLICA package
|
REPLICA package
|
||||||
@ -962,10 +905,8 @@ another set.
|
|||||||
* examples/prd
|
* examples/prd
|
||||||
* examples/tad
|
* examples/tad
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-RIGID:
|
.. _PKG-RIGID:
|
||||||
|
|
||||||
RIGID package
|
RIGID package
|
||||||
@ -991,10 +932,8 @@ Also several computes which calculate properties of rigid bodies.
|
|||||||
* http://lammps.sandia.gov/movies.html#box
|
* http://lammps.sandia.gov/movies.html#box
|
||||||
* http://lammps.sandia.gov/movies.html#star
|
* http://lammps.sandia.gov/movies.html#star
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-SHOCK:
|
.. _PKG-SHOCK:
|
||||||
|
|
||||||
SHOCK package
|
SHOCK package
|
||||||
@ -1015,10 +954,8 @@ a material.
|
|||||||
* examples/hugoniostat
|
* examples/hugoniostat
|
||||||
* examples/msst
|
* examples/msst
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-SNAP:
|
.. _PKG-SNAP:
|
||||||
|
|
||||||
SNAP package
|
SNAP package
|
||||||
@ -1042,10 +979,8 @@ computes which analyze attributes of the potential.
|
|||||||
* :doc:`compute snav/atom <compute_sna_atom>`
|
* :doc:`compute snav/atom <compute_sna_atom>`
|
||||||
* examples/snap
|
* examples/snap
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-SPIN:
|
.. _PKG-SPIN:
|
||||||
|
|
||||||
SPIN package
|
SPIN package
|
||||||
@ -1074,10 +1009,8 @@ the usual manner via MD. Various pair, fix, and compute styles.
|
|||||||
* :doc:`neb/spin <neb_spin>`
|
* :doc:`neb/spin <neb_spin>`
|
||||||
* examples/SPIN
|
* examples/SPIN
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-SRD:
|
.. _PKG-SRD:
|
||||||
|
|
||||||
SRD package
|
SRD package
|
||||||
@ -1100,10 +1033,8 @@ colloidal particles.
|
|||||||
* http://lammps.sandia.gov/movies.html#line
|
* http://lammps.sandia.gov/movies.html#line
|
||||||
* http://lammps.sandia.gov/movies.html#poly
|
* http://lammps.sandia.gov/movies.html#poly
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-VORONOI:
|
.. _PKG-VORONOI:
|
||||||
|
|
||||||
VORONOI package
|
VORONOI package
|
||||||
@ -1118,8 +1049,6 @@ neighbors.
|
|||||||
|
|
||||||
.. _voro-home: http://math.lbl.gov/voro++
|
.. _voro-home: http://math.lbl.gov/voro++
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
To use this package you must have the Voro++ library available on your
|
To use this package you must have the Voro++ library available on your
|
||||||
system.
|
system.
|
||||||
|
|
||||||
@ -1139,10 +1068,8 @@ This package has :ref:`specific installation instructions <voronoi>` on the :doc
|
|||||||
* :doc:`compute voronoi/atom <compute_voronoi_atom>`
|
* :doc:`compute voronoi/atom <compute_voronoi_atom>`
|
||||||
* examples/voronoi
|
* examples/voronoi
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-ADIOS:
|
.. _PKG-USER-ADIOS:
|
||||||
|
|
||||||
USER-ADIOS package
|
USER-ADIOS package
|
||||||
@ -1171,11 +1098,8 @@ This package has :ref:`specific installation instructions <user-adios>` on the :
|
|||||||
* :doc:`dump custom/adios <dump_adios>`
|
* :doc:`dump custom/adios <dump_adios>`
|
||||||
* :doc:`read_dump <read_dump>`
|
* :doc:`read_dump <read_dump>`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-ATC:
|
.. _PKG-USER-ATC:
|
||||||
|
|
||||||
USER-ATC package
|
USER-ATC package
|
||||||
@ -1201,10 +1125,8 @@ This package has :ref:`specific installation instructions <user-atc>` on the :do
|
|||||||
* examples/USER/atc
|
* examples/USER/atc
|
||||||
* http://lammps.sandia.gov/pictures.html#atc
|
* http://lammps.sandia.gov/pictures.html#atc
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-AWPMD:
|
.. _PKG-USER-AWPMD:
|
||||||
|
|
||||||
USER-AWPMD package
|
USER-AWPMD package
|
||||||
@ -1230,10 +1152,8 @@ This package has :ref:`specific installation instructions <user-awpmd>` on the :
|
|||||||
* :doc:`pair_style awpmd/cut <pair_awpmd>`
|
* :doc:`pair_style awpmd/cut <pair_awpmd>`
|
||||||
* examples/USER/awpmd
|
* examples/USER/awpmd
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-BOCS:
|
.. _PKG-USER-BOCS:
|
||||||
|
|
||||||
USER-BOCS package
|
USER-BOCS package
|
||||||
@ -1265,10 +1185,8 @@ J. Phys. Chem. B. 122, 13, 3363-3377 (2018).
|
|||||||
|
|
||||||
Example inputs are in the examples/USER/bocs folder.
|
Example inputs are in the examples/USER/bocs folder.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-CGDNA:
|
.. _PKG-USER-CGDNA:
|
||||||
|
|
||||||
USER-CGDNA package
|
USER-CGDNA package
|
||||||
@ -1295,10 +1213,8 @@ rigid-body integrators with improved stability.
|
|||||||
* :doc:`bond_style oxrna2/\* <bond_oxdna>`
|
* :doc:`bond_style oxrna2/\* <bond_oxdna>`
|
||||||
* :doc:`fix nve/dotc/langevin <fix_nve_dotc_langevin>`
|
* :doc:`fix nve/dotc/langevin <fix_nve_dotc_langevin>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-CGSDK:
|
.. _PKG-USER-CGSDK:
|
||||||
|
|
||||||
USER-CGSDK package
|
USER-CGSDK package
|
||||||
@ -1322,10 +1238,8 @@ acids.
|
|||||||
* examples/USER/cgsdk
|
* examples/USER/cgsdk
|
||||||
* http://lammps.sandia.gov/pictures.html#cg
|
* http://lammps.sandia.gov/pictures.html#cg
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-COLVARS:
|
.. _PKG-USER-COLVARS:
|
||||||
|
|
||||||
USER-COLVARS package
|
USER-COLVARS package
|
||||||
@ -1359,10 +1273,8 @@ This package has :ref:`specific installation instructions <user-colvars>` on the
|
|||||||
* :doc:`fix colvars <fix_colvars>`
|
* :doc:`fix colvars <fix_colvars>`
|
||||||
* examples/USER/colvars
|
* examples/USER/colvars
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-PLUMED:
|
.. _PKG-USER-PLUMED:
|
||||||
|
|
||||||
USER-PLUMED package
|
USER-PLUMED package
|
||||||
@ -1381,8 +1293,6 @@ Tribello.
|
|||||||
|
|
||||||
.. _PLUMED: http://www.plumed.org
|
.. _PLUMED: http://www.plumed.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**Install:**
|
**Install:**
|
||||||
|
|
||||||
This package has :ref:`specific installation instructions <user-plumed>` on the :doc:`Build extras <Build_extras>` doc page.
|
This package has :ref:`specific installation instructions <user-plumed>` on the :doc:`Build extras <Build_extras>` doc page.
|
||||||
@ -1394,10 +1304,8 @@ This package has :ref:`specific installation instructions <user-plumed>` on the
|
|||||||
* :doc:`fix plumed <fix_plumed>`
|
* :doc:`fix plumed <fix_plumed>`
|
||||||
* examples/USER/plumed
|
* examples/USER/plumed
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-DIFFRACTION:
|
.. _PKG-USER-DIFFRACTION:
|
||||||
|
|
||||||
USER-DIFFRACTION package
|
USER-DIFFRACTION package
|
||||||
@ -1418,10 +1326,8 @@ intensities based on kinematic diffraction theory.
|
|||||||
* :doc:`fix saed/vtk <fix_saed_vtk>`
|
* :doc:`fix saed/vtk <fix_saed_vtk>`
|
||||||
* examples/USER/diffraction
|
* examples/USER/diffraction
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-DPD:
|
.. _PKG-USER-DPD:
|
||||||
|
|
||||||
USER-DPD package
|
USER-DPD package
|
||||||
@ -1461,10 +1367,8 @@ Brennan (ARL).
|
|||||||
* :doc:`pair_style multi/lucy/rx <pair_multi_lucy_rx>`
|
* :doc:`pair_style multi/lucy/rx <pair_multi_lucy_rx>`
|
||||||
* examples/USER/dpd
|
* examples/USER/dpd
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-DRUDE:
|
.. _PKG-USER-DRUDE:
|
||||||
|
|
||||||
USER-DRUDE package
|
USER-DRUDE package
|
||||||
@ -1495,10 +1399,8 @@ Devemy (CNRS), and Agilio Padua (U Blaise Pascal).
|
|||||||
* examples/USER/drude
|
* examples/USER/drude
|
||||||
* tools/drude
|
* tools/drude
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-EFF:
|
.. _PKG-USER-EFF:
|
||||||
|
|
||||||
USER-EFF package
|
USER-EFF package
|
||||||
@ -1533,10 +1435,8 @@ tools/eff; see its README file.
|
|||||||
* tools/eff
|
* tools/eff
|
||||||
* http://lammps.sandia.gov/movies.html#eff
|
* http://lammps.sandia.gov/movies.html#eff
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-FEP:
|
.. _PKG-USER-FEP:
|
||||||
|
|
||||||
USER-FEP package
|
USER-FEP package
|
||||||
@ -1562,10 +1462,8 @@ for using this package in tools/fep; see its README file.
|
|||||||
* tools/fep/README
|
* tools/fep/README
|
||||||
* tools/fep
|
* tools/fep
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-H5MD:
|
.. _PKG-USER-H5MD:
|
||||||
|
|
||||||
USER-H5MD package
|
USER-H5MD package
|
||||||
@ -1581,8 +1479,6 @@ LAMMPS snapshots in this format.
|
|||||||
|
|
||||||
.. _HDF5: http://www.hdfgroup.org/HDF5
|
.. _HDF5: http://www.hdfgroup.org/HDF5
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
To use this package you must have the HDF5 library available on your
|
To use this package you must have the HDF5 library available on your
|
||||||
system.
|
system.
|
||||||
|
|
||||||
@ -1600,10 +1496,8 @@ This package has :ref:`specific installation instructions <user-h5md>` on the :d
|
|||||||
* lib/h5md/README
|
* lib/h5md/README
|
||||||
* :doc:`dump h5md <dump_h5md>`
|
* :doc:`dump h5md <dump_h5md>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-INTEL:
|
.. _PKG-USER-INTEL:
|
||||||
|
|
||||||
USER-INTEL package
|
USER-INTEL package
|
||||||
@ -1649,10 +1543,8 @@ This package has :ref:`specific installation instructions <user-intel>` on the :
|
|||||||
* src/USER-INTEL/TEST
|
* src/USER-INTEL/TEST
|
||||||
* `Benchmarks page <http://lammps.sandia.gov/bench.html>`_ of web site
|
* `Benchmarks page <http://lammps.sandia.gov/bench.html>`_ of web site
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-LB:
|
.. _PKG-USER-LB:
|
||||||
|
|
||||||
USER-LB package
|
USER-LB package
|
||||||
@ -1675,10 +1567,8 @@ Ontario).
|
|||||||
* :doc:`fix lb/viscous <fix_lb_viscous>`
|
* :doc:`fix lb/viscous <fix_lb_viscous>`
|
||||||
* examples/USER/lb
|
* examples/USER/lb
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-MGPT:
|
.. _PKG-USER-MGPT:
|
||||||
|
|
||||||
USER-MGPT package
|
USER-MGPT package
|
||||||
@ -1704,10 +1594,8 @@ matrix-MGPT algorithm due to Tomas Oppelstrup at LLNL.
|
|||||||
* :doc:`pair_style mgpt <pair_mgpt>`
|
* :doc:`pair_style mgpt <pair_mgpt>`
|
||||||
* examples/USER/mgpt
|
* examples/USER/mgpt
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-MISC:
|
.. _PKG-USER-MISC:
|
||||||
|
|
||||||
USER-MISC package
|
USER-MISC package
|
||||||
@ -1729,10 +1617,8 @@ src/USER-MISC/README file.
|
|||||||
* one doc page per individual command listed in src/USER-MISC/README
|
* one doc page per individual command listed in src/USER-MISC/README
|
||||||
* examples/USER/misc
|
* examples/USER/misc
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-MANIFOLD:
|
.. _PKG-USER-MANIFOLD:
|
||||||
|
|
||||||
USER-MANIFOLD package
|
USER-MANIFOLD package
|
||||||
@ -1762,10 +1648,8 @@ Waltham, MA, USA)
|
|||||||
* examples/USER/manifold
|
* examples/USER/manifold
|
||||||
* http://lammps.sandia.gov/movies.html#manifold
|
* http://lammps.sandia.gov/movies.html#manifold
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-MEAMC:
|
.. _PKG-USER-MEAMC:
|
||||||
|
|
||||||
USER-MEAMC package
|
USER-MEAMC package
|
||||||
@ -1789,10 +1673,8 @@ Sandia.
|
|||||||
* :doc:`pair_style meam/c <pair_meamc>`
|
* :doc:`pair_style meam/c <pair_meamc>`
|
||||||
* examples/meamc
|
* examples/meamc
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-MESODPD:
|
.. _PKG-USER-MESODPD:
|
||||||
|
|
||||||
USER-MESODPD package
|
USER-MESODPD package
|
||||||
@ -1822,10 +1704,8 @@ algorithm.
|
|||||||
* examples/USER/mesodpd
|
* examples/USER/mesodpd
|
||||||
* http://lammps.sandia.gov/movies.html#mesodpd
|
* http://lammps.sandia.gov/movies.html#mesodpd
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-MOFFF:
|
.. _PKG-USER-MOFFF:
|
||||||
|
|
||||||
USER-MOFFF package
|
USER-MOFFF package
|
||||||
@ -1844,8 +1724,6 @@ well as the `MOF+ <MOFplus_>`_ website.
|
|||||||
|
|
||||||
.. _MOFplus: https://www.mofplus.org/content/show/MOF-FF
|
.. _MOFplus: https://www.mofplus.org/content/show/MOF-FF
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**Author:** Hendrik Heenen (Technical U of Munich),
|
**Author:** Hendrik Heenen (Technical U of Munich),
|
||||||
Rochus Schmid (Ruhr-University Bochum).
|
Rochus Schmid (Ruhr-University Bochum).
|
||||||
|
|
||||||
@ -1859,10 +1737,8 @@ Rochus Schmid (Ruhr-University Bochum).
|
|||||||
* :doc:`improper_style inversion/harmonic <improper_inversion_harmonic>`
|
* :doc:`improper_style inversion/harmonic <improper_inversion_harmonic>`
|
||||||
* examples/USER/mofff
|
* examples/USER/mofff
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-MOLFILE:
|
.. _PKG-USER-MOLFILE:
|
||||||
|
|
||||||
USER-MOLFILE package
|
USER-MOLFILE package
|
||||||
@ -1903,10 +1779,8 @@ This package has :ref:`specific installation instructions <user-molfile>` on the
|
|||||||
* lib/molfile/README
|
* lib/molfile/README
|
||||||
* :doc:`dump molfile <dump_molfile>`
|
* :doc:`dump molfile <dump_molfile>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-NETCDF:
|
.. _PKG-USER-NETCDF:
|
||||||
|
|
||||||
USER-NETCDF package
|
USER-NETCDF package
|
||||||
@ -1931,16 +1805,10 @@ tools:
|
|||||||
|
|
||||||
.. _ovito: http://www.ovito.org
|
.. _ovito: http://www.ovito.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _vmd-home: https://www.ks.uiuc.edu/Research/vmd/
|
.. _vmd-home: https://www.ks.uiuc.edu/Research/vmd/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _atomeye: http://www.libatoms.org
|
.. _atomeye: http://www.libatoms.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**Author:** Lars Pastewka (Karlsruhe Institute of Technology).
|
**Author:** Lars Pastewka (Karlsruhe Institute of Technology).
|
||||||
|
|
||||||
**Install:**
|
**Install:**
|
||||||
@ -1954,10 +1822,8 @@ This package has :ref:`specific installation instructions <user-netcdf>` on the
|
|||||||
* lib/netcdf/README
|
* lib/netcdf/README
|
||||||
* :doc:`dump netcdf <dump_netcdf>`
|
* :doc:`dump netcdf <dump_netcdf>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-OMP:
|
.. _PKG-USER-OMP:
|
||||||
|
|
||||||
USER-OMP package
|
USER-OMP package
|
||||||
@ -2010,10 +1876,8 @@ This package has :ref:`specific installation instructions <user-omp>` on the :do
|
|||||||
:doc:`kspace <Commands_kspace>`) for styles followed by (o)
|
:doc:`kspace <Commands_kspace>`) for styles followed by (o)
|
||||||
* `Benchmarks page <http://lammps.sandia.gov/bench.html>`_ of web site
|
* `Benchmarks page <http://lammps.sandia.gov/bench.html>`_ of web site
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-PHONON:
|
.. _PKG-USER-PHONON:
|
||||||
|
|
||||||
USER-PHONON package
|
USER-PHONON package
|
||||||
@ -2040,10 +1904,8 @@ and Charlie Sievers (UC Davis) for "dynamical\_matrix" and "third\_order"
|
|||||||
* :doc:`third_order <third_order>`
|
* :doc:`third_order <third_order>`
|
||||||
* examples/USER/phonon
|
* examples/USER/phonon
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-PTM:
|
.. _PKG-USER-PTM:
|
||||||
|
|
||||||
USER-PTM package
|
USER-PTM package
|
||||||
@ -2064,10 +1926,8 @@ Matching methodology.
|
|||||||
* src/USER-PTM/LICENSE
|
* src/USER-PTM/LICENSE
|
||||||
* :doc:`compute ptm/atom <compute_ptm_atom>`
|
* :doc:`compute ptm/atom <compute_ptm_atom>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-QMMM:
|
.. _PKG-USER-QMMM:
|
||||||
|
|
||||||
USER-QMMM package
|
USER-QMMM package
|
||||||
@ -2097,7 +1957,6 @@ changes to LAMMPS itself.
|
|||||||
|
|
||||||
**Authors:** Axel Kohlmeyer (Temple U). Mariella Ippolito and Carlo Cavazzoni (CINECA, Italy)
|
**Authors:** Axel Kohlmeyer (Temple U). Mariella Ippolito and Carlo Cavazzoni (CINECA, Italy)
|
||||||
|
|
||||||
|
|
||||||
**Install:**
|
**Install:**
|
||||||
|
|
||||||
This package has :ref:`specific installation instructions <user-qmmm>`
|
This package has :ref:`specific installation instructions <user-qmmm>`
|
||||||
@ -2112,10 +1971,8 @@ on the :doc:`Build extras <Build_extras>` doc page.
|
|||||||
* lib/qmmm/example-ec/README
|
* lib/qmmm/example-ec/README
|
||||||
* lib/qmmm/example-mc/README
|
* lib/qmmm/example-mc/README
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-QTB:
|
.. _PKG-USER-QTB:
|
||||||
|
|
||||||
USER-QTB package
|
USER-QTB package
|
||||||
@ -2142,10 +1999,8 @@ simulation.
|
|||||||
* :doc:`fix qbmsst <fix_qbmsst>`
|
* :doc:`fix qbmsst <fix_qbmsst>`
|
||||||
* examples/USER/qtb
|
* examples/USER/qtb
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-QUIP:
|
.. _PKG-USER-QUIP:
|
||||||
|
|
||||||
USER-QUIP package
|
USER-QUIP package
|
||||||
@ -2159,8 +2014,6 @@ developed by the Cambridge University group.
|
|||||||
|
|
||||||
.. _quip: https://github.com/libAtoms/QUIP
|
.. _quip: https://github.com/libAtoms/QUIP
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
To use this package you must have the QUIP libAtoms library available
|
To use this package you must have the QUIP libAtoms library available
|
||||||
on your system.
|
on your system.
|
||||||
|
|
||||||
@ -2177,10 +2030,8 @@ This package has :ref:`specific installation instructions <user-quip>` on the :d
|
|||||||
* :doc:`pair_style quip <pair_quip>`
|
* :doc:`pair_style quip <pair_quip>`
|
||||||
* examples/USER/quip
|
* examples/USER/quip
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-REACTION:
|
.. _PKG-USER-REACTION:
|
||||||
|
|
||||||
USER-REACTION package
|
USER-REACTION package
|
||||||
@ -2210,10 +2061,8 @@ molecules, and chiral-sensitive reactions.
|
|||||||
* `2019 LAMMPS Workshop <https://lammps.sandia.gov/workshops/Aug19/talk_gissinger.pdf>`_
|
* `2019 LAMMPS Workshop <https://lammps.sandia.gov/workshops/Aug19/talk_gissinger.pdf>`_
|
||||||
* disarmmd.org
|
* disarmmd.org
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-REAXC:
|
.. _PKG-USER-REAXC:
|
||||||
|
|
||||||
USER-REAXC package
|
USER-REAXC package
|
||||||
@ -2237,10 +2086,8 @@ for monitoring molecules as bonds are created and destroyed.
|
|||||||
* :doc:`fix reax/c/species <fix_reaxc_species>`
|
* :doc:`fix reax/c/species <fix_reaxc_species>`
|
||||||
* examples/reax
|
* examples/reax
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-SCAFACOS:
|
.. _PKG-USER-SCAFACOS:
|
||||||
|
|
||||||
USER-SCAFACOS package
|
USER-SCAFACOS package
|
||||||
@ -2274,10 +2121,8 @@ This package has :ref:`specific installation instructions <user-scafacos>` on th
|
|||||||
* :doc:`kspace_modify <kspace_modify>`
|
* :doc:`kspace_modify <kspace_modify>`
|
||||||
* examples/USER/scafacos
|
* examples/USER/scafacos
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-SDPD:
|
.. _PKG-USER-SDPD:
|
||||||
|
|
||||||
USER-SDPD package
|
USER-SDPD package
|
||||||
@ -2304,10 +2149,8 @@ Sciences, Iran).
|
|||||||
* :doc:`fix rigid/meso <fix_rigid_meso>`
|
* :doc:`fix rigid/meso <fix_rigid_meso>`
|
||||||
* examples/USER/sdpd
|
* examples/USER/sdpd
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-SMD:
|
.. _PKG-USER-SMD:
|
||||||
|
|
||||||
USER-SMD package
|
USER-SMD package
|
||||||
@ -2344,10 +2187,8 @@ This package has :ref:`specific installation instructions <user-smd>` on the :do
|
|||||||
* examples/USER/smd
|
* examples/USER/smd
|
||||||
* http://lammps.sandia.gov/movies.html#smd
|
* http://lammps.sandia.gov/movies.html#smd
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-SMTBQ:
|
.. _PKG-USER-SMTBQ:
|
||||||
|
|
||||||
USER-SMTBQ package
|
USER-SMTBQ package
|
||||||
@ -2369,10 +2210,8 @@ Tetot (LAAS-CNRS, France).
|
|||||||
* :doc:`pair_style smtbq <pair_smtbq>`
|
* :doc:`pair_style smtbq <pair_smtbq>`
|
||||||
* examples/USER/smtbq
|
* examples/USER/smtbq
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-SPH:
|
.. _PKG-USER-SPH:
|
||||||
|
|
||||||
USER-SPH package
|
USER-SPH package
|
||||||
@ -2405,10 +2244,8 @@ Dynamics, Ernst Mach Institute, Germany).
|
|||||||
* examples/USER/sph
|
* examples/USER/sph
|
||||||
* http://lammps.sandia.gov/movies.html#sph
|
* http://lammps.sandia.gov/movies.html#sph
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-TALLY:
|
.. _PKG-USER-TALLY:
|
||||||
|
|
||||||
USER-TALLY package
|
USER-TALLY package
|
||||||
@ -2429,10 +2266,8 @@ stress, etc) about individual interactions.
|
|||||||
* :doc:`compute \*/tally <compute_tally>`
|
* :doc:`compute \*/tally <compute_tally>`
|
||||||
* examples/USER/tally
|
* examples/USER/tally
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-UEF:
|
.. _PKG-USER-UEF:
|
||||||
|
|
||||||
USER-UEF package
|
USER-UEF package
|
||||||
@ -2457,10 +2292,8 @@ supporting compute styles and an output option.
|
|||||||
* :doc:`dump cfg/uef <dump_cfg_uef>`
|
* :doc:`dump cfg/uef <dump_cfg_uef>`
|
||||||
* examples/uef
|
* examples/uef
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-VTK:
|
.. _PKG-USER-VTK:
|
||||||
|
|
||||||
USER-VTK package
|
USER-VTK package
|
||||||
@ -2474,12 +2307,8 @@ other visualization packages.
|
|||||||
|
|
||||||
.. _vtk: http://www.vtk.org
|
.. _vtk: http://www.vtk.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _paraview: http://www.paraview.org
|
.. _paraview: http://www.paraview.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
To use this package you must have VTK library available on your
|
To use this package you must have VTK library available on your
|
||||||
system.
|
system.
|
||||||
|
|
||||||
@ -2496,10 +2325,8 @@ This package has :ref:`specific installation instructions <user-vtk>` on the :do
|
|||||||
* lib/vtk/README
|
* lib/vtk/README
|
||||||
* :doc:`dump vtk <dump_vtk>`
|
* :doc:`dump vtk <dump_vtk>`
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _PKG-USER-YAFF:
|
.. _PKG-USER-YAFF:
|
||||||
|
|
||||||
USER-YAFF package
|
USER-YAFF package
|
||||||
|
|||||||
@ -59,7 +59,6 @@ new potential.
|
|||||||
To use any of these commands, you only need to build LAMMPS with the
|
To use any of these commands, you only need to build LAMMPS with the
|
||||||
PYTHON package installed:
|
PYTHON package installed:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
make yes-python
|
make yes-python
|
||||||
|
|||||||
@ -27,10 +27,8 @@ distribution.
|
|||||||
| combination of viz\_tool.py and plot.py and gui.py | |
|
| combination of viz\_tool.py and plot.py and gui.py | |
|
||||||
+----------------------------------------------------------------+--------------------------------------------------+
|
+----------------------------------------------------------------+--------------------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
For the viz\_tool.py and vizplotgui\_tool.py commands, replace "tool"
|
For the viz\_tool.py and vizplotgui\_tool.py commands, replace "tool"
|
||||||
with "gl" or "atomeye" or "pymol" or "vmd", depending on what
|
with "gl" or "atomeye" or "pymol" or "vmd", depending on what
|
||||||
visualization package you have installed.
|
visualization package you have installed.
|
||||||
@ -40,13 +38,10 @@ which is included in the pizza sub-directory. See the `Pizza.py doc pages <pizz
|
|||||||
|
|
||||||
.. _pizza: http://www.sandia.gov/~sjplimp/pizza.html
|
.. _pizza: http://www.sandia.gov/~sjplimp/pizza.html
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Note that for AtomEye, you need version 3, and there is a line in the
|
Note that for AtomEye, you need version 3, and there is a line in the
|
||||||
scripts that specifies the path and name of the executable. See the
|
scripts that specifies the path and name of the executable. See the
|
||||||
AtomEye WWW pages `here <atomeye_>`_ or `here <atomeye3_>`_ for more details:
|
AtomEye WWW pages `here <atomeye_>`_ or `here <atomeye3_>`_ for more details:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
http://mt.seas.upenn.edu/Archive/Graphics/A
|
http://mt.seas.upenn.edu/Archive/Graphics/A
|
||||||
@ -54,12 +49,8 @@ AtomEye WWW pages `here <atomeye_>`_ or `here <atomeye3_>`_ for more details:
|
|||||||
|
|
||||||
.. _atomeye: http://mt.seas.upenn.edu/Archive/Graphics/A
|
.. _atomeye: http://mt.seas.upenn.edu/Archive/Graphics/A
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _atomeye3: http://mt.seas.upenn.edu/Archive/Graphics/A3/A3.html
|
.. _atomeye3: http://mt.seas.upenn.edu/Archive/Graphics/A3/A3.html
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
The latter link is to AtomEye 3 which has the scripting
|
The latter link is to AtomEye 3 which has the scripting
|
||||||
capability needed by these Python scripts.
|
capability needed by these Python scripts.
|
||||||
|
|
||||||
@ -68,7 +59,6 @@ open-source version of PyMol in your Python, so that you can import it
|
|||||||
from a Python script. See the PyMol WWW pages `here <pymolhome_>`_ or
|
from a Python script. See the PyMol WWW pages `here <pymolhome_>`_ or
|
||||||
`here <pymolopen_>`_ for more details:
|
`here <pymolopen_>`_ for more details:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
http://www.pymol.org
|
http://www.pymol.org
|
||||||
@ -76,22 +66,16 @@ from a Python script. See the PyMol WWW pages `here <pymolhome_>`_ or
|
|||||||
|
|
||||||
.. _pymolhome: http://www.pymol.org
|
.. _pymolhome: http://www.pymol.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _pymolopen: http://sourceforge.net/scm/?type=svn&group\_id=4546
|
.. _pymolopen: http://sourceforge.net/scm/?type=svn&group\_id=4546
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
The latter link is to the open-source version.
|
The latter link is to the open-source version.
|
||||||
|
|
||||||
Note that for VMD, you need a fairly current version (1.8.7 works for
|
Note that for VMD, you need a fairly current version (1.8.7 works for
|
||||||
me) and there are some lines in the pizza/vmd.py script for 4 PIZZA
|
me) and there are some lines in the pizza/vmd.py script for 4 PIZZA
|
||||||
variables that have to match the VMD installation on your system.
|
variables that have to match the VMD installation on your system.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
See the python/README file for instructions on how to run them and the
|
See the python/README file for instructions on how to run them and the
|
||||||
source code for individual scripts for comments about what they do.
|
source code for individual scripts for comments about what they do.
|
||||||
|
|
||||||
|
|||||||
@ -4,7 +4,6 @@ Use Python with LAMMPS
|
|||||||
These doc pages describe various ways that LAMMPS and Python can be
|
These doc pages describe various ways that LAMMPS and Python can be
|
||||||
used together.
|
used together.
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
|||||||
@ -31,7 +31,6 @@ If you set the paths to these files as environment variables, you only
|
|||||||
have to do it once. For the csh or tcsh shells, add something like
|
have to do it once. For the csh or tcsh shells, add something like
|
||||||
this to your ~/.cshrc file, one line for each of the two files:
|
this to your ~/.cshrc file, one line for each of the two files:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
setenv PYTHONPATH ${PYTHONPATH}:/home/sjplimp/lammps/python
|
setenv PYTHONPATH ${PYTHONPATH}:/home/sjplimp/lammps/python
|
||||||
@ -49,7 +48,6 @@ files are updated with the new version.
|
|||||||
If the default settings of "make install-python" are not what you want,
|
If the default settings of "make install-python" are not what you want,
|
||||||
you can invoke install.py from the python directory manually as
|
you can invoke install.py from the python directory manually as
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
% python install.py -m \<python module\> -l <shared library> -v <version.h file> [-d \<pydir\>]
|
% python install.py -m \<python module\> -l <shared library> -v <version.h file> [-d \<pydir\>]
|
||||||
|
|||||||
@ -8,7 +8,6 @@ methods that can be invoked on that object. The sample Python code
|
|||||||
below assumes you have first imported the "lammps" module in your
|
below assumes you have first imported the "lammps" module in your
|
||||||
Python script, as follows:
|
Python script, as follows:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
from lammps import lammps
|
from lammps import lammps
|
||||||
@ -22,7 +21,6 @@ from a C++ or C or Fortran program, and which are described on the
|
|||||||
The python/examples directory has Python scripts which show how Python
|
The python/examples directory has Python scripts which show how Python
|
||||||
can run LAMMPS, grab data, change it, and put it back into LAMMPS.
|
can run LAMMPS, grab data, change it, and put it back into LAMMPS.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
lmp = lammps() # create a LAMMPS object using the default liblammps.so library
|
lmp = lammps() # create a LAMMPS object using the default liblammps.so library
|
||||||
@ -93,13 +91,10 @@ can run LAMMPS, grab data, change it, and put it back into LAMMPS.
|
|||||||
|
|
||||||
lmp.create_atoms(n,ids,types,x,v,image,shrinkexceed) # create N atoms with IDs, types, x, v, and image flags
|
lmp.create_atoms(n,ids,types,x,v,image,shrinkexceed) # create N atoms with IDs, types, x, v, and image flags
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
The lines
|
The lines
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
from lammps import lammps
|
from lammps import lammps
|
||||||
@ -116,7 +111,6 @@ prompt.
|
|||||||
|
|
||||||
If the ptr argument is set like this:
|
If the ptr argument is set like this:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
lmp = lammps(ptr=lmpptr)
|
lmp = lammps(ptr=lmpptr)
|
||||||
@ -133,7 +127,6 @@ instance "lmp" to make calls to that instance of LAMMPS. See the
|
|||||||
Note that you can create multiple LAMMPS objects in your Python
|
Note that you can create multiple LAMMPS objects in your Python
|
||||||
script, and coordinate and run multiple simulations, e.g.
|
script, and coordinate and run multiple simulations, e.g.
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
from lammps import lammps
|
from lammps import lammps
|
||||||
@ -229,7 +222,6 @@ For the scatter methods, the array of coordinates passed to must be a
|
|||||||
ctypes vector of ints or doubles, allocated and initialized something
|
ctypes vector of ints or doubles, allocated and initialized something
|
||||||
like this:
|
like this:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: Python
|
.. code-block:: Python
|
||||||
|
|
||||||
from ctypes import \*
|
from ctypes import \*
|
||||||
@ -247,10 +239,8 @@ like this:
|
|||||||
Alternatively, you can just change values in the vector returned by
|
Alternatively, you can just change values in the vector returned by
|
||||||
the gather methods, since they are also ctypes vectors.
|
the gather methods, since they are also ctypes vectors.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
As noted above, these Python class methods correspond one-to-one with
|
As noted above, these Python class methods correspond one-to-one with
|
||||||
the functions in the LAMMPS library interface in src/library.cpp and
|
the functions in the LAMMPS library interface in src/library.cpp and
|
||||||
library.h. This means you can extend the Python wrapper via the
|
library.h. This means you can extend the Python wrapper via the
|
||||||
@ -264,7 +254,6 @@ following steps:
|
|||||||
* You should now be able to invoke the new interface function from a
|
* You should now be able to invoke the new interface function from a
|
||||||
Python script.
|
Python script.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
.. autoclass:: lammps.lammps
|
.. autoclass:: lammps.lammps
|
||||||
|
|||||||
@ -18,7 +18,6 @@ LAMMPS instances on subsets of the total MPI ranks.
|
|||||||
To install mpi4py (version mpi4py-3.0.3 as of Nov 2019), unpack it
|
To install mpi4py (version mpi4py-3.0.3 as of Nov 2019), unpack it
|
||||||
and from its main directory, type
|
and from its main directory, type
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
python setup.py build
|
python setup.py build
|
||||||
@ -28,7 +27,6 @@ Again, the "sudo" is only needed if required to copy mpi4py files into
|
|||||||
your Python distribution's site-packages directory. To install with
|
your Python distribution's site-packages directory. To install with
|
||||||
user privilege into the user local directory type
|
user privilege into the user local directory type
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
python setup.py install --user
|
python setup.py install --user
|
||||||
@ -36,7 +34,6 @@ user privilege into the user local directory type
|
|||||||
If you have successfully installed mpi4py, you should be able to run
|
If you have successfully installed mpi4py, you should be able to run
|
||||||
Python and type
|
Python and type
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
from mpi4py import MPI
|
from mpi4py import MPI
|
||||||
@ -44,14 +41,12 @@ Python and type
|
|||||||
without error. You should also be able to run python in parallel
|
without error. You should also be able to run python in parallel
|
||||||
on a simple test script
|
on a simple test script
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
% mpirun -np 4 python test.py
|
% mpirun -np 4 python test.py
|
||||||
|
|
||||||
where test.py contains the lines
|
where test.py contains the lines
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
from mpi4py import MPI
|
from mpi4py import MPI
|
||||||
|
|||||||
@ -12,7 +12,6 @@ wrap LAMMPS. On Linux this is a library file that ends in ".so", not
|
|||||||
|
|
||||||
From the src directory, type
|
From the src directory, type
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
make foo mode=shlib
|
make foo mode=shlib
|
||||||
@ -38,7 +37,6 @@ Build LAMMPS as a shared library using CMake
|
|||||||
When using CMake the following two options are necessary to generate the LAMMPS
|
When using CMake the following two options are necessary to generate the LAMMPS
|
||||||
shared library:
|
shared library:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
-D BUILD_LIB=on # enable building LAMMPS as a library
|
-D BUILD_LIB=on # enable building LAMMPS as a library
|
||||||
@ -52,7 +50,6 @@ library path (e.g. /usr/lib64/) or in the LD\_LIBRARY\_PATH.
|
|||||||
If you want to use the shared library with Python the recommended way is to create a virtualenv and use it as
|
If you want to use the shared library with Python the recommended way is to create a virtualenv and use it as
|
||||||
CMAKE\_INSTALL\_PREFIX.
|
CMAKE\_INSTALL\_PREFIX.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
# create virtualenv
|
# create virtualenv
|
||||||
@ -72,7 +69,6 @@ This will also install the Python module into your virtualenv. Since virtualenv
|
|||||||
doesn't change your LD\_LIBRARY\_PATH, you still need to add its lib64 folder to
|
doesn't change your LD\_LIBRARY\_PATH, you still need to add its lib64 folder to
|
||||||
it, which contains the installed liblammps.so.
|
it, which contains the installed liblammps.so.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
export LD_LIBRARY_PATH=$VIRTUAL_ENV/lib64:$LD_LIBRARY_PATH
|
export LD_LIBRARY_PATH=$VIRTUAL_ENV/lib64:$LD_LIBRARY_PATH
|
||||||
|
|||||||
@ -4,7 +4,6 @@ Test the Python/LAMMPS interface
|
|||||||
To test if LAMMPS is callable from Python, launch Python interactively
|
To test if LAMMPS is callable from Python, launch Python interactively
|
||||||
and type:
|
and type:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
>>> from lammps import lammps
|
>>> from lammps import lammps
|
||||||
@ -13,7 +12,6 @@ and type:
|
|||||||
If you get no errors, you're ready to use LAMMPS from Python. If the
|
If you get no errors, you're ready to use LAMMPS from Python. If the
|
||||||
2nd command fails, the most common error to see is
|
2nd command fails, the most common error to see is
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
OSError: Could not load LAMMPS dynamic library
|
OSError: Could not load LAMMPS dynamic library
|
||||||
@ -27,7 +25,6 @@ should give you an indication of what went wrong.
|
|||||||
You can also test the load directly in Python as follows, without
|
You can also test the load directly in Python as follows, without
|
||||||
first importing from the lammps.py file:
|
first importing from the lammps.py file:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
>>> from ctypes import CDLL
|
>>> from ctypes import CDLL
|
||||||
@ -44,7 +41,6 @@ Test LAMMPS and Python in serial:
|
|||||||
To run a LAMMPS test in serial, type these lines into Python
|
To run a LAMMPS test in serial, type these lines into Python
|
||||||
interactively from the bench directory:
|
interactively from the bench directory:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
>>> from lammps import lammps
|
>>> from lammps import lammps
|
||||||
@ -53,7 +49,6 @@ interactively from the bench directory:
|
|||||||
|
|
||||||
Or put the same lines in the file test.py and run it as
|
Or put the same lines in the file test.py and run it as
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
% python test.py
|
% python test.py
|
||||||
@ -62,7 +57,6 @@ Either way, you should see the results of running the in.lj benchmark
|
|||||||
on a single processor appear on the screen, the same as if you had
|
on a single processor appear on the screen, the same as if you had
|
||||||
typed something like:
|
typed something like:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
lmp_g++ -in in.lj
|
lmp_g++ -in in.lj
|
||||||
@ -74,7 +68,6 @@ To run LAMMPS in parallel, assuming you have installed the
|
|||||||
`PyPar <https://github.com/daleroberts/pypar>`_ package as discussed
|
`PyPar <https://github.com/daleroberts/pypar>`_ package as discussed
|
||||||
above, create a test.py file containing these lines:
|
above, create a test.py file containing these lines:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
import pypar
|
import pypar
|
||||||
@ -88,7 +81,6 @@ To run LAMMPS in parallel, assuming you have installed the
|
|||||||
`mpi4py <https://bitbucket.org/mpi4py/mpi4py>`_ package as discussed
|
`mpi4py <https://bitbucket.org/mpi4py/mpi4py>`_ package as discussed
|
||||||
above, create a test.py file containing these lines:
|
above, create a test.py file containing these lines:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
from mpi4py import MPI
|
from mpi4py import MPI
|
||||||
@ -102,14 +94,12 @@ above, create a test.py file containing these lines:
|
|||||||
|
|
||||||
You can either script in parallel as:
|
You can either script in parallel as:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
% mpirun -np 4 python test.py
|
% mpirun -np 4 python test.py
|
||||||
|
|
||||||
and you should see the same output as if you had typed
|
and you should see the same output as if you had typed
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
% mpirun -np 4 lmp_g++ -in in.lj
|
% mpirun -np 4 lmp_g++ -in in.lj
|
||||||
@ -134,7 +124,6 @@ Running Python scripts:
|
|||||||
Note that any Python script (not just for LAMMPS) can be invoked in
|
Note that any Python script (not just for LAMMPS) can be invoked in
|
||||||
one of several ways:
|
one of several ways:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
% python foo.script
|
% python foo.script
|
||||||
@ -144,7 +133,6 @@ one of several ways:
|
|||||||
The last command requires that the first line of the script be
|
The last command requires that the first line of the script be
|
||||||
something like this:
|
something like this:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
#!/usr/local/bin/python
|
#!/usr/local/bin/python
|
||||||
@ -153,7 +141,6 @@ something like this:
|
|||||||
where the path points to where you have Python installed, and that you
|
where the path points to where you have Python installed, and that you
|
||||||
have made the script file executable:
|
have made the script file executable:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
% chmod +x foo.script
|
% chmod +x foo.script
|
||||||
|
|||||||
@ -5,7 +5,6 @@ LAMMPS is run from the command line, reading commands from a file via
|
|||||||
the -in command line flag, or from standard input.
|
the -in command line flag, or from standard input.
|
||||||
Using the "-in in.file" variant is recommended:
|
Using the "-in in.file" variant is recommended:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ lmp_serial -in in.file
|
$ lmp_serial -in in.file
|
||||||
@ -68,7 +67,6 @@ If the LAMMPS command(s) you are using support multi-threading, you
|
|||||||
can set the number of threads per MPI task via the environment
|
can set the number of threads per MPI task via the environment
|
||||||
variable OMP\_NUM\_THREADS, before you launch LAMMPS:
|
variable OMP\_NUM\_THREADS, before you launch LAMMPS:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ export OMP_NUM_THREADS=2 # bash
|
$ export OMP_NUM_THREADS=2 # bash
|
||||||
@ -80,10 +78,8 @@ package command. See the :doc:`package <package>` command or
|
|||||||
:doc:`Speed <Speed>` doc pages for more details about which accelerator
|
:doc:`Speed <Speed>` doc pages for more details about which accelerator
|
||||||
packages and which commands support multi-threading.
|
packages and which commands support multi-threading.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
You can experiment with running LAMMPS using any of the input scripts
|
You can experiment with running LAMMPS using any of the input scripts
|
||||||
provided in the examples or bench directory. Input scripts are named
|
provided in the examples or bench directory. Input scripts are named
|
||||||
in.\* and sample outputs are named log.\*.P where P is the number of
|
in.\* and sample outputs are named log.\*.P where P is the number of
|
||||||
|
|||||||
@ -6,7 +6,6 @@ and :doc:`built an executable <Build>`. The :doc:`Commands <Commands>`
|
|||||||
doc page describes how input scripts are structured and the commands
|
doc page describes how input scripts are structured and the commands
|
||||||
they can contain.
|
they can contain.
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
|||||||
@ -25,16 +25,13 @@ letter abbreviation can be used:
|
|||||||
|
|
||||||
For example, the lmp\_mpi executable might be launched as follows:
|
For example, the lmp\_mpi executable might be launched as follows:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ mpirun -np 16 lmp_mpi -v f tmp.out -l my.log -sc none -i in.alloy
|
$ mpirun -np 16 lmp_mpi -v f tmp.out -l my.log -sc none -i in.alloy
|
||||||
$ mpirun -np 16 lmp_mpi -var f tmp.out -log my.log -screen none -in in.alloy
|
$ mpirun -np 16 lmp_mpi -var f tmp.out -log my.log -screen none -in in.alloy
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _echo:
|
.. _echo:
|
||||||
|
|
||||||
**-echo style**
|
**-echo style**
|
||||||
@ -46,10 +43,8 @@ can be useful to figure out which line of your script is causing an
|
|||||||
input error. The default value is *log*\ . The echo style can also be
|
input error. The default value is *log*\ . The echo style can also be
|
||||||
set by using the :doc:`echo <echo>` command in the input script itself.
|
set by using the :doc:`echo <echo>` command in the input script itself.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _help:
|
.. _help:
|
||||||
|
|
||||||
**-help**
|
**-help**
|
||||||
@ -61,10 +56,8 @@ want to use was included via the appropriate package at compile time.
|
|||||||
LAMMPS will print the info and immediately exit if this switch is
|
LAMMPS will print the info and immediately exit if this switch is
|
||||||
used.
|
used.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _file:
|
.. _file:
|
||||||
|
|
||||||
**-in file**
|
**-in file**
|
||||||
@ -79,10 +72,8 @@ Note that this is a required switch when running LAMMPS in
|
|||||||
multi-partition mode, since multiple processors cannot all read from
|
multi-partition mode, since multiple processors cannot all read from
|
||||||
stdin.
|
stdin.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _run-kokkos:
|
.. _run-kokkos:
|
||||||
|
|
||||||
**-kokkos on/off keyword/value ...**
|
**-kokkos on/off keyword/value ...**
|
||||||
@ -114,7 +105,6 @@ settings to use on different platforms is given on the :doc:`Speed kokkos <Speed
|
|||||||
* t or threads
|
* t or threads
|
||||||
* n or numa
|
* n or numa
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
device Nd
|
device Nd
|
||||||
@ -127,7 +117,6 @@ have consecutive IDs numbered as 0,1,2,etc. This setting allows you
|
|||||||
to launch multiple independent jobs on the node, each with a single
|
to launch multiple independent jobs on the node, each with a single
|
||||||
MPI task per node, and assign each job to run on a different GPU.
|
MPI task per node, and assign each job to run on a different GPU.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
gpus Ng Ns
|
gpus Ng Ns
|
||||||
@ -144,7 +133,6 @@ Ng = 1 and Ns is not set.
|
|||||||
Depending on which flavor of MPI you are running, LAMMPS will look for
|
Depending on which flavor of MPI you are running, LAMMPS will look for
|
||||||
one of these 4 environment variables
|
one of these 4 environment variables
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
SLURM_LOCALID (various MPI variants compiled with SLURM support)
|
SLURM_LOCALID (various MPI variants compiled with SLURM support)
|
||||||
@ -156,7 +144,6 @@ which are initialized by the "srun", "mpirun" or "mpiexec" commands.
|
|||||||
The environment variable setting for each MPI rank is used to assign a
|
The environment variable setting for each MPI rank is used to assign a
|
||||||
unique GPU ID to the MPI task.
|
unique GPU ID to the MPI task.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
threads Nt
|
threads Nt
|
||||||
@ -169,7 +156,6 @@ the number of physical cores per node, to use your available hardware
|
|||||||
optimally. This also sets the number of threads used by the host when
|
optimally. This also sets the number of threads used by the host when
|
||||||
LAMMPS is compiled with CUDA=yes.
|
LAMMPS is compiled with CUDA=yes.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
numa Nm
|
numa Nm
|
||||||
@ -184,10 +170,8 @@ its default value of 1. This is because letting a single process span
|
|||||||
multiple NUMA regions induces a significant amount of cross NUMA data
|
multiple NUMA regions induces a significant amount of cross NUMA data
|
||||||
traffic which is slow.
|
traffic which is slow.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _log:
|
.. _log:
|
||||||
|
|
||||||
**-log file**
|
**-log file**
|
||||||
@ -205,10 +189,8 @@ specified file is "none", then no log files are created. Using a
|
|||||||
:doc:`log <log>` command in the input script will override this setting.
|
:doc:`log <log>` command in the input script will override this setting.
|
||||||
Option -plog will override the name of the partition log files file.N.
|
Option -plog will override the name of the partition log files file.N.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _mpicolor:
|
.. _mpicolor:
|
||||||
|
|
||||||
**-mpicolor** color
|
**-mpicolor** color
|
||||||
@ -232,10 +214,8 @@ by the :doc:`message <message>` command and the CSlib library LAMMPS
|
|||||||
links with from the lib/message directory. See the
|
links with from the lib/message directory. See the
|
||||||
:doc:`message <message>` command for more details.
|
:doc:`message <message>` command for more details.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _nocite:
|
.. _nocite:
|
||||||
|
|
||||||
**-nocite**
|
**-nocite**
|
||||||
@ -245,10 +225,8 @@ references for specific cite-able features used during a LAMMPS run.
|
|||||||
See the `citation page <http://lammps.sandia.gov/cite.html>`_ for more
|
See the `citation page <http://lammps.sandia.gov/cite.html>`_ for more
|
||||||
details.
|
details.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _package:
|
.. _package:
|
||||||
|
|
||||||
**-package style args ....**
|
**-package style args ....**
|
||||||
@ -265,10 +243,8 @@ Along with the "-suffix" command-line switch, this is a convenient
|
|||||||
mechanism for invoking accelerator packages and their options without
|
mechanism for invoking accelerator packages and their options without
|
||||||
having to edit an input script.
|
having to edit an input script.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _partition:
|
.. _partition:
|
||||||
|
|
||||||
**-partition 8x2 4 5 ...**
|
**-partition 8x2 4 5 ...**
|
||||||
@ -296,10 +272,8 @@ multiple partitions, see the :doc:`Howto multiple <Howto_multiple>` doc
|
|||||||
page. World- and universe-style :doc:`variables <variable>` are useful
|
page. World- and universe-style :doc:`variables <variable>` are useful
|
||||||
in this context.
|
in this context.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _plog:
|
.. _plog:
|
||||||
|
|
||||||
**-plog file**
|
**-plog file**
|
||||||
@ -314,10 +288,8 @@ replica\_files/log.lammps) If this option is not used the log file for
|
|||||||
partition N is log.lammps.N or whatever is specified by the -log
|
partition N is log.lammps.N or whatever is specified by the -log
|
||||||
command-line option.
|
command-line option.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _pscreen:
|
.. _pscreen:
|
||||||
|
|
||||||
**-pscreen file**
|
**-pscreen file**
|
||||||
@ -332,17 +304,14 @@ sub-directory (-pscreen replica\_files/screen). If this option is not
|
|||||||
used the screen file for partition N is screen.N or whatever is
|
used the screen file for partition N is screen.N or whatever is
|
||||||
specified by the -screen command-line option.
|
specified by the -screen command-line option.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _reorder:
|
.. _reorder:
|
||||||
|
|
||||||
**-reorder**
|
**-reorder**
|
||||||
|
|
||||||
This option has 2 forms:
|
This option has 2 forms:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
-reorder nth N
|
-reorder nth N
|
||||||
@ -371,21 +340,18 @@ This can boost performance. For example, if you use "-reorder nth 4"
|
|||||||
and "-partition 9 3" and you are running on 12 processors, the
|
and "-partition 9 3" and you are running on 12 processors, the
|
||||||
processors will be reordered from
|
processors will be reordered from
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
0 1 2 3 4 5 6 7 8 9 10 11
|
0 1 2 3 4 5 6 7 8 9 10 11
|
||||||
|
|
||||||
to
|
to
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
0 1 2 4 5 6 8 9 10 3 7 11
|
0 1 2 4 5 6 8 9 10 3 7 11
|
||||||
|
|
||||||
so that the processors in each partition will be
|
so that the processors in each partition will be
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
0 1 2 4 5 6 8 9 10
|
0 1 2 4 5 6 8 9 10
|
||||||
@ -400,7 +366,6 @@ file is as follows. Any number of initial blank or comment lines
|
|||||||
(starting with a "#" character) can be present. These should be
|
(starting with a "#" character) can be present. These should be
|
||||||
followed by P lines of the form:
|
followed by P lines of the form:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
I J
|
I J
|
||||||
@ -424,20 +389,16 @@ itself. See the :doc:`processors out <processors>` command for how
|
|||||||
to output info on the final assignment of physical processors to
|
to output info on the final assignment of physical processors to
|
||||||
the LAMMPS simulation domain.
|
the LAMMPS simulation domain.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _restart2data:
|
.. _restart2data:
|
||||||
|
|
||||||
**-restart2data restartfile [remap] datafile keyword value ...**
|
**-restart2data restartfile [remap] datafile keyword value ...**
|
||||||
|
|
||||||
|
|
||||||
Convert the restart file into a data file and immediately exit. This
|
Convert the restart file into a data file and immediately exit. This
|
||||||
is the same operation as if the following 2-line input script were
|
is the same operation as if the following 2-line input script were
|
||||||
run:
|
run:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
read_restart restartfile [remap]
|
read_restart restartfile [remap]
|
||||||
@ -461,7 +422,6 @@ should allow the data file to still be produced.
|
|||||||
|
|
||||||
The syntax following restartfile (or remap), namely
|
The syntax following restartfile (or remap), namely
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
datafile keyword value ...
|
datafile keyword value ...
|
||||||
@ -470,10 +430,8 @@ is identical to the arguments of the :doc:`write_data <write_data>`
|
|||||||
command. See its doc page for details. This includes its
|
command. See its doc page for details. This includes its
|
||||||
optional keyword/value settings.
|
optional keyword/value settings.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _restart2dump:
|
.. _restart2dump:
|
||||||
|
|
||||||
**-restart2dump restartfile [remap] group-ID dumpstyle dumpfile arg1 arg2 ...**
|
**-restart2dump restartfile [remap] group-ID dumpstyle dumpfile arg1 arg2 ...**
|
||||||
@ -482,7 +440,6 @@ Convert the restart file into a dump file and immediately exit. This
|
|||||||
is the same operation as if the following 2-line input script were
|
is the same operation as if the following 2-line input script were
|
||||||
run:
|
run:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
read_restart restartfile [remap]
|
read_restart restartfile [remap]
|
||||||
@ -517,10 +474,8 @@ including ones that affect how parallel dump files are written, e.g.
|
|||||||
the *nfile* and *fileper* keywords. See the
|
the *nfile* and *fileper* keywords. See the
|
||||||
:doc:`dump_modify <dump_modify>` doc page for details.
|
:doc:`dump_modify <dump_modify>` doc page for details.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _screen:
|
.. _screen:
|
||||||
|
|
||||||
**-screen file**
|
**-screen file**
|
||||||
@ -538,10 +493,8 @@ multi-partition mode, if the specified file is "none", then no screen
|
|||||||
output is performed. Option -pscreen will override the name of the
|
output is performed. Option -pscreen will override the name of the
|
||||||
partition screen files file.N.
|
partition screen files file.N.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _suffix:
|
.. _suffix:
|
||||||
|
|
||||||
**-suffix style args**
|
**-suffix style args**
|
||||||
@ -607,10 +560,8 @@ The :doc:`suffix <suffix>` command can also be used within an input
|
|||||||
script to set a suffix, or to turn off or back on any suffix setting
|
script to set a suffix, or to turn off or back on any suffix setting
|
||||||
made via the command line.
|
made via the command line.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _var:
|
.. _var:
|
||||||
|
|
||||||
**-var name value1 value2 ...**
|
**-var name value1 value2 ...**
|
||||||
|
|||||||
@ -14,7 +14,6 @@ thermodynamic state and a total run time for the simulation. It also
|
|||||||
appends statistics about the CPU time and storage requirements for the
|
appends statistics about the CPU time and storage requirements for the
|
||||||
simulation. An example set of statistics is shown here:
|
simulation. An example set of statistics is shown here:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
Loop time of 2.81192 on 4 procs for 300 steps with 2004 atoms
|
Loop time of 2.81192 on 4 procs for 300 steps with 2004 atoms
|
||||||
@ -47,10 +46,8 @@ simulation. An example set of statistics is shown here:
|
|||||||
Neighbor list builds = 26
|
Neighbor list builds = 26
|
||||||
Dangerous builds = 0
|
Dangerous builds = 0
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
The first section provides a global loop timing summary. The *loop
|
The first section provides a global loop timing summary. The *loop
|
||||||
time* is the total wall-clock time for the simulation to run. The
|
time* is the total wall-clock time for the simulation to run. The
|
||||||
*Performance* line is provided for convenience to help predict how
|
*Performance* line is provided for convenience to help predict how
|
||||||
@ -60,10 +57,8 @@ line provides the CPU utilization per MPI task; it should be close to
|
|||||||
Lower numbers correspond to delays due to file I/O or insufficient
|
Lower numbers correspond to delays due to file I/O or insufficient
|
||||||
thread utilization.
|
thread utilization.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
The *MPI task* section gives the breakdown of the CPU run time (in
|
The *MPI task* section gives the breakdown of the CPU run time (in
|
||||||
seconds) into major categories:
|
seconds) into major categories:
|
||||||
|
|
||||||
@ -96,7 +91,6 @@ only and thus, because the breakdown for MPI tasks can change from
|
|||||||
MPI rank to MPI rank, this breakdown can be very different for
|
MPI rank to MPI rank, this breakdown can be very different for
|
||||||
individual ranks. Here is an example output for this section:
|
individual ranks. Here is an example output for this section:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
Thread timings breakdown (MPI rank 0):
|
Thread timings breakdown (MPI rank 0):
|
||||||
@ -109,20 +103,16 @@ individual ranks. Here is an example output for this section:
|
|||||||
Neigh \| 0.084778 \| 0.086969 \| 0.089161 \| 0.7 \| 12.70
|
Neigh \| 0.084778 \| 0.086969 \| 0.089161 \| 0.7 \| 12.70
|
||||||
Reduce \| 0.0036485 \| 0.003737 \| 0.0038254 \| 0.1 \| 0.55
|
Reduce \| 0.0036485 \| 0.003737 \| 0.0038254 \| 0.1 \| 0.55
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
The third section above lists the number of owned atoms (Nlocal),
|
The third section above lists the number of owned atoms (Nlocal),
|
||||||
ghost atoms (Nghost), and pair-wise neighbors stored per processor.
|
ghost atoms (Nghost), and pair-wise neighbors stored per processor.
|
||||||
The max and min values give the spread of these values across
|
The max and min values give the spread of these values across
|
||||||
processors with a 10-bin histogram showing the distribution. The total
|
processors with a 10-bin histogram showing the distribution. The total
|
||||||
number of histogram counts is equal to the number of processors.
|
number of histogram counts is equal to the number of processors.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
The last section gives aggregate statistics (across all processors)
|
The last section gives aggregate statistics (across all processors)
|
||||||
for pair-wise neighbors and special neighbors that LAMMPS keeps track
|
for pair-wise neighbors and special neighbors that LAMMPS keeps track
|
||||||
of (see the :doc:`special_bonds <special_bonds>` command). The number
|
of (see the :doc:`special_bonds <special_bonds>` command). The number
|
||||||
@ -135,15 +125,12 @@ non-zero you may wish to reduce the delay factor to insure no force
|
|||||||
interactions are missed by atoms moving beyond the neighbor skin
|
interactions are missed by atoms moving beyond the neighbor skin
|
||||||
distance before a rebuild takes place.
|
distance before a rebuild takes place.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
If an energy minimization was performed via the
|
If an energy minimization was performed via the
|
||||||
:doc:`minimize <minimize>` command, additional information is printed,
|
:doc:`minimize <minimize>` command, additional information is printed,
|
||||||
e.g.
|
e.g.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
Minimization stats:
|
Minimization stats:
|
||||||
@ -167,15 +154,12 @@ Multiple force evaluations are typically done at each iteration to
|
|||||||
perform a 1d line minimization in the search direction. See the
|
perform a 1d line minimization in the search direction. See the
|
||||||
:doc:`minimize <minimize>` doc page for more details.
|
:doc:`minimize <minimize>` doc page for more details.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
If a :doc:`kspace_style <kspace_style>` long-range Coulombics solver
|
If a :doc:`kspace_style <kspace_style>` long-range Coulombics solver
|
||||||
that performs FFTs was used during the run (PPPM, Ewald), then
|
that performs FFTs was used during the run (PPPM, Ewald), then
|
||||||
additional information is printed, e.g.
|
additional information is printed, e.g.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
FFT time (% of Kspce) = 0.200313 (8.34477)
|
FFT time (% of Kspce) = 0.200313 (8.34477)
|
||||||
|
|||||||
@ -14,15 +14,12 @@ Note that the serial executable includes support for multi-threading
|
|||||||
parallelization from the styles in the USER-OMP packages. To run with
|
parallelization from the styles in the USER-OMP packages. To run with
|
||||||
4 threads, you can type this:
|
4 threads, you can type this:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
lmp_serial -in in.lj -pk omp 4 -sf omp
|
lmp_serial -in in.lj -pk omp 4 -sf omp
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
For the MPI executable, which allows you to run LAMMPS under Windows
|
For the MPI executable, which allows you to run LAMMPS under Windows
|
||||||
in parallel, follow these steps.
|
in parallel, follow these steps.
|
||||||
|
|
||||||
@ -46,7 +43,6 @@ into the MPICH2 installation directory, then into the sub-directory
|
|||||||
|
|
||||||
Then type something like this:
|
Then type something like this:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
mpiexec -localonly 4 lmp_mpi -in in.file
|
mpiexec -localonly 4 lmp_mpi -in in.file
|
||||||
@ -62,7 +58,6 @@ patient before the output shows up.
|
|||||||
The parallel executable can also run on a single processor by typing
|
The parallel executable can also run on a single processor by typing
|
||||||
something like this:
|
something like this:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
lmp_mpi -in in.lj
|
lmp_mpi -in in.lj
|
||||||
@ -70,7 +65,6 @@ something like this:
|
|||||||
Note that the parallel executable also includes OpenMP
|
Note that the parallel executable also includes OpenMP
|
||||||
multi-threading, which can be combined with MPI using something like:
|
multi-threading, which can be combined with MPI using something like:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
mpiexec -localonly 2 lmp_mpi -in in.lj -pk omp 2 -sf omp
|
mpiexec -localonly 2 lmp_mpi -in in.lj -pk omp 2 -sf omp
|
||||||
|
|||||||
@ -19,7 +19,6 @@ page, for several of the standard LAMMPS benchmark problems, as a
|
|||||||
function of problem size and number of compute nodes, on different
|
function of problem size and number of compute nodes, on different
|
||||||
hardware platforms.
|
hardware platforms.
|
||||||
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
|||||||
@ -26,7 +26,6 @@ The 5 standard problems are as follow:
|
|||||||
particle-particle particle-mesh (PPPM) for long-range Coulombics, NPT
|
particle-particle particle-mesh (PPPM) for long-range Coulombics, NPT
|
||||||
integration
|
integration
|
||||||
|
|
||||||
|
|
||||||
Input files for these 5 problems are provided in the bench directory
|
Input files for these 5 problems are provided in the bench directory
|
||||||
of the LAMMPS distribution. Each has 32,000 atoms and runs for 100
|
of the LAMMPS distribution. Each has 32,000 atoms and runs for 100
|
||||||
timesteps. The size of the problem (number of atoms) can be varied
|
timesteps. The size of the problem (number of atoms) can be varied
|
||||||
@ -53,10 +52,8 @@ of the Benchmarks web page has performance data for very large
|
|||||||
benchmark runs of simple Lennard-Jones (LJ) models, which use the
|
benchmark runs of simple Lennard-Jones (LJ) models, which use the
|
||||||
bench/in.lj input script.
|
bench/in.lj input script.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
For all the benchmarks, a useful metric is the CPU cost per atom per
|
For all the benchmarks, a useful metric is the CPU cost per atom per
|
||||||
timestep. Since performance scales roughly linearly with problem size
|
timestep. Since performance scales roughly linearly with problem size
|
||||||
and timesteps for all LAMMPS models (i.e. interatomic or coarse-grained
|
and timesteps for all LAMMPS models (i.e. interatomic or coarse-grained
|
||||||
|
|||||||
@ -77,7 +77,6 @@ section below for examples where this has been done.
|
|||||||
to unlock this potential, an Intel compiler is required. The package code
|
to unlock this potential, an Intel compiler is required. The package code
|
||||||
will compile with GNU gcc, but it will not be as efficient.
|
will compile with GNU gcc, but it will not be as efficient.
|
||||||
|
|
||||||
|
|
||||||
**Differences between the GPU and KOKKOS packages:**
|
**Differences between the GPU and KOKKOS packages:**
|
||||||
|
|
||||||
* The GPU package accelerates only pair force, neighbor list, and (parts
|
* The GPU package accelerates only pair force, neighbor list, and (parts
|
||||||
|
|||||||
@ -27,7 +27,6 @@ It has the following general features:
|
|||||||
NVIDIA support as well as more general OpenCL support, so that the
|
NVIDIA support as well as more general OpenCL support, so that the
|
||||||
same functionality is supported on a variety of hardware.
|
same functionality is supported on a variety of hardware.
|
||||||
|
|
||||||
|
|
||||||
**Required hardware/software:**
|
**Required hardware/software:**
|
||||||
|
|
||||||
To compile and use this package in CUDA mode, you currently need
|
To compile and use this package in CUDA mode, you currently need
|
||||||
@ -77,7 +76,6 @@ automatically append "gpu" to styles that support it. Use the "-pk
|
|||||||
gpu Ng" :doc:`command-line switch <Run_options>` to set Ng = # of
|
gpu Ng" :doc:`command-line switch <Run_options>` to set Ng = # of
|
||||||
GPUs/node to use.
|
GPUs/node to use.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
lmp_machine -sf gpu -pk gpu 1 -in in.script # 1 MPI task uses 1 GPU
|
lmp_machine -sf gpu -pk gpu 1 -in in.script # 1 MPI task uses 1 GPU
|
||||||
@ -108,7 +106,6 @@ and use of multiple MPI tasks/GPU is the same.
|
|||||||
Use the :doc:`suffix gpu <suffix>` command, or you can explicitly add an
|
Use the :doc:`suffix gpu <suffix>` command, or you can explicitly add an
|
||||||
"gpu" suffix to individual styles in your input script, e.g.
|
"gpu" suffix to individual styles in your input script, e.g.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
pair_style lj/cut/gpu 2.5
|
pair_style lj/cut/gpu 2.5
|
||||||
@ -172,9 +169,7 @@ results, since they will typically be faster.
|
|||||||
This is the maximum memory used at one time on the GPU for data
|
This is the maximum memory used at one time on the GPU for data
|
||||||
storage by a single MPI process.
|
storage by a single MPI process.
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
None.
|
None.
|
||||||
|
|||||||
@ -25,7 +25,6 @@ LAMMPS to run on the CPU cores and co-processor cores simultaneously.
|
|||||||
rebo, sw, tersoff
|
rebo, sw, tersoff
|
||||||
* K-Space Styles: pppm, pppm/disp
|
* K-Space Styles: pppm, pppm/disp
|
||||||
|
|
||||||
|
|
||||||
.. warning::
|
.. warning::
|
||||||
|
|
||||||
None of the styles in the USER-INTEL package currently
|
None of the styles in the USER-INTEL package currently
|
||||||
@ -58,10 +57,8 @@ Skylake) with "June 2017" LAMMPS built with Intel Parallel Studio
|
|||||||
*src/USER-INTEL/TEST/README* for the raw simulation rates and
|
*src/USER-INTEL/TEST/README* for the raw simulation rates and
|
||||||
instructions to reproduce.
|
instructions to reproduce.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Accuracy and order of operations:**
|
**Accuracy and order of operations:**
|
||||||
|
|
||||||
In most molecular dynamics software, parallelization parameters
|
In most molecular dynamics software, parallelization parameters
|
||||||
@ -88,7 +85,6 @@ order of operations compared to LAMMPS without acceleration:
|
|||||||
Twister generator included in the Intel MKL library (that should be
|
Twister generator included in the Intel MKL library (that should be
|
||||||
more robust than the default Masaglia random number generator)
|
more robust than the default Masaglia random number generator)
|
||||||
|
|
||||||
|
|
||||||
The precision mode (described below) used with the USER-INTEL
|
The precision mode (described below) used with the USER-INTEL
|
||||||
package can change the *accuracy* of the calculations. For the
|
package can change the *accuracy* of the calculations. For the
|
||||||
default *mixed* precision option, calculations between pairs or
|
default *mixed* precision option, calculations between pairs or
|
||||||
@ -98,10 +94,8 @@ is performed in double precision to prevent the error from growing
|
|||||||
with the number of atoms in the simulation. *Single* precision
|
with the number of atoms in the simulation. *Single* precision
|
||||||
mode should not be used without appropriate validation.
|
mode should not be used without appropriate validation.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Quick Start for Experienced Users:**
|
**Quick Start for Experienced Users:**
|
||||||
|
|
||||||
LAMMPS should be built with the USER-INTEL package installed.
|
LAMMPS should be built with the USER-INTEL package installed.
|
||||||
@ -120,12 +114,10 @@ not *hardware thread*\ .
|
|||||||
* If using *kspace\_style pppm* in the input script, add
|
* If using *kspace\_style pppm* in the input script, add
|
||||||
"kspace\_modify diff ad" for better performance
|
"kspace\_modify diff ad" for better performance
|
||||||
|
|
||||||
|
|
||||||
For Intel Xeon Phi CPUs:
|
For Intel Xeon Phi CPUs:
|
||||||
|
|
||||||
* Runs should be performed using MCDRAM.
|
* Runs should be performed using MCDRAM.
|
||||||
|
|
||||||
|
|
||||||
For simulations using *kspace\_style pppm* on Intel CPUs supporting
|
For simulations using *kspace\_style pppm* on Intel CPUs supporting
|
||||||
AVX-512:
|
AVX-512:
|
||||||
|
|
||||||
@ -136,18 +128,14 @@ AVX-512:
|
|||||||
* Do not use thread affinity (set KMP\_AFFINITY=none)
|
* Do not use thread affinity (set KMP\_AFFINITY=none)
|
||||||
* The "newton off" setting may provide better scalability
|
* The "newton off" setting may provide better scalability
|
||||||
|
|
||||||
|
|
||||||
For Intel Xeon Phi co-processors (Offload):
|
For Intel Xeon Phi co-processors (Offload):
|
||||||
|
|
||||||
* Edit src/MAKE/OPTIONS/Makefile.intel\_co-processor as necessary
|
* Edit src/MAKE/OPTIONS/Makefile.intel\_co-processor as necessary
|
||||||
* "-pk intel N omp 1" added to command-line where N is the number of
|
* "-pk intel N omp 1" added to command-line where N is the number of
|
||||||
co-processors per node.
|
co-processors per node.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
**Required hardware/software:**
|
**Required hardware/software:**
|
||||||
|
|
||||||
In order to use offload to co-processors, an Intel Xeon Phi
|
In order to use offload to co-processors, an Intel Xeon Phi
|
||||||
@ -204,7 +192,6 @@ will report every hardware thread as a separate core allowing one to
|
|||||||
determine the number of hardware threads available. On Linux systems,
|
determine the number of hardware threads available. On Linux systems,
|
||||||
this information can normally be obtained with:
|
this information can normally be obtained with:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
cat /proc/cpuinfo
|
cat /proc/cpuinfo
|
||||||
@ -218,7 +205,6 @@ For building with make, several example Makefiles for building with
|
|||||||
the Intel compiler are included with LAMMPS in the src/MAKE/OPTIONS/
|
the Intel compiler are included with LAMMPS in the src/MAKE/OPTIONS/
|
||||||
directory:
|
directory:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
Makefile.intel_cpu_intelmpi # Intel Compiler, Intel MPI, No Offload
|
Makefile.intel_cpu_intelmpi # Intel Compiler, Intel MPI, No Offload
|
||||||
@ -233,7 +219,6 @@ Phi x200 processors making it easier to cross-compile. For users with
|
|||||||
recent installations of Intel Parallel Studio, the process can be as
|
recent installations of Intel Parallel Studio, the process can be as
|
||||||
simple as:
|
simple as:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
make yes-user-intel
|
make yes-user-intel
|
||||||
@ -349,7 +334,6 @@ desired.
|
|||||||
Examples (see documentation for your MPI/Machine for differences in
|
Examples (see documentation for your MPI/Machine for differences in
|
||||||
launching MPI applications):
|
launching MPI applications):
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
mpirun -np 72 -ppn 36 lmp_machine -sf intel -in in.script # 2 nodes, 36 MPI tasks/node, $OMP_NUM_THREADS OpenMP Threads
|
mpirun -np 72 -ppn 36 lmp_machine -sf intel -in in.script # 2 nodes, 36 MPI tasks/node, $OMP_NUM_THREADS OpenMP Threads
|
||||||
@ -362,7 +346,6 @@ can be edited to enable the USER-INTEL package. This requires adding
|
|||||||
the :doc:`package intel <package>` command to the top of the input
|
the :doc:`package intel <package>` command to the top of the input
|
||||||
script. For the second example above, this would be:
|
script. For the second example above, this would be:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
package intel 0 omp 2 mode double
|
package intel 0 omp 2 mode double
|
||||||
@ -370,7 +353,6 @@ script. For the second example above, this would be:
|
|||||||
To enable the USER-INTEL package only for individual styles, you can
|
To enable the USER-INTEL package only for individual styles, you can
|
||||||
add an "intel" suffix to the individual style, e.g.:
|
add an "intel" suffix to the individual style, e.g.:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
pair_style lj/cut/intel 2.5
|
pair_style lj/cut/intel 2.5
|
||||||
@ -527,7 +509,6 @@ MPI task.
|
|||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
When offloading to a co-processor, :doc:`hybrid <pair_hybrid>` styles
|
When offloading to a co-processor, :doc:`hybrid <pair_hybrid>` styles
|
||||||
that require skip lists for neighbor builds cannot be offloaded.
|
that require skip lists for neighbor builds cannot be offloaded.
|
||||||
Using :doc:`hybrid/overlay <pair_hybrid>` is allowed. Only one intel
|
Using :doc:`hybrid/overlay <pair_hybrid>` is allowed. Only one intel
|
||||||
|
|||||||
@ -71,7 +71,6 @@ Kokkos. E.g. the mpirun command in OpenMPI does this via its -np and
|
|||||||
Here is a quick overview of how to use the KOKKOS package
|
Here is a quick overview of how to use the KOKKOS package
|
||||||
for CPU acceleration, assuming one or more 16-core nodes.
|
for CPU acceleration, assuming one or more 16-core nodes.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
mpirun -np 16 lmp_kokkos_mpi_only -k on -sf kk -in in.lj # 1 node, 16 MPI tasks/node, no multi-threading
|
mpirun -np 16 lmp_kokkos_mpi_only -k on -sf kk -in in.lj # 1 node, 16 MPI tasks/node, no multi-threading
|
||||||
@ -85,7 +84,6 @@ command. You must use the "-k on" :doc:`command-line switch <Run_options>` to e
|
|||||||
additional arguments for hardware settings appropriate to your system.
|
additional arguments for hardware settings appropriate to your system.
|
||||||
For OpenMP use:
|
For OpenMP use:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
-k on t Nt
|
-k on t Nt
|
||||||
@ -121,7 +119,6 @@ below.
|
|||||||
page for details and default settings. Experimenting with its options
|
page for details and default settings. Experimenting with its options
|
||||||
can provide a speed-up for specific calculations. For example:
|
can provide a speed-up for specific calculations. For example:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
mpirun -np 16 lmp_kokkos_mpi_only -k on -sf kk -pk kokkos newton on neigh half comm no -in in.lj # Newton on, Half neighbor list, non-threaded comm
|
mpirun -np 16 lmp_kokkos_mpi_only -k on -sf kk -pk kokkos newton on neigh half comm no -in in.lj # Newton on, Half neighbor list, non-threaded comm
|
||||||
@ -154,7 +151,6 @@ they do not migrate during a simulation.
|
|||||||
If you are not certain MPI tasks are being bound (check the defaults
|
If you are not certain MPI tasks are being bound (check the defaults
|
||||||
for your MPI installation), binding can be forced with these flags:
|
for your MPI installation), binding can be forced with these flags:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
OpenMPI 1.8: mpirun -np 2 --bind-to socket --map-by socket ./lmp_openmpi ...
|
OpenMPI 1.8: mpirun -np 2 --bind-to socket --map-by socket ./lmp_openmpi ...
|
||||||
@ -184,7 +180,6 @@ tasks.
|
|||||||
|
|
||||||
Examples of mpirun commands that follow these rules are shown below.
|
Examples of mpirun commands that follow these rules are shown below.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
Intel KNL node with 68 cores (272 threads/node via 4x hardware threading):
|
Intel KNL node with 68 cores (272 threads/node via 4x hardware threading):
|
||||||
@ -210,7 +205,6 @@ threads/task as Nt. The product of these two values should be N, i.e.
|
|||||||
details and default settings. Experimenting with its options can provide
|
details and default settings. Experimenting with its options can provide
|
||||||
a speed-up for specific calculations. For example:
|
a speed-up for specific calculations. For example:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
mpirun -np 64 lmp_kokkos_phi -k on t 4 -sf kk -pk kokkos comm host -in in.reax # Newton on, half neighbor list, threaded comm
|
mpirun -np 64 lmp_kokkos_phi -k on t 4 -sf kk -pk kokkos comm host -in in.reax # Newton on, half neighbor list, threaded comm
|
||||||
@ -245,7 +239,6 @@ avoided by using :doc:`-pk kokkos cuda/aware no <package>`. As above for
|
|||||||
multi-core CPUs (and no GPU), if N is the number of physical cores/node,
|
multi-core CPUs (and no GPU), if N is the number of physical cores/node,
|
||||||
then the number of MPI tasks/node should not exceed N.
|
then the number of MPI tasks/node should not exceed N.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
-k on g Ng
|
-k on g Ng
|
||||||
@ -253,7 +246,6 @@ then the number of MPI tasks/node should not exceed N.
|
|||||||
Here are examples of how to use the KOKKOS package for GPUs, assuming
|
Here are examples of how to use the KOKKOS package for GPUs, assuming
|
||||||
one or more nodes, each with two GPUs:
|
one or more nodes, each with two GPUs:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
mpirun -np 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -in in.lj # 1 node, 2 MPI tasks/node, 2 GPUs/node
|
mpirun -np 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -in in.lj # 1 node, 2 MPI tasks/node, 2 GPUs/node
|
||||||
@ -274,7 +266,6 @@ one or more nodes, each with two GPUs:
|
|||||||
default settings. Experimenting with its options can provide a speed-up
|
default settings. Experimenting with its options can provide a speed-up
|
||||||
for specific calculations. For example:
|
for specific calculations. For example:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
mpirun -np 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -pk kokkos newton on neigh half binsize 2.8 -in in.lj # Newton on, half neighbor list, set binsize = neighbor ghost cutoff
|
mpirun -np 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -pk kokkos newton on neigh half binsize 2.8 -in in.lj # Newton on, half neighbor list, set binsize = neighbor ghost cutoff
|
||||||
@ -317,7 +308,6 @@ hardware options appropriate to your system, as documented above.
|
|||||||
You can use the :doc:`suffix kk <suffix>` command, or you can explicitly add a
|
You can use the :doc:`suffix kk <suffix>` command, or you can explicitly add a
|
||||||
"kk" suffix to individual styles in your input script, e.g.
|
"kk" suffix to individual styles in your input script, e.g.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
pair_style lj/cut/kk 2.5
|
pair_style lj/cut/kk 2.5
|
||||||
@ -333,7 +323,6 @@ used together in a few special cases. In the Makefile, the
|
|||||||
KOKKOS\_DEVICES variable must include both "Cuda" and "OpenMP", as is
|
KOKKOS\_DEVICES variable must include both "Cuda" and "OpenMP", as is
|
||||||
the case for /src/MAKE/OPTIONS/Makefile.kokkos\_cuda\_mpi
|
the case for /src/MAKE/OPTIONS/Makefile.kokkos\_cuda\_mpi
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
KOKKOS_DEVICES=Cuda,OpenMP
|
KOKKOS_DEVICES=Cuda,OpenMP
|
||||||
@ -345,14 +334,12 @@ style in the input script, the Kokkos OpenMP (CPU) version of that
|
|||||||
specific style will be used instead. Set the number of OpenMP threads
|
specific style will be used instead. Set the number of OpenMP threads
|
||||||
as "t Nt" and the number of GPUs as "g Ng"
|
as "t Nt" and the number of GPUs as "g Ng"
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
-k on t Nt g Ng
|
-k on t Nt g Ng
|
||||||
|
|
||||||
For example, the command to run with 1 GPU and 8 OpenMP threads is then:
|
For example, the command to run with 1 GPU and 8 OpenMP threads is then:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
mpiexec -np 1 lmp_kokkos_cuda_openmpi -in in.lj -k on g 1 t 8 -sf kk
|
mpiexec -np 1 lmp_kokkos_cuda_openmpi -in in.lj -k on g 1 t 8 -sf kk
|
||||||
@ -394,7 +381,6 @@ Generally speaking, the following rules of thumb apply:
|
|||||||
* When running on Intel hardware, KOKKOS is not as fast as
|
* When running on Intel hardware, KOKKOS is not as fast as
|
||||||
the USER-INTEL package, which is optimized for that hardware.
|
the USER-INTEL package, which is optimized for that hardware.
|
||||||
|
|
||||||
|
|
||||||
See the `Benchmark page <http://lammps.sandia.gov/bench.html>`_ of the
|
See the `Benchmark page <http://lammps.sandia.gov/bench.html>`_ of the
|
||||||
LAMMPS web site for performance of the KOKKOS package on different
|
LAMMPS web site for performance of the KOKKOS package on different
|
||||||
hardware.
|
hardware.
|
||||||
@ -441,6 +427,5 @@ GPUs.
|
|||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
Currently, there are no precision options with the KOKKOS package. All
|
Currently, there are no precision options with the KOKKOS package. All
|
||||||
compilation and computation is performed in double precision.
|
compilation and computation is performed in double precision.
|
||||||
|
|||||||
@ -23,7 +23,6 @@ instructions.
|
|||||||
|
|
||||||
These examples assume one or more 16-core nodes.
|
These examples assume one or more 16-core nodes.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
env OMP_NUM_THREADS=16 lmp_omp -sf omp -in in.script # 1 MPI task, 16 threads according to OMP_NUM_THREADS
|
env OMP_NUM_THREADS=16 lmp_omp -sf omp -in in.script # 1 MPI task, 16 threads according to OMP_NUM_THREADS
|
||||||
@ -61,7 +60,6 @@ and threads/MPI task is the same.
|
|||||||
Use the :doc:`suffix omp <suffix>` command, or you can explicitly add an
|
Use the :doc:`suffix omp <suffix>` command, or you can explicitly add an
|
||||||
"omp" suffix to individual styles in your input script, e.g.
|
"omp" suffix to individual styles in your input script, e.g.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
pair_style lj/cut/omp 2.5
|
pair_style lj/cut/omp 2.5
|
||||||
@ -140,7 +138,6 @@ circumstances:
|
|||||||
with the USER-OMP package, is an alternative way to reduce the number
|
with the USER-OMP package, is an alternative way to reduce the number
|
||||||
of MPI tasks assigned to the KSpace calculation.
|
of MPI tasks assigned to the KSpace calculation.
|
||||||
|
|
||||||
|
|
||||||
Additional performance tips are as follows:
|
Additional performance tips are as follows:
|
||||||
|
|
||||||
* The best parallel efficiency from *omp* styles is typically achieved
|
* The best parallel efficiency from *omp* styles is typically achieved
|
||||||
@ -154,9 +151,7 @@ Additional performance tips are as follows:
|
|||||||
one core and thus is likely to be counterproductive. Instead, binding
|
one core and thus is likely to be counterproductive. Instead, binding
|
||||||
MPI tasks to a (multi-core) socket, should solve this issue.
|
MPI tasks to a (multi-core) socket, should solve this issue.
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
None.
|
None.
|
||||||
|
|||||||
@ -17,7 +17,6 @@ See the :ref:`Build extras <opt>` doc page for instructions.
|
|||||||
|
|
||||||
**Run with the OPT package from the command line:**
|
**Run with the OPT package from the command line:**
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
lmp_mpi -sf opt -in in.script # run in serial
|
lmp_mpi -sf opt -in in.script # run in serial
|
||||||
@ -31,7 +30,6 @@ automatically append "opt" to styles that support it.
|
|||||||
Use the :doc:`suffix opt <suffix>` command, or you can explicitly add an
|
Use the :doc:`suffix opt <suffix>` command, or you can explicitly add an
|
||||||
"opt" suffix to individual styles in your input script, e.g.
|
"opt" suffix to individual styles in your input script, e.g.
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
pair_style lj/cut/opt 2.5
|
pair_style lj/cut/opt 2.5
|
||||||
@ -49,5 +47,4 @@ Just try out an OPT pair style to see how it performs.
|
|||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
None.
|
None.
|
||||||
|
|||||||
@ -132,7 +132,6 @@ packages. As an example, here is a command that builds with all the
|
|||||||
GPU related packages installed (GPU, KOKKOS with Cuda), including
|
GPU related packages installed (GPU, KOKKOS with Cuda), including
|
||||||
settings to build the needed auxiliary GPU libraries for Kepler GPUs:
|
settings to build the needed auxiliary GPU libraries for Kepler GPUs:
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
Make.py -j 16 -p omp gpu kokkos -cc nvcc wrap=mpi -gpu mode=double arch=35 -kokkos cuda arch=35 lib-all file mpi
|
Make.py -j 16 -p omp gpu kokkos -cc nvcc wrap=mpi -gpu mode=double arch=35 -kokkos cuda arch=35 lib-all file mpi
|
||||||
@ -178,7 +177,6 @@ are in the individual accelerator sections.
|
|||||||
speed-up the pairwise calculations of your simulation by 5-25% on a
|
speed-up the pairwise calculations of your simulation by 5-25% on a
|
||||||
CPU.
|
CPU.
|
||||||
|
|
||||||
|
|
||||||
The individual accelerator package doc pages explain:
|
The individual accelerator package doc pages explain:
|
||||||
|
|
||||||
* what hardware and software the accelerated package requires
|
* what hardware and software the accelerated package requires
|
||||||
|
|||||||
@ -18,8 +18,6 @@ visualization for LAMMPS simulations.
|
|||||||
.. _pizza: http://pizza.sandia.gov
|
.. _pizza: http://pizza.sandia.gov
|
||||||
.. _python: http://www.python.org
|
.. _python: http://www.python.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Additional tools included in the LAMMPS distribution are described on
|
Additional tools included in the LAMMPS distribution are described on
|
||||||
this page.
|
this page.
|
||||||
|
|
||||||
@ -37,10 +35,8 @@ to edit for your platform) which will build several of the tools which
|
|||||||
reside in that directory. Most of them are larger packages in their
|
reside in that directory. Most of them are larger packages in their
|
||||||
own sub-directories with their own Makefiles and/or README files.
|
own sub-directories with their own Makefiles and/or README files.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Pre-processing tools
|
Pre-processing tools
|
||||||
====================
|
====================
|
||||||
|
|
||||||
@ -72,10 +68,8 @@ Miscellaneous tools
|
|||||||
| :ref:`vim <vim>` | | | | |
|
| :ref:`vim <vim>` | | | | |
|
||||||
+--------------------------+----------------------+-------------------+--------------------+---------------------------------------+
|
+--------------------------+----------------------+-------------------+--------------------+---------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Tool descriptions
|
Tool descriptions
|
||||||
=================
|
=================
|
||||||
|
|
||||||
@ -95,10 +89,8 @@ version (and maybe with respect to AMBER as well). Since we don't use
|
|||||||
these tools at Sandia, you will need to experiment with them and make
|
these tools at Sandia, you will need to experiment with them and make
|
||||||
necessary modifications yourself.
|
necessary modifications yourself.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _binary:
|
.. _binary:
|
||||||
|
|
||||||
binary2txt tool
|
binary2txt tool
|
||||||
@ -107,7 +99,6 @@ binary2txt tool
|
|||||||
The file binary2txt.cpp converts one or more binary LAMMPS dump file
|
The file binary2txt.cpp converts one or more binary LAMMPS dump file
|
||||||
into ASCII text files. The syntax for running the tool is
|
into ASCII text files. The syntax for running the tool is
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
binary2txt file1 file2 ...
|
binary2txt file1 file2 ...
|
||||||
@ -116,10 +107,8 @@ which creates file1.txt, file2.txt, etc. This tool must be compiled
|
|||||||
on a platform that can read the binary file created by a LAMMPS run,
|
on a platform that can read the binary file created by a LAMMPS run,
|
||||||
since binary files are not compatible across all platforms.
|
since binary files are not compatible across all platforms.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _charmm:
|
.. _charmm:
|
||||||
|
|
||||||
ch2lmp tool
|
ch2lmp tool
|
||||||
@ -146,10 +135,8 @@ Robert A. Latour (latourr at clemson.edu), David Hyde-Volpe, and
|
|||||||
Tigran Abramyan, (Clemson University) and
|
Tigran Abramyan, (Clemson University) and
|
||||||
Chris Lorenz (chris.lorenz at kcl.ac.uk), King's College London.
|
Chris Lorenz (chris.lorenz at kcl.ac.uk), King's College London.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _chain:
|
.. _chain:
|
||||||
|
|
||||||
chain tool
|
chain tool
|
||||||
@ -162,7 +149,6 @@ chains and solvent atoms can strongly overlap, so LAMMPS needs to run
|
|||||||
the system initially with a "soft" pair potential to un-overlap it.
|
the system initially with a "soft" pair potential to un-overlap it.
|
||||||
The syntax for running the tool is
|
The syntax for running the tool is
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
chain < def.chain > data.file
|
chain < def.chain > data.file
|
||||||
@ -171,10 +157,8 @@ See the def.chain or def.chain.ab files in the tools directory for
|
|||||||
examples of definition files. This tool was used to create the system
|
examples of definition files. This tool was used to create the system
|
||||||
for the :doc:`chain benchmark <Speed_bench>`.
|
for the :doc:`chain benchmark <Speed_bench>`.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _colvars:
|
.. _colvars:
|
||||||
|
|
||||||
colvars tools
|
colvars tools
|
||||||
@ -192,7 +176,6 @@ abf\_integrate:
|
|||||||
MC-based integration of multidimensional free energy gradient
|
MC-based integration of multidimensional free energy gradient
|
||||||
Version 20110511
|
Version 20110511
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
Syntax: ./abf_integrate < filename > [-n < nsteps >] [-t < temp >] [-m [0\|1] (metadynamics)] [-h < hill_height >] [-f < variable_hill_factor >]
|
Syntax: ./abf_integrate < filename > [-n < nsteps >] [-t < temp >] [-m [0\|1] (metadynamics)] [-h < hill_height >] [-f < variable_hill_factor >]
|
||||||
@ -201,10 +184,8 @@ The LAMMPS interface to the colvars collective variable library, as
|
|||||||
well as these tools, were created by Axel Kohlmeyer (akohlmey at
|
well as these tools, were created by Axel Kohlmeyer (akohlmey at
|
||||||
gmail.com) at ICTP, Italy.
|
gmail.com) at ICTP, Italy.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _createatoms:
|
.. _createatoms:
|
||||||
|
|
||||||
createatoms tool
|
createatoms tool
|
||||||
@ -219,10 +200,8 @@ See the included Manual.pdf for details.
|
|||||||
|
|
||||||
The tool is authored by Xiaowang Zhou (Sandia), xzhou at sandia.gov.
|
The tool is authored by Xiaowang Zhou (Sandia), xzhou at sandia.gov.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _doxygen:
|
.. _doxygen:
|
||||||
|
|
||||||
doxygen tool
|
doxygen tool
|
||||||
@ -236,10 +215,8 @@ See the included README file for details.
|
|||||||
|
|
||||||
The tool is authored by Nandor Tamaskovics, numericalfreedom at googlemail.com.
|
The tool is authored by Nandor Tamaskovics, numericalfreedom at googlemail.com.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _drude:
|
.. _drude:
|
||||||
|
|
||||||
drude tool
|
drude tool
|
||||||
@ -254,10 +231,8 @@ See the header of the polarizer.py file for details.
|
|||||||
The tool is authored by Agilio Padua and Alain Dequidt: agilio.padua
|
The tool is authored by Agilio Padua and Alain Dequidt: agilio.padua
|
||||||
at univ-bpclermont.fr, alain.dequidt at univ-bpclermont.fr
|
at univ-bpclermont.fr, alain.dequidt at univ-bpclermont.fr
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _eamdb:
|
.. _eamdb:
|
||||||
|
|
||||||
eam database tool
|
eam database tool
|
||||||
@ -274,10 +249,8 @@ and is based on his paper:
|
|||||||
X. W. Zhou, R. A. Johnson, and H. N. G. Wadley, Phys. Rev. B, 69,
|
X. W. Zhou, R. A. Johnson, and H. N. G. Wadley, Phys. Rev. B, 69,
|
||||||
144113 (2004).
|
144113 (2004).
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _eamgn:
|
.. _eamgn:
|
||||||
|
|
||||||
eam generate tool
|
eam generate tool
|
||||||
@ -291,10 +264,8 @@ produce are in the potentials directory, and can be used with the
|
|||||||
The source files and potentials were provided by Gerolf Ziegenhain
|
The source files and potentials were provided by Gerolf Ziegenhain
|
||||||
(gerolf at ziegenhain.com).
|
(gerolf at ziegenhain.com).
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _eff:
|
.. _eff:
|
||||||
|
|
||||||
eff tool
|
eff tool
|
||||||
@ -307,10 +278,8 @@ electron force field (eFF).
|
|||||||
These tools were provided by Andres Jaramillo-Botero at CalTech
|
These tools were provided by Andres Jaramillo-Botero at CalTech
|
||||||
(ajaramil at wag.caltech.edu).
|
(ajaramil at wag.caltech.edu).
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _emacs:
|
.. _emacs:
|
||||||
|
|
||||||
emacs tool
|
emacs tool
|
||||||
@ -323,10 +292,8 @@ with various highlighting options set up.
|
|||||||
These tools were provided by Aidan Thompson at Sandia
|
These tools were provided by Aidan Thompson at Sandia
|
||||||
(athomps at sandia.gov).
|
(athomps at sandia.gov).
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _fep:
|
.. _fep:
|
||||||
|
|
||||||
fep tool
|
fep tool
|
||||||
@ -341,10 +308,8 @@ Pascal Clermont-Ferrand), agilio.padua at univ-bpclermont.fr.
|
|||||||
|
|
||||||
See README file in the tools/fep directory.
|
See README file in the tools/fep directory.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _ipi:
|
.. _ipi:
|
||||||
|
|
||||||
i-pi tool
|
i-pi tool
|
||||||
@ -363,10 +328,8 @@ See the tools/i-pi/manual.pdf file for an overview of i-PI, and the
|
|||||||
:doc:`fix ipi <fix_ipi>` doc page for further details on running PIMD
|
:doc:`fix ipi <fix_ipi>` doc page for further details on running PIMD
|
||||||
calculations with LAMMPS.
|
calculations with LAMMPS.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _ipp:
|
.. _ipp:
|
||||||
|
|
||||||
ipp tool
|
ipp tool
|
||||||
@ -382,10 +345,8 @@ sandia.gov.
|
|||||||
See two examples in the tools/ipp directory. One of them is for the
|
See two examples in the tools/ipp directory. One of them is for the
|
||||||
tools/createatoms tool's input file.
|
tools/createatoms tool's input file.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _kate:
|
.. _kate:
|
||||||
|
|
||||||
kate tool
|
kate tool
|
||||||
@ -398,10 +359,8 @@ scripts. See the README.txt file for details.
|
|||||||
The file was provided by Alessandro Luigi Sellerio
|
The file was provided by Alessandro Luigi Sellerio
|
||||||
(alessandro.sellerio at ieni.cnr.it).
|
(alessandro.sellerio at ieni.cnr.it).
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _arc:
|
.. _arc:
|
||||||
|
|
||||||
lmp2arc tool
|
lmp2arc tool
|
||||||
@ -419,10 +378,8 @@ This tool was written by John Carpenter (Cray), Michael Peachey
|
|||||||
This tool was updated for the current LAMMPS C++ version by Jeff
|
This tool was updated for the current LAMMPS C++ version by Jeff
|
||||||
Greathouse at Sandia (jagreat at sandia.gov).
|
Greathouse at Sandia (jagreat at sandia.gov).
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _cfg:
|
.. _cfg:
|
||||||
|
|
||||||
lmp2cfg tool
|
lmp2cfg tool
|
||||||
@ -435,10 +392,8 @@ the README file for more information.
|
|||||||
|
|
||||||
This tool was written by Ara Kooser at Sandia (askoose at sandia.gov).
|
This tool was written by Ara Kooser at Sandia (askoose at sandia.gov).
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _matlab:
|
.. _matlab:
|
||||||
|
|
||||||
matlab tool
|
matlab tool
|
||||||
@ -458,12 +413,8 @@ These scripts were written by Arun Subramaniyan at Purdue Univ
|
|||||||
|
|
||||||
.. _matlabhome: http://www.mathworks.com
|
.. _matlabhome: http://www.mathworks.com
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _micelle:
|
.. _micelle:
|
||||||
|
|
||||||
micelle2d tool
|
micelle2d tool
|
||||||
@ -476,7 +427,6 @@ atoms can strongly overlap, so LAMMPS needs to run the system
|
|||||||
initially with a "soft" pair potential to un-overlap it. The syntax
|
initially with a "soft" pair potential to un-overlap it. The syntax
|
||||||
for running the tool is
|
for running the tool is
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
micelle2d < def.micelle2d > data.file
|
micelle2d < def.micelle2d > data.file
|
||||||
@ -485,10 +435,8 @@ See the def.micelle2d file in the tools directory for an example of a
|
|||||||
definition file. This tool was used to create the system for the
|
definition file. This tool was used to create the system for the
|
||||||
:doc:`micelle example <Examples>`.
|
:doc:`micelle example <Examples>`.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _moltemplate:
|
.. _moltemplate:
|
||||||
|
|
||||||
moltemplate tool
|
moltemplate tool
|
||||||
@ -505,10 +453,8 @@ supports it. It has its own WWW page at
|
|||||||
`http://moltemplate.org <http://moltemplate.org>`_.
|
`http://moltemplate.org <http://moltemplate.org>`_.
|
||||||
The latest sources can be found `on its GitHub page <https://github.com/jewettaij/moltemplate/releases>`_
|
The latest sources can be found `on its GitHub page <https://github.com/jewettaij/moltemplate/releases>`_
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _msi:
|
.. _msi:
|
||||||
|
|
||||||
msi2lmp tool
|
msi2lmp tool
|
||||||
@ -527,10 +473,8 @@ development, so there are no changes except for the occasional bug fix.
|
|||||||
|
|
||||||
See the README file in the tools/msi2lmp folder for more information.
|
See the README file in the tools/msi2lmp folder for more information.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _phonon:
|
.. _phonon:
|
||||||
|
|
||||||
phonon tool
|
phonon tool
|
||||||
@ -547,10 +491,8 @@ for example problems that can be post-processed with this tool.
|
|||||||
This tool was written by Ling-Ti Kong at Shanghai Jiao Tong
|
This tool was written by Ling-Ti Kong at Shanghai Jiao Tong
|
||||||
University.
|
University.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _polybond:
|
.. _polybond:
|
||||||
|
|
||||||
polybond tool
|
polybond tool
|
||||||
@ -566,10 +508,8 @@ See the Manual.pdf for details and example scripts.
|
|||||||
|
|
||||||
This tool was written by Zachary Kraus at Georgia Tech.
|
This tool was written by Zachary Kraus at Georgia Tech.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _pymol:
|
.. _pymol:
|
||||||
|
|
||||||
pymol\_asphere tool
|
pymol\_asphere tool
|
||||||
@ -581,22 +521,16 @@ particles into an input file for the `PyMol visualization package <pymolhome_>`_
|
|||||||
|
|
||||||
.. _pymolhome: http://www.pymol.org
|
.. _pymolhome: http://www.pymol.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. _pymolopen: http://sourceforge.net/scm/?type=svn&group\_id=4546
|
.. _pymolopen: http://sourceforge.net/scm/?type=svn&group\_id=4546
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Specifically, the tool triangulates the ellipsoids so they can be
|
Specifically, the tool triangulates the ellipsoids so they can be
|
||||||
viewed as true ellipsoidal particles within PyMol. See the README and
|
viewed as true ellipsoidal particles within PyMol. See the README and
|
||||||
examples directory within pymol\_asphere for more information.
|
examples directory within pymol\_asphere for more information.
|
||||||
|
|
||||||
This tool was written by Mike Brown at Sandia.
|
This tool was written by Mike Brown at Sandia.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _pythontools:
|
.. _pythontools:
|
||||||
|
|
||||||
python tool
|
python tool
|
||||||
@ -614,10 +548,8 @@ that perform common LAMMPS post-processing tasks, such as:
|
|||||||
These are simple scripts built on `Pizza.py <pizza_>`_ modules. See the
|
These are simple scripts built on `Pizza.py <pizza_>`_ modules. See the
|
||||||
README for more info on Pizza.py and how to use these scripts.
|
README for more info on Pizza.py and how to use these scripts.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _replica:
|
.. _replica:
|
||||||
|
|
||||||
replica tool
|
replica tool
|
||||||
@ -634,10 +566,8 @@ the README.md file for further details. Try out the peptide example provided.
|
|||||||
This tool was written by (and is maintained by) Tanmoy Sanyal,
|
This tool was written by (and is maintained by) Tanmoy Sanyal,
|
||||||
while at the Shell lab at UC Santa Barbara. (tanmoy dot 7989 at gmail.com)
|
while at the Shell lab at UC Santa Barbara. (tanmoy dot 7989 at gmail.com)
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _reax\_tool:
|
.. _reax\_tool:
|
||||||
|
|
||||||
reax tool
|
reax tool
|
||||||
@ -650,10 +580,8 @@ the README.txt file for more info.
|
|||||||
|
|
||||||
These tools were written by Aidan Thompson at Sandia.
|
These tools were written by Aidan Thompson at Sandia.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _smd:
|
.. _smd:
|
||||||
|
|
||||||
smd tool
|
smd tool
|
||||||
@ -671,10 +599,8 @@ This tool was written by the USER-SMD package author, Georg
|
|||||||
Ganzenmuller at the Fraunhofer-Institute for High-Speed Dynamics,
|
Ganzenmuller at the Fraunhofer-Institute for High-Speed Dynamics,
|
||||||
Ernst Mach Institute in Germany (georg.ganzenmueller at emi.fhg.de).
|
Ernst Mach Institute in Germany (georg.ganzenmueller at emi.fhg.de).
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _spin:
|
.. _spin:
|
||||||
|
|
||||||
spin tool
|
spin tool
|
||||||
@ -690,10 +616,8 @@ This tool was written by the SPIN package author, Julien
|
|||||||
Tranchida at Sandia National Labs (jtranch at sandia.gov, and by Aleksei
|
Tranchida at Sandia National Labs (jtranch at sandia.gov, and by Aleksei
|
||||||
Ivanov, at University of Iceland (ali5 at hi.is).
|
Ivanov, at University of Iceland (ali5 at hi.is).
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _singularity\_tool:
|
.. _singularity\_tool:
|
||||||
|
|
||||||
singularity tool
|
singularity tool
|
||||||
@ -704,10 +628,8 @@ that can be used to build container images for building and testing
|
|||||||
LAMMPS on specific OS variants using the `Singularity <https://sylabs.io>`_
|
LAMMPS on specific OS variants using the `Singularity <https://sylabs.io>`_
|
||||||
container software. Contributions for additional variants are welcome.
|
container software. Contributions for additional variants are welcome.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _vim:
|
.. _vim:
|
||||||
|
|
||||||
vim tool
|
vim tool
|
||||||
@ -720,10 +642,8 @@ file for details.
|
|||||||
These files were provided by Gerolf Ziegenhain (gerolf at
|
These files were provided by Gerolf Ziegenhain (gerolf at
|
||||||
ziegenhain.com)
|
ziegenhain.com)
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _xmgrace:
|
.. _xmgrace:
|
||||||
|
|
||||||
xmgrace tool
|
xmgrace tool
|
||||||
|
|||||||
@ -15,7 +15,6 @@ angle_style charmm/omp command
|
|||||||
Syntax
|
Syntax
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style charmm
|
angle_style charmm
|
||||||
@ -23,7 +22,6 @@ Syntax
|
|||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style charmm
|
angle_style charmm
|
||||||
@ -38,7 +36,6 @@ The *charmm* angle style uses the potential
|
|||||||
|
|
||||||
E = K (\theta - \theta_0)^2 + K_{ub} (r - r_{ub})^2
|
E = K (\theta - \theta_0)^2 + K_{ub} (r - r_{ub})^2
|
||||||
|
|
||||||
|
|
||||||
with an additional Urey\_Bradley term based on the distance :math:`r` between
|
with an additional Urey\_Bradley term based on the distance :math:`r` between
|
||||||
the 1st and 3rd atoms in the angle. :math:`K`, :math:`\theta_0`,
|
the 1st and 3rd atoms in the angle. :math:`K`, :math:`\theta_0`,
|
||||||
:math:`K_{ub}`, and :math:`R_{ub}` are coefficients defined for each angle
|
:math:`K_{ub}`, and :math:`R_{ub}` are coefficients defined for each angle
|
||||||
@ -60,10 +57,8 @@ or :doc:`read_restart <read_restart>` commands:
|
|||||||
:math:`\theta_0` is specified in degrees, but LAMMPS converts it to radians
|
:math:`\theta_0` is specified in degrees, but LAMMPS converts it to radians
|
||||||
internally; hence the units of :math:`K` are in energy/radian\^2.
|
internally; hence the units of :math:`K` are in energy/radian\^2.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
||||||
functionally the same as the corresponding style without the suffix.
|
functionally the same as the corresponding style without the suffix.
|
||||||
They have been optimized to run faster, depending on your available
|
They have been optimized to run faster, depending on your available
|
||||||
@ -82,14 +77,11 @@ by including their suffix, or you can use the :doc:`-suffix command-line switch
|
|||||||
See :doc:`Speed packages <Speed_packages>` doc page for more
|
See :doc:`Speed packages <Speed_packages>` doc page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
||||||
for more info.
|
for more info.
|
||||||
@ -101,13 +93,9 @@ Related commands
|
|||||||
|
|
||||||
**Default:** none
|
**Default:** none
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _angle-MacKerell:
|
.. _angle-MacKerell:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(MacKerell)** MacKerell, Bashford, Bellott, Dunbrack, Evanseck, Field,
|
**(MacKerell)** MacKerell, Bashford, Bellott, Dunbrack, Evanseck, Field,
|
||||||
Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
|
Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).
|
||||||
|
|||||||
@ -15,7 +15,6 @@ angle_style class2/p6 command
|
|||||||
Syntax
|
Syntax
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style class2
|
angle_style class2
|
||||||
@ -23,7 +22,6 @@ Syntax
|
|||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style class2
|
angle_style class2
|
||||||
@ -43,7 +41,6 @@ The *class2* angle style uses the potential
|
|||||||
E_{bb} & = M (r_{ij} - r_1) (r_{jk} - r_2) \\
|
E_{bb} & = M (r_{ij} - r_1) (r_{jk} - r_2) \\
|
||||||
E_{ba} & = N_1 (r_{ij} - r_1) (\theta - \theta_0) + N_2(r_{jk} - r_2)(\theta - \theta_0)
|
E_{ba} & = N_1 (r_{ij} - r_1) (\theta - \theta_0) + N_2(r_{jk} - r_2)(\theta - \theta_0)
|
||||||
|
|
||||||
|
|
||||||
where :math:`E_a` is the angle term, :math:`E_{bb}` is a bond-bond term, and :math:`E_{ba}` is a
|
where :math:`E_a` is the angle term, :math:`E_{bb}` is a bond-bond term, and :math:`E_{ba}` is a
|
||||||
bond-angle term. :math:`\theta_0` is the equilibrium angle and :math:`r_1` and :math:`r_2` are
|
bond-angle term. :math:`\theta_0` is the equilibrium angle and :math:`r_1` and :math:`r_2` are
|
||||||
the equilibrium bond lengths.
|
the equilibrium bond lengths.
|
||||||
@ -94,10 +91,8 @@ the angle type.
|
|||||||
The :math:`\theta_0` value in the :math:`E_{ba}` formula is not specified,
|
The :math:`\theta_0` value in the :math:`E_{ba}` formula is not specified,
|
||||||
since it is the same value from the :math:`E_a` formula.
|
since it is the same value from the :math:`E_a` formula.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
||||||
functionally the same as the corresponding style without the suffix.
|
functionally the same as the corresponding style without the suffix.
|
||||||
They have been optimized to run faster, depending on your available
|
They have been optimized to run faster, depending on your available
|
||||||
@ -116,17 +111,14 @@ by including their suffix, or you can use the :doc:`-suffix command-line switch
|
|||||||
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
The *class2/p6* angle style uses the *class2* potential expanded to sixth order:
|
The *class2/p6* angle style uses the *class2* potential expanded to sixth order:
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
E_{a} = K_2\left(\theta - \theta_0\right)^2 + K_3\left(\theta - \theta_0\right)^3 + K_4\left(\theta - \theta_0\right)^4 + K_5\left(\theta - \theta_0\right)^5 + K_6\left(\theta - \theta_0\right)^6
|
E_{a} = K_2\left(\theta - \theta_0\right)^2 + K_3\left(\theta - \theta_0\right)^3 + K_4\left(\theta - \theta_0\right)^4 + K_5\left(\theta - \theta_0\right)^5 + K_6\left(\theta - \theta_0\right)^6
|
||||||
|
|
||||||
|
|
||||||
In this expanded term 6 coefficients for the :math:`E_a` formula need to be set:
|
In this expanded term 6 coefficients for the :math:`E_a` formula need to be set:
|
||||||
|
|
||||||
* :math:`\theta_0` (degrees)
|
* :math:`\theta_0` (degrees)
|
||||||
@ -138,14 +130,11 @@ In this expanded term 6 coefficients for the :math:`E_a` formula need to be set:
|
|||||||
|
|
||||||
The bond-bond and bond-angle terms remain unchanged.
|
The bond-bond and bond-angle terms remain unchanged.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the CLASS2
|
This angle style can only be used if LAMMPS was built with the CLASS2
|
||||||
package. For the *class2/p6* style LAMMPS needs to be built with the
|
package. For the *class2/p6* style LAMMPS needs to be built with the
|
||||||
USER-MOFFF package. See the :doc:`Build package <Build_package>` doc
|
USER-MOFFF package. See the :doc:`Build package <Build_package>` doc
|
||||||
@ -158,12 +147,8 @@ Related commands
|
|||||||
|
|
||||||
**Default:** none
|
**Default:** none
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _angle-Sun:
|
.. _angle-Sun:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Sun)** Sun, J Phys Chem B 102, 7338-7364 (1998).
|
**(Sun)** Sun, J Phys Chem B 102, 7338-7364 (1998).
|
||||||
|
|||||||
@ -6,7 +6,6 @@ angle_coeff command
|
|||||||
Syntax
|
Syntax
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_coeff N args
|
angle_coeff N args
|
||||||
@ -17,7 +16,6 @@ Syntax
|
|||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_coeff 1 300.0 107.0
|
angle_coeff 1 300.0 107.0
|
||||||
@ -45,7 +43,6 @@ Note that using an :doc:`angle_coeff <angle_coeff>` command can override a previ
|
|||||||
for the same angle type. For example, these commands set the coeffs
|
for the same angle type. For example, these commands set the coeffs
|
||||||
for all angle types, then overwrite the coeffs for just angle type 2:
|
for all angle types, then overwrite the coeffs for just angle type 2:
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_coeff * 200.0 107.0 1.2
|
angle_coeff * 200.0 107.0 1.2
|
||||||
@ -58,7 +55,6 @@ coefficients for all N types must be listed in the file. For example,
|
|||||||
under the "Angle Coeffs" section of a data file, the line that
|
under the "Angle Coeffs" section of a data file, the line that
|
||||||
corresponds to the 1st example above would be listed as
|
corresponds to the 1st example above would be listed as
|
||||||
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
1 300.0 107.0
|
1 300.0 107.0
|
||||||
@ -68,10 +64,8 @@ rule, in that an additional argument is used in the input script to
|
|||||||
allow specification of the cross-term coefficients. See its
|
allow specification of the cross-term coefficients. See its
|
||||||
doc page for details.
|
doc page for details.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
The list of all angle styles defined in LAMMPS is given on the
|
The list of all angle styles defined in LAMMPS is given on the
|
||||||
:doc:`angle_style <angle_style>` doc page. They are also listed in more
|
:doc:`angle_style <angle_style>` doc page. They are also listed in more
|
||||||
compact form on the :ref:`Commands angle <angle>` doc
|
compact form on the :ref:`Commands angle <angle>` doc
|
||||||
@ -81,14 +75,11 @@ On either of those pages, click on the style to display the formula it
|
|||||||
computes and its coefficients as specified by the associated
|
computes and its coefficients as specified by the associated
|
||||||
:doc:`angle_coeff <angle_coeff>` command.
|
:doc:`angle_coeff <angle_coeff>` command.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
This command must come after the simulation box is defined by a
|
This command must come after the simulation box is defined by a
|
||||||
:doc:`read_data <read_data>`, :doc:`read_restart <read_restart>`, or
|
:doc:`read_data <read_data>`, :doc:`read_restart <read_restart>`, or
|
||||||
:doc:`create_box <create_box>` command.
|
:doc:`create_box <create_box>` command.
|
||||||
|
|||||||
@ -12,7 +12,6 @@ angle_style cosine/kk command
|
|||||||
Syntax
|
Syntax
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine
|
angle_style cosine
|
||||||
@ -20,7 +19,6 @@ Syntax
|
|||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine
|
angle_style cosine
|
||||||
@ -35,7 +33,6 @@ The *cosine* angle style uses the potential
|
|||||||
|
|
||||||
E = K [1 + \cos(\theta)]
|
E = K [1 + \cos(\theta)]
|
||||||
|
|
||||||
|
|
||||||
where :math:`K` is defined for each angle type.
|
where :math:`K` is defined for each angle type.
|
||||||
|
|
||||||
The following coefficients must be defined for each angle type via the
|
The following coefficients must be defined for each angle type via the
|
||||||
@ -45,10 +42,8 @@ or :doc:`read_restart <read_restart>` commands:
|
|||||||
|
|
||||||
* :math:`K` (energy)
|
* :math:`K` (energy)
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
||||||
functionally the same as the corresponding style without the suffix.
|
functionally the same as the corresponding style without the suffix.
|
||||||
They have been optimized to run faster, depending on your available
|
They have been optimized to run faster, depending on your available
|
||||||
@ -67,14 +62,11 @@ by including their suffix, or you can use the :doc:`-suffix command-line switch
|
|||||||
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
||||||
for more info.
|
for more info.
|
||||||
|
|||||||
@ -6,7 +6,6 @@ angle_style cosine/buck6d command
|
|||||||
Syntax
|
Syntax
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/buck6d
|
angle_style cosine/buck6d
|
||||||
@ -14,7 +13,6 @@ Syntax
|
|||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/buck6d
|
angle_style cosine/buck6d
|
||||||
@ -52,14 +50,11 @@ with the :doc:`pair_style buck6d <pair_buck6d_coul_gauss>` styles and needs
|
|||||||
the :doc:`special_bonds <special_bonds>` 1-3 interactions to be weighted
|
the :doc:`special_bonds <special_bonds>` 1-3 interactions to be weighted
|
||||||
0.0 to prevent double counting.
|
0.0 to prevent double counting.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
*cosine/buck6d* can only be used in combination with the
|
*cosine/buck6d* can only be used in combination with the
|
||||||
:doc:`pair_style buck6d <pair_buck6d_coul_gauss>` style and with a
|
:doc:`pair_style buck6d <pair_buck6d_coul_gauss>` style and with a
|
||||||
:doc:`special_bonds <special_bonds>` 0.0 weighting of 1-3 interactions.
|
:doc:`special_bonds <special_bonds>` 0.0 weighting of 1-3 interactions.
|
||||||
|
|||||||
@ -9,7 +9,6 @@ angle_style cosine/delta/omp command
|
|||||||
Syntax
|
Syntax
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/delta
|
angle_style cosine/delta
|
||||||
@ -17,7 +16,6 @@ Syntax
|
|||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/delta
|
angle_style cosine/delta
|
||||||
@ -32,7 +30,6 @@ The *cosine/delta* angle style uses the potential
|
|||||||
|
|
||||||
E = K [1 - \cos(\theta - \theta_0)]
|
E = K [1 - \cos(\theta - \theta_0)]
|
||||||
|
|
||||||
|
|
||||||
where :math:`\theta_0` is the equilibrium value of the angle, and :math:`K` is a
|
where :math:`\theta_0` is the equilibrium value of the angle, and :math:`K` is a
|
||||||
prefactor. Note that the usual 1/2 factor is included in :math:`K`.
|
prefactor. Note that the usual 1/2 factor is included in :math:`K`.
|
||||||
|
|
||||||
@ -47,10 +44,8 @@ or :doc:`read_restart <read_restart>` commands:
|
|||||||
:math:`\theta_0` is specified in degrees, but LAMMPS converts it to radians
|
:math:`\theta_0` is specified in degrees, but LAMMPS converts it to radians
|
||||||
internally.
|
internally.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
||||||
functionally the same as the corresponding style without the suffix.
|
functionally the same as the corresponding style without the suffix.
|
||||||
They have been optimized to run faster, depending on your available
|
They have been optimized to run faster, depending on your available
|
||||||
@ -69,14 +64,11 @@ by including their suffix, or you can use the :doc:`-suffix command-line switch
|
|||||||
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
||||||
for more info.
|
for more info.
|
||||||
|
|||||||
@ -9,7 +9,6 @@ angle_style cosine/periodic/omp command
|
|||||||
Syntax
|
Syntax
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/periodic
|
angle_style cosine/periodic
|
||||||
@ -17,7 +16,6 @@ Syntax
|
|||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/periodic
|
angle_style cosine/periodic
|
||||||
@ -36,7 +34,6 @@ center:
|
|||||||
|
|
||||||
E = C \left[ 1 - B(-1)^n\cos\left( n\theta\right) \right]
|
E = C \left[ 1 - B(-1)^n\cos\left( n\theta\right) \right]
|
||||||
|
|
||||||
|
|
||||||
where :math:`C`, :math:`B` and :math:`n` are coefficients defined for each angle type.
|
where :math:`C`, :math:`B` and :math:`n` are coefficients defined for each angle type.
|
||||||
|
|
||||||
See :ref:`(Mayo) <cosine-Mayo>` for a description of the DREIDING force field
|
See :ref:`(Mayo) <cosine-Mayo>` for a description of the DREIDING force field
|
||||||
@ -55,10 +52,8 @@ constant :math:`K = \frac{C}{n^2}`. When :math:`B = 1`, it leads to a minimum f
|
|||||||
linear geometry. When :math:`B = -1`, it leads to a maximum for the linear
|
linear geometry. When :math:`B = -1`, it leads to a maximum for the linear
|
||||||
geometry.
|
geometry.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
||||||
functionally the same as the corresponding style without the suffix.
|
functionally the same as the corresponding style without the suffix.
|
||||||
They have been optimized to run faster, depending on your available
|
They have been optimized to run faster, depending on your available
|
||||||
@ -77,14 +72,11 @@ by including their suffix, or you can use the :doc:`-suffix command-line switch
|
|||||||
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
||||||
for more info.
|
for more info.
|
||||||
@ -96,13 +88,9 @@ Related commands
|
|||||||
|
|
||||||
**Default:** none
|
**Default:** none
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
.. _cosine-Mayo:
|
.. _cosine-Mayo:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
**(Mayo)** Mayo, Olfason, Goddard III, J Phys Chem, 94, 8897-8909
|
**(Mayo)** Mayo, Olfason, Goddard III, J Phys Chem, 94, 8897-8909
|
||||||
(1990).
|
(1990).
|
||||||
|
|||||||
@ -9,7 +9,6 @@ angle_style cosine/shift/omp command
|
|||||||
Syntax
|
Syntax
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/shift
|
angle_style cosine/shift
|
||||||
@ -17,7 +16,6 @@ Syntax
|
|||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/shift
|
angle_style cosine/shift
|
||||||
@ -32,7 +30,6 @@ The *cosine/shift* angle style uses the potential
|
|||||||
|
|
||||||
E = -\frac{U_{\text{min}}}{2} \left[ 1 + \cos(\theta-\theta_0) \right]
|
E = -\frac{U_{\text{min}}}{2} \left[ 1 + \cos(\theta-\theta_0) \right]
|
||||||
|
|
||||||
|
|
||||||
where :math:`\theta_0` is the equilibrium angle. The potential is bounded
|
where :math:`\theta_0` is the equilibrium angle. The potential is bounded
|
||||||
between :math:`-U_{\text{min}}` and zero. In the neighborhood of the minimum
|
between :math:`-U_{\text{min}}` and zero. In the neighborhood of the minimum
|
||||||
:math:`E = - U_{\text{min}} + U_{\text{min}}/4(\theta - \theta_0)^2` hence
|
:math:`E = - U_{\text{min}} + U_{\text{min}}/4(\theta - \theta_0)^2` hence
|
||||||
@ -46,10 +43,8 @@ or :doc:`read_restart <read_restart>` commands:
|
|||||||
* :math:`U_{\text{min}}` (energy)
|
* :math:`U_{\text{min}}` (energy)
|
||||||
* :math:`\theta` (angle)
|
* :math:`\theta` (angle)
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
||||||
functionally the same as the corresponding style without the suffix.
|
functionally the same as the corresponding style without the suffix.
|
||||||
They have been optimized to run faster, depending on your available
|
They have been optimized to run faster, depending on your available
|
||||||
@ -68,14 +63,11 @@ by including their suffix, or you can use the :doc:`-suffix command-line switch
|
|||||||
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package.
|
USER-MISC package.
|
||||||
|
|
||||||
|
|||||||
@ -9,7 +9,6 @@ angle_style cosine/shift/exp/omp command
|
|||||||
Syntax
|
Syntax
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/shift/exp
|
angle_style cosine/shift/exp
|
||||||
@ -17,7 +16,6 @@ Syntax
|
|||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/shift/exp
|
angle_style cosine/shift/exp
|
||||||
@ -56,10 +54,8 @@ or :doc:`read_restart <read_restart>` commands:
|
|||||||
* :math:`\theta` (angle)
|
* :math:`\theta` (angle)
|
||||||
* :math:`A` (real number)
|
* :math:`A` (real number)
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
||||||
functionally the same as the corresponding style without the suffix.
|
functionally the same as the corresponding style without the suffix.
|
||||||
They have been optimized to run faster, depending on your available
|
They have been optimized to run faster, depending on your available
|
||||||
@ -78,14 +74,11 @@ by including their suffix, or you can use the :doc:`-suffix command-line switch
|
|||||||
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
||||||
page for more info.
|
page for more info.
|
||||||
|
|||||||
@ -9,7 +9,6 @@ angle_style cosine/squared/omp command
|
|||||||
Syntax
|
Syntax
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/squared
|
angle_style cosine/squared
|
||||||
@ -17,7 +16,6 @@ Syntax
|
|||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
angle_style cosine/squared
|
angle_style cosine/squared
|
||||||
@ -32,7 +30,6 @@ The *cosine/squared* angle style uses the potential
|
|||||||
|
|
||||||
E = K [\cos(\theta) - \cos(\theta_0)]^2
|
E = K [\cos(\theta) - \cos(\theta_0)]^2
|
||||||
|
|
||||||
|
|
||||||
where :math:`\theta_0` is the equilibrium value of the angle, and :math:`K` is a
|
where :math:`\theta_0` is the equilibrium value of the angle, and :math:`K` is a
|
||||||
prefactor. Note that the usual 1/2 factor is included in :math:`K`.
|
prefactor. Note that the usual 1/2 factor is included in :math:`K`.
|
||||||
|
|
||||||
@ -47,10 +44,8 @@ or :doc:`read_restart <read_restart>` commands:
|
|||||||
:math:`\theta_0` is specified in degrees, but LAMMPS converts it to radians
|
:math:`\theta_0` is specified in degrees, but LAMMPS converts it to radians
|
||||||
internally.
|
internally.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
||||||
functionally the same as the corresponding style without the suffix.
|
functionally the same as the corresponding style without the suffix.
|
||||||
They have been optimized to run faster, depending on your available
|
They have been optimized to run faster, depending on your available
|
||||||
@ -69,14 +64,11 @@ by including their suffix, or you can use the :doc:`-suffix command-line switch
|
|||||||
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
||||||
for more info.
|
for more info.
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user