Merge remote-tracking branch 'origin/master' into doc_versions
This commit is contained in:
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -2,3 +2,4 @@
|
|||||||
.gitignore export-ignore
|
.gitignore export-ignore
|
||||||
.github export-ignore
|
.github export-ignore
|
||||||
.lgtm.yml export-ignore
|
.lgtm.yml export-ignore
|
||||||
|
SECURITY.md export-ignore
|
||||||
|
|||||||
16
.github/CODEOWNERS
vendored
16
.github/CODEOWNERS
vendored
@ -13,29 +13,37 @@ lib/kim/* @ellio167
|
|||||||
lib/mesont/* @iafoss
|
lib/mesont/* @iafoss
|
||||||
|
|
||||||
# whole packages
|
# whole packages
|
||||||
src/COMPRESS/* @akohlmey
|
src/COMPRESS/* @rbberger
|
||||||
src/GPU/* @ndtrung81
|
src/GPU/* @ndtrung81
|
||||||
src/KOKKOS/* @stanmoore1
|
src/KOKKOS/* @stanmoore1
|
||||||
src/KIM/* @ellio167
|
src/KIM/* @ellio167
|
||||||
src/LATTE/* @cnegre
|
src/LATTE/* @cnegre
|
||||||
src/MESSAGE/* @sjplimp
|
src/MESSAGE/* @sjplimp
|
||||||
|
src/MLIAP/* @athomps
|
||||||
|
src/SNAP/* @athomps
|
||||||
src/SPIN/* @julient31
|
src/SPIN/* @julient31
|
||||||
|
src/USER-BROWNIAN/* @samueljmcameron
|
||||||
src/USER-CGDNA/* @ohenrich
|
src/USER-CGDNA/* @ohenrich
|
||||||
src/USER-CGSDK/* @akohlmey
|
src/USER-CGSDK/* @akohlmey
|
||||||
src/USER-COLVARS/* @giacomofiorin
|
src/USER-COLVARS/* @giacomofiorin
|
||||||
|
src/USER-FEP/* @agiliopadua
|
||||||
|
src/USER-HDNNP/* @singraber
|
||||||
src/USER-INTEL/* @wmbrownintel
|
src/USER-INTEL/* @wmbrownintel
|
||||||
src/USER-MANIFOLD/* @Pakketeretet2
|
src/USER-MANIFOLD/* @Pakketeretet2
|
||||||
|
src/USER-MDI/* @taylor-a-barnes
|
||||||
src/USER-MEAMC/* @martok
|
src/USER-MEAMC/* @martok
|
||||||
src/USER-MESONT/* @iafoss
|
src/USER-MESONT/* @iafoss
|
||||||
src/USER-MOFFF/* @hheenen
|
src/USER-MOFFF/* @hheenen
|
||||||
src/USER-MOLFILE/* @akohlmey
|
src/USER-MOLFILE/* @akohlmey
|
||||||
src/USER-NETCDF/* @pastewka
|
src/USER-NETCDF/* @pastewka
|
||||||
|
src/USER-PACE/* @yury-lysogorskiy
|
||||||
src/USER-PLUMED/* @gtribello
|
src/USER-PLUMED/* @gtribello
|
||||||
src/USER-PHONON/* @lingtikong
|
src/USER-PHONON/* @lingtikong
|
||||||
src/USER-PTM/* @pmla
|
src/USER-PTM/* @pmla
|
||||||
src/USER-OMP/* @akohlmey
|
src/USER-OMP/* @akohlmey
|
||||||
src/USER-QMMM/* @akohlmey
|
src/USER-QMMM/* @akohlmey
|
||||||
src/USER-REAXC/* @hasanmetin
|
src/USER-REAXC/* @hasanmetin
|
||||||
|
src/USER-REACTION/* @jrgissing
|
||||||
src/USER-SCAFACOS/* @rhalver
|
src/USER-SCAFACOS/* @rhalver
|
||||||
src/USER-TALLY/* @akohlmey
|
src/USER-TALLY/* @akohlmey
|
||||||
src/USER-UEF/* @danicholson
|
src/USER-UEF/* @danicholson
|
||||||
@ -47,7 +55,6 @@ src/GPU/pair_vashishta_gpu.* @andeplane
|
|||||||
src/KOKKOS/pair_vashishta_kokkos.* @andeplane
|
src/KOKKOS/pair_vashishta_kokkos.* @andeplane
|
||||||
src/MANYBODY/pair_vashishta_table.* @andeplane
|
src/MANYBODY/pair_vashishta_table.* @andeplane
|
||||||
src/MANYBODY/pair_atm.* @sergeylishchuk
|
src/MANYBODY/pair_atm.* @sergeylishchuk
|
||||||
src/USER-REACTION/fix_bond_react.* @jrgissing
|
|
||||||
src/USER-MISC/*_grem.* @dstelter92
|
src/USER-MISC/*_grem.* @dstelter92
|
||||||
src/USER-MISC/compute_stress_mop*.* @RomainVermorel
|
src/USER-MISC/compute_stress_mop*.* @RomainVermorel
|
||||||
|
|
||||||
@ -122,6 +129,8 @@ tools/emacs/* @HaoZeke
|
|||||||
tools/singularity/* @akohlmey @rbberger
|
tools/singularity/* @akohlmey @rbberger
|
||||||
tools/code_standard/* @rbberger
|
tools/code_standard/* @rbberger
|
||||||
tools/valgrind/* @akohlmey
|
tools/valgrind/* @akohlmey
|
||||||
|
tools/swig/* @akohlmey
|
||||||
|
tools/offline/* @rbberger
|
||||||
|
|
||||||
# tests
|
# tests
|
||||||
unittest/* @akohlmey @rbberger
|
unittest/* @akohlmey @rbberger
|
||||||
@ -130,7 +139,7 @@ unittest/* @akohlmey @rbberger
|
|||||||
cmake/* @junghans @rbberger
|
cmake/* @junghans @rbberger
|
||||||
cmake/Modules/Packages/USER-COLVARS.cmake @junghans @rbberger @giacomofiorin
|
cmake/Modules/Packages/USER-COLVARS.cmake @junghans @rbberger @giacomofiorin
|
||||||
cmake/Modules/Packages/KIM.cmake @junghans @rbberger @ellio167
|
cmake/Modules/Packages/KIM.cmake @junghans @rbberger @ellio167
|
||||||
cmake/presets/*.cmake @junghans @rbberger @akohlmey
|
cmake/presets/*.cmake @akohlmey
|
||||||
|
|
||||||
# python
|
# python
|
||||||
python/* @rbberger
|
python/* @rbberger
|
||||||
@ -142,6 +151,7 @@ fortran/* @akohlmey
|
|||||||
doc/utils/*/* @rbberger
|
doc/utils/*/* @rbberger
|
||||||
doc/Makefile @rbberger
|
doc/Makefile @rbberger
|
||||||
doc/README @rbberger
|
doc/README @rbberger
|
||||||
|
examples/plugin/* @akohlmey
|
||||||
|
|
||||||
# for releases
|
# for releases
|
||||||
src/version.h @sjplimp
|
src/version.h @sjplimp
|
||||||
|
|||||||
20
README
20
README
@ -14,10 +14,10 @@ LAMMPS is a classical molecular dynamics simulation code designed to
|
|||||||
run efficiently on parallel computers. It was developed at Sandia
|
run efficiently on parallel computers. It was developed at Sandia
|
||||||
National Laboratories, a US Department of Energy facility, with
|
National Laboratories, a US Department of Energy facility, with
|
||||||
funding from the DOE. It is an open-source code, distributed freely
|
funding from the DOE. It is an open-source code, distributed freely
|
||||||
under the terms of the GNU Public License (GPL).
|
under the terms of the GNU Public License (GPL) version 2.
|
||||||
|
|
||||||
The primary author of the code is Steve Plimpton, who can be emailed
|
The primary author of the code is Steve Plimpton, who can be emailed
|
||||||
at sjplimp@sandia.gov. The LAMMPS WWW Site at lammps.sandia.gov has
|
at sjplimp@sandia.gov. The LAMMPS WWW Site at www.lammps.org has
|
||||||
more information about the code and its uses.
|
more information about the code and its uses.
|
||||||
|
|
||||||
The LAMMPS distribution includes the following files and directories:
|
The LAMMPS distribution includes the following files and directories:
|
||||||
@ -37,14 +37,14 @@ tools pre- and post-processing tools
|
|||||||
|
|
||||||
Point your browser at any of these files to get started:
|
Point your browser at any of these files to get started:
|
||||||
|
|
||||||
https://lammps.sandia.gov/doc/Manual.html LAMMPS manual
|
https://docs.lammps.org/Manual.html LAMMPS manual
|
||||||
https://lammps.sandia.gov/doc/Intro.html hi-level introduction
|
https://docs.lammps.org/Intro.html hi-level introduction
|
||||||
https://lammps.sandia.gov/doc/Build.html how to build LAMMPS
|
https://docs.lammps.org/Build.html how to build LAMMPS
|
||||||
https://lammps.sandia.gov/doc/Run_head.html how to run LAMMPS
|
https://docs.lammps.org/Run_head.html how to run LAMMPS
|
||||||
https://lammps.sandia.gov/doc/Commands_all.html Table of available commands
|
https://docs.lammps.org/Commands_all.html Table of available commands
|
||||||
https://lammps.sandia.gov/doc/Library.html LAMMPS library interfaces
|
https://docs.lammps.org/Library.html LAMMPS library interfaces
|
||||||
https://lammps.sandia.gov/doc/Modify.html how to modify and extend LAMMPS
|
https://docs.lammps.org/Modify.html how to modify and extend LAMMPS
|
||||||
https://lammps.sandia.gov/doc/Developer.html LAMMPS developer info
|
https://docs.lammps.org/Developer.html LAMMPS developer info
|
||||||
|
|
||||||
You can also create these doc pages locally:
|
You can also create these doc pages locally:
|
||||||
|
|
||||||
|
|||||||
35
SECURITY.md
Normal file
35
SECURITY.md
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
# Security Policy
|
||||||
|
|
||||||
|
LAMMPS is designed as a user-level application to conduct computer
|
||||||
|
simulations for research using classical mechanics. As such LAMMPS
|
||||||
|
depends to some degrees on users providing correctly formatted input and
|
||||||
|
LAMMPS needs to read and write files based on uncontrolled user input.
|
||||||
|
As a parallel application for use in high-performance computing
|
||||||
|
environments, performance critical steps are also done without checking
|
||||||
|
data.
|
||||||
|
|
||||||
|
LAMMPS also is interfaced to a number of external libraries, including
|
||||||
|
libraries with experimental research software, that are not validated
|
||||||
|
and tested by the LAMMPS developers, so it is easy to import bad
|
||||||
|
behavior from calling functions in one of those libraries.
|
||||||
|
|
||||||
|
Thus is is quite easy to crash LAMMPS through malicious input and do all
|
||||||
|
kinds of filesystem manipulations. And because of that LAMMPS should
|
||||||
|
**NEVER** be compiled or **run** as superuser, either from a "root" or
|
||||||
|
"administrator" account directly or indirectly via "sudo" or "su".
|
||||||
|
|
||||||
|
Therefore what could be seen as a security vulnerability is usually
|
||||||
|
either a user mistake or a bug in the code. Bugs can be reported in
|
||||||
|
the LAMMPS project
|
||||||
|
[issue tracker on GitHub](https://github.com/lammps/lammps/issues).
|
||||||
|
|
||||||
|
|
||||||
|
# Version Updates
|
||||||
|
|
||||||
|
LAMMPS follows continuous release development model. We aim to keep all
|
||||||
|
release versions (stable or patch) fully functional and employ a variety
|
||||||
|
of automatic testing procedures to detect failures of existing
|
||||||
|
functionality from adding new features before releases are made. Thus
|
||||||
|
bugfixes and updates are only integrated into the current development
|
||||||
|
branch and thus the next (patch) release and users are recommended to
|
||||||
|
update regularly.
|
||||||
@ -1,7 +1,7 @@
|
|||||||
These are input scripts used to run benchmark tests for many of the
|
These are input scripts used to run benchmark tests for many of the
|
||||||
interatomic potentials in LAMMPS. The results of running these
|
interatomic potentials in LAMMPS. The results of running these
|
||||||
scripts on different machines are shown on the Potentials section of
|
scripts on different machines are shown on the Potentials section of
|
||||||
the Benchmark page of the LAMMPS WWW site (lammps.sandia.gov/bench).
|
the Benchmark page of the LAMMPS WWW site (https://www.lammps.org/bench.html).
|
||||||
|
|
||||||
Examples are shown below of how to run these scripts. Log files for
|
Examples are shown below of how to run these scripts. Log files for
|
||||||
running them on 1 and 4 processors of a Linux box are included in the
|
running them on 1 and 4 processors of a Linux box are included in the
|
||||||
|
|||||||
@ -2,7 +2,7 @@ LAMMPS benchmark problems
|
|||||||
|
|
||||||
This directory contains 5 benchmark problems which are discussed in
|
This directory contains 5 benchmark problems which are discussed in
|
||||||
the Benchmark section of the LAMMPS documentation, and on the
|
the Benchmark section of the LAMMPS documentation, and on the
|
||||||
Benchmark page of the LAMMPS WWW site (lammps.sandia.gov/bench).
|
Benchmark page of the LAMMPS WWW site (https://www.lammps.org/bench.html).
|
||||||
|
|
||||||
This directory also has several sub-directories:
|
This directory also has several sub-directories:
|
||||||
|
|
||||||
@ -11,7 +11,7 @@ KEPLER benchmark scripts for GPU cluster with Kepler GPUs
|
|||||||
POTENTIALS benchmarks scripts for various potentials in LAMMPS
|
POTENTIALS benchmarks scripts for various potentials in LAMMPS
|
||||||
|
|
||||||
The results for all of these benchmarks are displayed and discussed on
|
The results for all of these benchmarks are displayed and discussed on
|
||||||
the Benchmark page of the LAMMPS WWW site: lammps.sandia.gov/bench.
|
the Benchmark page of the LAMMPS WWW site: https://www.lammps.org/bench.html
|
||||||
|
|
||||||
The remainder of this file refers to the 5 problems in the top-level
|
The remainder of this file refers to the 5 problems in the top-level
|
||||||
of this directory and how to run them on CPUs, either in serial or
|
of this directory and how to run them on CPUs, either in serial or
|
||||||
|
|||||||
@ -7,6 +7,11 @@ cmake_minimum_required(VERSION 3.10)
|
|||||||
if(POLICY CMP0074)
|
if(POLICY CMP0074)
|
||||||
cmake_policy(SET CMP0074 NEW)
|
cmake_policy(SET CMP0074 NEW)
|
||||||
endif()
|
endif()
|
||||||
|
# set policy to silence warnings about missing executable permissions in
|
||||||
|
# pythonx.y-config when cross-compiling. review occasionally if it may be set to NEW
|
||||||
|
if (POLICY CMP0109)
|
||||||
|
cmake_policy(SET CMP0109 OLD)
|
||||||
|
endif()
|
||||||
########################################
|
########################################
|
||||||
|
|
||||||
project(lammps CXX)
|
project(lammps CXX)
|
||||||
@ -104,6 +109,12 @@ endif()
|
|||||||
option(BUILD_TOOLS "Build and install LAMMPS tools (msi2lmp, binary2txt, chain)" OFF)
|
option(BUILD_TOOLS "Build and install LAMMPS tools (msi2lmp, binary2txt, chain)" OFF)
|
||||||
option(BUILD_LAMMPS_SHELL "Build and install the LAMMPS shell" OFF)
|
option(BUILD_LAMMPS_SHELL "Build and install the LAMMPS shell" OFF)
|
||||||
|
|
||||||
|
# allow enabling clang-tidy for C++ files
|
||||||
|
set(ENABLE_CLANG_TIDY OFF CACHE BOOL "Include clang-tidy processing when compiling")
|
||||||
|
if(ENABLE_CLANG_TIDY)
|
||||||
|
set(CMAKE_CXX_CLANG_TIDY "clang-tidy;-checks=*-header-filter=.*" CACHE STRING "")
|
||||||
|
endif()
|
||||||
|
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
file(GLOB ALL_SOURCES ${LAMMPS_SOURCE_DIR}/[^.]*.cpp)
|
file(GLOB ALL_SOURCES ${LAMMPS_SOURCE_DIR}/[^.]*.cpp)
|
||||||
file(GLOB MAIN_SOURCES ${LAMMPS_SOURCE_DIR}/main.cpp)
|
file(GLOB MAIN_SOURCES ${LAMMPS_SOURCE_DIR}/main.cpp)
|
||||||
@ -121,7 +132,7 @@ set(STANDARD_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS DIPOLE
|
|||||||
PLUGIN QEQ REPLICA RIGID SHOCK SPIN SNAP SRD KIM PYTHON MSCG MPIIO VORONOI
|
PLUGIN QEQ REPLICA RIGID SHOCK SPIN SNAP SRD KIM PYTHON MSCG MPIIO VORONOI
|
||||||
USER-ADIOS USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-MESODPD USER-CGSDK
|
USER-ADIOS USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-MESODPD USER-CGSDK
|
||||||
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-H5MD
|
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-H5MD
|
||||||
USER-LB USER-MANIFOLD USER-MEAMC USER-MESONT USER-MGPT USER-MISC USER-MOFFF
|
USER-LB USER-MANIFOLD USER-MDI USER-MEAMC USER-MESONT USER-MGPT USER-MISC USER-MOFFF
|
||||||
USER-MOLFILE USER-NETCDF USER-PHONON USER-PLUMED USER-PTM USER-QTB
|
USER-MOLFILE USER-NETCDF USER-PHONON USER-PLUMED USER-PTM USER-QTB
|
||||||
USER-REACTION USER-REAXC USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ USER-SPH
|
USER-REACTION USER-REAXC USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ USER-SPH
|
||||||
USER-TALLY USER-UEF USER-VTK USER-QUIP USER-QMMM USER-YAFF USER-PACE USER-BROWNIAN)
|
USER-TALLY USER-UEF USER-VTK USER-QUIP USER-QMMM USER-YAFF USER-PACE USER-BROWNIAN)
|
||||||
@ -324,8 +335,8 @@ else()
|
|||||||
set(CUDA_REQUEST_PIC)
|
set(CUDA_REQUEST_PIC)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
foreach(PKG_WITH_INCL KSPACE PYTHON MLIAP VORONOI USER-COLVARS USER-MOLFILE USER-NETCDF USER-PLUMED USER-QMMM
|
foreach(PKG_WITH_INCL KSPACE PYTHON MLIAP VORONOI USER-COLVARS USER-MDI USER-MOLFILE USER-NETCDF USER-PLUMED
|
||||||
USER-QUIP USER-SCAFACOS USER-SMD USER-VTK KIM LATTE MESSAGE MSCG COMPRESS USER-PACE)
|
USER-QMMM USER-QUIP USER-SCAFACOS USER-SMD USER-VTK KIM LATTE MESSAGE MSCG COMPRESS USER-PACE)
|
||||||
if(PKG_${PKG_WITH_INCL})
|
if(PKG_${PKG_WITH_INCL})
|
||||||
include(Packages/${PKG_WITH_INCL})
|
include(Packages/${PKG_WITH_INCL})
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@ -15,6 +15,11 @@ if(Python3_EXECUTABLE)
|
|||||||
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/whitespace.py .
|
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/whitespace.py .
|
||||||
WORKING_DIRECTORY ${LAMMPS_DIR}
|
WORKING_DIRECTORY ${LAMMPS_DIR}
|
||||||
COMMENT "Check for whitespace errors")
|
COMMENT "Check for whitespace errors")
|
||||||
|
add_custom_target(
|
||||||
|
check-homepage
|
||||||
|
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/homepage.py .
|
||||||
|
WORKING_DIRECTORY ${LAMMPS_DIR}
|
||||||
|
COMMENT "Check for homepage URL errors")
|
||||||
add_custom_target(
|
add_custom_target(
|
||||||
check-permissions
|
check-permissions
|
||||||
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/permissions.py .
|
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/permissions.py .
|
||||||
@ -25,6 +30,11 @@ if(Python3_EXECUTABLE)
|
|||||||
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/whitespace.py -f .
|
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/whitespace.py -f .
|
||||||
WORKING_DIRECTORY ${LAMMPS_DIR}
|
WORKING_DIRECTORY ${LAMMPS_DIR}
|
||||||
COMMENT "Fix whitespace errors")
|
COMMENT "Fix whitespace errors")
|
||||||
|
add_custom_target(
|
||||||
|
fix-homepage
|
||||||
|
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/homepage.py -f .
|
||||||
|
WORKING_DIRECTORY ${LAMMPS_DIR}
|
||||||
|
COMMENT "Fix homepage URL errors")
|
||||||
add_custom_target(
|
add_custom_target(
|
||||||
fix-permissions
|
fix-permissions
|
||||||
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/permissions.py -f .
|
${Python3_EXECUTABLE} ${LAMMPS_TOOLS_DIR}/coding_standard/permissions.py -f .
|
||||||
|
|||||||
118
cmake/Modules/Packages/USER-MDI.cmake
Normal file
118
cmake/Modules/Packages/USER-MDI.cmake
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
find_package(mdi QUIET)
|
||||||
|
if(${mdi_FOUND})
|
||||||
|
set(DOWNLOAD_MDI_DEFAULT OFF)
|
||||||
|
else()
|
||||||
|
set(DOWNLOAD_MDI_DEFAULT ON)
|
||||||
|
endif()
|
||||||
|
option(DOWNLOAD_MDI "Download and compile the MDI library instead of using an already installed one" ${DOWNLOAD_MDI_DEFAULT})
|
||||||
|
|
||||||
|
if(DOWNLOAD_MDI)
|
||||||
|
message(STATUS "MDI download requested - we will build our own")
|
||||||
|
set(MDI_URL "https://github.com/MolSSI-MDI/MDI_Library/archive/v1.2.9.tar.gz" CACHE STRING "URL for MDI tarball")
|
||||||
|
set(MDI_MD5 "ddfa46d6ee15b4e59cfd527ec7212184" CACHE STRING "MD5 checksum for MDI tarball")
|
||||||
|
mark_as_advanced(MDI_URL)
|
||||||
|
mark_as_advanced(MDI_MD5)
|
||||||
|
enable_language(C)
|
||||||
|
|
||||||
|
# only ON/OFF are allowed for "mpi" flag when building MDI library
|
||||||
|
# so translate boolean value of BUILD_MPI
|
||||||
|
# always disable MPI when cross-compiling to Windows.
|
||||||
|
if((BUILD_MPI) AND NOT((CMAKE_SYSTEM_NAME STREQUAL Windows) AND CMAKE_CROSSCOMPILING))
|
||||||
|
set(MDI_USE_MPI ON)
|
||||||
|
else()
|
||||||
|
set(MDI_USE_MPI OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# detect if we have python development support and thus can enable python plugins
|
||||||
|
set(MDI_USE_PYTHON_PLUGINS OFF)
|
||||||
|
if(CMAKE_VERSION VERSION_LESS 3.12)
|
||||||
|
find_package(PythonLibs QUIET) # Deprecated since version 3.12
|
||||||
|
if (PYTHONLIBS_FOUND)
|
||||||
|
set(MDI_USE_PYTHON_PLUGINS ON)
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
find_package(Python QUIET COMPONENTS Development)
|
||||||
|
if (Python_Development_FOUND)
|
||||||
|
set(MDI_USE_PYTHON_PLUGINS ON)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# download/ build MDI library
|
||||||
|
# always build static library with -fpic
|
||||||
|
# support cross-compilation and ninja-build
|
||||||
|
include(ExternalProject)
|
||||||
|
ExternalProject_Add(mdi_build
|
||||||
|
URL ${MDI_URL}
|
||||||
|
URL_MD5 ${MDI_MD5}
|
||||||
|
CMAKE_ARGS ${CMAKE_REQUEST_PIC}
|
||||||
|
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
|
||||||
|
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
|
||||||
|
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
||||||
|
-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
|
||||||
|
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
|
||||||
|
-Dlanguage=C
|
||||||
|
-Dlibtype=STATIC
|
||||||
|
-Dmpi=${MDI_USE_MPI}
|
||||||
|
-Dpython_plugins=${MDI_USE_PYTHON_PLUGINS}
|
||||||
|
UPDATE_COMMAND ""
|
||||||
|
INSTALL_COMMAND ""
|
||||||
|
BUILD_BYPRODUCTS "<BINARY_DIR>/MDI_Library/libmdi.a"
|
||||||
|
)
|
||||||
|
|
||||||
|
# where is the compiled library?
|
||||||
|
ExternalProject_get_property(mdi_build BINARY_DIR)
|
||||||
|
set(MDI_BINARY_DIR "${BINARY_DIR}/MDI_Library")
|
||||||
|
# workaround for older CMake versions
|
||||||
|
file(MAKE_DIRECTORY ${MDI_BINARY_DIR})
|
||||||
|
|
||||||
|
# create imported target for the MDI library
|
||||||
|
add_library(LAMMPS::MDI UNKNOWN IMPORTED)
|
||||||
|
add_dependencies(LAMMPS::MDI mdi_build)
|
||||||
|
set_target_properties(LAMMPS::MDI PROPERTIES
|
||||||
|
IMPORTED_LOCATION "${MDI_BINARY_DIR}/libmdi.a"
|
||||||
|
INTERFACE_INCLUDE_DIRECTORIES ${MDI_BINARY_DIR}
|
||||||
|
)
|
||||||
|
|
||||||
|
set(MDI_DEP_LIBS "")
|
||||||
|
# if compiling with python plugins we need
|
||||||
|
# to add python libraries as dependency.
|
||||||
|
if(MDI_USE_PYTHON_PLUGINS)
|
||||||
|
if(CMAKE_VERSION VERSION_LESS 3.12)
|
||||||
|
list(APPEND MDI_DEP_LIBS ${PYTHON_LIBRARIES})
|
||||||
|
else()
|
||||||
|
list(APPEND MDI_DEP_LIBS Python::Python)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
endif()
|
||||||
|
# need to add support for dlopen/dlsym, except when compiling for Windows.
|
||||||
|
if(NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||||
|
list(APPEND MDI_DEP_LIBS "${CMAKE_DL_LIBS}")
|
||||||
|
endif()
|
||||||
|
if(MDI_DEP_LIBS)
|
||||||
|
set_target_properties(LAMMPS::MDI PROPERTIES
|
||||||
|
IMPORTED_LINK_INTERFACE_LIBRARIES "${MDI_DEP_LIBS}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
target_link_libraries(lammps PRIVATE LAMMPS::MDI)
|
||||||
|
target_link_libraries(lmp PRIVATE LAMMPS::MDI)
|
||||||
|
|
||||||
|
else()
|
||||||
|
|
||||||
|
find_package(mdi)
|
||||||
|
if(NOT mdi_FOUND)
|
||||||
|
message(FATAL_ERROR "MDI library not found. Help CMake to find it "
|
||||||
|
"by setting mdi_LIBRARY and mdi_INCLUDE_DIR, or set DOWNLOAD_MDI=ON "
|
||||||
|
"to download and compile it")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Link the lammps library against MDI
|
||||||
|
target_include_directories(lammps PRIVATE ${mdi_INCLUDE_DIR})
|
||||||
|
target_link_libraries(lammps PRIVATE ${mdi_LIBRARY})
|
||||||
|
|
||||||
|
# Link the lammps executable against MDI
|
||||||
|
target_include_directories(lmp PRIVATE ${mdi_INCLUDE_DIR})
|
||||||
|
target_link_libraries(lmp PRIVATE ${mdi_LIBRARY})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
target_compile_definitions(lammps PRIVATE -DLMP_USER_MDI)
|
||||||
|
target_compile_definitions(lmp PRIVATE -DLMP_USER_MDI)
|
||||||
@ -14,13 +14,12 @@ execute_process(
|
|||||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
file(GLOB PACE_EVALUATOR_INCLUDE_DIR ${CMAKE_BINARY_DIR}/lammps-user-pace-*/USER-PACE)
|
file(GLOB PACE_EVALUATOR_INCLUDE_DIR ${CMAKE_BINARY_DIR}/lammps-user-pace-*/USER-PACE)
|
||||||
file(GLOB PACE_EVALUATOR_SOURCES ${CMAKE_BINARY_DIR}/lammps-user-pace-*/USER-PACE/*.cpp)
|
file(GLOB PACE_EVALUATOR_SOURCES ${CMAKE_BINARY_DIR}/lammps-user-pace-*/USER-PACE/*.cpp)
|
||||||
list(FILTER PACE_EVALUATOR_SOURCES EXCLUDE REGEX pair_pace.cpp)
|
list(FILTER PACE_EVALUATOR_SOURCES EXCLUDE REGEX pair_pace.cpp)
|
||||||
|
|
||||||
add_library(pace STATIC ${PACE_EVALUATOR_SOURCES})
|
add_library(pace STATIC ${PACE_EVALUATOR_SOURCES})
|
||||||
set_target_properties(pace PROPERTIES OUTPUT_NAME lammps_pace${LAMMPS_MACHINE})
|
set_target_properties(pace PROPERTIES CXX_EXTENSIONS ON OUTPUT_NAME lammps_pace${LAMMPS_MACHINE})
|
||||||
target_include_directories(pace PUBLIC ${PACE_EVALUATOR_INCLUDE_DIR})
|
target_include_directories(pace PUBLIC ${PACE_EVALUATOR_INCLUDE_DIR})
|
||||||
target_link_libraries(lammps PRIVATE pace)
|
target_link_libraries(lammps PRIVATE pace)
|
||||||
|
|
||||||
|
|||||||
@ -6,15 +6,27 @@ set(YAML_MD5 "bb15429d8fb787e7d3f1c83ae129a999" CACHE STRING "MD5 checksum of li
|
|||||||
mark_as_advanced(YAML_URL)
|
mark_as_advanced(YAML_URL)
|
||||||
mark_as_advanced(YAML_MD5)
|
mark_as_advanced(YAML_MD5)
|
||||||
|
|
||||||
|
# support cross-compilation to windows
|
||||||
|
if(CMAKE_CROSSCOMPILING AND (CMAKE_SYSTEM_NAME STREQUAL "Windows"))
|
||||||
|
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86")
|
||||||
|
set(YAML_CROSS_HOST --host=i686-mingw64)
|
||||||
|
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
|
||||||
|
set(YAML_CROSS_HOST --host=x86_64-mingw64)
|
||||||
|
else()
|
||||||
|
message(FATAL_ERROR "Unsupported cross-compilation "
|
||||||
|
" for ${CMAKE_SYSTEM_NAME}/${CMAKE_SYSTEM_PROCESSOR}"
|
||||||
|
" on ${CMAKE_HOST_SYSTEM}/${CMAKE_HOST_SYSTEM_PROCESSOR}")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(libyaml
|
ExternalProject_Add(libyaml
|
||||||
URL ${YAML_URL}
|
URL ${YAML_URL}
|
||||||
URL_MD5 ${YAML_MD5}
|
URL_MD5 ${YAML_MD5}
|
||||||
SOURCE_DIR "${CMAKE_BINARY_DIR}/yaml-src"
|
SOURCE_DIR "${CMAKE_BINARY_DIR}/yaml-src"
|
||||||
BINARY_DIR "${CMAKE_BINARY_DIR}/yaml-build"
|
BINARY_DIR "${CMAKE_BINARY_DIR}/yaml-build"
|
||||||
CONFIGURE_COMMAND <SOURCE_DIR>/configure ${CONFIGURE_REQUEST_PIC}
|
CONFIGURE_COMMAND <SOURCE_DIR>/configure ${CONFIGURE_REQUEST_PIC}
|
||||||
CXX=${CMAKE_CXX_COMPILER}
|
CXX=${CMAKE_CXX_COMPILER} CC=${CMAKE_C_COMPILER}
|
||||||
CC=${CMAKE_C_COMPILER}
|
--prefix=<INSTALL_DIR> --disable-shared ${YAML_CROSS_HOST}
|
||||||
--prefix=<INSTALL_DIR> --disable-shared
|
|
||||||
BUILD_BYPRODUCTS <INSTALL_DIR>/lib/libyaml${CMAKE_STATIC_LIBRARY_SUFFIX}
|
BUILD_BYPRODUCTS <INSTALL_DIR>/lib/libyaml${CMAKE_STATIC_LIBRARY_SUFFIX}
|
||||||
TEST_COMMAND "")
|
TEST_COMMAND "")
|
||||||
|
|
||||||
|
|||||||
@ -24,7 +24,7 @@ includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
|
|||||||
|
|
||||||
Name: liblammps@LAMMPS_MACHINE@
|
Name: liblammps@LAMMPS_MACHINE@
|
||||||
Description: Large-scale Atomic/Molecular Massively Parallel Simulator Library
|
Description: Large-scale Atomic/Molecular Massively Parallel Simulator Library
|
||||||
URL: http://lammps.sandia.gov
|
URL: https://www.lammps.org
|
||||||
Version: @PROJECT_VERSION@
|
Version: @PROJECT_VERSION@
|
||||||
Requires:
|
Requires:
|
||||||
Libs: -L${libdir} -llammps@LAMMPS_MACHINE@
|
Libs: -L${libdir} -llammps@LAMMPS_MACHINE@
|
||||||
|
|||||||
@ -5,13 +5,13 @@ set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU
|
|||||||
GRANULAR KIM KOKKOS KSPACE LATTE MANYBODY MC MESSAGE MISC MLIAP MOLECULE
|
GRANULAR KIM KOKKOS KSPACE LATTE MANYBODY MC MESSAGE MISC MLIAP MOLECULE
|
||||||
MPIIO MSCG OPT PERI PLUGIN POEMS PYTHON QEQ REPLICA RIGID SHOCK SNAP SPIN
|
MPIIO MSCG OPT PERI PLUGIN POEMS PYTHON QEQ REPLICA RIGID SHOCK SNAP SPIN
|
||||||
SRD VORONOI
|
SRD VORONOI
|
||||||
USER-ADIOS USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-CGSDK USER-COLVARS
|
USER-ADIOS USER-ATC USER-AWPMD USER-BROWNIAN USER-BOCS USER-CGDNA USER-CGSDK
|
||||||
USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-H5MD USER-INTEL
|
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-H5MD
|
||||||
USER-LB USER-MANIFOLD USER-MEAMC USER-MESODPD USER-MESONT USER-MGPT
|
USER-INTEL USER-LB USER-MANIFOLD USER-MDI USER-MEAMC USER-MESODPD USER-MESONT
|
||||||
USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF USER-OMP USER-PACE USER-PHONON
|
USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF USER-OMP USER-PACE
|
||||||
USER-PLUMED USER-PTM USER-QMMM USER-QTB USER-QUIP USER-REACTION USER-REAXC
|
USER-PHONON USER-PLUMED USER-PTM USER-QMMM USER-QTB USER-QUIP USER-REACTION
|
||||||
USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ USER-SPH USER-TALLY USER-UEF
|
USER-REAXC USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ USER-SPH USER-TALLY
|
||||||
USER-VTK USER-YAFF)
|
USER-UEF USER-VTK USER-YAFF)
|
||||||
|
|
||||||
foreach(PKG ${ALL_PACKAGES})
|
foreach(PKG ${ALL_PACKAGES})
|
||||||
set(PKG_${PKG} OFF CACHE BOOL "" FORCE)
|
set(PKG_${PKG} OFF CACHE BOOL "" FORCE)
|
||||||
|
|||||||
@ -7,13 +7,13 @@ set(ALL_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU
|
|||||||
GRANULAR KIM KOKKOS KSPACE LATTE MANYBODY MC MESSAGE MISC MLIAP MOLECULE
|
GRANULAR KIM KOKKOS KSPACE LATTE MANYBODY MC MESSAGE MISC MLIAP MOLECULE
|
||||||
MPIIO MSCG OPT PERI PLUGIN POEMS PYTHON QEQ REPLICA RIGID SHOCK SNAP SPIN
|
MPIIO MSCG OPT PERI PLUGIN POEMS PYTHON QEQ REPLICA RIGID SHOCK SNAP SPIN
|
||||||
SRD VORONOI
|
SRD VORONOI
|
||||||
USER-ADIOS USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-CGSDK USER-COLVARS
|
USER-ADIOS USER-ATC USER-AWPMD USER-BROWNIAN USER-BOCS USER-CGDNA USER-CGSDK
|
||||||
USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-H5MD USER-INTEL
|
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF USER-FEP USER-H5MD
|
||||||
USER-LB USER-MANIFOLD USER-MEAMC USER-MESODPD USER-MESONT USER-MGPT
|
USER-INTEL USER-LB USER-MANIFOLD USER-MDI USER-MEAMC USER-MESODPD USER-MESONT
|
||||||
USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF USER-OMP USER-PACE USER-PHONON
|
USER-MGPT USER-MISC USER-MOFFF USER-MOLFILE USER-NETCDF USER-OMP USER-PACE
|
||||||
USER-PLUMED USER-PTM USER-QMMM USER-QTB USER-QUIP USER-REACTION USER-REAXC
|
USER-PHONON USER-PLUMED USER-PTM USER-QMMM USER-QTB USER-QUIP USER-REACTION
|
||||||
USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ USER-SPH USER-TALLY USER-UEF
|
USER-REAXC USER-SCAFACOS USER-SDPD USER-SMD USER-SMTBQ USER-SPH USER-TALLY
|
||||||
USER-VTK USER-YAFF)
|
USER-UEF USER-VTK USER-YAFF)
|
||||||
|
|
||||||
foreach(PKG ${ALL_PACKAGES})
|
foreach(PKG ${ALL_PACKAGES})
|
||||||
set(PKG_${PKG} ON CACHE BOOL "" FORCE)
|
set(PKG_${PKG} ON CACHE BOOL "" FORCE)
|
||||||
|
|||||||
@ -4,10 +4,18 @@ set(CMAKE_CXX_COMPILER "clang++" CACHE STRING "" FORCE)
|
|||||||
set(CMAKE_C_COMPILER "clang" CACHE STRING "" FORCE)
|
set(CMAKE_C_COMPILER "clang" CACHE STRING "" FORCE)
|
||||||
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -Wextra -g" CACHE STRING "" FORCE)
|
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -Wextra -g" CACHE STRING "" FORCE)
|
||||||
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
|
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_Fortran_FLAGS_DEBUG "-Wall -Wextra -g" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_Fortran_FLAGS_RELWITHDEBINFO "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_Fortran_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_C_FLAGS_DEBUG "-Wall -Wextra -g" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_C_FLAGS_RELWITHDEBINFO "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_C_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
|
||||||
set(MPI_CXX "clang++" CACHE STRING "" FORCE)
|
set(MPI_CXX "clang++" CACHE STRING "" FORCE)
|
||||||
set(MPI_CXX_COMPILER "mpicxx" CACHE STRING "" FORCE)
|
set(MPI_CXX_COMPILER "mpicxx" CACHE STRING "" FORCE)
|
||||||
unset(HAVE_OMP_H_INCLUDE CACHE)
|
|
||||||
|
|
||||||
|
unset(HAVE_OMP_H_INCLUDE CACHE)
|
||||||
set(OpenMP_C "clang" CACHE STRING "" FORCE)
|
set(OpenMP_C "clang" CACHE STRING "" FORCE)
|
||||||
set(OpenMP_C_FLAGS "-fopenmp" CACHE STRING "" FORCE)
|
set(OpenMP_C_FLAGS "-fopenmp" CACHE STRING "" FORCE)
|
||||||
set(OpenMP_C_LIB_NAMES "omp" CACHE STRING "" FORCE)
|
set(OpenMP_C_LIB_NAMES "omp" CACHE STRING "" FORCE)
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
# preset that turns on packages with automatic downloads of sources of potentials
|
# Preset that turns on packages with automatic downloads of sources or potentials.
|
||||||
# compilation of libraries like Plumed or ScaFaCoS can take a considerable amount of time.
|
# Compilation of libraries like Plumed or ScaFaCoS can take a considerable amount of time.
|
||||||
|
|
||||||
set(ALL_PACKAGES KIM LATTE MSCG VORONOI USER-PLUMED USER-SCAFACOS USER-SMD USER-MESONT)
|
set(ALL_PACKAGES KIM LATTE MSCG VORONOI USER-PLUMED USER-SCAFACOS USER-SMD USER-MESONT USER-MDI USER-PACE)
|
||||||
|
|
||||||
foreach(PKG ${ALL_PACKAGES})
|
foreach(PKG ${ALL_PACKAGES})
|
||||||
set(PKG_${PKG} ON CACHE BOOL "" FORCE)
|
set(PKG_${PKG} ON CACHE BOOL "" FORCE)
|
||||||
@ -9,9 +9,11 @@ endforeach()
|
|||||||
|
|
||||||
set(DOWNLOAD_KIM ON CACHE BOOL "" FORCE)
|
set(DOWNLOAD_KIM ON CACHE BOOL "" FORCE)
|
||||||
set(DOWNLOAD_LATTE ON CACHE BOOL "" FORCE)
|
set(DOWNLOAD_LATTE ON CACHE BOOL "" FORCE)
|
||||||
|
set(DOWNLOAD_MDI ON CACHE BOOL "" FORCE)
|
||||||
set(DOWNLOAD_MSCG ON CACHE BOOL "" FORCE)
|
set(DOWNLOAD_MSCG ON CACHE BOOL "" FORCE)
|
||||||
set(DOWNLOAD_VORO ON CACHE BOOL "" FORCE)
|
set(DOWNLOAD_VORO ON CACHE BOOL "" FORCE)
|
||||||
set(DOWNLOAD_EIGEN3 ON CACHE BOOL "" FORCE)
|
set(DOWNLOAD_EIGEN3 ON CACHE BOOL "" FORCE)
|
||||||
|
set(DOWNLOAD_PACE ON CACHE BOOL "" FORCE)
|
||||||
set(DOWNLOAD_PLUMED ON CACHE BOOL "" FORCE)
|
set(DOWNLOAD_PLUMED ON CACHE BOOL "" FORCE)
|
||||||
set(DOWNLOAD_SCAFACOS ON CACHE BOOL "" FORCE)
|
set(DOWNLOAD_SCAFACOS ON CACHE BOOL "" FORCE)
|
||||||
|
|
||||||
|
|||||||
@ -3,10 +3,20 @@
|
|||||||
set(CMAKE_CXX_COMPILER "icpc" CACHE STRING "" FORCE)
|
set(CMAKE_CXX_COMPILER "icpc" CACHE STRING "" FORCE)
|
||||||
set(CMAKE_C_COMPILER "icc" CACHE STRING "" FORCE)
|
set(CMAKE_C_COMPILER "icc" CACHE STRING "" FORCE)
|
||||||
set(CMAKE_Fortran_COMPILER "ifort" CACHE STRING "" FORCE)
|
set(CMAKE_Fortran_COMPILER "ifort" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -Wextra -g" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_Fortran_FLAGS_DEBUG "-Wall -Wextra -g" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_Fortran_FLAGS_RELWITHDEBINFO "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_Fortran_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_C_FLAGS_DEBUG "-Wall -Wextra -g" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_C_FLAGS_RELWITHDEBINFO "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_C_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
|
||||||
set(MPI_CXX "icpc" CACHE STRING "" FORCE)
|
set(MPI_CXX "icpc" CACHE STRING "" FORCE)
|
||||||
set(MPI_CXX_COMPILER "mpicxx" CACHE STRING "" FORCE)
|
set(MPI_CXX_COMPILER "mpicxx" CACHE STRING "" FORCE)
|
||||||
unset(HAVE_OMP_H_INCLUDE CACHE)
|
|
||||||
|
|
||||||
|
unset(HAVE_OMP_H_INCLUDE CACHE)
|
||||||
set(OpenMP_C "icc" CACHE STRING "" FORCE)
|
set(OpenMP_C "icc" CACHE STRING "" FORCE)
|
||||||
set(OpenMP_C_FLAGS "-qopenmp" CACHE STRING "" FORCE)
|
set(OpenMP_C_FLAGS "-qopenmp" CACHE STRING "" FORCE)
|
||||||
set(OpenMP_C_LIB_NAMES "omp" CACHE STRING "" FORCE)
|
set(OpenMP_C_LIB_NAMES "omp" CACHE STRING "" FORCE)
|
||||||
|
|||||||
@ -1,11 +1,11 @@
|
|||||||
set(WIN_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU
|
set(WIN_PACKAGES ASPHERE BODY CLASS2 COLLOID COMPRESS CORESHELL DIPOLE GPU
|
||||||
GRANULAR KSPACE LATTE MANYBODY MC MISC MLIAP MOLECULE OPT
|
GRANULAR KSPACE LATTE MANYBODY MC MISC MLIAP MOLECULE OPT
|
||||||
PERI POEMS QEQ REPLICA RIGID SHOCK SNAP SPIN SRD VORONOI
|
PERI POEMS QEQ REPLICA RIGID SHOCK SNAP SPIN SRD VORONOI
|
||||||
USER-ATC USER-AWPMD USER-BOCS USER-CGDNA USER-CGSDK
|
USER-ATC USER-AWPMD USER-BOCS USER-BROWNIAN USER-CGDNA USER-CGSDK
|
||||||
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF
|
USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF
|
||||||
USER-FEP USER-INTEL USER-MANIFOLD USER-MEAMC USER-MESODPD
|
USER-FEP USER-INTEL USER-MANIFOLD USER-MEAMC USER-MESODPD
|
||||||
USER-MESONT USER-MISC USER-MGPT USER-MOFFF USER-MOLFILE USER-OMP
|
USER-MESONT USER-MISC USER-MGPT USER-MOFFF USER-MOLFILE USER-OMP
|
||||||
USER-PHONON USER-PTM USER-QTB USER-REACTION USER-REAXC
|
USER-PACE USER-PHONON USER-PTM USER-QTB USER-REACTION USER-REAXC
|
||||||
USER-SDPD USER-SMD USER-SMTBQ USER-SPH USER-TALLY USER-UEF
|
USER-SDPD USER-SMD USER-SMTBQ USER-SPH USER-TALLY USER-UEF
|
||||||
USER-YAFF)
|
USER-YAFF)
|
||||||
|
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
set(PACKAGES_WITH_LIB COMPRESS GPU KIM KOKKOS LATTE MESSAGE MPIIO MSCG
|
set(PACKAGES_WITH_LIB COMPRESS GPU KIM KOKKOS LATTE MESSAGE MPIIO MSCG
|
||||||
PYTHON VORONOI
|
PYTHON VORONOI
|
||||||
USER-ADIOS USER-ATC USER-AWPMD USER-H5MD USER-LB USER-MOLFILE USER-MESONT
|
USER-ADIOS USER-ATC USER-AWPMD USER-H5MD USER-LB USER-MOLFILE USER-MESONT
|
||||||
USER-NETCDF USER-PACE USER-PLUMED USER-QMMM USER-QUIP USER-SCAFACOS
|
USER-MDI USER-NETCDF USER-PACE USER-PLUMED USER-QMMM USER-QUIP USER-SCAFACOS
|
||||||
USER-SMD USER-VTK)
|
USER-SMD USER-VTK)
|
||||||
|
|
||||||
foreach(PKG ${PACKAGES_WITH_LIB})
|
foreach(PKG ${PACKAGES_WITH_LIB})
|
||||||
|
|||||||
@ -1,12 +1,22 @@
|
|||||||
# preset that will enable the LLVM based Intel compilers with support for MPI and OpenMP (on Linux boxes)
|
# preset that will enable the LLVM based Intel compilers with support for MPI and OpenMP and Fortran (on Linux boxes)
|
||||||
|
|
||||||
set(CMAKE_CXX_COMPILER "icpx" CACHE STRING "" FORCE)
|
set(CMAKE_CXX_COMPILER "icpx" CACHE STRING "" FORCE)
|
||||||
set(CMAKE_C_COMPILER "icx" CACHE STRING "" FORCE)
|
set(CMAKE_C_COMPILER "icx" CACHE STRING "" FORCE)
|
||||||
set(CMAKE_Fortran_COMPILER "ifx" CACHE STRING "" FORCE)
|
set(CMAKE_Fortran_COMPILER "ifx" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -Wextra -g" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_Fortran_FLAGS_DEBUG "-Wall -Wextra -g" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_Fortran_FLAGS_RELWITHDEBINFO "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_Fortran_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_C_FLAGS_DEBUG "-Wall -Wextra -g" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_C_FLAGS_RELWITHDEBINFO "-Wall -Wextra -g -O2 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
set(CMAKE_C_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||||
|
|
||||||
set(MPI_CXX "icpx" CACHE STRING "" FORCE)
|
set(MPI_CXX "icpx" CACHE STRING "" FORCE)
|
||||||
set(MPI_CXX_COMPILER "mpicxx" CACHE STRING "" FORCE)
|
set(MPI_CXX_COMPILER "mpicxx" CACHE STRING "" FORCE)
|
||||||
unset(HAVE_OMP_H_INCLUDE CACHE)
|
|
||||||
|
|
||||||
|
unset(HAVE_OMP_H_INCLUDE CACHE)
|
||||||
set(OpenMP_C "icx" CACHE STRING "" FORCE)
|
set(OpenMP_C "icx" CACHE STRING "" FORCE)
|
||||||
set(OpenMP_C_FLAGS "-qopenmp" CACHE STRING "" FORCE)
|
set(OpenMP_C_FLAGS "-qopenmp" CACHE STRING "" FORCE)
|
||||||
set(OpenMP_C_LIB_NAMES "omp" CACHE STRING "" FORCE)
|
set(OpenMP_C_LIB_NAMES "omp" CACHE STRING "" FORCE)
|
||||||
|
|||||||
@ -68,7 +68,6 @@ help:
|
|||||||
@echo "Please use \`make <target>' where <target> is one of"
|
@echo "Please use \`make <target>' where <target> is one of"
|
||||||
@echo " html create HTML pages in html dir"
|
@echo " html create HTML pages in html dir"
|
||||||
@echo " pdf create Manual.pdf in this dir"
|
@echo " pdf create Manual.pdf in this dir"
|
||||||
@echo " fetch fetch HTML and PDF files from LAMMPS web site"
|
|
||||||
@echo " epub create ePUB format manual for e-book readers"
|
@echo " epub create ePUB format manual for e-book readers"
|
||||||
@echo " mobi convert ePUB to MOBI format manual for e-book readers (e.g. Kindle)"
|
@echo " mobi convert ePUB to MOBI format manual for e-book readers (e.g. Kindle)"
|
||||||
@echo " (requires ebook-convert tool from calibre)"
|
@echo " (requires ebook-convert tool from calibre)"
|
||||||
@ -185,13 +184,6 @@ pdf: xmlgen $(VENV) $(SPHINXCONFIG)/conf.py $(ANCHORCHECK)
|
|||||||
@rm -rf latex/PDF/.[sg]*
|
@rm -rf latex/PDF/.[sg]*
|
||||||
@echo "Build finished. Manual.pdf is in this directory."
|
@echo "Build finished. Manual.pdf is in this directory."
|
||||||
|
|
||||||
fetch:
|
|
||||||
@rm -rf html_www Manual_www.pdf
|
|
||||||
@curl -s -o Manual_www.pdf http://lammps.sandia.gov/doc/Manual.pdf
|
|
||||||
@curl -s -o lammps-doc.tar.gz http://lammps.sandia.gov/tars/lammps-doc.tar.gz
|
|
||||||
@tar xzf lammps-doc.tar.gz
|
|
||||||
@rm -f lammps-doc.tar.gz
|
|
||||||
|
|
||||||
anchor_check : $(ANCHORCHECK)
|
anchor_check : $(ANCHORCHECK)
|
||||||
@(\
|
@(\
|
||||||
. $(VENV)/bin/activate ;\
|
. $(VENV)/bin/activate ;\
|
||||||
|
|||||||
13
doc/README
13
doc/README
@ -25,16 +25,11 @@ github-development-workflow.md notes on the LAMMPS development workflow
|
|||||||
include-file-conventions.md notes on LAMMPS' include file conventions
|
include-file-conventions.md notes on LAMMPS' include file conventions
|
||||||
documentation_conventions.md notes on writing documentation for LAMMPS
|
documentation_conventions.md notes on writing documentation for LAMMPS
|
||||||
|
|
||||||
If you downloaded a LAMMPS tarball from lammps.sandia.gov, then the html
|
If you downloaded a LAMMPS tarball from www.lammps.org, then the html
|
||||||
folder and the PDF manual should be included. If you downloaded LAMMPS
|
folder and the PDF manual should be included. If you downloaded LAMMPS
|
||||||
from GitHub then you either need to download them or build them.
|
from GitHub then you either need to build them.
|
||||||
|
|
||||||
(a) You can "fetch" the current HTML and PDF files from the LAMMPS web
|
You can build the HTML and PDF files yourself, by typing "make html"
|
||||||
site. Just type "make fetch". This should create a html_www directory
|
|
||||||
and Manual_www.pdf file. These will always represent the latest published
|
|
||||||
patch/development version of LAMMPS.
|
|
||||||
|
|
||||||
(b) You can build the HTML and PDF files yourself, by typing "make html"
|
|
||||||
or by "make pdf", respectively. This requires various tools and files.
|
or by "make pdf", respectively. This requires various tools and files.
|
||||||
Some of them have to be installed (more on that below). For the rest the
|
Some of them have to be installed (more on that below). For the rest the
|
||||||
build process will attempt to download and install into a python virtual
|
build process will attempt to download and install into a python virtual
|
||||||
@ -78,4 +73,4 @@ the tool 'ebook-convert' from the 'calibre' e-book management software
|
|||||||
----------------
|
----------------
|
||||||
|
|
||||||
More details this can be found in the manual itself. The online
|
More details this can be found in the manual itself. The online
|
||||||
version is at: https://lammps.sandia.gov/doc/Manual_build.html
|
version is at: https://docs.lammps.org/Build_manual.html
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
.TH LAMMPS "8 April 2021" "2021-04-08"
|
.TH LAMMPS "14 May 2021" "2021-05-14"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
.B LAMMPS
|
.B LAMMPS
|
||||||
\- Molecular Dynamics Simulator.
|
\- Molecular Dynamics Simulator.
|
||||||
|
|||||||
@ -28,6 +28,28 @@ variable VERBOSE set to 1:
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
.. _clang-tidy:
|
||||||
|
|
||||||
|
Enable static code analysis with clang-tidy
|
||||||
|
-------------------------------------------
|
||||||
|
|
||||||
|
The `clang-tidy tool <https://clang.llvm.org/extra/clang-tidy/>`_ is a
|
||||||
|
static code analysis tool to diagnose (and potentially fix) typical
|
||||||
|
programming errors or coding style violations. It has a modular framework
|
||||||
|
of tests that can be adjusted to help identifying problems before they
|
||||||
|
become bugs and also assist in modernizing large code bases (like LAMMPS).
|
||||||
|
It can be enabled for all C++ code with the following CMake flag
|
||||||
|
|
||||||
|
.. code-block:: bash
|
||||||
|
|
||||||
|
-D ENABLE_CLANG_TIDY=value # value = no (default) or yes
|
||||||
|
|
||||||
|
With this flag enabled all source files will be processed twice, first to
|
||||||
|
be compiled and then to be analyzed. Please note that the analysis can be
|
||||||
|
significantly more time consuming than the compilation itself.
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
.. _iwyu_processing:
|
.. _iwyu_processing:
|
||||||
|
|
||||||
Report missing and unneeded '#include' statements
|
Report missing and unneeded '#include' statements
|
||||||
@ -447,12 +469,24 @@ The following options are available.
|
|||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
make check-whitespace # generate coverage report in HTML format
|
make check-whitespace # search for files with whitespace issues
|
||||||
make fix-whitespace # generate coverage report in XML format
|
make fix-whitespace # correct whitespace issues in files
|
||||||
make check-permissions # delete folder with HTML format coverage report
|
make check-homepage # search for files with old LAMMPS homepage URLs
|
||||||
make fix-permissions # delete all collected coverage data and HTML output
|
make fix-homepage # correct LAMMPS homepage URLs in files
|
||||||
|
make check-permissions # search for files with permissions issues
|
||||||
|
make fix-permissions # correct permissions issues in files
|
||||||
|
|
||||||
For the code in the ``unittest`` tree we are using the `clang-format`
|
For the code in the ``unittest`` and ``src`` trees we are transitioning
|
||||||
tool (Clang version 8.0 or later is required). If available, the source
|
to use the `clang-format` tool to assist with having a consistent source
|
||||||
code files in the ``unittest`` tree can be updated to conform to the
|
code style. The `clang-format` command bundled with Clang version 8.0
|
||||||
formatting settings using ``make format-tests``.
|
or later is required. The configuration is in files ``.clang-format``
|
||||||
|
in the respective folders. Since the modifications from `clang-format`
|
||||||
|
can be significant and - especially for "legacy style code" - also is
|
||||||
|
not always improving readability, a large number of files currently have
|
||||||
|
a ``// clang-format off`` at the top, which will disable the processing.
|
||||||
|
Over time, files will be refactored and updated to that `clang-format`
|
||||||
|
may be applied to them (at least in part).
|
||||||
|
|
||||||
|
If `clang-format` is available, the source code files in the ``unittest``
|
||||||
|
tree can be updated to conform to the formatting settings using
|
||||||
|
``make format-tests`` and the files in ``src`` with ``make format-src``.
|
||||||
|
|||||||
@ -49,6 +49,7 @@ This is the list of packages that may require additional steps.
|
|||||||
* :ref:`USER-COLVARS <user-colvars>`
|
* :ref:`USER-COLVARS <user-colvars>`
|
||||||
* :ref:`USER-H5MD <user-h5md>`
|
* :ref:`USER-H5MD <user-h5md>`
|
||||||
* :ref:`USER-INTEL <user-intel>`
|
* :ref:`USER-INTEL <user-intel>`
|
||||||
|
* :ref:`USER-MDI <user-mdi>`
|
||||||
* :ref:`USER-MESONT <user-mesont>`
|
* :ref:`USER-MESONT <user-mesont>`
|
||||||
* :ref:`USER-MOLFILE <user-molfile>`
|
* :ref:`USER-MOLFILE <user-molfile>`
|
||||||
* :ref:`USER-NETCDF <user-netcdf>`
|
* :ref:`USER-NETCDF <user-netcdf>`
|
||||||
@ -1539,6 +1540,35 @@ TBB and MKL.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
.. _user-mdi:
|
||||||
|
|
||||||
|
USER-MDI package
|
||||||
|
-----------------------------
|
||||||
|
|
||||||
|
.. tabs::
|
||||||
|
|
||||||
|
.. tab:: CMake build
|
||||||
|
|
||||||
|
.. code-block:: bash
|
||||||
|
|
||||||
|
-D DOWNLOAD_MDI=value # download MDI Library for build, value = no (default) or yes
|
||||||
|
|
||||||
|
.. tab:: Traditional make
|
||||||
|
|
||||||
|
Before building LAMMPS, you must build the MDI Library in
|
||||||
|
``lib/mdi``\ . You can do this by executing a command like one
|
||||||
|
of the following from the ``lib/mdi`` directory:
|
||||||
|
|
||||||
|
.. code-block:: bash
|
||||||
|
|
||||||
|
$ python Install.py -m gcc # build using gcc compiler
|
||||||
|
$ python Install.py -m icc # build using icc compiler
|
||||||
|
|
||||||
|
The build should produce two files: ``lib/mdi/includelink/mdi.h``
|
||||||
|
and ``lib/mdi/liblink/libmdi.so``\ .
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
.. _user-mesont:
|
.. _user-mesont:
|
||||||
|
|
||||||
USER-MESONT package
|
USER-MESONT package
|
||||||
|
|||||||
@ -28,29 +28,18 @@ If you downloaded LAMMPS as a tarball from `the LAMMPS website <lws_>`_,
|
|||||||
the html folder and the PDF files should be included.
|
the html folder and the PDF files should be included.
|
||||||
|
|
||||||
If you downloaded LAMMPS from the public git repository, then the HTML
|
If you downloaded LAMMPS from the public git repository, then the HTML
|
||||||
and PDF files are not included. Instead you need to create them, in one
|
and PDF files are not included. You can build the HTML or PDF files yourself,
|
||||||
of two ways:
|
by typing ``make html`` or ``make pdf`` in the ``doc`` folder. This requires
|
||||||
|
various tools and files. Some of them have to be installed (see below). For
|
||||||
a. You can "fetch" the current HTML and PDF files from the LAMMPS web
|
the rest the build process will attempt to download and install them into
|
||||||
site. Just type ``make fetch``. This should download a ``html_www``
|
a python virtual environment and local folders.
|
||||||
directory and a ``Manual_www.pdf`` file. Note that if new LAMMPS features
|
|
||||||
have been added more recently than the date of your LAMMPS version, the
|
|
||||||
fetched documentation will include those changes (but your source code
|
|
||||||
will not, unless you update your local repository).
|
|
||||||
|
|
||||||
b. You can build the HTML or PDF files yourself, by typing ``make html``
|
|
||||||
or ``make pdf`` in the ``doc`` folder. This requires various tools
|
|
||||||
and files. Some of them have to be installed (see below). For the
|
|
||||||
rest the build process will attempt to download and install them into
|
|
||||||
a python virtual environment and local folders.
|
|
||||||
|
|
||||||
A current version of the manual (latest patch release, aka unstable
|
A current version of the manual (latest patch release, aka unstable
|
||||||
branch) is is available online at:
|
branch) is is available online at:
|
||||||
`https://lammps.sandia.gov/doc/Manual.html
|
`https://docs.lammps.org/Manual.html <https://docs.lammps.org/Manual.html>`_.
|
||||||
<https://lammps.sandia.gov/doc/Manual.html>`_ A version of the manual
|
A version of the manual corresponding to the ongoing development (aka master branch)
|
||||||
corresponding to the ongoing development (aka master branch) is
|
is available online at: `https://docs.lammps.org/latest/
|
||||||
available online at: `https://docs.lammps.org/
|
<https://docs.lammps.org/latest/>`_
|
||||||
<https://docs.lammps.org/>`_
|
|
||||||
|
|
||||||
Build using GNU make
|
Build using GNU make
|
||||||
--------------------
|
--------------------
|
||||||
@ -257,4 +246,4 @@ the file ``lammps/doc/utils/sphinx-config/false_positives.txt``.
|
|||||||
|
|
||||||
.. _rst: https://docutils.readthedocs.io/en/sphinx-docs/user/rst/quickstart.html
|
.. _rst: https://docutils.readthedocs.io/en/sphinx-docs/user/rst/quickstart.html
|
||||||
|
|
||||||
.. _lws: https://lammps.sandia.gov
|
.. _lws: https://www.lammps.org
|
||||||
|
|||||||
@ -67,6 +67,7 @@ An alphabetic list of all general LAMMPS commands.
|
|||||||
* :doc:`lattice <lattice>`
|
* :doc:`lattice <lattice>`
|
||||||
* :doc:`log <log>`
|
* :doc:`log <log>`
|
||||||
* :doc:`mass <mass>`
|
* :doc:`mass <mass>`
|
||||||
|
* :doc:`mdi/engine <mdi_engine>`
|
||||||
* :doc:`message <message>`
|
* :doc:`message <message>`
|
||||||
* :doc:`minimize <minimize>`
|
* :doc:`minimize <minimize>`
|
||||||
* :doc:`min_modify <min_modify>`
|
* :doc:`min_modify <min_modify>`
|
||||||
|
|||||||
@ -101,6 +101,7 @@ OPT.
|
|||||||
* :doc:`lb/viscous <fix_lb_viscous>`
|
* :doc:`lb/viscous <fix_lb_viscous>`
|
||||||
* :doc:`lineforce <fix_lineforce>`
|
* :doc:`lineforce <fix_lineforce>`
|
||||||
* :doc:`manifoldforce <fix_manifoldforce>`
|
* :doc:`manifoldforce <fix_manifoldforce>`
|
||||||
|
* :doc:`mdi/engine <fix_mdi_engine>`
|
||||||
* :doc:`meso/move <fix_meso_move>`
|
* :doc:`meso/move <fix_meso_move>`
|
||||||
* :doc:`momentum (k) <fix_momentum>`
|
* :doc:`momentum (k) <fix_momentum>`
|
||||||
* :doc:`momentum/chunk <fix_momentum>`
|
* :doc:`momentum/chunk <fix_momentum>`
|
||||||
|
|||||||
@ -5,8 +5,8 @@ If you are confident that you have found a bug in LAMMPS, please follow
|
|||||||
the steps outlined below:
|
the steps outlined below:
|
||||||
|
|
||||||
* Check the `New features and bug fixes
|
* Check the `New features and bug fixes
|
||||||
<https://lammps.sandia.gov/bug.html>`_ section of the `LAMMPS WWW site
|
<https://www.lammps.org/bug.html>`_ section of the `LAMMPS WWW site
|
||||||
<https://lammps.sandia.gov>`_ or the
|
<https://www.lammps.org>`_ or the
|
||||||
`GitHub Releases page <https://github.com/lammps/lammps/releases>`_ to
|
`GitHub Releases page <https://github.com/lammps/lammps/releases>`_ to
|
||||||
see if the bug has already been addressed in a patch release.
|
see if the bug has already been addressed in a patch release.
|
||||||
* Check that your issue can be reproduced with the latest development
|
* Check that your issue can be reproduced with the latest development
|
||||||
@ -17,7 +17,7 @@ the steps outlined below:
|
|||||||
if your issue has already been reported and if it is still open.
|
if your issue has already been reported and if it is still open.
|
||||||
* Check the `GitHub Pull Requests page <https://github.com/lammps/lammps/pulls>`_
|
* Check the `GitHub Pull Requests page <https://github.com/lammps/lammps/pulls>`_
|
||||||
to see if there is already a fix for your bug pending.
|
to see if there is already a fix for your bug pending.
|
||||||
* Check the `mailing list archives <https://lammps.sandia.gov/mail.html>`_
|
* Check the `mailing list archives <https://www.lammps.org/mail.html>`_
|
||||||
to see if the issue has been discussed before.
|
to see if the issue has been discussed before.
|
||||||
|
|
||||||
If none of these steps yields any useful information, please file a new
|
If none of these steps yields any useful information, please file a new
|
||||||
|
|||||||
@ -39,7 +39,7 @@ figure out your physics or numerical mistakes, like choosing too big a
|
|||||||
timestep, specifying erroneous force field coefficients, or putting 2
|
timestep, specifying erroneous force field coefficients, or putting 2
|
||||||
atoms on top of each other! If you run into errors that LAMMPS
|
atoms on top of each other! If you run into errors that LAMMPS
|
||||||
does not catch that you think it should flag, please send an email to
|
does not catch that you think it should flag, please send an email to
|
||||||
the `developers <https://lammps.sandia.gov/authors.html>`_.
|
the `developers <https://www.lammps.org/authors.html>`_.
|
||||||
|
|
||||||
If you get an error message about an invalid command in your input
|
If you get an error message about an invalid command in your input
|
||||||
script, you can determine what command is causing the problem by
|
script, you can determine what command is causing the problem by
|
||||||
|
|||||||
@ -3871,7 +3871,7 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
|
|||||||
*Fix orient/fcc found self twice*
|
*Fix orient/fcc found self twice*
|
||||||
The neighbor lists used by fix orient/fcc are messed up. If this
|
The neighbor lists used by fix orient/fcc are messed up. If this
|
||||||
error occurs, it is likely a bug, so send an email to the
|
error occurs, it is likely a bug, so send an email to the
|
||||||
`developers <https://lammps.sandia.gov/authors.html>`_.
|
`developers <https://www.lammps.org/authors.html>`_.
|
||||||
|
|
||||||
*Fix peri neigh does not exist*
|
*Fix peri neigh does not exist*
|
||||||
Somehow a fix that the pair style defines has been deleted.
|
Somehow a fix that the pair style defines has been deleted.
|
||||||
|
|||||||
@ -18,7 +18,7 @@ files and image files.
|
|||||||
|
|
||||||
If you uncomment the :doc:`dump <dump>` command in the input script, a
|
If you uncomment the :doc:`dump <dump>` command in the input script, a
|
||||||
text dump file will be produced, which can be animated by various
|
text dump file will be produced, which can be animated by various
|
||||||
`visualization programs <https://lammps.sandia.gov/viz.html>`_.
|
`visualization programs <https://www.lammps.org/viz.html>`_.
|
||||||
|
|
||||||
If you uncomment the :doc:`dump image <dump>` command in the input
|
If you uncomment the :doc:`dump image <dump>` command in the input
|
||||||
script, and assuming you have built LAMMPS with a JPG library, JPG
|
script, and assuming you have built LAMMPS with a JPG library, JPG
|
||||||
@ -27,7 +27,7 @@ be quickly post-processed into a movie using commands described on the
|
|||||||
:doc:`dump image <dump_image>` doc page.
|
:doc:`dump image <dump_image>` doc page.
|
||||||
|
|
||||||
Animations of many of the examples can be viewed on the Movies section
|
Animations of many of the examples can be viewed on the Movies section
|
||||||
of the `LAMMPS web site <https://lammps.sandia.gov/movies.html>`_.
|
of the `LAMMPS web site <https://www.lammps.org/movies.html>`_.
|
||||||
|
|
||||||
There are two kinds of sub-directories in the examples folder. Lower
|
There are two kinds of sub-directories in the examples folder. Lower
|
||||||
case named directories contain one or a few simple, quick-to-run
|
case named directories contain one or a few simple, quick-to-run
|
||||||
@ -166,7 +166,7 @@ Here is how you can run and visualize one of the sample problems:
|
|||||||
Running the simulation produces the files *dump.indent* and
|
Running the simulation produces the files *dump.indent* and
|
||||||
*log.lammps*\ . You can visualize the dump file of snapshots with a
|
*log.lammps*\ . You can visualize the dump file of snapshots with a
|
||||||
variety of third-party tools highlighted on the
|
variety of third-party tools highlighted on the
|
||||||
`Visualization <https://lammps.sandia.gov/viz.html>`_ page of the LAMMPS
|
`Visualization <https://www.lammps.org/viz.html>`_ page of the LAMMPS
|
||||||
web site.
|
web site.
|
||||||
|
|
||||||
If you uncomment the :doc:`dump image <dump_image>` line(s) in the input
|
If you uncomment the :doc:`dump image <dump_image>` line(s) in the input
|
||||||
|
|||||||
@ -3,7 +3,7 @@ Howto discussions
|
|||||||
|
|
||||||
These doc pages describe how to perform various tasks with LAMMPS,
|
These doc pages describe how to perform various tasks with LAMMPS,
|
||||||
both for users and developers. The
|
both for users and developers. The
|
||||||
`glossary <https://lammps.sandia.gov/glossary.html>`_ website page also lists MD
|
`glossary <https://www.lammps.org/glossary.html>`_ website page also lists MD
|
||||||
terminology with links to corresponding LAMMPS manual pages. The
|
terminology with links to corresponding LAMMPS manual pages. The
|
||||||
example input scripts included in the examples directory of the LAMMPS
|
example input scripts included in the examples directory of the LAMMPS
|
||||||
distribution and highlighted on the :doc:`Examples <Examples>` doc page
|
distribution and highlighted on the :doc:`Examples <Examples>` doc page
|
||||||
@ -23,6 +23,7 @@ General howto
|
|||||||
Howto_library
|
Howto_library
|
||||||
Howto_couple
|
Howto_couple
|
||||||
Howto_client_server
|
Howto_client_server
|
||||||
|
Howto_mdi
|
||||||
|
|
||||||
Settings howto
|
Settings howto
|
||||||
==============
|
==============
|
||||||
|
|||||||
132
doc/src/Howto_mdi.rst
Normal file
132
doc/src/Howto_mdi.rst
Normal file
@ -0,0 +1,132 @@
|
|||||||
|
Using LAMMPS with the MDI library for code coupling
|
||||||
|
===================================================
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
This Howto doc page will eventually replace the
|
||||||
|
:doc:`Howto client/server <Howto_client_server>` doc page.
|
||||||
|
|
||||||
|
Client/server coupling of two codes is where one code is the "client"
|
||||||
|
and sends request messages (data) to a "server" code. The server
|
||||||
|
responds to each request with a reply message. This enables the two
|
||||||
|
codes to work in tandem to perform a simulation. LAMMPS can act as
|
||||||
|
either a client or server code; it does this by using the `MolSSI
|
||||||
|
Driver Interface (MDI) library
|
||||||
|
<https://molssi-mdi.github.io/MDI_Library/html/index.html>`_,
|
||||||
|
developed by the `Molecular Sciences Software Institute (MolSSI)
|
||||||
|
<https://molssi.org>`_.
|
||||||
|
|
||||||
|
Alternate methods for code coupling with LAMMPS are described on the
|
||||||
|
:doc:`Howto couple <Howto_couple>` doc page.
|
||||||
|
|
||||||
|
Some advantages of client/server coupling are that the two codes can run
|
||||||
|
as stand-alone executables; they need not be linked together. Thus
|
||||||
|
neither code needs to have a library interface. This also makes it easy
|
||||||
|
to run the two codes on different numbers of processors. If a message
|
||||||
|
protocol (format and content) is defined for a particular kind of
|
||||||
|
simulation, then in principle any code which implements the client-side
|
||||||
|
protocol can be used in tandem with any code which implements the
|
||||||
|
server-side protocol. Neither code needs to know what specific other
|
||||||
|
code it is working with.
|
||||||
|
|
||||||
|
In MDI nomenclature, a client code is the "driver", and a server code is
|
||||||
|
an "engine". One driver code can communicate with one or more instances
|
||||||
|
of one or more engine codes. Driver and engine codes can be written in
|
||||||
|
any language: C, C++, Fortran, Python, etc.
|
||||||
|
|
||||||
|
In addition to allowing driver and engine(s) running to run as
|
||||||
|
stand-alone executables, MDI also enables a server code to be a
|
||||||
|
"plugin" to the client code. In this scenario, server code(s) are
|
||||||
|
compiled as shared libraries, and one (or more) instances of the
|
||||||
|
server are instantiated by the driver code. If the driver code runs
|
||||||
|
in parallel, it can split its MPI communicator into multiple
|
||||||
|
sub-communicators, and launch each plugin engine instance on a
|
||||||
|
sub-communicator. Driver processors in that sub-communicator exchange
|
||||||
|
messages with that engine instance, and can also send MPI messages to
|
||||||
|
other processors in the driver. The driver code can also destroy
|
||||||
|
engine instances and re-instantiate them.
|
||||||
|
|
||||||
|
The way that a driver communicates with an engine is by making
|
||||||
|
MDI_Send() and MDI_Recv() calls, which are conceptually similar to
|
||||||
|
MPI_Send() and MPI_Recv() calls. Each send or receive has a string
|
||||||
|
which identifies the command name, and optionally some data, which can
|
||||||
|
be a single value or vector of values of any data type. Inside the
|
||||||
|
MDI library, data is exchanged between the driver and engine via MPI
|
||||||
|
calls or sockets. This a run-time choice by the user.
|
||||||
|
|
||||||
|
-------------
|
||||||
|
|
||||||
|
As an example, LAMMPS and the ``pw.x`` command from Quantum Espresso (a
|
||||||
|
suite of quantum DFT codes), can work together via the MDI library to
|
||||||
|
perform an ab initio MD (AIMD) simulation, where LAMMPS runs an MD
|
||||||
|
simulation and sends a message each timestep to ``pw.x`` asking it to
|
||||||
|
compute quantum forces on the current configuration of atoms. Here is
|
||||||
|
how the 2 codes are launched to communicate by MPI:
|
||||||
|
|
||||||
|
.. code-block:: bash
|
||||||
|
|
||||||
|
% mpirun -np 2 lmp_mpi -mdi "-role DRIVER -name d -method MPI" \
|
||||||
|
-in in.aimd : -np 16 pw.x -in qe.in -mdi "-role ENGINE -name e -method MPI"
|
||||||
|
|
||||||
|
In this case LAMMPS runs on 2 processors (MPI tasks), ``pw.x`` runs on 16
|
||||||
|
processors.
|
||||||
|
|
||||||
|
Here is how the 2 codes are launched to communicate by sockets:
|
||||||
|
|
||||||
|
.. code-block:: bash
|
||||||
|
|
||||||
|
% mpirun -np 2 lmp_mpi -mdi "-role DRIVER -name d -method TCP -port 8021" -in in.aimd
|
||||||
|
% mpirun -np 16 pw.x -in qe.in -mdi "-role ENGINE -name e -method TCP -port 8021 -hostname localhost"
|
||||||
|
|
||||||
|
These commands could be issued in different windows on a desktop
|
||||||
|
machine. Or in the same window, if the first command is ended with
|
||||||
|
"&" so as to run in the background. If "localhost" is replaced by an
|
||||||
|
IP address, ``pw.x`` could be run on another machine on the same network, or
|
||||||
|
even on another machine across the country.
|
||||||
|
|
||||||
|
After both codes initialize themselves to model the same system, this is
|
||||||
|
what occurs each timestep:
|
||||||
|
|
||||||
|
* LAMMPS send a ">COORDS" message to ``pw.x`` with a 3*N vector of current atom coords
|
||||||
|
* ``pw.x`` receives the message/coords and computes quantum forces on all the atoms
|
||||||
|
* LAMMPS send a "<FORCES" message to ``pw.x`` and waits for the result
|
||||||
|
* ``pw.x`` receives the message (after its computation finishes) and sends a 3*N vector of forces
|
||||||
|
* LAMMPS receives the forces and time integrates to complete a single timestep
|
||||||
|
|
||||||
|
-------------
|
||||||
|
|
||||||
|
Examples scripts for using LAMMPS as an MDI engine are in the
|
||||||
|
examples/mdi directory. See the README file in that directory for
|
||||||
|
instructions on how to run the examples.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
Work is underway to add commands that allow LAMMPS to be used as an
|
||||||
|
MDI driver, e.g. for the AIMD example discussed above. Example
|
||||||
|
scripts for this usage mode will be added the same directory when
|
||||||
|
available.
|
||||||
|
|
||||||
|
If LAMMPS is used as a stand-alone engine it should set up the system
|
||||||
|
it will be modeling in its input script, then invoke the
|
||||||
|
:doc:`mdi/engine <mdi_engine>` command. This will put LAMMPS into
|
||||||
|
"engine mode" where it waits for messages and data from the driver.
|
||||||
|
When the driver sends an "EXIT" command, LAMMPS will exit engine mode
|
||||||
|
and the input script will continue.
|
||||||
|
|
||||||
|
If LAMMPS is used as a plugin engine it operates the same way, except
|
||||||
|
that the driver will pass LAMMPS an input script to initialize itself.
|
||||||
|
Upon receiving the "EXIT" command, LAMMPS will exit engine mode and the
|
||||||
|
input script will continue. After finishing execution of the input
|
||||||
|
script, the instance of LAMMPS will be destroyed.
|
||||||
|
|
||||||
|
LAMMPS supports the full set of MD-appropriate engine commands defined
|
||||||
|
by the MDI library. See the :doc:`mdi/engine <mdi_engine>` doc page for
|
||||||
|
a list of these.
|
||||||
|
|
||||||
|
If those commands are not sufficient for a user-developed driver to use
|
||||||
|
LAMMPS as an engine, then new commands can be easily added. See these
|
||||||
|
two files which implement the definition of MDI commands and the logic
|
||||||
|
for responding to them:
|
||||||
|
|
||||||
|
* src/MDI/mdi_engine.cpp
|
||||||
|
* src/MDI/fix_mdi_engine.cpp
|
||||||
@ -201,7 +201,7 @@ build configuration and any binaries generated during compilation.
|
|||||||
|
|
||||||
There are countless ways to compile LAMMPS. It is beyond the scope of this
|
There are countless ways to compile LAMMPS. It is beyond the scope of this
|
||||||
tutorial. If you want to find out more about what can be enabled, please
|
tutorial. If you want to find out more about what can be enabled, please
|
||||||
consult the extensive `documentation <https://lammps.sandia.gov/doc/Build_cmake.html>`_.
|
consult the extensive `documentation <https://docs.lammps.org/Build_cmake.html>`_.
|
||||||
|
|
||||||
To compile a minimal version of LAMMPS, we're going to use a preset.
|
To compile a minimal version of LAMMPS, we're going to use a preset.
|
||||||
Presets are a way to specify a collection of CMake options using a file.
|
Presets are a way to specify a collection of CMake options using a file.
|
||||||
|
|||||||
@ -78,7 +78,7 @@ this is as follows.
|
|||||||
$ git checkout tagID
|
$ git checkout tagID
|
||||||
|
|
||||||
Stable versions and what tagID to use for a particular stable version
|
Stable versions and what tagID to use for a particular stable version
|
||||||
are discussed on `this page <https://lammps.sandia.gov/bug.html#version>`_.
|
are discussed on `this page <https://www.lammps.org/bug.html#version>`_.
|
||||||
Note that this command will print some warnings, because in order to get
|
Note that this command will print some warnings, because in order to get
|
||||||
back to the latest revision and to be able to update with ``git pull``
|
back to the latest revision and to be able to update with ``git pull``
|
||||||
again, you will need to do ``git checkout unstable`` (or
|
again, you will need to do ``git checkout unstable`` (or
|
||||||
|
|||||||
@ -10,7 +10,7 @@ If you prefer to download a tarball, as described on the
|
|||||||
:doc:`tarball download <Install_tarball>` page, you can stay current by
|
:doc:`tarball download <Install_tarball>` page, you can stay current by
|
||||||
downloading "patch files" when new patch releases are made. A link to
|
downloading "patch files" when new patch releases are made. A link to
|
||||||
a patch file is posted on the
|
a patch file is posted on the
|
||||||
`bug fixes and new feature page <https://lammps.sandia.gov/bug.html>`_
|
`bug fixes and new feature page <https://www.lammps.org/bug.html>`_
|
||||||
of the LAMMPS website, along
|
of the LAMMPS website, along
|
||||||
with a list of changed files and details about what is in the new patch
|
with a list of changed files and details about what is in the new patch
|
||||||
release. This page explains how to apply the patch file to your local
|
release. This page explains how to apply the patch file to your local
|
||||||
|
|||||||
@ -4,10 +4,10 @@ Download source and documentation as a tarball
|
|||||||
You can download a current LAMMPS tarball from the `download page <download_>`_
|
You can download a current LAMMPS tarball from the `download page <download_>`_
|
||||||
of the `LAMMPS website <lws_>`_.
|
of the `LAMMPS website <lws_>`_.
|
||||||
|
|
||||||
.. _download: https://lammps.sandia.gov/download.html
|
.. _download: https://www.lammps.org/download.html
|
||||||
.. _bug: https://lammps.sandia.gov/bug.html
|
.. _bug: https://www.lammps.org/bug.html
|
||||||
.. _older: https://lammps.sandia.gov/tars
|
.. _older: https://www.lammps.org/tars
|
||||||
.. _lws: https://lammps.sandia.gov
|
.. _lws: https://www.lammps.org
|
||||||
|
|
||||||
You have two choices of tarballs, either the most recent stable
|
You have two choices of tarballs, either the most recent stable
|
||||||
release or the most current patch release. Stable releases occur a
|
release or the most current patch release. Stable releases occur a
|
||||||
|
|||||||
@ -11,14 +11,14 @@ University:
|
|||||||
* Richard Berger, richard.berger at temple.edu
|
* Richard Berger, richard.berger at temple.edu
|
||||||
|
|
||||||
.. _sjp: http://www.cs.sandia.gov/~sjplimp
|
.. _sjp: http://www.cs.sandia.gov/~sjplimp
|
||||||
.. _lws: https://lammps.sandia.gov
|
.. _lws: https://www.lammps.org
|
||||||
|
|
||||||
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 <https://lammps.sandia.gov/authors.html>`_ of the
|
The `Authors page <https://www.lammps.org/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.
|
||||||
@ -46,7 +46,7 @@ general-purpose as it is without their expertise and efforts.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
As discussed on the `History page <https://lammps.sandia.gov/history.html>`_ of the website, LAMMPS
|
As discussed on the `History page <https://www.lammps.org/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
|
||||||
version of LAMMPS were the following:
|
version of LAMMPS were the following:
|
||||||
|
|||||||
@ -38,8 +38,8 @@ In addition there are DOIs for individual stable releases. Currently there are:
|
|||||||
Home page
|
Home page
|
||||||
^^^^^^^^^
|
^^^^^^^^^
|
||||||
|
|
||||||
The LAMMPS website at `https://lammps.sandia.gov/
|
The LAMMPS website at `https://www.lammps.org/
|
||||||
<https://lammps.sandia.gov>`_ is the canonical location for information
|
<https://www.lammps.org>`_ is the canonical location for information
|
||||||
about LAMMPS and its features.
|
about LAMMPS and its features.
|
||||||
|
|
||||||
Citing contributions
|
Citing contributions
|
||||||
|
|||||||
@ -33,7 +33,7 @@ Here are suggestions on how to perform these tasks:
|
|||||||
linear bead-spring polymer chains. The moltemplate program is a true
|
linear bead-spring polymer chains. The moltemplate program is a true
|
||||||
molecular builder that will generate complex molecular models. See
|
molecular builder that will generate complex molecular models. See
|
||||||
the :doc:`Tools <Tools>` doc page for details on tools packaged with
|
the :doc:`Tools <Tools>` doc page for details on tools packaged with
|
||||||
LAMMPS. The `Pre/post processing page <http:/lammps.sandia.gov/prepost.html>`_ of the LAMMPS website
|
LAMMPS. The `Pre/post processing page <http:/www.lammps.org/prepost.html>`_ of the LAMMPS website
|
||||||
describes a variety of third party tools for this task. Furthermore,
|
describes a variety of third party tools for this task. Furthermore,
|
||||||
some LAMMPS internal commands allow to reconstruct, or selectively add
|
some LAMMPS internal commands allow to reconstruct, or selectively add
|
||||||
topology information, as well as provide the option to insert molecule
|
topology information, as well as provide the option to insert molecule
|
||||||
@ -67,7 +67,7 @@ Here are suggestions on how to perform these tasks:
|
|||||||
them to an external program, `FFmpeg <https://www.ffmpeg.org>`_ to generate
|
them to an external program, `FFmpeg <https://www.ffmpeg.org>`_ to generate
|
||||||
movies from them. For high-quality, interactive visualization there are
|
movies from them. For high-quality, interactive visualization there are
|
||||||
many excellent and free tools available. See the
|
many excellent and free tools available. See the
|
||||||
`Visualization Tools <https://lammps.sandia.gov/viz.html>`_ page of the
|
`Visualization Tools <https://www.lammps.org/viz.html>`_ page of the
|
||||||
LAMMPS website for
|
LAMMPS website for
|
||||||
visualization packages that can process LAMMPS output data.
|
visualization packages that can process LAMMPS output data.
|
||||||
* **Plotting:** See the next bullet about Pizza.py as well as the
|
* **Plotting:** See the next bullet about Pizza.py as well as the
|
||||||
|
|||||||
@ -16,10 +16,10 @@ shared-memory boxes and distributed-memory clusters and
|
|||||||
supercomputers.
|
supercomputers.
|
||||||
|
|
||||||
.. _mpi: https://en.wikipedia.org/wiki/Message_Passing_Interface
|
.. _mpi: https://en.wikipedia.org/wiki/Message_Passing_Interface
|
||||||
.. _lws: https://lammps.sandia.gov
|
.. _lws: https://www.lammps.org
|
||||||
|
|
||||||
LAMMPS is written in C++. Earlier versions were written in F77 and
|
LAMMPS is written in C++. Earlier versions were written in F77 and
|
||||||
F90. See the `History page <https://lammps.sandia.gov/history.html>`_ of
|
F90. See the `History page <https://www.lammps.org/history.html>`_ of
|
||||||
the website for details. All versions can be downloaded from the
|
the website for details. All versions can be downloaded from the
|
||||||
`LAMMPS website <lws_>`_.
|
`LAMMPS website <lws_>`_.
|
||||||
|
|
||||||
|
|||||||
@ -5,31 +5,31 @@ The `LAMMPS website <lws_>`_ has a variety of additional info about
|
|||||||
LAMMPS, beyond what is in this manual. Some other useful resources
|
LAMMPS, beyond what is in this manual. Some other useful resources
|
||||||
available online are listed below.
|
available online are listed below.
|
||||||
|
|
||||||
.. _lws: https://lammps.sandia.gov
|
.. _lws: https://www.lammps.org
|
||||||
|
|
||||||
* `Brief intro and recently added significant features <lws_>`_
|
* `Brief intro and recently added significant features <lws_>`_
|
||||||
* `List of features <https://lammps.sandia.gov/doc/Intro_features.html>`_
|
* `List of features <https://docs.lammps.org/Intro_features.html>`_
|
||||||
* `List of non-features <https://lammps.sandia.gov/doc/Intro_nonfeatures.html>`_
|
* `List of non-features <https://docs.lammps.org/Intro_nonfeatures.html>`_
|
||||||
* `Recent bug fixes and new features <https://lammps.sandia.gov/bug.html>`_
|
* `Recent bug fixes and new features <https://www.lammps.org/bug.html>`_
|
||||||
|
|
||||||
* `Download info <https://lammps.sandia.gov/download.html>`_
|
* `Download info <https://www.lammps.org/download.html>`_
|
||||||
* `GitHub site <https://github.com/lammps/lammps>`_
|
* `GitHub site <https://github.com/lammps/lammps>`_
|
||||||
* `SourceForge site <https://sourceforge.net/projects/lammps>`_
|
* `SourceForge site <https://sourceforge.net/projects/lammps>`_
|
||||||
* `LAMMPS open-source license <https://lammps.sandia.gov/doc/Intro_opensource.html>`_
|
* `LAMMPS open-source license <https://docs.lammps.org/Intro_opensource.html>`_
|
||||||
|
|
||||||
* `Glossary of terms relevant to LAMMPS <https://lammps.sandia.gov/glossary.html>`_
|
* `Glossary of terms relevant to LAMMPS <https://www.lammps.org/glossary.html>`_
|
||||||
* `LAMMPS highlights with images <https://lammps.sandia.gov/pictures.html>`_
|
* `LAMMPS highlights with images <https://www.lammps.org/pictures.html>`_
|
||||||
* `LAMMPS highlights with movies <https://lammps.sandia.gov/movies.html>`_
|
* `LAMMPS highlights with movies <https://www.lammps.org/movies.html>`_
|
||||||
* `Mail list <https://lammps.sandia.gov/mail.html>`_
|
* `Mail list <https://www.lammps.org/mail.html>`_
|
||||||
* `Workshops <https://lammps.sandia.gov/workshops.html>`_
|
* `Workshops <https://www.lammps.org/workshops.html>`_
|
||||||
* `Tutorials <https://lammps.sandia.gov/tutorials.html>`_
|
* `Tutorials <https://www.lammps.org/tutorials.html>`_
|
||||||
|
|
||||||
* `Pre- and post-processing tools for LAMMPS <https://lammps.sandia.gov/prepost.html>`_
|
* `Pre- and post-processing tools for LAMMPS <https://www.lammps.org/prepost.html>`_
|
||||||
* `Other software usable with LAMMPS <https://lammps.sandia.gov/offsite.html>`_
|
* `Other software usable with LAMMPS <https://www.lammps.org/offsite.html>`_
|
||||||
* `Viz tools usable with LAMMPS <https://lammps.sandia.gov/viz.html>`_
|
* `Viz tools usable with LAMMPS <https://www.lammps.org/viz.html>`_
|
||||||
|
|
||||||
* `Benchmark performance <https://lammps.sandia.gov/bench.html>`_
|
* `Benchmark performance <https://www.lammps.org/bench.html>`_
|
||||||
* `Publications that have cited LAMMPS <https://lammps.sandia.gov/papers.html>`_
|
* `Publications that have cited LAMMPS <https://www.lammps.org/papers.html>`_
|
||||||
* `Authors of LAMMPS <https://lammps.sandia.gov/authors.html>`_
|
* `Authors of LAMMPS <https://www.lammps.org/authors.html>`_
|
||||||
* `History of LAMMPS development <https://lammps.sandia.gov/history.html>`_
|
* `History of LAMMPS development <https://www.lammps.org/history.html>`_
|
||||||
* `Funding for LAMMPS <https://lammps.sandia.gov/funding.html>`_
|
* `Funding for LAMMPS <https://www.lammps.org/funding.html>`_
|
||||||
|
|||||||
@ -15,7 +15,7 @@ the GNU Public License (GPL).
|
|||||||
|
|
||||||
The `LAMMPS website <lws_>`_ has a variety of information about the
|
The `LAMMPS website <lws_>`_ has a variety of information about the
|
||||||
code. It includes links to an on-line version of this manual, a
|
code. It includes links to an on-line version of this manual, a
|
||||||
`mailing list <https://lammps.sandia.gov/mail.html>`_ where users can
|
`mailing list <https://www.lammps.org/mail.html>`_ where users can
|
||||||
post questions, and a `GitHub site <https://github.com/lammps/lammps>`_
|
post questions, and a `GitHub site <https://github.com/lammps/lammps>`_
|
||||||
where all LAMMPS development is coordinated.
|
where all LAMMPS development is coordinated.
|
||||||
|
|
||||||
@ -30,11 +30,13 @@ please :ref:`see this note <webbrowser>`.
|
|||||||
|
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
The manual is organized in two parts:
|
The manual is organized in three parts:
|
||||||
1) the :ref:`User Guide <user_documentation>` for how to install
|
1) the :ref:`User Guide <user_documentation>` for how to install
|
||||||
and use LAMMPS and 2) the :ref:`Programmer Guide <programmer_documentation>`
|
and use LAMMPS, 2) the :ref:`Programmer Guide <programmer_documentation>`
|
||||||
for how to write programs using the LAMMPS library from different
|
for how to write programs using the LAMMPS library from different
|
||||||
programming languages and how to modify and extend LAMMPS.
|
programming languages and how to modify and extend LAMMPS, and 3) the
|
||||||
|
:ref:`Command Reference <command_reference>` which includes detailed
|
||||||
|
descriptions of all commands included in the LAMMPS code.
|
||||||
|
|
||||||
.. only:: html
|
.. only:: html
|
||||||
|
|
||||||
@ -42,7 +44,7 @@ programming languages and how to modify and extend LAMMPS.
|
|||||||
:doc:`this page <Commands_all>` since it gives quick access
|
:doc:`this page <Commands_all>` since it gives quick access
|
||||||
the documentation for all LAMMPS commands.
|
the documentation for all LAMMPS commands.
|
||||||
|
|
||||||
.. _lws: https://lammps.sandia.gov
|
.. _lws: https://www.lammps.org
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -89,10 +91,15 @@ Programmer Guide
|
|||||||
Modify
|
Modify
|
||||||
Developer
|
Developer
|
||||||
|
|
||||||
|
*****************
|
||||||
|
Command Reference
|
||||||
|
*****************
|
||||||
|
|
||||||
|
.. _command_reference:
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:caption: Index
|
:name: reference
|
||||||
:name: index
|
:maxdepth: 1
|
||||||
:hidden:
|
:caption: Command Reference
|
||||||
|
|
||||||
commands_list
|
commands_list
|
||||||
fixes
|
fixes
|
||||||
@ -118,10 +125,10 @@ Indices and tables
|
|||||||
.. admonition:: Web Browser Compatibility
|
.. admonition:: Web Browser Compatibility
|
||||||
|
|
||||||
The HTML version of the manual makes use of advanced features present
|
The HTML version of the manual makes use of advanced features present
|
||||||
int "modern" web browsers. This can lead to incompatibilities with older
|
in "modern" web browsers. This can lead to incompatibilities with older
|
||||||
web browsers (released more than 4 years ago) and specific vendor browsers
|
web browsers (released more than 4 years ago) and specific vendor browsers
|
||||||
(e.g. Internet Explorer on Windows; Microsoft Edge works well though)
|
(e.g. Internet Explorer on Windows; Microsoft Edge works well though)
|
||||||
where parts of the pages are not rendered as expected (e.g. the layout is
|
where parts of the pages are not rendered as expected (e.g. the layout is
|
||||||
broken or mathematical expressions not typeset). In that case we
|
broken or mathematical expressions not typeset). In that case we
|
||||||
recommend to install/use a different/newer web browser or use
|
recommend to install/use a different/newer web browser or use
|
||||||
the `PDF version of the manual <https://lammps.sandia.gov/doc/Manual.pdf>`_.
|
the `PDF version of the manual <https://docs.lammps.org/Manual.pdf>`_.
|
||||||
|
|||||||
@ -5,7 +5,7 @@ The LAMMPS "version" is the date when it was released, such as 1 May
|
|||||||
2014. LAMMPS is updated continuously. Whenever we fix a bug or add a
|
2014. LAMMPS is updated continuously. Whenever we fix a bug or add a
|
||||||
feature, we release it in the next *patch* release, which are
|
feature, we release it in the next *patch* release, which are
|
||||||
typically made every couple of weeks. Info on patch releases are on
|
typically made every couple of weeks. Info on patch releases are on
|
||||||
`this website page <https://lammps.sandia.gov/bug.html>`_. Every few
|
`this website page <https://www.lammps.org/bug.html>`_. Every few
|
||||||
months, the latest patch release is subjected to more thorough testing
|
months, the latest patch release is subjected to more thorough testing
|
||||||
and labeled as a *stable* version.
|
and labeled as a *stable* version.
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@ Submitting new features for inclusion in LAMMPS
|
|||||||
===============================================
|
===============================================
|
||||||
|
|
||||||
We encourage users to submit new features or modifications for LAMMPS to
|
We encourage users to submit new features or modifications for LAMMPS to
|
||||||
`the core developers <https://lammps.sandia.gov/authors.html>`_ so they
|
`the core developers <https://www.lammps.org/authors.html>`_ so they
|
||||||
can be added to the LAMMPS distribution. The preferred way to manage and
|
can be added to the LAMMPS distribution. The preferred way to manage and
|
||||||
coordinate this is via the LAMMPS project on `GitHub
|
coordinate this is via the LAMMPS project on `GitHub
|
||||||
<https://github.com/lammps/lammps>`_. Please see the :doc:`GitHub
|
<https://github.com/lammps/lammps>`_. Please see the :doc:`GitHub
|
||||||
@ -10,15 +10,15 @@ Tutorial <Howto_github>` for a demonstration on how to do that. An
|
|||||||
alternative is to contact the LAMMPS developers or the indicated
|
alternative is to contact the LAMMPS developers or the indicated
|
||||||
developer of a package or feature directly and send in your contribution
|
developer of a package or feature directly and send in your contribution
|
||||||
via e-mail, but that can add a significant delay on getting your
|
via e-mail, but that can add a significant delay on getting your
|
||||||
contribution included, depending on how busy the developer is you
|
contribution included, depending on how busy the respective developer
|
||||||
contact, how complex a task it would be to integrate that code, and how
|
is, how complex a task it would be to integrate that code, and how
|
||||||
many - if any - changes are required before the code can be included.
|
many - if any - changes are required before the code can be included.
|
||||||
|
|
||||||
For any larger modifications or programming project, you are encouraged
|
For any larger modifications or programming project, you are encouraged
|
||||||
to contact the LAMMPS developers ahead of time, in order to discuss
|
to contact the LAMMPS developers ahead of time in order to discuss
|
||||||
implementation strategies and coding guidelines, that will make it
|
implementation strategies and coding guidelines. That will make it
|
||||||
easier to integrate your contribution and result in less work for
|
easier to integrate your contribution and results in less work for
|
||||||
everybody involved. You are also encouraged to search through the list
|
everybody involved. You are also encouraged to search through the list
|
||||||
of `open issues on GitHub <https://github.com/lammps/lammps/issues>`_
|
of `open issues on GitHub <https://github.com/lammps/lammps/issues>`_
|
||||||
and submit a new issue for a planned feature, so you would not duplicate
|
and submit a new issue for a planned feature, so you would not duplicate
|
||||||
the work of others (and possibly get scooped by them) or have your work
|
the work of others (and possibly get scooped by them) or have your work
|
||||||
@ -31,21 +31,22 @@ send an e-mail to ``slack@lammps.org`` explaining what part of LAMMPS
|
|||||||
you are working on. Only discussions related to LAMMPS development are
|
you are working on. Only discussions related to LAMMPS development are
|
||||||
tolerated, so this is **NOT** for people that look for help with compiling,
|
tolerated, so this is **NOT** for people that look for help with compiling,
|
||||||
installing, or using LAMMPS. Please contact the `lammps-users mailing
|
installing, or using LAMMPS. Please contact the `lammps-users mailing
|
||||||
list <https://lammps.sandia.gov/mail.html>`_ for those purposes instead.
|
list <https://www.lammps.org/mail.html>`_ for those purposes instead.
|
||||||
|
|
||||||
How quickly your contribution will be integrated depends largely on how
|
How quickly your contribution will be integrated depends largely on how
|
||||||
much effort it will cause to integrate and test it, how much it requires
|
much effort it will cause to integrate and test it, how many and what
|
||||||
changes to the core codebase, and of how much interest it is to the
|
kind of changes it requires to the core codebase, and of how much
|
||||||
larger LAMMPS community. Please see below for a checklist of typical
|
interest it is to the larger LAMMPS community. Please see below for a
|
||||||
requirements. Once you have prepared everything, see the :doc:`LAMMPS GitHub
|
checklist of typical requirements. Once you have prepared everything,
|
||||||
Tutorial <Howto_github>` page for instructions on
|
see the :doc:`LAMMPS GitHub Tutorial <Howto_github>` page for
|
||||||
how to submit your changes or new files through a GitHub pull
|
instructions on how to submit your changes or new files through a GitHub
|
||||||
request. If you prefer to submit patches or full files, you should first
|
pull request. If you prefer to submit patches or full files, you should
|
||||||
make certain, that your code works correctly with the latest patch-level
|
first make certain, that your code works correctly with the latest
|
||||||
version of LAMMPS and contains all bug fixes from it. Then create a
|
patch-level version of LAMMPS and contains all bug fixes from it. Then
|
||||||
gzipped tar file of all changed or added files or a corresponding patch
|
create a gzipped tar file of all changed or added files or a
|
||||||
file using 'diff -u' or 'diff -c' and compress it with gzip. Please only
|
corresponding patch file using 'diff -u' or 'diff -c' and compress it
|
||||||
use gzip compression, as this works well on all platforms.
|
with gzip. Please only use gzip compression, as this works well and is
|
||||||
|
available on all platforms.
|
||||||
|
|
||||||
If the new features/files are broadly useful we may add them as core
|
If the new features/files are broadly useful we may add them as core
|
||||||
files to LAMMPS or as part of a :doc:`standard package <Packages_standard>`. Else we will add them as a
|
files to LAMMPS or as part of a :doc:`standard package <Packages_standard>`. Else we will add them as a
|
||||||
@ -57,13 +58,16 @@ added to the LAMMPS distribution. All the standard and user packages
|
|||||||
are listed and described on the :doc:`Packages details <Packages_details>` doc page.
|
are listed and described on the :doc:`Packages details <Packages_details>` doc page.
|
||||||
|
|
||||||
Note that by providing us files to release, you are agreeing to make
|
Note that by providing us files to release, you are agreeing to make
|
||||||
them open-source, i.e. we can release them under the terms of the GPL,
|
them open-source, i.e. we can release them under the terms of the GPL
|
||||||
used as a license for the rest of LAMMPS. See the :doc:`LAMMPS license
|
(version 2), used as a license for the rest of LAMMPS. And as part of
|
||||||
<Intro_opensource>` doc page for details.
|
a LGPL (version 2.1) distribution that we make available to developers
|
||||||
|
on request only and with files that are authorized for that kind of
|
||||||
|
distribution removed (e.g. interface to FFTW). See the
|
||||||
|
:doc:`LAMMPS license <Intro_opensource>` doc page for details.
|
||||||
|
|
||||||
With user packages and files, all we are really providing (aside from
|
With user packages and files, all we are really providing (aside from
|
||||||
the fame and fortune that accompanies having your name in the source
|
the fame and fortune that accompanies having your name in the source
|
||||||
code and on the `Authors page <https://lammps.sandia.gov/authors.html>`_
|
code and on the `Authors page <https://www.lammps.org/authors.html>`_
|
||||||
of the `LAMMPS WWW site <lws_>`_), is a means for you to distribute your
|
of the `LAMMPS WWW site <lws_>`_), is a means for you to distribute your
|
||||||
work to the LAMMPS user community, and a mechanism for others to
|
work to the LAMMPS user community, and a mechanism for others to
|
||||||
easily try out your new feature. This may help you find bugs or make
|
easily try out your new feature. This may help you find bugs or make
|
||||||
@ -77,13 +81,13 @@ unusual event).
|
|||||||
If you prefer to actively develop and support your add-on
|
If you prefer to actively develop and support your add-on
|
||||||
feature yourself, then you may wish to make it available for download
|
feature yourself, then you may wish to make it available for download
|
||||||
from your own website, as a user package that LAMMPS users can add to
|
from your own website, as a user package that LAMMPS users can add to
|
||||||
their copy of LAMMPS. See the `Offsite LAMMPS packages and tools <https://lammps.sandia.gov/offsite.html>`_ page of the LAMMPS web
|
their copy of LAMMPS. See the `Offsite LAMMPS packages and tools <https://www.lammps.org/offsite.html>`_ page of the LAMMPS web
|
||||||
site for examples of groups that do this. We are happy to advertise
|
site for examples of groups that do this. We are happy to advertise
|
||||||
your package and web site from that page. Simply email the
|
your package and web site from that page. Simply email the
|
||||||
`developers <https://lammps.sandia.gov/authors.html>`_ with info about
|
`developers <https://www.lammps.org/authors.html>`_ with info about
|
||||||
your package and we will post it there.
|
your package and we will post it there.
|
||||||
|
|
||||||
.. _lws: https://lammps.sandia.gov
|
.. _lws: https://www.lammps.org
|
||||||
|
|
||||||
The previous sections of this doc page describe how to add new "style"
|
The previous sections of this doc page describe how to add new "style"
|
||||||
files of various kinds to LAMMPS. Packages are simply collections of
|
files of various kinds to LAMMPS. Packages are simply collections of
|
||||||
@ -92,7 +96,7 @@ LAMMPS input script. If designed correctly, these additions typically
|
|||||||
do not require changes to the main core of LAMMPS; they are simply
|
do not require changes to the main core of LAMMPS; they are simply
|
||||||
add-on files. If you think your new feature requires non-trivial
|
add-on files. If you think your new feature requires non-trivial
|
||||||
changes in core LAMMPS files, you should `communicate with the
|
changes in core LAMMPS files, you should `communicate with the
|
||||||
developers <https://lammps.sandia.gov/authors.html>`_, since we may or
|
developers <https://www.lammps.org/authors.html>`_, since we may or
|
||||||
may not want to include those changes for some reason. An example of a
|
may not want to include those changes for some reason. An example of a
|
||||||
trivial change is making a parent-class method "virtual" when you derive
|
trivial change is making a parent-class method "virtual" when you derive
|
||||||
a new child class from it.
|
a new child class from it.
|
||||||
@ -112,7 +116,7 @@ packages in the src directory for examples. If you are uncertain, please ask.
|
|||||||
your contribution(s) to be added to main LAMMPS code or one of its
|
your contribution(s) to be added to main LAMMPS code or one of its
|
||||||
standard packages, it needs to be written in a style compatible with
|
standard packages, it needs to be written in a style compatible with
|
||||||
other LAMMPS source files. This means: 2-character indentation per
|
other LAMMPS source files. This means: 2-character indentation per
|
||||||
level, **no tabs**\ , no lines over 80 characters. I/O is done via
|
level, **no tabs**\ , no lines over 100 characters. I/O is done via
|
||||||
the C-style stdio library (mixing of stdio and iostreams is generally
|
the C-style stdio library (mixing of stdio and iostreams is generally
|
||||||
discouraged), class header files should not import any system headers
|
discouraged), class header files should not import any system headers
|
||||||
outside of <cstdio>, STL containers should be avoided in headers,
|
outside of <cstdio>, STL containers should be avoided in headers,
|
||||||
@ -131,6 +135,31 @@ packages in the src directory for examples. If you are uncertain, please ask.
|
|||||||
LAMMPS source files, including the use of the error class for error
|
LAMMPS source files, including the use of the error class for error
|
||||||
and warning messages.
|
and warning messages.
|
||||||
|
|
||||||
|
* To simplify reformatting contributed code in a way that is compatible
|
||||||
|
with the LAMMPS formatting styles, you can use clang-format (version 8
|
||||||
|
or later). The LAMMPS distribution includes a suitable ``.clang-format``
|
||||||
|
file which will be applied if you run ``clang-format -i some_file.cpp``
|
||||||
|
on your files inside the LAMMPS src tree. Please only reformat files
|
||||||
|
that you have contributed. For header files containing a
|
||||||
|
``SomeStyle(keyword, ClassName)`` macros it is required to have this
|
||||||
|
macro embedded with a pair of ``// clang-format off``, ``// clang-format on``
|
||||||
|
commends and the line must be terminated with a semi-colon (;).
|
||||||
|
Example:
|
||||||
|
|
||||||
|
.. code-block:: c++
|
||||||
|
|
||||||
|
#ifdef COMMAND_CLASS
|
||||||
|
// clang-format off
|
||||||
|
CommandStyle(run,Run);
|
||||||
|
// clang-format on
|
||||||
|
#else
|
||||||
|
|
||||||
|
#ifndef LMP_RUN_H
|
||||||
|
[...]
|
||||||
|
|
||||||
|
You may also use ``// clang-format on/off`` throughout your file
|
||||||
|
to protect sections of the file from being reformatted.
|
||||||
|
|
||||||
* If you want your contribution to be added as a user-contributed
|
* If you want your contribution to be added as a user-contributed
|
||||||
feature, and it's a single file (actually a \*.cpp and \*.h file) it can
|
feature, and it's a single file (actually a \*.cpp and \*.h file) it can
|
||||||
rapidly be added to the USER-MISC directory. Send us the one-line
|
rapidly be added to the USER-MISC directory. Send us the one-line
|
||||||
|
|||||||
@ -82,6 +82,7 @@ page gives those details.
|
|||||||
* :ref:`USER-INTEL <PKG-USER-INTEL>`
|
* :ref:`USER-INTEL <PKG-USER-INTEL>`
|
||||||
* :ref:`USER-LB <PKG-USER-LB>`
|
* :ref:`USER-LB <PKG-USER-LB>`
|
||||||
* :ref:`USER-MANIFOLD <PKG-USER-MANIFOLD>`
|
* :ref:`USER-MANIFOLD <PKG-USER-MANIFOLD>`
|
||||||
|
* :ref:`USER-MDI <PKG-USER-MDI>`
|
||||||
* :ref:`USER-MEAMC <PKG-USER-MEAMC>`
|
* :ref:`USER-MEAMC <PKG-USER-MEAMC>`
|
||||||
* :ref:`USER-MESODPD <PKG-USER-MESODPD>`
|
* :ref:`USER-MESODPD <PKG-USER-MESODPD>`
|
||||||
* :ref:`USER-MESONT <PKG-USER-MESONT>`
|
* :ref:`USER-MESONT <PKG-USER-MESONT>`
|
||||||
@ -132,8 +133,8 @@ particle models including ellipsoids, 2d lines, and 3d triangles.
|
|||||||
* `doc/PDF/pair_resquared_extra.pdf <PDF/pair_resquared_extra.pdf>`_
|
* `doc/PDF/pair_resquared_extra.pdf <PDF/pair_resquared_extra.pdf>`_
|
||||||
* examples/ASPHERE
|
* examples/ASPHERE
|
||||||
* examples/ellipse
|
* examples/ellipse
|
||||||
* https://lammps.sandia.gov/movies.html#line
|
* https://www.lammps.org/movies.html#line
|
||||||
* https://lammps.sandia.gov/movies.html#tri
|
* https://www.lammps.org/movies.html#tri
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -329,7 +330,7 @@ This package has :ref:`specific installation instructions <gpu>` on the :doc:`Bu
|
|||||||
* :doc:`package gpu <package>`
|
* :doc:`package gpu <package>`
|
||||||
* :doc:`Commands <Commands_all>` pages (:doc:`pair <Commands_pair>`, :doc:`kspace <Commands_kspace>`)
|
* :doc:`Commands <Commands_all>` pages (:doc:`pair <Commands_pair>`, :doc:`kspace <Commands_kspace>`)
|
||||||
for styles followed by (g)
|
for styles followed by (g)
|
||||||
* `Benchmarks page <https://lammps.sandia.gov/bench.html>`_ of web site
|
* `Benchmarks page <https://www.lammps.org/bench.html>`_ of web site
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -355,11 +356,11 @@ potentials.
|
|||||||
* examples/granregion
|
* examples/granregion
|
||||||
* examples/pour
|
* examples/pour
|
||||||
* bench/in.chute
|
* bench/in.chute
|
||||||
* https://lammps.sandia.gov/pictures.html#jamming
|
* https://www.lammps.org/pictures.html#jamming
|
||||||
* https://lammps.sandia.gov/movies.html#hopper
|
* https://www.lammps.org/movies.html#hopper
|
||||||
* https://lammps.sandia.gov/movies.html#dem
|
* https://www.lammps.org/movies.html#dem
|
||||||
* https://lammps.sandia.gov/movies.html#brazil
|
* https://www.lammps.org/movies.html#brazil
|
||||||
* https://lammps.sandia.gov/movies.html#granregion
|
* https://www.lammps.org/movies.html#granregion
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -446,7 +447,7 @@ time via the "-sf kk" or "-suffix kk" :doc:`command-line switches <Run_options>`
|
|||||||
:ref:`USER-INTEL <PKG-USER-INTEL>`, and :ref:`USER-OMP <PKG-USER-OMP>` packages, which
|
:ref:`USER-INTEL <PKG-USER-INTEL>`, and :ref:`USER-OMP <PKG-USER-OMP>` packages, which
|
||||||
have styles optimized for CPUs, KNLs, and GPUs.
|
have styles optimized for CPUs, KNLs, and GPUs.
|
||||||
|
|
||||||
You must have a C++11 compatible compiler to use this package.
|
You must have a C++14 compatible compiler to use this package.
|
||||||
KOKKOS makes extensive use of advanced C++ features, which can
|
KOKKOS makes extensive use of advanced C++ features, which can
|
||||||
expose compiler bugs, especially when compiling for maximum
|
expose compiler bugs, especially when compiling for maximum
|
||||||
performance at high optimization levels. Please see the file
|
performance at high optimization levels. Please see the file
|
||||||
@ -478,7 +479,7 @@ This package has :ref:`specific installation instructions <kokkos>` on the :doc:
|
|||||||
* Search the :doc:`commands <Commands_all>` pages (:doc:`fix <Commands_fix>`, :doc:`compute <Commands_compute>`,
|
* Search the :doc:`commands <Commands_all>` pages (:doc:`fix <Commands_fix>`, :doc:`compute <Commands_compute>`,
|
||||||
:doc:`pair <Commands_pair>`, :doc:`bond, angle, dihedral, improper <Commands_bond>`,
|
:doc:`pair <Commands_pair>`, :doc:`bond, angle, dihedral, improper <Commands_bond>`,
|
||||||
:doc:`kspace <Commands_kspace>`) for styles followed by (k)
|
:doc:`kspace <Commands_kspace>`) for styles followed by (k)
|
||||||
* `Benchmarks page <https://lammps.sandia.gov/bench.html>`_ of web site
|
* `Benchmarks page <https://www.lammps.org/bench.html>`_ of web site
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -602,7 +603,7 @@ bonds, for performing atomic swaps, and performing grand-canonical MC
|
|||||||
* :doc:`fix tfmc <fix_tfmc>`
|
* :doc:`fix tfmc <fix_tfmc>`
|
||||||
* :doc:`fix widom <fix_widom>`
|
* :doc:`fix widom <fix_widom>`
|
||||||
* :doc:`pair_style dsmc <pair_dsmc>`
|
* :doc:`pair_style dsmc <pair_dsmc>`
|
||||||
* https://lammps.sandia.gov/movies.html#gcmc
|
* https://www.lammps.org/movies.html#gcmc
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -659,8 +660,8 @@ listing, "ls src/MISC", to see the list of commands.
|
|||||||
* :doc:`fix viscosity <fix_viscosity>`
|
* :doc:`fix viscosity <fix_viscosity>`
|
||||||
* examples/KAPPA
|
* examples/KAPPA
|
||||||
* examples/VISCOSITY
|
* examples/VISCOSITY
|
||||||
* https://lammps.sandia.gov/pictures.html#ttm
|
* https://www.lammps.org/pictures.html#ttm
|
||||||
* https://lammps.sandia.gov/movies.html#evaporation
|
* https://www.lammps.org/movies.html#evaporation
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -815,7 +816,7 @@ This package has :ref:`specific installation instructions <opt>` on the :doc:`Bu
|
|||||||
* :doc:`OPT package <Speed_opt>`
|
* :doc:`OPT package <Speed_opt>`
|
||||||
* :doc:`Section 2.6 -sf opt <Run_options>`
|
* :doc:`Section 2.6 -sf opt <Run_options>`
|
||||||
* 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 <https://lammps.sandia.gov/bench.html>`_ of web site
|
* `Benchmarks page <https://www.lammps.org/bench.html>`_ of web site
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -846,7 +847,7 @@ Foster (UTSA).
|
|||||||
* :doc:`compute damage/atom <compute_damage_atom>`
|
* :doc:`compute damage/atom <compute_damage_atom>`
|
||||||
* :doc:`compute plasticity/atom <compute_plasticity_atom>`
|
* :doc:`compute plasticity/atom <compute_plasticity_atom>`
|
||||||
* examples/peri
|
* examples/peri
|
||||||
* https://lammps.sandia.gov/movies.html#peri
|
* https://www.lammps.org/movies.html#peri
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -1007,8 +1008,8 @@ Also several computes which calculate properties of rigid bodies.
|
|||||||
* examples/ASPHERE
|
* examples/ASPHERE
|
||||||
* examples/rigid
|
* examples/rigid
|
||||||
* bench/in.rhodo
|
* bench/in.rhodo
|
||||||
* https://lammps.sandia.gov/movies.html#box
|
* https://www.lammps.org/movies.html#box
|
||||||
* https://lammps.sandia.gov/movies.html#star
|
* https://www.lammps.org/movies.html#star
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -1109,9 +1110,9 @@ colloidal particles.
|
|||||||
* :doc:`fix wall/srd <fix_wall_srd>`
|
* :doc:`fix wall/srd <fix_wall_srd>`
|
||||||
* examples/srd
|
* examples/srd
|
||||||
* examples/ASPHERE
|
* examples/ASPHERE
|
||||||
* https://lammps.sandia.gov/movies.html#tri
|
* https://www.lammps.org/movies.html#tri
|
||||||
* https://lammps.sandia.gov/movies.html#line
|
* https://www.lammps.org/movies.html#line
|
||||||
* https://lammps.sandia.gov/movies.html#poly
|
* https://www.lammps.org/movies.html#poly
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -1203,7 +1204,7 @@ This package has :ref:`specific installation instructions <user-atc>` on the :do
|
|||||||
* src/USER-ATC/README
|
* src/USER-ATC/README
|
||||||
* :doc:`fix atc <fix_atc>`
|
* :doc:`fix atc <fix_atc>`
|
||||||
* examples/USER/atc
|
* examples/USER/atc
|
||||||
* https://lammps.sandia.gov/pictures.html#atc
|
* https://www.lammps.org/pictures.html#atc
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -1336,7 +1337,7 @@ acids.
|
|||||||
* :doc:`pair_style lj/sdk/\* <pair_sdk>`
|
* :doc:`pair_style lj/sdk/\* <pair_sdk>`
|
||||||
* :doc:`angle_style sdk <angle_sdk>`
|
* :doc:`angle_style sdk <angle_sdk>`
|
||||||
* examples/USER/cgsdk
|
* examples/USER/cgsdk
|
||||||
* https://lammps.sandia.gov/pictures.html#cg
|
* https://www.lammps.org/pictures.html#cg
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -1573,7 +1574,7 @@ tools/eff; see its README file.
|
|||||||
* examples/USER/eff
|
* examples/USER/eff
|
||||||
* tools/eff/README
|
* tools/eff/README
|
||||||
* tools/eff
|
* tools/eff
|
||||||
* https://lammps.sandia.gov/movies.html#eff
|
* https://www.lammps.org/movies.html#eff
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -1682,7 +1683,7 @@ This package has :ref:`specific installation instructions <user-intel>` on the :
|
|||||||
* Search the :doc:`commands <Commands_all>` pages (:doc:`fix <Commands_fix>`, :doc:`compute <Commands_compute>`,
|
* Search the :doc:`commands <Commands_all>` pages (:doc:`fix <Commands_fix>`, :doc:`compute <Commands_compute>`,
|
||||||
:doc:`pair <Commands_pair>`, :doc:`bond, angle, dihedral, improper <Commands_bond>`, :doc:`kspace <Commands_kspace>`) for styles followed by (i)
|
:doc:`pair <Commands_pair>`, :doc:`bond, angle, dihedral, improper <Commands_bond>`, :doc:`kspace <Commands_kspace>`) for styles followed by (i)
|
||||||
* src/USER-INTEL/TEST
|
* src/USER-INTEL/TEST
|
||||||
* `Benchmarks page <https://lammps.sandia.gov/bench.html>`_ of web site
|
* `Benchmarks page <https://www.lammps.org/bench.html>`_ of web site
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -1787,7 +1788,29 @@ Waltham, MA, USA)
|
|||||||
* :doc:`fix nve/manifold/rattle <fix_nve_manifold_rattle>`
|
* :doc:`fix nve/manifold/rattle <fix_nve_manifold_rattle>`
|
||||||
* :doc:`fix nvt/manifold/rattle <fix_nvt_manifold_rattle>`
|
* :doc:`fix nvt/manifold/rattle <fix_nvt_manifold_rattle>`
|
||||||
* examples/USER/manifold
|
* examples/USER/manifold
|
||||||
* https://lammps.sandia.gov/movies.html#manifold
|
* https://www.lammps.org/movies.html#manifold
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
|
.. _PKG-USER-MDI:
|
||||||
|
|
||||||
|
USER-MDI package
|
||||||
|
----------------
|
||||||
|
|
||||||
|
**Contents:**
|
||||||
|
|
||||||
|
A LAMMPS command and fix to allow client-server coupling of LAMMPS to
|
||||||
|
other atomic or molecular simulation codes via the `MolSSI Driver Interface
|
||||||
|
(MDI) library <https://molssi-mdi.github.io/MDI_Library/html/index.html>`_.
|
||||||
|
|
||||||
|
**Author:** Taylor Barnes - MolSSI, taylor.a.barnes at gmail.com
|
||||||
|
|
||||||
|
**Supporting info:**
|
||||||
|
|
||||||
|
* src/USER-MDI/README
|
||||||
|
* :doc:`mdi/engine <mdi_engine>`
|
||||||
|
* :doc:`fix mdi/engine <fix_mdi_engine>`
|
||||||
|
* examples/USER/mdi
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -1843,10 +1866,10 @@ algorithm.
|
|||||||
* :doc:`pair_style tdpd <pair_mesodpd>`
|
* :doc:`pair_style tdpd <pair_mesodpd>`
|
||||||
* :doc:`fix mvv/dpd <fix_mvv_dpd>`
|
* :doc:`fix mvv/dpd <fix_mvv_dpd>`
|
||||||
* examples/USER/mesodpd
|
* examples/USER/mesodpd
|
||||||
* https://lammps.sandia.gov/movies.html#mesodpd
|
* https://www.lammps.org/movies.html#mesodpd
|
||||||
|
|
||||||
* examples/USER/meso
|
* examples/USER/meso
|
||||||
* http://lammps.sandia.gov/movies.html#mesodpd
|
* http://www.lammps.org/movies.html#mesodpd
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -2062,7 +2085,7 @@ This package has :ref:`specific installation instructions <user-omp>` on the :do
|
|||||||
* Search the :doc:`commands <Commands_all>` pages (:doc:`fix <Commands_fix>`, :doc:`compute <Commands_compute>`,
|
* Search the :doc:`commands <Commands_all>` pages (:doc:`fix <Commands_fix>`, :doc:`compute <Commands_compute>`,
|
||||||
:doc:`pair <Commands_pair>`, :doc:`bond, angle, dihedral, improper <Commands_bond>`,
|
:doc:`pair <Commands_pair>`, :doc:`bond, angle, dihedral, improper <Commands_bond>`,
|
||||||
:doc:`kspace <Commands_kspace>`) for styles followed by (o)
|
:doc:`kspace <Commands_kspace>`) for styles followed by (o)
|
||||||
* `Benchmarks page <https://lammps.sandia.gov/bench.html>`_ of web site
|
* `Benchmarks page <https://www.lammps.org/bench.html>`_ of web site
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -2245,8 +2268,8 @@ molecules, and chiral-sensitive reactions.
|
|||||||
* src/USER-REACTION/README
|
* src/USER-REACTION/README
|
||||||
* :doc:`fix bond/react <fix_bond_react>`
|
* :doc:`fix bond/react <fix_bond_react>`
|
||||||
* examples/USER/reaction
|
* examples/USER/reaction
|
||||||
* `2017 LAMMPS Workshop <https://lammps.sandia.gov/workshops/Aug17/pdf/gissinger.pdf>`_
|
* `2017 LAMMPS Workshop <https://www.lammps.org/workshops/Aug17/pdf/gissinger.pdf>`_
|
||||||
* `2019 LAMMPS Workshop <https://lammps.sandia.gov/workshops/Aug19/talk_gissinger.pdf>`_
|
* `2019 LAMMPS Workshop <https://www.lammps.org/workshops/Aug19/talk_gissinger.pdf>`_
|
||||||
* reacter.org
|
* reacter.org
|
||||||
|
|
||||||
----------
|
----------
|
||||||
@ -2373,7 +2396,7 @@ This package has :ref:`specific installation instructions <user-smd>` on the :do
|
|||||||
* src/USER-SMD/README
|
* src/USER-SMD/README
|
||||||
* doc/PDF/SMD_LAMMPS_userguide.pdf
|
* doc/PDF/SMD_LAMMPS_userguide.pdf
|
||||||
* examples/USER/smd
|
* examples/USER/smd
|
||||||
* https://lammps.sandia.gov/movies.html#smd
|
* https://www.lammps.org/movies.html#smd
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -2430,7 +2453,7 @@ Dynamics, Ernst Mach Institute, Germany).
|
|||||||
* src/USER-SPH/README
|
* src/USER-SPH/README
|
||||||
* doc/PDF/SPH_LAMMPS_userguide.pdf
|
* doc/PDF/SPH_LAMMPS_userguide.pdf
|
||||||
* examples/USER/sph
|
* examples/USER/sph
|
||||||
* https://lammps.sandia.gov/movies.html#sph
|
* https://www.lammps.org/movies.html#sph
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|||||||
@ -39,13 +39,13 @@ package:
|
|||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`DIPOLE <PKG-DIPOLE>` | point dipole particles | :doc:`pair_style lj/.../dipole <pair_dipole>` | dipole | no |
|
| :ref:`DIPOLE <PKG-DIPOLE>` | point dipole particles | :doc:`pair_style lj/.../dipole <pair_dipole>` | dipole | no |
|
||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`GPU <PKG-GPU>` | GPU-enabled styles | :doc:`Section gpu <Speed_gpu>` | `Benchmarks <https://lammps.sandia.gov/bench.html>`_ | int |
|
| :ref:`GPU <PKG-GPU>` | GPU-enabled styles | :doc:`Section gpu <Speed_gpu>` | `Benchmarks <https://www.lammps.org/bench.html>`_ | int |
|
||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`GRANULAR <PKG-GRANULAR>` | granular systems | :doc:`Howto granular <Howto_granular>` | pour | no |
|
| :ref:`GRANULAR <PKG-GRANULAR>` | granular systems | :doc:`Howto granular <Howto_granular>` | pour | no |
|
||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`KIM <PKG-KIM>` | OpenKIM wrapper | :doc:`pair_style kim <pair_kim>` | kim | ext |
|
| :ref:`KIM <PKG-KIM>` | OpenKIM wrapper | :doc:`pair_style kim <pair_kim>` | kim | ext |
|
||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`KOKKOS <PKG-KOKKOS>` | Kokkos-enabled styles | :doc:`Speed kokkos <Speed_kokkos>` | `Benchmarks <https://lammps.sandia.gov/bench.html>`_ | no |
|
| :ref:`KOKKOS <PKG-KOKKOS>` | Kokkos-enabled styles | :doc:`Speed kokkos <Speed_kokkos>` | `Benchmarks <https://www.lammps.org/bench.html>`_ | no |
|
||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`KSPACE <PKG-KSPACE>` | long-range Coulombic solvers | :doc:`kspace_style <kspace_style>` | peptide | no |
|
| :ref:`KSPACE <PKG-KSPACE>` | long-range Coulombic solvers | :doc:`kspace_style <kspace_style>` | peptide | no |
|
||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
@ -67,7 +67,7 @@ package:
|
|||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`MSCG <PKG-MSCG>` | multi-scale coarse-graining wrapper | :doc:`fix mscg <fix_mscg>` | mscg | ext |
|
| :ref:`MSCG <PKG-MSCG>` | multi-scale coarse-graining wrapper | :doc:`fix mscg <fix_mscg>` | mscg | ext |
|
||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`OPT <PKG-OPT>` | optimized pair styles | :doc:`Speed opt <Speed_opt>` | `Benchmarks <https://lammps.sandia.gov/bench.html>`_ | no |
|
| :ref:`OPT <PKG-OPT>` | optimized pair styles | :doc:`Speed opt <Speed_opt>` | `Benchmarks <https://www.lammps.org/bench.html>`_ | no |
|
||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`PERI <PKG-PERI>` | Peridynamics models | :doc:`pair_style peri <pair_peri>` | peri | no |
|
| :ref:`PERI <PKG-PERI>` | Peridynamics models | :doc:`pair_style peri <pair_peri>` | peri | no |
|
||||||
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
+----------------------------------+--------------------------------------+----------------------------------------------------+------------------------------------------------------+---------+
|
||||||
|
|||||||
@ -59,12 +59,14 @@ package:
|
|||||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`USER-H5MD <PKG-USER-H5MD>` | dump output via HDF5 | :doc:`dump h5md <dump_h5md>` | n/a | ext |
|
| :ref:`USER-H5MD <PKG-USER-H5MD>` | dump output via HDF5 | :doc:`dump h5md <dump_h5md>` | n/a | ext |
|
||||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`USER-INTEL <PKG-USER-INTEL>` | optimized Intel CPU and KNL styles | :doc:`Speed intel <Speed_intel>` | `Benchmarks <https://lammps.sandia.gov/bench.html>`_ | no |
|
| :ref:`USER-INTEL <PKG-USER-INTEL>` | optimized Intel CPU and KNL styles | :doc:`Speed intel <Speed_intel>` | `Benchmarks <https://www.lammps.org/bench.html>`_ | no |
|
||||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`USER-LB <PKG-USER-LB>` | Lattice Boltzmann fluid | :doc:`fix lb/fluid <fix_lb_fluid>` | USER/lb | no |
|
| :ref:`USER-LB <PKG-USER-LB>` | Lattice Boltzmann fluid | :doc:`fix lb/fluid <fix_lb_fluid>` | USER/lb | no |
|
||||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`USER-MANIFOLD <PKG-USER-MANIFOLD>` | motion on 2d surfaces | :doc:`fix manifoldforce <fix_manifoldforce>` | USER/manifold | no |
|
| :ref:`USER-MANIFOLD <PKG-USER-MANIFOLD>` | motion on 2d surfaces | :doc:`fix manifoldforce <fix_manifoldforce>` | USER/manifold | no |
|
||||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
|
| :ref:`USER-MDI <PKG-USER-MDI>` | client-server coupling | :doc:`MDI Howto <Howto_mdi>` | USER/mdi | ext |
|
||||||
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`USER-MEAMC <PKG-USER-MEAMC>` | modified EAM potential (C++) | :doc:`pair_style meam/c <pair_meamc>` | meamc | no |
|
| :ref:`USER-MEAMC <PKG-USER-MEAMC>` | modified EAM potential (C++) | :doc:`pair_style meam/c <pair_meamc>` | meamc | no |
|
||||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`USER-MESODPD <PKG-USER-MESODPD>` | mesoscale DPD models | :doc:`pair_style edpd <pair_mesodpd>` | USER/mesodpd | no |
|
| :ref:`USER-MESODPD <PKG-USER-MESODPD>` | mesoscale DPD models | :doc:`pair_style edpd <pair_mesodpd>` | USER/mesodpd | no |
|
||||||
@ -81,7 +83,7 @@ package:
|
|||||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`USER-NETCDF <PKG-USER-NETCDF>` | dump output via NetCDF | :doc:`dump netcdf <dump_netcdf>` | n/a | ext |
|
| :ref:`USER-NETCDF <PKG-USER-NETCDF>` | dump output via NetCDF | :doc:`dump netcdf <dump_netcdf>` | n/a | ext |
|
||||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`USER-OMP <PKG-USER-OMP>` | OpenMP-enabled styles | :doc:`Speed omp <Speed_omp>` | `Benchmarks <https://lammps.sandia.gov/bench.html>`_ | no |
|
| :ref:`USER-OMP <PKG-USER-OMP>` | OpenMP-enabled styles | :doc:`Speed omp <Speed_omp>` | `Benchmarks <https://www.lammps.org/bench.html>`_ | no |
|
||||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
| :ref:`USER-PACE <PKG-USER-PACE>` | Fast implementation of Atomic Cluster Expansion (ACE) potential | :doc:`pair pace <pair_pace>` | USER/pace | ext |
|
| :ref:`USER-PACE <PKG-USER-PACE>` | Fast implementation of Atomic Cluster Expansion (ACE) potential | :doc:`pair pace <pair_pace>` | USER/pace | ext |
|
||||||
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
+------------------------------------------------+-----------------------------------------------------------------+-------------------------------------------------------------------------------+------------------------------------------------------+---------+
|
||||||
|
|||||||
@ -10,6 +10,7 @@ letter abbreviation can be used:
|
|||||||
* :ref:`-i or -in <file>`
|
* :ref:`-i or -in <file>`
|
||||||
* :ref:`-k or -kokkos <run-kokkos>`
|
* :ref:`-k or -kokkos <run-kokkos>`
|
||||||
* :ref:`-l or -log <log>`
|
* :ref:`-l or -log <log>`
|
||||||
|
* :ref:`-mdi <mdi>`
|
||||||
* :ref:`-m or -mpicolor <mpicolor>`
|
* :ref:`-m or -mpicolor <mpicolor>`
|
||||||
* :ref:`-c or -cite <cite>`
|
* :ref:`-c or -cite <cite>`
|
||||||
* :ref:`-nc or -nocite <nocite>`
|
* :ref:`-nc or -nocite <nocite>`
|
||||||
@ -196,9 +197,23 @@ Option -plog will override the name of the partition log files file.N.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
.. _mdi:
|
||||||
|
|
||||||
|
**-mdi 'multiple flags'**
|
||||||
|
|
||||||
|
This flag is only recognized and used when LAMMPS has support for the MolSSI
|
||||||
|
Driver Interface (MDI) included as part of the :ref:`USER-MDI <PKG-USER-MDI>`
|
||||||
|
package. This flag is specific to the MDI library and controls how LAMMPS
|
||||||
|
interacts with MDI. There are usually multiple flags that have to follow it
|
||||||
|
and those have to be placed in quotation marks. For more information about
|
||||||
|
how to launch LAMMPS in MDI client/server mode please refer to the
|
||||||
|
:doc:`MDI Howto <Howto_mdi>`.
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
.. _mpicolor:
|
.. _mpicolor:
|
||||||
|
|
||||||
**-mpicolor** color
|
**-mpicolor color**
|
||||||
|
|
||||||
If used, this must be the first command-line argument after the LAMMPS
|
If used, this must be the first command-line argument after the LAMMPS
|
||||||
executable name. It is only used when LAMMPS is launched by an mpirun
|
executable name. It is only used when LAMMPS is launched by an mpirun
|
||||||
@ -223,7 +238,7 @@ links with from the lib/message directory. See the
|
|||||||
|
|
||||||
.. _cite:
|
.. _cite:
|
||||||
|
|
||||||
**-cite style or file name**
|
**-cite style** or **file name**
|
||||||
|
|
||||||
Select how and where to output a reminder about citing contributions
|
Select how and where to output a reminder about citing contributions
|
||||||
to the LAMMPS code that were used during the run. Available styles are
|
to the LAMMPS code that were used during the run. Available styles are
|
||||||
|
|||||||
@ -12,7 +12,7 @@ accelerator packages provided with LAMMPS that contain code optimized
|
|||||||
for certain kinds of hardware, including multi-core CPUs, GPUs, and
|
for certain kinds of hardware, including multi-core CPUs, GPUs, and
|
||||||
Intel Xeon Phi co-processors.
|
Intel Xeon Phi co-processors.
|
||||||
|
|
||||||
The `Benchmark page <https://lammps.sandia.gov/bench.html>`_ of the LAMMPS
|
The `Benchmark page <https://www.lammps.org/bench.html>`_ of the LAMMPS
|
||||||
web site gives performance results for the various accelerator
|
web site gives performance results for the various accelerator
|
||||||
packages discussed on the :doc:`Speed packages <Speed_packages>` doc
|
packages discussed on the :doc:`Speed packages <Speed_packages>` doc
|
||||||
page, for several of the standard LAMMPS benchmark problems, as a
|
page, for several of the standard LAMMPS benchmark problems, as a
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
Benchmarks
|
Benchmarks
|
||||||
==========
|
==========
|
||||||
|
|
||||||
Current LAMMPS performance is discussed on the `Benchmarks page <https://lammps.sandia.gov/bench.html>`_ of the `LAMMPS website <lws_>`_
|
Current LAMMPS performance is discussed on the `Benchmarks page <https://www.lammps.org/bench.html>`_ of the `LAMMPS website <lws_>`_
|
||||||
where timings and parallel efficiency are listed. The page has
|
where timings and parallel efficiency are listed. The page has
|
||||||
several sections, which are briefly described below:
|
several sections, which are briefly described below:
|
||||||
|
|
||||||
@ -43,11 +43,11 @@ to build LAMMPS and run on that kind of hardware.
|
|||||||
|
|
||||||
The bench/POTENTIALS directory has input files which correspond to the
|
The bench/POTENTIALS directory has input files which correspond to the
|
||||||
table of results on the
|
table of results on the
|
||||||
`Potentials <https://lammps.sandia.gov/bench.html#potentials>`_ section of
|
`Potentials <https://www.lammps.org/bench.html#potentials>`_ section of
|
||||||
the Benchmarks web page. So you can also run those test problems on
|
the Benchmarks web page. So you can also run those test problems on
|
||||||
your machine.
|
your machine.
|
||||||
|
|
||||||
The `billion-atom <https://lammps.sandia.gov/bench.html#billion>`_ section
|
The `billion-atom <https://www.lammps.org/bench.html#billion>`_ section
|
||||||
of the Benchmarks web page has performance data for very large
|
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.
|
||||||
@ -73,4 +73,4 @@ estimate parallel performance for multi-node runs using the same logic
|
|||||||
as for all-MPI mode, except that now you will typically need many more
|
as for all-MPI mode, except that now you will typically need many more
|
||||||
atoms/node to achieve good scalability.
|
atoms/node to achieve good scalability.
|
||||||
|
|
||||||
.. _lws: https://lammps.sandia.gov
|
.. _lws: https://www.lammps.org
|
||||||
|
|||||||
@ -152,7 +152,7 @@ in OpenCL mode on CPUs (which uses vectorization and multithreading) is
|
|||||||
usually resulting in inferior performance compared to using LAMMPS' native
|
usually resulting in inferior performance compared to using LAMMPS' native
|
||||||
threading and vectorization support in the USER-OMP and USER-INTEL packages.
|
threading and vectorization support in the USER-OMP and USER-INTEL packages.
|
||||||
|
|
||||||
See the `Benchmark page <https://lammps.sandia.gov/bench.html>`_ of the
|
See the `Benchmark page <https://www.lammps.org/bench.html>`_ of the
|
||||||
LAMMPS web site for performance of the GPU package on various
|
LAMMPS web site for performance of the GPU package on various
|
||||||
hardware, including the Titan HPC platform at ORNL.
|
hardware, including the Titan HPC platform at ORNL.
|
||||||
|
|
||||||
|
|||||||
@ -406,7 +406,7 @@ Generally speaking, the following rules of thumb apply:
|
|||||||
package also can increase the vector length of vector instructions
|
package also can increase the vector length of vector instructions
|
||||||
by switching to single or mixed precision mode.
|
by switching to single or mixed precision mode.
|
||||||
|
|
||||||
See the `Benchmark page <https://lammps.sandia.gov/bench.html>`_ of the
|
See the `Benchmark page <https://www.lammps.org/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.
|
||||||
|
|
||||||
|
|||||||
@ -145,7 +145,7 @@ sub-directories with Make.py commands and input scripts for using all
|
|||||||
the accelerator packages on various machines. See the README files in
|
the accelerator packages on various machines. See the README files in
|
||||||
those directories.
|
those directories.
|
||||||
|
|
||||||
As mentioned above, the `Benchmark page <https://lammps.sandia.gov/bench.html>`_ of the LAMMPS web site gives
|
As mentioned above, the `Benchmark page <https://www.lammps.org/bench.html>`_ of the LAMMPS web site gives
|
||||||
performance results for the various accelerator packages for several
|
performance results for the various accelerator packages for several
|
||||||
of the standard LAMMPS benchmark problems, as a function of problem
|
of the standard LAMMPS benchmark problems, as a function of problem
|
||||||
size and number of compute nodes, on different hardware platforms.
|
size and number of compute nodes, on different hardware platforms.
|
||||||
|
|||||||
@ -6,15 +6,15 @@ molecular dynamics computations. Additional pre- and post-processing
|
|||||||
steps are often necessary to setup and analyze a simulation. A list
|
steps are often necessary to setup and analyze a simulation. A list
|
||||||
of such tools can be found on the `LAMMPS webpage <lws_>`_ at these links:
|
of such tools can be found on the `LAMMPS webpage <lws_>`_ at these links:
|
||||||
|
|
||||||
* `Pre/Post processing <https://lammps.sandia.gov/prepost.html>`_
|
* `Pre/Post processing <https://www.lammps.org/prepost.html>`_
|
||||||
* `Offsite LAMMPS packages & tools <https://lammps.sandia.gov/offsite.html>`_
|
* `Offsite LAMMPS packages & tools <https://www.lammps.org/offsite.html>`_
|
||||||
* `Pizza.py toolkit <pizza_>`_
|
* `Pizza.py toolkit <pizza_>`_
|
||||||
|
|
||||||
The last link for `Pizza.py <pizza_>`_ is a Python-based tool developed at
|
The last link for `Pizza.py <pizza_>`_ is a Python-based tool developed at
|
||||||
Sandia which provides tools for doing setup, analysis, plotting, and
|
Sandia which provides tools for doing setup, analysis, plotting, and
|
||||||
visualization for LAMMPS simulations.
|
visualization for LAMMPS simulations.
|
||||||
|
|
||||||
.. _lws: https://lammps.sandia.gov
|
.. _lws: https://www.lammps.org
|
||||||
.. _pizza: https://pizza.sandia.gov
|
.. _pizza: https://pizza.sandia.gov
|
||||||
.. _python: https://www.python.org
|
.. _python: https://www.python.org
|
||||||
|
|
||||||
|
|||||||
@ -69,7 +69,6 @@ parenthesized comments):
|
|||||||
HAM (keyword is the first text on line)
|
HAM (keyword is the first text on line)
|
||||||
N 181 FP 0 0 EQ 90.0 (N, FP, EQ parameters)
|
N 181 FP 0 0 EQ 90.0 (N, FP, EQ parameters)
|
||||||
(blank line)
|
(blank line)
|
||||||
N 181 FP 0 0 (N, FP parameters)
|
|
||||||
1 0.0 200.5 2.5 (index, angle, energy, derivative)
|
1 0.0 200.5 2.5 (index, angle, energy, derivative)
|
||||||
2 1.0 198.0 2.5
|
2 1.0 198.0 2.5
|
||||||
...
|
...
|
||||||
|
|||||||
@ -80,7 +80,7 @@ LAMMPS commands require a map, even for atomic systems, and will
|
|||||||
generate an error if one does not exist. The *map* keyword thus
|
generate an error if one does not exist. The *map* keyword thus
|
||||||
allows you to force the creation of a map. The *yes* value will
|
allows you to force the creation of a map. The *yes* value will
|
||||||
create either an *array* or *hash* style map, as explained in the next
|
create either an *array* or *hash* style map, as explained in the next
|
||||||
paragraph. The *array* and *hash* values create an atom-style or
|
paragraph. The *array* and *hash* values create an array-style or
|
||||||
hash-style map respectively.
|
hash-style map respectively.
|
||||||
|
|
||||||
For an *array*\ -style map, each processor stores a lookup table of
|
For an *array*\ -style map, each processor stores a lookup table of
|
||||||
|
|||||||
@ -34,7 +34,7 @@ Examples
|
|||||||
|
|
||||||
comm_modify mode multi reduce/multi
|
comm_modify mode multi reduce/multi
|
||||||
comm_modify mode multi group solvent
|
comm_modify mode multi group solvent
|
||||||
comm_modift mode multi cutoff/multi 1 10.0 cutoff/multi 2*4 15.0
|
comm_modify mode multi cutoff/multi 1 10.0 cutoff/multi 2*4 15.0
|
||||||
comm_modify vel yes
|
comm_modify vel yes
|
||||||
comm_modify mode single cutoff 5.0 vel yes
|
comm_modify mode single cutoff 5.0 vel yes
|
||||||
comm_modify cutoff/multi * 0.0
|
comm_modify cutoff/multi * 0.0
|
||||||
@ -75,8 +75,8 @@ communicated. in *multi/old*, a similar technique is used but atoms
|
|||||||
are grouped by atom type. See the :doc:`neighbor multi <neighbor>` and
|
are grouped by atom type. See the :doc:`neighbor multi <neighbor>` and
|
||||||
:doc:`neighbor multi/old <neighbor>` commands for
|
:doc:`neighbor multi/old <neighbor>` commands for
|
||||||
neighbor list construction options that may also be beneficial for
|
neighbor list construction options that may also be beneficial for
|
||||||
simulations of this kind. The *multi* communiction mode is only compatable
|
simulations of this kind. The *multi* communication mode is only compatible
|
||||||
with the *multi* neighbor style. The *multi/old* communication mode is compatble
|
with the *multi* neighbor style. The *multi/old* communication mode is comparable
|
||||||
with both the *multi* and *multi/old* neighbor styles.
|
with both the *multi* and *multi/old* neighbor styles.
|
||||||
|
|
||||||
The *cutoff* keyword allows you to extend the ghost cutoff distance
|
The *cutoff* keyword allows you to extend the ghost cutoff distance
|
||||||
@ -97,18 +97,18 @@ warning is printed, if this bond based estimate is larger than the
|
|||||||
communication cutoff used.
|
communication cutoff used.
|
||||||
|
|
||||||
The *cutoff/multi* option is equivalent to *cutoff*\ , but applies to
|
The *cutoff/multi* option is equivalent to *cutoff*\ , but applies to
|
||||||
communication mode *multi* instead. Since the communication
|
communication mode *multi* instead. Since the communication cutoffs are
|
||||||
cutoffs are determined per atom collections, a collection specifier is needed and
|
determined per atom collections, a collection specifier is needed and
|
||||||
cutoff for one or multiple collections can be extended. Also ranges of collections
|
cutoff for one or multiple collections can be extended. Also ranges of
|
||||||
using the usual asterisk notation can be given.
|
collections using the usual asterisk notation can be given. Collections
|
||||||
Collections are indexed from 1 to N where N is the total number of collections.
|
are indexed from 1 to N where N is the total number of collections.
|
||||||
Note that the arguments for *cutoff/multi* are parsed right before each
|
Note that the arguments for *cutoff/multi* are parsed right before each
|
||||||
simulation to account for potential changes in the number of collections.
|
simulation to account for potential changes in the number of
|
||||||
Custom cutoffs are preserved between runs but if collections are redefined,
|
collections. Custom cutoffs are preserved between runs but if
|
||||||
one may want to respecify communication cutoffs.
|
collections are redefined, one may want to re-specify the communication
|
||||||
For granular pair styles,the default cutoff is set to the sum of the
|
cutoffs. For granular pair styles,the default cutoff is set to the sum
|
||||||
current maximum atomic radii for each collection.
|
of the current maximum atomic radii for each collection. The
|
||||||
The *cutoff/multi/old* option is similar to *cutoff/multi* except it
|
*cutoff/multi/old* option is similar to *cutoff/multi* except it
|
||||||
operates on atom types as opposed to collections.
|
operates on atom types as opposed to collections.
|
||||||
|
|
||||||
The *reduce/multi* option applies to *multi* and sets the communication
|
The *reduce/multi* option applies to *multi* and sets the communication
|
||||||
@ -147,7 +147,7 @@ ghost cutoff should be set.
|
|||||||
In the last scenario, a :doc:`fix <fix>` or :doc:`compute <compute>` or
|
In the last scenario, a :doc:`fix <fix>` or :doc:`compute <compute>` or
|
||||||
:doc:`pairwise potential <pair_style>` needs to calculate with ghost
|
:doc:`pairwise potential <pair_style>` needs to calculate with ghost
|
||||||
atoms beyond the normal pairwise cutoff for some computation it
|
atoms beyond the normal pairwise cutoff for some computation it
|
||||||
performs (e.g. locate neighbors of ghost atoms in a multibody pair
|
performs (e.g. locate neighbors of ghost atoms in a manybody pair
|
||||||
potential). Setting the ghost cutoff appropriately can insure it will
|
potential). Setting the ghost cutoff appropriately can insure it will
|
||||||
find the needed atoms.
|
find the needed atoms.
|
||||||
|
|
||||||
|
|||||||
@ -59,6 +59,7 @@ Commands
|
|||||||
lattice
|
lattice
|
||||||
log
|
log
|
||||||
mass
|
mass
|
||||||
|
mdi_engine
|
||||||
message
|
message
|
||||||
min_modify
|
min_modify
|
||||||
min_spin
|
min_spin
|
||||||
|
|||||||
@ -244,6 +244,7 @@ accelerated styles exist.
|
|||||||
* :doc:`lb/viscous <fix_lb_viscous>` -
|
* :doc:`lb/viscous <fix_lb_viscous>` -
|
||||||
* :doc:`lineforce <fix_lineforce>` - constrain atoms to move in a line
|
* :doc:`lineforce <fix_lineforce>` - constrain atoms to move in a line
|
||||||
* :doc:`manifoldforce <fix_manifoldforce>` - restrain atoms to a manifold during minimization
|
* :doc:`manifoldforce <fix_manifoldforce>` - restrain atoms to a manifold during minimization
|
||||||
|
* :doc:`mdi/engine <fix_mdi_engine>` - connect LAMMPS to external programs via the MolSSI Driver Interface (MDI)
|
||||||
* :doc:`meso/move <fix_meso_move>` - move mesoscopic SPH/SDPD particles in a prescribed fashion
|
* :doc:`meso/move <fix_meso_move>` - move mesoscopic SPH/SDPD particles in a prescribed fashion
|
||||||
* :doc:`momentum <fix_momentum>` - zero the linear and/or angular momentum of a group of atoms
|
* :doc:`momentum <fix_momentum>` - zero the linear and/or angular momentum of a group of atoms
|
||||||
* :doc:`momentum/chunk <fix_momentum>` - zero the linear and/or angular momentum of a chunk of atoms
|
* :doc:`momentum/chunk <fix_momentum>` - zero the linear and/or angular momentum of a chunk of atoms
|
||||||
|
|||||||
@ -92,6 +92,11 @@ The :doc:`thermo_modify <thermo_modify>` *press* option is supported
|
|||||||
by this fix to add the rescaled kinetic pressure as part of
|
by this fix to add the rescaled kinetic pressure as part of
|
||||||
:doc:`thermodynamic output <thermo_style>`.
|
:doc:`thermodynamic output <thermo_style>`.
|
||||||
|
|
||||||
|
This fix computes a global scalar which can be accessed by various
|
||||||
|
:doc:`output commands <Howto_output>`. The scalar is the effective
|
||||||
|
temperature :math:`T_{eff}`. The scalar value calculated by this
|
||||||
|
fix is "intensive".
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|||||||
59
doc/src/fix_mdi_engine.rst
Normal file
59
doc/src/fix_mdi_engine.rst
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
.. index:: fix mdi/engine
|
||||||
|
|
||||||
|
fix mdi/engine command
|
||||||
|
======================
|
||||||
|
|
||||||
|
Syntax
|
||||||
|
""""""
|
||||||
|
|
||||||
|
.. parsed-literal::
|
||||||
|
|
||||||
|
fix ID group-ID mdi/engine
|
||||||
|
|
||||||
|
* ID, group-ID are documented in :doc:`fix <fix>` command
|
||||||
|
* mdi/engine = style name of this fix command
|
||||||
|
|
||||||
|
Examples
|
||||||
|
""""""""
|
||||||
|
|
||||||
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
|
fix 1 all mdi/engine
|
||||||
|
|
||||||
|
Description
|
||||||
|
"""""""""""
|
||||||
|
|
||||||
|
This fix is used along with the :doc:`mdi/engine <mdi_engine>` command
|
||||||
|
to enable LAMMPS to use the `MDI Library
|
||||||
|
<https://molssi-mdi.github.io/MDI_Library/html/index.html>`_ to run as
|
||||||
|
an MDI engine. The fix provides hooks that enable MDI driver codes to
|
||||||
|
communicate with LAMMPS at various points within a LAMMPS timestep.
|
||||||
|
|
||||||
|
It is not generally necessary to add this fix to a LAMMPS input file,
|
||||||
|
even when using the :doc:`mdi/engine <mdi_engine>` command. If the
|
||||||
|
:doc:`mdi/engine <mdi_engine>` command is executed and this fix is not
|
||||||
|
present, it will automatically be added and applied as a new fix for
|
||||||
|
all atoms for the duration of the command. Thus it is only necessary
|
||||||
|
to add this fix to an input file when you want to modify the group-ID
|
||||||
|
or the ordering of this fix relative to other fixes in the input script.
|
||||||
|
|
||||||
|
For more information about running LAMMPS as an MDI engine, see the
|
||||||
|
:doc:`mdi/engine <mdi_engine>` command and the :doc:`Howto mdi
|
||||||
|
<Howto_mdi>` doc page.
|
||||||
|
|
||||||
|
Restrictions
|
||||||
|
""""""""""""
|
||||||
|
|
||||||
|
This command is part of the USER-MDI package. It is only enabled if
|
||||||
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
|
Related commands
|
||||||
|
""""""""""""""""
|
||||||
|
|
||||||
|
:doc:`mdi/engine <mdi_engine>`
|
||||||
|
|
||||||
|
Default
|
||||||
|
"""""""
|
||||||
|
|
||||||
|
none
|
||||||
@ -65,7 +65,7 @@ non-granular particles and simpler wall geometries, respectively.
|
|||||||
|
|
||||||
Here are snapshots of example models using this command. Corresponding
|
Here are snapshots of example models using this command. Corresponding
|
||||||
input scripts can be found in examples/granregion. Movies of these
|
input scripts can be found in examples/granregion. Movies of these
|
||||||
simulations are `here on the Movies page <https://lammps.sandia.gov/movies.html#granregion>`_
|
simulations are `here on the Movies page <https://www.lammps.org/movies.html#granregion>`_
|
||||||
of the LAMMPS web site.
|
of the LAMMPS web site.
|
||||||
|
|
||||||
.. |wallgran1| image:: img/gran_funnel.png
|
.. |wallgran1| image:: img/gran_funnel.png
|
||||||
|
|||||||
88
doc/src/mdi_engine.rst
Normal file
88
doc/src/mdi_engine.rst
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
.. index:: mdi/engine
|
||||||
|
|
||||||
|
mdi_engine command
|
||||||
|
==================
|
||||||
|
|
||||||
|
Syntax
|
||||||
|
""""""
|
||||||
|
|
||||||
|
.. parsed-literal::
|
||||||
|
|
||||||
|
mdi_engine
|
||||||
|
|
||||||
|
Description
|
||||||
|
"""""""""""
|
||||||
|
|
||||||
|
This command is used to have LAMMPS act as a server with another
|
||||||
|
client code to effectively couple the two codes together in
|
||||||
|
client/server mode.
|
||||||
|
|
||||||
|
More specifically, this command causes LAMMPS to begin using the `MDI
|
||||||
|
Library <https://molssi-mdi.github.io/MDI_Library/html/index.html>`_
|
||||||
|
to run as an MDI engine (server), responding to commands made by an
|
||||||
|
external MDI driver code (client). See the :doc:`Howto mdi
|
||||||
|
<Howto_mdi>` doc page for more information about how LAMMPS can work
|
||||||
|
as both an MDI driver or engine.
|
||||||
|
|
||||||
|
General information about launching codes that communicate using the
|
||||||
|
MDI Library can be found in the `corresponding page
|
||||||
|
<https://molssi-mdi.github.io/MDI_Library/html/library_page.html#library_launching_sec>`_
|
||||||
|
of the MDI Library's documentation.
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
|
This command should typically be used in an input script after LAMMPS
|
||||||
|
has setup the system it is going to model in collaboration with the
|
||||||
|
driver code. Depending on how the driver code tells the LAMMPS engine
|
||||||
|
to exit, other commands can be executed after this command, but
|
||||||
|
typically it should be used at the end of the LAMMPS input script.
|
||||||
|
|
||||||
|
To act as a MD-based MDI engine, this is the list of MDI commands from
|
||||||
|
a driver code which LAMMPS currently recognizes. See more details
|
||||||
|
about these commands in the `MDI library documentation
|
||||||
|
<https://molssi-mdi.github.io/MDI_Library/html/mdi_standard.html>`_
|
||||||
|
.. NOTE: Taylor - is this the best link for this info? Can we flesh this
|
||||||
|
.. out with the full list of supported commands? Maybe the distinction
|
||||||
|
.. of what "node" the commands refer to is not needed in this table?
|
||||||
|
|
||||||
|
.. list-table::
|
||||||
|
:widths: 20 80
|
||||||
|
:header-rows: 1
|
||||||
|
|
||||||
|
* - Command name
|
||||||
|
- Action
|
||||||
|
* - >NATOMS
|
||||||
|
- Driver sends the number of atoms in the system
|
||||||
|
* - <NATOMS
|
||||||
|
- Driver requests the number of atoms in the system
|
||||||
|
* - <COORDS
|
||||||
|
- Driver requests 3*N double-precision atom coordinates
|
||||||
|
* - >FORCES
|
||||||
|
- Driver sends 3*N double-precision atom forces
|
||||||
|
* - <COORDS
|
||||||
|
- Driver requests 3*N double-precision atom forces
|
||||||
|
* - EXIT
|
||||||
|
- Driver tells the engine (LAMMPS) to exit engine mode
|
||||||
|
|
||||||
|
If these commands are not sufficient to support what a driver which
|
||||||
|
you write needs, additional commands can be defined by simply using a
|
||||||
|
new command name not in this list. Code to support the new command
|
||||||
|
needs to be added to the USER-MDI package within LAMMPS; see its
|
||||||
|
src/USER-MDI/mdi_engine.cpp and fix_mdi_engine.cpp files.
|
||||||
|
|
||||||
|
Restrictions
|
||||||
|
""""""""""""
|
||||||
|
|
||||||
|
This command is part of the USER-MDI package. It is only enabled if
|
||||||
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
|
Related commands
|
||||||
|
""""""""""""""""
|
||||||
|
|
||||||
|
:doc:`fix mdi/engine <fix_mdi_engine>`
|
||||||
|
|
||||||
|
Default
|
||||||
|
"""""""
|
||||||
|
|
||||||
|
None
|
||||||
@ -221,14 +221,15 @@ from 1 to n (inclusive). A trailing asterisk means all types from n to M
|
|||||||
(inclusive). A middle asterisk means all types from m to n (inclusive).
|
(inclusive). A middle asterisk means all types from m to n (inclusive).
|
||||||
Note that all atom types must be included in exactly one of the N collections.
|
Note that all atom types must be included in exactly one of the N collections.
|
||||||
|
|
||||||
The *collection/interval* option provides a similar capability.
|
The *collection/interval* option provides a similar capability. This
|
||||||
This command allows a user to define collections by specifying a
|
command allows a user to define collections by specifying a series of
|
||||||
series of cutoff intervals. LAMMPS will automatically sort atoms into these intervals
|
cutoff intervals. LAMMPS will automatically sort atoms into these
|
||||||
based on their type-dependent cutoffs or their finite size.
|
intervals based on their type-dependent cutoffs or their finite size.
|
||||||
You must first specify the number of collections N to be
|
You must first specify the number of collections N to be defined
|
||||||
defined followed by N values representing the upper cutoff of each interval.
|
followed by N values representing the upper cutoff of each interval.
|
||||||
This command is particularly useful for granular pairstyles where the interaction distance
|
This command is particularly useful for granular pair styles where the
|
||||||
of particles depends on their radius and may not depend on their atom type.
|
interaction distance of particles depends on their radius and may not
|
||||||
|
depend on their atom type.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -145,6 +145,22 @@ specified since a Coulombic cutoff cannot be specified for an individual I,J
|
|||||||
type pair. All type pairs use the same global Coulombic cutoff specified in
|
type pair. All type pairs use the same global Coulombic cutoff specified in
|
||||||
the pair_style command.
|
the pair_style command.
|
||||||
|
|
||||||
|
.. warning::
|
||||||
|
|
||||||
|
Because of how these pair styles implement the coulomb interactions
|
||||||
|
by implicitly defining a fourth site for the negative charge
|
||||||
|
of the TIP4P and similar water models, special care must be taken
|
||||||
|
when using these pair styles with other computations that also use
|
||||||
|
charges. Unless they are specially set up to also handle the implicit
|
||||||
|
definition of the 4th site, results are likely incorrect. Example:
|
||||||
|
:doc:`compute dipole/chunk <compute_dipole_chunk>`. For the same
|
||||||
|
reason, when using one of these pair styles with
|
||||||
|
:doc:`pair_style hybrid <pair_hybrid>`, **all** coulomb interactions
|
||||||
|
should be handled by a single sub-style with TIP4P support. All other
|
||||||
|
instances and styles will "see" the M point charges at the position
|
||||||
|
of the Oxygen atom and thus compute incorrect forces and energies.
|
||||||
|
LAMMPS will print a warning when it detects one of these issues.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
A version of these styles with a soft core, *lj/cut/tip4p/long/soft*\ , suitable
|
A version of these styles with a soft core, *lj/cut/tip4p/long/soft*\ , suitable
|
||||||
|
|||||||
@ -35,6 +35,10 @@ hr {
|
|||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#command-reference.section h2 {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
.ui.tabular.menu .item {
|
.ui.tabular.menu .item {
|
||||||
padding-right: 1em;
|
padding-right: 1em;
|
||||||
padding-left: 1em;
|
padding-left: 1em;
|
||||||
|
|||||||
@ -253,7 +253,7 @@ html_show_sourcelink = False
|
|||||||
# Output file base name for HTML help builder.
|
# Output file base name for HTML help builder.
|
||||||
htmlhelp_basename = 'LAMMPSdoc'
|
htmlhelp_basename = 'LAMMPSdoc'
|
||||||
|
|
||||||
html_add_permalinks = ''
|
html_permalinks = True
|
||||||
|
|
||||||
if 'epub' in sys.argv:
|
if 'epub' in sys.argv:
|
||||||
html_math_renderer = 'imgmath'
|
html_math_renderer = 'imgmath'
|
||||||
|
|||||||
@ -47,6 +47,7 @@ Agnolin
|
|||||||
Ai
|
Ai
|
||||||
Aidan
|
Aidan
|
||||||
aij
|
aij
|
||||||
|
aimd
|
||||||
airebo
|
airebo
|
||||||
Aj
|
Aj
|
||||||
ajs
|
ajs
|
||||||
@ -196,6 +197,7 @@ Ballenegger
|
|||||||
Bammann
|
Bammann
|
||||||
Banna
|
Banna
|
||||||
Barashev
|
Barashev
|
||||||
|
barnes
|
||||||
barostat
|
barostat
|
||||||
Barostats
|
Barostats
|
||||||
barostatted
|
barostatted
|
||||||
@ -1207,6 +1209,7 @@ Halver
|
|||||||
Hamaker
|
Hamaker
|
||||||
Hamel
|
Hamel
|
||||||
Hammerschmidt
|
Hammerschmidt
|
||||||
|
Hanley
|
||||||
haptic
|
haptic
|
||||||
Hara
|
Hara
|
||||||
Harpertown
|
Harpertown
|
||||||
@ -1269,6 +1272,7 @@ holonomic
|
|||||||
Homebrew
|
Homebrew
|
||||||
hooke
|
hooke
|
||||||
Hookean
|
Hookean
|
||||||
|
hostname
|
||||||
hotpink
|
hotpink
|
||||||
Houlle
|
Houlle
|
||||||
howto
|
howto
|
||||||
@ -1728,6 +1732,7 @@ Lmpsdata
|
|||||||
lmptype
|
lmptype
|
||||||
LMT
|
LMT
|
||||||
ln
|
ln
|
||||||
|
localhost
|
||||||
localTemp
|
localTemp
|
||||||
localvectors
|
localvectors
|
||||||
Loewen
|
Loewen
|
||||||
@ -1858,6 +1863,8 @@ mc
|
|||||||
McLachlan
|
McLachlan
|
||||||
md
|
md
|
||||||
mdf
|
mdf
|
||||||
|
MDI
|
||||||
|
mdi
|
||||||
mdpd
|
mdpd
|
||||||
mDPD
|
mDPD
|
||||||
meam
|
meam
|
||||||
@ -2843,6 +2850,8 @@ Runge
|
|||||||
runtime
|
runtime
|
||||||
Rutuparna
|
Rutuparna
|
||||||
rx
|
rx
|
||||||
|
rxnave
|
||||||
|
rxnsum
|
||||||
ry
|
ry
|
||||||
rz
|
rz
|
||||||
Ryckaert
|
Ryckaert
|
||||||
@ -3143,6 +3152,7 @@ Tanmoy
|
|||||||
Tartakovsky
|
Tartakovsky
|
||||||
taskset
|
taskset
|
||||||
taubi
|
taubi
|
||||||
|
taylor
|
||||||
tb
|
tb
|
||||||
tchain
|
tchain
|
||||||
Tchain
|
Tchain
|
||||||
|
|||||||
@ -10,7 +10,7 @@ systems. Some of the directories include a Python script, which can
|
|||||||
be used with the Pizza.py tool to create the data file, e.g. for
|
be used with the Pizza.py tool to create the data file, e.g. for
|
||||||
collections of rigid bodies.
|
collections of rigid bodies.
|
||||||
|
|
||||||
The web site for Pizza.py is http://pizza.sandia.gov
|
The web site for Pizza.py is https://pizza.sandia.gov
|
||||||
|
|
||||||
For example, If you have Pizza.py installed you can type "pizza.py -f
|
For example, If you have Pizza.py installed you can type "pizza.py -f
|
||||||
box.py", which creates the data.box data file in the box dir.
|
box.py", which creates the data.box data file in the box dir.
|
||||||
@ -18,7 +18,7 @@ box.py", which creates the data.box data file in the box dir.
|
|||||||
If you uncomment the dump or dump image lines in the input scripts the
|
If you uncomment the dump or dump image lines in the input scripts the
|
||||||
runs will produce dump files or JPG images which you can view or
|
runs will produce dump files or JPG images which you can view or
|
||||||
animate. See the Movies page of the LAMMPS web site
|
animate. See the Movies page of the LAMMPS web site
|
||||||
(http://lammps.sandia.gov/movies.html), for animations of these
|
(https://www.lammps.org/movies.html), for animations of these
|
||||||
scripts. Most were done using the dump image command. A few were
|
scripts. Most were done using the dump image command. A few were
|
||||||
done using the gl tool in Pizza.py; the Pizza.py scripts that do the
|
done using the gl tool in Pizza.py; the Pizza.py scripts that do the
|
||||||
animation are given in the directory, e.g. as line.viz.py.
|
animation are given in the directory, e.g. as line.viz.py.
|
||||||
|
|||||||
@ -67,7 +67,7 @@ delete_atoms overlap 1.0 small big
|
|||||||
|
|
||||||
reset_timestep 0
|
reset_timestep 0
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
|
|
||||||
comm_modify mode multi group big vel yes
|
comm_modify mode multi group big vel yes
|
||||||
|
|||||||
@ -67,7 +67,7 @@ delete_atoms overlap 1.0 small big
|
|||||||
|
|
||||||
reset_timestep 0
|
reset_timestep 0
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
|
|
||||||
comm_modify mode multi group big vel yes
|
comm_modify mode multi group big vel yes
|
||||||
|
|||||||
@ -61,7 +61,7 @@ delete_atoms overlap 0.5 small big
|
|||||||
|
|
||||||
reset_timestep 0
|
reset_timestep 0
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
|
|
||||||
comm_modify mode multi group big vel yes
|
comm_modify mode multi group big vel yes
|
||||||
|
|||||||
@ -61,7 +61,7 @@ delete_atoms overlap 0.5 small big
|
|||||||
|
|
||||||
reset_timestep 0
|
reset_timestep 0
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
|
|
||||||
comm_modify mode multi group big vel yes
|
comm_modify mode multi group big vel yes
|
||||||
|
|||||||
@ -72,7 +72,7 @@ delete_atoms overlap 1.6 small big
|
|||||||
|
|
||||||
reset_timestep 0
|
reset_timestep 0
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
|
|
||||||
comm_modify mode multi group big vel yes
|
comm_modify mode multi group big vel yes
|
||||||
|
|||||||
@ -72,7 +72,7 @@ delete_atoms overlap 1.6 small big
|
|||||||
|
|
||||||
reset_timestep 0
|
reset_timestep 0
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
|
|
||||||
comm_modify mode multi group big vel yes
|
comm_modify mode multi group big vel yes
|
||||||
|
|||||||
@ -34,7 +34,7 @@ reset_timestep 0
|
|||||||
|
|
||||||
velocity small create 1.44 87287 loop geom
|
velocity small create 1.44 87287 loop geom
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
neigh_modify exclude molecule/intra big include big
|
neigh_modify exclude molecule/intra big include big
|
||||||
|
|
||||||
|
|||||||
@ -70,7 +70,7 @@ delete_atoms overlap 1.0 small big
|
|||||||
|
|
||||||
reset_timestep 0
|
reset_timestep 0
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
|
|
||||||
comm_modify mode multi group big vel yes
|
comm_modify mode multi group big vel yes
|
||||||
|
|||||||
@ -70,7 +70,7 @@ delete_atoms overlap 1.0 small big
|
|||||||
|
|
||||||
reset_timestep 0
|
reset_timestep 0
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
|
|
||||||
comm_modify mode multi group big vel yes
|
comm_modify mode multi group big vel yes
|
||||||
|
|||||||
@ -67,7 +67,7 @@ delete_atoms overlap 0.5 small big
|
|||||||
|
|
||||||
reset_timestep 0
|
reset_timestep 0
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
|
|
||||||
comm_modify mode multi group big vel yes
|
comm_modify mode multi group big vel yes
|
||||||
|
|||||||
@ -67,7 +67,7 @@ delete_atoms overlap 0.5 small big
|
|||||||
|
|
||||||
reset_timestep 0
|
reset_timestep 0
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
|
|
||||||
comm_modify mode multi group big vel yes
|
comm_modify mode multi group big vel yes
|
||||||
|
|||||||
@ -33,7 +33,7 @@ reset_timestep 0
|
|||||||
|
|
||||||
velocity small create 1.44 87287 loop geom
|
velocity small create 1.44 87287 loop geom
|
||||||
|
|
||||||
neighbor 0.3 bin
|
neighbor 0.3 multi
|
||||||
neigh_modify delay 0 every 1 check yes
|
neigh_modify delay 0 every 1 check yes
|
||||||
neigh_modify exclude molecule/intra big include big
|
neigh_modify exclude molecule/intra big include big
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* -----------------------------------------------------------------------
|
/* -----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
https://lammps.sandia.gov/
|
https://www.lammps.org/
|
||||||
Steve Plimpton, sjplimp@sandia.gov, Sandia National Laboratories
|
Steve Plimpton, sjplimp@sandia.gov, Sandia National Laboratories
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* -----------------------------------------------------------------------
|
/* -----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
https://lammps.sandia.gov/
|
https://www.lammps.org/
|
||||||
Steve Plimpton, sjplimp@sandia.gov, Sandia National Laboratories
|
Steve Plimpton, sjplimp@sandia.gov, Sandia National Laboratories
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* -----------------------------------------------------------------------
|
/* -----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
https://lammps.sandia.gov/
|
https://www.lammps.org/
|
||||||
Steve Plimpton, sjplimp@sandia.gov, Sandia National Laboratories
|
Steve Plimpton, sjplimp@sandia.gov, Sandia National Laboratories
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
https://lammps.sandia.gov/, Sandia National Laboratories
|
https://www.lammps.org/, Sandia National Laboratories
|
||||||
Steve Plimpton, sjplimp@sandia.gov
|
Steve Plimpton, sjplimp@sandia.gov
|
||||||
------------------------------------------------------------------------- */
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
http://lammps.sandia.gov, Sandia National Laboratories
|
https://www.lammps.org/ Sandia National Laboratories
|
||||||
Steve Plimpton, sjplimp@sandia.gov
|
Steve Plimpton, sjplimp@sandia.gov
|
||||||
------------------------------------------------------------------------- */
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
https://lammps.sandia.gov/, Sandia National Laboratories
|
https://www.lammps.org/, Sandia National Laboratories
|
||||||
Steve Plimpton, sjplimp@sandia.gov
|
Steve Plimpton, sjplimp@sandia.gov
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
http://lammps.sandia.gov, Sandia National Laboratories
|
https://www.lammps.org/ Sandia National Laboratories
|
||||||
Steve Plimpton, sjplimp@sandia.gov
|
Steve Plimpton, sjplimp@sandia.gov
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
# ----------------------------------------------------------------------
|
# ----------------------------------------------------------------------
|
||||||
# LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
# LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
# http://lammps.sandia.gov, Sandia National Laboratories
|
# https://www.lammps.org/ Sandia National Laboratories
|
||||||
# Steve Plimpton, sjplimp@sandia.gov
|
# Steve Plimpton, sjplimp@sandia.gov
|
||||||
# ----------------------------------------------------------------------
|
# ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
# ----------------------------------------------------------------------
|
# ----------------------------------------------------------------------
|
||||||
# LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
# LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
# http://lammps.sandia.gov, Sandia National Laboratories
|
# https://www.lammps.org/ Sandia National Laboratories
|
||||||
# Steve Plimpton, sjplimp@sandia.gov
|
# Steve Plimpton, sjplimp@sandia.gov
|
||||||
# ----------------------------------------------------------------------
|
# ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
https://lammps.sandia.gov/
|
https://www.lammps.org/
|
||||||
Steve Plimpton, sjplimp@sandia.gov, Sandia National Laboratories
|
Steve Plimpton, sjplimp@sandia.gov, Sandia National Laboratories
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* -*- c++ -*- ----------------------------------------------------------
|
/* -*- c++ -*- ----------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
http://lammps.sandia.gov, Sandia National Laboratories
|
https://www.lammps.org/ Sandia National Laboratories
|
||||||
Steve Plimpton, sjplimp@sandia.gov
|
Steve Plimpton, sjplimp@sandia.gov
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* -*- c++ -*- ----------------------------------------------------------
|
/* -*- c++ -*- ----------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
http://lammps.sandia.gov, Sandia National Laboratories
|
https://www.lammps.org/ Sandia National Laboratories
|
||||||
Steve Plimpton, sjplimp@sandia.gov
|
Steve Plimpton, sjplimp@sandia.gov
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
https://lammps.sandia.gov/
|
https://www.lammps.org/
|
||||||
Steve Plimpton, sjplimp@sandia.gov, Sandia National Laboratories
|
Steve Plimpton, sjplimp@sandia.gov, Sandia National Laboratories
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -37,7 +37,7 @@ produce dump snapshots of the running simulation in any of 3 formats.
|
|||||||
|
|
||||||
If you uncomment the dump command in the input script, a text dump
|
If you uncomment the dump command in the input script, a text dump
|
||||||
file will be produced, which can be animated by various visualization
|
file will be produced, which can be animated by various visualization
|
||||||
programs (see http://lammps.sandia.gov/viz.html) such as Ovito, VMD,
|
programs (see https://www.lammps.org/viz.html) such as Ovito, VMD,
|
||||||
or AtomEye.
|
or AtomEye.
|
||||||
|
|
||||||
If you uncomment the dump image command in the input script, and
|
If you uncomment the dump image command in the input script, and
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
"""
|
"""
|
||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
http://lammps.sandia.gov, Sandia National Laboratories
|
https://www.lammps.org/ Sandia National Laboratories
|
||||||
Steve Plimpton, sjplimp@sandia.gov
|
Steve Plimpton, sjplimp@sandia.gov
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
"""
|
"""
|
||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||||
http://lammps.sandia.gov, Sandia National Laboratories
|
https://www.lammps.org/ Sandia National Laboratories
|
||||||
Steve Plimpton, sjplimp@sandia.gov
|
Steve Plimpton, sjplimp@sandia.gov
|
||||||
|
|
||||||
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
Copyright (2003) Sandia Corporation. Under the terms of Contract
|
||||||
|
|||||||
@ -37,10 +37,11 @@ atom_modify first charged
|
|||||||
kspace_style pppm/cg 0.00001
|
kspace_style pppm/cg 0.00001
|
||||||
kspace_modify order 3
|
kspace_modify order 3
|
||||||
|
|
||||||
comm_modify mode multi
|
|
||||||
neighbor 2.0 multi
|
neighbor 2.0 multi
|
||||||
neigh_modify delay 4 every 2 check yes
|
neigh_modify delay 4 every 2 check yes
|
||||||
|
|
||||||
|
comm_modify mode multi
|
||||||
|
|
||||||
timestep 10.0
|
timestep 10.0
|
||||||
|
|
||||||
fix 1 all nvt temp 310.0 310.0 100.0
|
fix 1 all nvt temp 310.0 310.0 100.0
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user