Merge branch 'master' into tip4p_fix_types
This commit is contained in:
11
.github/CODEOWNERS
vendored
11
.github/CODEOWNERS
vendored
@ -43,21 +43,21 @@ src/PHONON/* @lingtikong
|
|||||||
src/PTM/* @pmla
|
src/PTM/* @pmla
|
||||||
src/OPENMP/* @akohlmey
|
src/OPENMP/* @akohlmey
|
||||||
src/QMMM/* @akohlmey
|
src/QMMM/* @akohlmey
|
||||||
src/REAXFF/* @hasanmetin
|
src/REAXFF/* @hasanmetin @stanmoore1
|
||||||
src/REACTION/* @jrgissing
|
src/REACTION/* @jrgissing
|
||||||
src/SCAFACOS/* @rhalver
|
src/SCAFACOS/* @rhalver
|
||||||
src/TALLY/* @akohlmey
|
src/TALLY/* @akohlmey
|
||||||
src/UEF/* @danicholson
|
src/UEF/* @danicholson
|
||||||
src/VTK/* @rbberger
|
src/VTK/* @rbberger
|
||||||
|
|
||||||
|
|
||||||
# individual files in packages
|
# individual files in packages
|
||||||
src/GPU/pair_vashishta_gpu.* @andeplane
|
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-MISC/*_grem.* @dstelter92
|
src/REPLICA/*_grem.* @dstelter92
|
||||||
src/USER-MISC/compute_stress_mop*.* @RomainVermorel
|
src/EXTRA-COMPUTE/compute_stress_mop*.* @RomainVermorel
|
||||||
|
src/MISC/*_tracker.* @jtclemm
|
||||||
|
|
||||||
# core LAMMPS classes
|
# core LAMMPS classes
|
||||||
src/lammps.* @sjplimp
|
src/lammps.* @sjplimp
|
||||||
@ -81,6 +81,7 @@ src/kspace.* @sjplimp
|
|||||||
src/lmptyp.h @sjplimp
|
src/lmptyp.h @sjplimp
|
||||||
src/library.* @sjplimp
|
src/library.* @sjplimp
|
||||||
src/main.cpp @sjplimp
|
src/main.cpp @sjplimp
|
||||||
|
src/min_*.* @sjplimp
|
||||||
src/memory.* @sjplimp
|
src/memory.* @sjplimp
|
||||||
src/modify.* @sjplimp
|
src/modify.* @sjplimp
|
||||||
src/molecule.* @sjplimp
|
src/molecule.* @sjplimp
|
||||||
@ -109,7 +110,6 @@ src/thermo.* @sjplimp
|
|||||||
src/universe.* @sjplimp
|
src/universe.* @sjplimp
|
||||||
src/update.* @sjplimp
|
src/update.* @sjplimp
|
||||||
src/variable.* @sjplimp
|
src/variable.* @sjplimp
|
||||||
src/verlet.* @sjplimp
|
|
||||||
src/velocity.* @sjplimp
|
src/velocity.* @sjplimp
|
||||||
src/write_data.* @sjplimp
|
src/write_data.* @sjplimp
|
||||||
src/write_restart.* @sjplimp
|
src/write_restart.* @sjplimp
|
||||||
@ -122,6 +122,7 @@ src/info.* @akohlmey @rbberger
|
|||||||
src/timer.* @akohlmey
|
src/timer.* @akohlmey
|
||||||
src/min* @sjplimp @stanmoore1
|
src/min* @sjplimp @stanmoore1
|
||||||
src/utils.* @akohlmey @rbberger
|
src/utils.* @akohlmey @rbberger
|
||||||
|
src/verlet.* @sjplimp @stanmoore1
|
||||||
src/math_eigen_impl.h @jewettaij
|
src/math_eigen_impl.h @jewettaij
|
||||||
|
|
||||||
# tools
|
# tools
|
||||||
|
|||||||
1
.gitignore
vendored
1
.gitignore
vendored
@ -44,6 +44,7 @@ Thumbs.db
|
|||||||
/build*
|
/build*
|
||||||
/CMakeCache.txt
|
/CMakeCache.txt
|
||||||
/CMakeFiles/
|
/CMakeFiles/
|
||||||
|
/Testing
|
||||||
/Makefile
|
/Makefile
|
||||||
/Testing
|
/Testing
|
||||||
/cmake_install.cmake
|
/cmake_install.cmake
|
||||||
|
|||||||
@ -161,9 +161,15 @@ set(STANDARD_PACKAGES
|
|||||||
DPD-SMOOTH
|
DPD-SMOOTH
|
||||||
DRUDE
|
DRUDE
|
||||||
EFF
|
EFF
|
||||||
|
EXTRA-COMPUTE
|
||||||
|
EXTRA-DUMP
|
||||||
|
EXTRA-FIX
|
||||||
|
EXTRA-MOLECULE
|
||||||
|
EXTRA-PAIR
|
||||||
FEP
|
FEP
|
||||||
GRANULAR
|
GRANULAR
|
||||||
H5MD
|
H5MD
|
||||||
|
INTERLAYER
|
||||||
KIM
|
KIM
|
||||||
KSPACE
|
KSPACE
|
||||||
LATBOLTZ
|
LATBOLTZ
|
||||||
@ -190,6 +196,7 @@ set(STANDARD_PACKAGES
|
|||||||
MPIIO
|
MPIIO
|
||||||
MSCG
|
MSCG
|
||||||
NETCDF
|
NETCDF
|
||||||
|
ORIENT
|
||||||
PERI
|
PERI
|
||||||
PHONON
|
PHONON
|
||||||
PLUGIN
|
PLUGIN
|
||||||
@ -212,7 +219,6 @@ set(STANDARD_PACKAGES
|
|||||||
SRD
|
SRD
|
||||||
TALLY
|
TALLY
|
||||||
UEF
|
UEF
|
||||||
USER-MISC
|
|
||||||
VORONOI
|
VORONOI
|
||||||
VTK
|
VTK
|
||||||
YAFF)
|
YAFF)
|
||||||
@ -238,15 +244,16 @@ if(PKG_ADIOS)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT CMAKE_CROSSCOMPILING)
|
if(NOT CMAKE_CROSSCOMPILING)
|
||||||
set(MPI_CXX_SKIP_MPICXX TRUE)
|
|
||||||
find_package(MPI QUIET)
|
find_package(MPI QUIET)
|
||||||
option(BUILD_MPI "Build MPI version" ${MPI_FOUND})
|
option(BUILD_MPI "Build MPI version" ${MPI_FOUND})
|
||||||
else()
|
else()
|
||||||
set(MPI_CXX_SKIP_MPICXX TRUE)
|
|
||||||
option(BUILD_MPI "Build MPI version" OFF)
|
option(BUILD_MPI "Build MPI version" OFF)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(BUILD_MPI)
|
if(BUILD_MPI)
|
||||||
|
# do not include the (obsolete) MPI C++ bindings which makes
|
||||||
|
# for leaner object files and avoids namespace conflicts
|
||||||
|
set(MPI_CXX_SKIP_MPICXX TRUE)
|
||||||
# We use a non-standard procedure to cross-compile with MPI on Windows
|
# We use a non-standard procedure to cross-compile with MPI on Windows
|
||||||
if((CMAKE_SYSTEM_NAME STREQUAL "Windows") AND CMAKE_CROSSCOMPILING)
|
if((CMAKE_SYSTEM_NAME STREQUAL "Windows") AND CMAKE_CROSSCOMPILING)
|
||||||
include(MPI4WIN)
|
include(MPI4WIN)
|
||||||
@ -305,6 +312,7 @@ pkg_depends(LATBOLTZ MPI)
|
|||||||
pkg_depends(PHONON KSPACE)
|
pkg_depends(PHONON KSPACE)
|
||||||
pkg_depends(SCAFACOS MPI)
|
pkg_depends(SCAFACOS MPI)
|
||||||
pkg_depends(DIELECTRIC KSPACE)
|
pkg_depends(DIELECTRIC KSPACE)
|
||||||
|
pkg_depends(DIELECTRIC EXTRA-PAIR)
|
||||||
pkg_depends(CG-DNA MOLECULE)
|
pkg_depends(CG-DNA MOLECULE)
|
||||||
pkg_depends(CG-DNA ASPHERE)
|
pkg_depends(CG-DNA ASPHERE)
|
||||||
|
|
||||||
@ -362,6 +370,8 @@ if(PKG_MSCG OR PKG_ATC OR PKG_AWPMD OR PKG_ML-QUIP OR PKG_LATTE)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# tweak jpeg library names to avoid linker errors with MinGW cross-compilation
|
||||||
|
set(JPEG_NAMES libjpeg libjpeg-62)
|
||||||
find_package(JPEG QUIET)
|
find_package(JPEG QUIET)
|
||||||
option(WITH_JPEG "Enable JPEG support" ${JPEG_FOUND})
|
option(WITH_JPEG "Enable JPEG support" ${JPEG_FOUND})
|
||||||
if(WITH_JPEG)
|
if(WITH_JPEG)
|
||||||
|
|||||||
@ -3,7 +3,7 @@ if(NOT FOUND_IMMINTRIN)
|
|||||||
message(FATAL_ERROR "immintrin.h header not found, Intel package won't work without it")
|
message(FATAL_ERROR "immintrin.h header not found, Intel package won't work without it")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_compile_definitions(lammps PRIVATE -DLMP_USER_INTEL)
|
target_compile_definitions(lammps PRIVATE -DLMP_INTEL)
|
||||||
|
|
||||||
set(INTEL_ARCH "cpu" CACHE STRING "Architectures used by INTEL (cpu or knl)")
|
set(INTEL_ARCH "cpu" CACHE STRING "Architectures used by INTEL (cpu or knl)")
|
||||||
set(INTEL_ARCH_VALUES cpu knl)
|
set(INTEL_ARCH_VALUES cpu knl)
|
||||||
|
|||||||
@ -74,7 +74,7 @@ else()
|
|||||||
target_link_libraries(lammps PRIVATE kokkos)
|
target_link_libraries(lammps PRIVATE kokkos)
|
||||||
target_link_libraries(lmp PRIVATE kokkos)
|
target_link_libraries(lmp PRIVATE kokkos)
|
||||||
endif()
|
endif()
|
||||||
target_compile_definitions(lammps PRIVATE -DLMP_KOKKOS)
|
target_compile_definitions(lammps PUBLIC $<BUILD_INTERFACE:LMP_KOKKOS>)
|
||||||
|
|
||||||
set(KOKKOS_PKG_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/KOKKOS)
|
set(KOKKOS_PKG_SOURCES_DIR ${LAMMPS_SOURCE_DIR}/KOKKOS)
|
||||||
set(KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/kokkos.cpp
|
set(KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/kokkos.cpp
|
||||||
@ -127,4 +127,4 @@ endif()
|
|||||||
get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES)
|
get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES)
|
||||||
|
|
||||||
target_sources(lammps PRIVATE ${KOKKOS_PKG_SOURCES})
|
target_sources(lammps PRIVATE ${KOKKOS_PKG_SOURCES})
|
||||||
target_include_directories(lammps PRIVATE ${KOKKOS_PKG_SOURCES_DIR})
|
target_include_directories(lammps PUBLIC $<BUILD_INTERFACE:${KOKKOS_PKG_SOURCES_DIR}>)
|
||||||
|
|||||||
@ -7,8 +7,8 @@ endif()
|
|||||||
option(DOWNLOAD_EIGEN3 "Download Eigen3 instead of using an already installed one)" ${DOWNLOAD_EIGEN3_DEFAULT})
|
option(DOWNLOAD_EIGEN3 "Download Eigen3 instead of using an already installed one)" ${DOWNLOAD_EIGEN3_DEFAULT})
|
||||||
if(DOWNLOAD_EIGEN3)
|
if(DOWNLOAD_EIGEN3)
|
||||||
message(STATUS "Eigen3 download requested - we will build our own")
|
message(STATUS "Eigen3 download requested - we will build our own")
|
||||||
set(EIGEN3_URL "https://gitlab.com/libeigen/eigen/-/archive/3.3.7/eigen-3.3.7.tar.gz" CACHE STRING "URL for Eigen3 tarball")
|
set(EIGEN3_URL "https://gitlab.com/libeigen/eigen/-/archive/3.3.9/eigen-3.3.9.tar.gz" CACHE STRING "URL for Eigen3 tarball")
|
||||||
set(EIGEN3_MD5 "9e30f67e8531477de4117506fe44669b" CACHE STRING "MD5 checksum of Eigen3 tarball")
|
set(EIGEN3_MD5 "609286804b0f79be622ccf7f9ff2b660" CACHE STRING "MD5 checksum of Eigen3 tarball")
|
||||||
mark_as_advanced(EIGEN3_URL)
|
mark_as_advanced(EIGEN3_URL)
|
||||||
mark_as_advanced(EIGEN3_MD5)
|
mark_as_advanced(EIGEN3_MD5)
|
||||||
include(ExternalProject)
|
include(ExternalProject)
|
||||||
@ -30,3 +30,8 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
target_link_libraries(lammps PRIVATE Eigen3::Eigen)
|
target_link_libraries(lammps PRIVATE Eigen3::Eigen)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# PGI/Nvidia compiler internals collide with vector intrinsics support in Eigen3
|
||||||
|
if((CMAKE_CXX_COMPILER_ID STREQUAL "PGI") OR (CMAKE_CXX_COMPILER_ID STREQUAL "NVHPC"))
|
||||||
|
target_compile_definitions(lammps PRIVATE -DEIGEN_DONT_VECTORIZE)
|
||||||
|
endif()
|
||||||
|
|||||||
@ -114,5 +114,5 @@ else()
|
|||||||
target_link_libraries(lmp PRIVATE ${mdi_LIBRARY})
|
target_link_libraries(lmp PRIVATE ${mdi_LIBRARY})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_compile_definitions(lammps PRIVATE -DLMP_USER_MDI)
|
target_compile_definitions(lammps PRIVATE -DLMP_MDI)
|
||||||
target_compile_definitions(lmp PRIVATE -DLMP_USER_MDI)
|
target_compile_definitions(lmp PRIVATE -DLMP_MDI)
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
${OPENMP_SOURCES_DIR}/fix_nh_omp.cpp
|
${OPENMP_SOURCES_DIR}/fix_nh_omp.cpp
|
||||||
${OPENMP_SOURCES_DIR}/fix_nh_sphere_omp.cpp
|
${OPENMP_SOURCES_DIR}/fix_nh_sphere_omp.cpp
|
||||||
${OPENMP_SOURCES_DIR}/domain_omp.cpp)
|
${OPENMP_SOURCES_DIR}/domain_omp.cpp)
|
||||||
target_compile_definitions(lammps PRIVATE -DLMP_USER_OMP)
|
target_compile_definitions(lammps PRIVATE -DLMP_OPENMP)
|
||||||
set_property(GLOBAL PROPERTY "OMP_SOURCES" "${OPENMP_SOURCES}")
|
set_property(GLOBAL PROPERTY "OMP_SOURCES" "${OPENMP_SOURCES}")
|
||||||
|
|
||||||
# detects styles which have OPENMP version
|
# detects styles which have OPENMP version
|
||||||
@ -25,15 +25,15 @@
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(PKG_REAXFF)
|
if(PKG_REAXFF)
|
||||||
list(APPEND OPENMP_SOURCES ${OPENMP_SOURCES_DIR}/reaxc_bond_orders_omp.cpp
|
list(APPEND OPENMP_SOURCES ${OPENMP_SOURCES_DIR}/reaxff_bond_orders_omp.cpp
|
||||||
${OPENMP_SOURCES_DIR}/reaxc_hydrogen_bonds_omp.cpp
|
${OPENMP_SOURCES_DIR}/reaxff_hydrogen_bonds_omp.cpp
|
||||||
${OPENMP_SOURCES_DIR}/reaxc_nonbonded_omp.cpp
|
${OPENMP_SOURCES_DIR}/reaxff_nonbonded_omp.cpp
|
||||||
${OPENMP_SOURCES_DIR}/reaxc_bonds_omp.cpp
|
${OPENMP_SOURCES_DIR}/reaxff_bonds_omp.cpp
|
||||||
${OPENMP_SOURCES_DIR}/reaxc_init_md_omp.cpp
|
${OPENMP_SOURCES_DIR}/reaxff_init_md_omp.cpp
|
||||||
${OPENMP_SOURCES_DIR}/reaxc_torsion_angles_omp.cpp
|
${OPENMP_SOURCES_DIR}/reaxff_torsion_angles_omp.cpp
|
||||||
${OPENMP_SOURCES_DIR}/reaxc_forces_omp.cpp
|
${OPENMP_SOURCES_DIR}/reaxff_forces_omp.cpp
|
||||||
${OPENMP_SOURCES_DIR}/reaxc_multi_body_omp.cpp
|
${OPENMP_SOURCES_DIR}/reaxff_multi_body_omp.cpp
|
||||||
${OPENMP_SOURCES_DIR}/reaxc_valence_angles_omp.cpp)
|
${OPENMP_SOURCES_DIR}/reaxff_valence_angles_omp.cpp)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_sources(lammps PRIVATE ${OPENMP_SOURCES})
|
target_sources(lammps PRIVATE ${OPENMP_SOURCES})
|
||||||
|
|||||||
@ -54,8 +54,8 @@ if(DOWNLOAD_PLUMED)
|
|||||||
set(PLUMED_BUILD_BYPRODUCTS "<INSTALL_DIR>/lib/libplumedWrapper.a")
|
set(PLUMED_BUILD_BYPRODUCTS "<INSTALL_DIR>/lib/libplumedWrapper.a")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(PLUMED_URL "https://github.com/plumed/plumed2/releases/download/v2.7.1/plumed-src-2.7.1.tgz" CACHE STRING "URL for PLUMED tarball")
|
set(PLUMED_URL "https://github.com/plumed/plumed2/releases/download/v2.7.2/plumed-src-2.7.2.tgz" CACHE STRING "URL for PLUMED tarball")
|
||||||
set(PLUMED_MD5 "4eac6a462ec84dfe0cec96c82421b8e8" CACHE STRING "MD5 checksum of PLUMED tarball")
|
set(PLUMED_MD5 "cfa0b4dd90a81c25d3302e8d97bfeaea" CACHE STRING "MD5 checksum of PLUMED tarball")
|
||||||
|
|
||||||
mark_as_advanced(PLUMED_URL)
|
mark_as_advanced(PLUMED_URL)
|
||||||
mark_as_advanced(PLUMED_MD5)
|
mark_as_advanced(PLUMED_MD5)
|
||||||
@ -72,7 +72,6 @@ if(DOWNLOAD_PLUMED)
|
|||||||
${PLUMED_CONFIG_OMP}
|
${PLUMED_CONFIG_OMP}
|
||||||
CXX=${PLUMED_CONFIG_CXX}
|
CXX=${PLUMED_CONFIG_CXX}
|
||||||
CC=${PLUMED_CONFIG_CC}
|
CC=${PLUMED_CONFIG_CC}
|
||||||
PATCH_COMMAND sed -i "/^#include <algorithm>/a #include <limits>" <SOURCE_DIR>/src/lepton/Operation.h
|
|
||||||
BUILD_BYPRODUCTS ${PLUMED_BUILD_BYPRODUCTS}
|
BUILD_BYPRODUCTS ${PLUMED_BUILD_BYPRODUCTS}
|
||||||
)
|
)
|
||||||
ExternalProject_get_property(plumed_build INSTALL_DIR)
|
ExternalProject_get_property(plumed_build INSTALL_DIR)
|
||||||
|
|||||||
@ -25,11 +25,17 @@ set(ALL_PACKAGES
|
|||||||
DPD-SMOOTH
|
DPD-SMOOTH
|
||||||
DRUDE
|
DRUDE
|
||||||
EFF
|
EFF
|
||||||
|
EXTRA-COMPUTE
|
||||||
|
EXTRA-DUMP
|
||||||
|
EXTRA-FIX
|
||||||
|
EXTRA-MOLECULE
|
||||||
|
EXTRA-PAIR
|
||||||
FEP
|
FEP
|
||||||
GPU
|
GPU
|
||||||
GRANULAR
|
GRANULAR
|
||||||
H5MD
|
H5MD
|
||||||
INTEL
|
INTEL
|
||||||
|
INTERLAYER
|
||||||
KIM
|
KIM
|
||||||
KOKKOS
|
KOKKOS
|
||||||
KSPACE
|
KSPACE
|
||||||
@ -59,6 +65,7 @@ set(ALL_PACKAGES
|
|||||||
NETCDF
|
NETCDF
|
||||||
OPENMP
|
OPENMP
|
||||||
OPT
|
OPT
|
||||||
|
ORIENT
|
||||||
PERI
|
PERI
|
||||||
PHONON
|
PHONON
|
||||||
PLUGIN
|
PLUGIN
|
||||||
@ -81,7 +88,6 @@ set(ALL_PACKAGES
|
|||||||
SRD
|
SRD
|
||||||
TALLY
|
TALLY
|
||||||
UEF
|
UEF
|
||||||
USER-MISC
|
|
||||||
VORONOI
|
VORONOI
|
||||||
VTK
|
VTK
|
||||||
YAFF)
|
YAFF)
|
||||||
|
|||||||
@ -27,11 +27,17 @@ set(ALL_PACKAGES
|
|||||||
DPD-SMOOTH
|
DPD-SMOOTH
|
||||||
DRUDE
|
DRUDE
|
||||||
EFF
|
EFF
|
||||||
|
EXTRA-COMPUTE
|
||||||
|
EXTRA-DUMP
|
||||||
|
EXTRA-FIX
|
||||||
|
EXTRA-MOLECULE
|
||||||
|
EXTRA-PAIR
|
||||||
FEP
|
FEP
|
||||||
GPU
|
GPU
|
||||||
GRANULAR
|
GRANULAR
|
||||||
H5MD
|
H5MD
|
||||||
INTEL
|
INTEL
|
||||||
|
INTERLAYER
|
||||||
KIM
|
KIM
|
||||||
KOKKOS
|
KOKKOS
|
||||||
KSPACE
|
KSPACE
|
||||||
@ -61,6 +67,7 @@ set(ALL_PACKAGES
|
|||||||
NETCDF
|
NETCDF
|
||||||
OPENMP
|
OPENMP
|
||||||
OPT
|
OPT
|
||||||
|
ORIENT
|
||||||
PERI
|
PERI
|
||||||
PHONON
|
PHONON
|
||||||
PLUGIN
|
PLUGIN
|
||||||
@ -83,7 +90,6 @@ set(ALL_PACKAGES
|
|||||||
SRD
|
SRD
|
||||||
TALLY
|
TALLY
|
||||||
UEF
|
UEF
|
||||||
USER-MISC
|
|
||||||
VORONOI
|
VORONOI
|
||||||
VTK
|
VTK
|
||||||
YAFF)
|
YAFF)
|
||||||
|
|||||||
@ -21,10 +21,16 @@ set(WIN_PACKAGES
|
|||||||
DPD-SMOOTH
|
DPD-SMOOTH
|
||||||
DRUDE
|
DRUDE
|
||||||
EFF
|
EFF
|
||||||
|
EXTRA-COMPUTE
|
||||||
|
EXTRA-DUMP
|
||||||
|
EXTRA-FIX
|
||||||
|
EXTRA-MOLECULE
|
||||||
|
EXTRA-PAIR
|
||||||
FEP
|
FEP
|
||||||
GPU
|
GPU
|
||||||
GRANULAR
|
GRANULAR
|
||||||
INTEL
|
INTEL
|
||||||
|
INTERLAYER
|
||||||
KSPACE
|
KSPACE
|
||||||
LATTE
|
LATTE
|
||||||
MACHDYN
|
MACHDYN
|
||||||
@ -39,11 +45,13 @@ set(WIN_PACKAGES
|
|||||||
ML-HDNNP
|
ML-HDNNP
|
||||||
ML-IAP
|
ML-IAP
|
||||||
ML-SNAP
|
ML-SNAP
|
||||||
|
ML-RANN
|
||||||
MOFFF
|
MOFFF
|
||||||
MOLECULE
|
MOLECULE
|
||||||
MOLFILE
|
MOLFILE
|
||||||
OPENMP
|
OPENMP
|
||||||
OPT
|
OPT
|
||||||
|
ORIENT
|
||||||
PERI
|
PERI
|
||||||
PHONON
|
PHONON
|
||||||
POEMS
|
POEMS
|
||||||
@ -61,7 +69,6 @@ set(WIN_PACKAGES
|
|||||||
SRD
|
SRD
|
||||||
TALLY
|
TALLY
|
||||||
UEF
|
UEF
|
||||||
USER-MISC
|
|
||||||
VORONOI
|
VORONOI
|
||||||
YAFF)
|
YAFF)
|
||||||
|
|
||||||
|
|||||||
@ -23,8 +23,13 @@ set(ALL_PACKAGES
|
|||||||
DPD-SMOOTH
|
DPD-SMOOTH
|
||||||
DRUDE
|
DRUDE
|
||||||
EFF
|
EFF
|
||||||
|
EXTRA-COMPUTE
|
||||||
|
EXTRA-FIX
|
||||||
|
EXTRA-MOLECULE
|
||||||
|
EXTRA-PAIR
|
||||||
FEP
|
FEP
|
||||||
GRANULAR
|
GRANULAR
|
||||||
|
INTERLAYER
|
||||||
KSPACE
|
KSPACE
|
||||||
MACHDYN
|
MACHDYN
|
||||||
MANYBODY
|
MANYBODY
|
||||||
@ -37,6 +42,7 @@ set(ALL_PACKAGES
|
|||||||
MOLECULE
|
MOLECULE
|
||||||
OPENMP
|
OPENMP
|
||||||
OPT
|
OPT
|
||||||
|
ORIENT
|
||||||
PERI
|
PERI
|
||||||
PHONON
|
PHONON
|
||||||
PLUGIN
|
PLUGIN
|
||||||
@ -51,8 +57,8 @@ set(ALL_PACKAGES
|
|||||||
SPH
|
SPH
|
||||||
SPIN
|
SPIN
|
||||||
SRD
|
SRD
|
||||||
|
TALLY
|
||||||
UEF
|
UEF
|
||||||
USER-MISC
|
|
||||||
VORONOI
|
VORONOI
|
||||||
YAFF)
|
YAFF)
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
.TH LAMMPS "2 July 2021" "2021-07-2"
|
.TH LAMMPS "30 July 2021" "2021-07-30"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
.B LAMMPS
|
.B LAMMPS
|
||||||
\- Molecular Dynamics Simulator.
|
\- Molecular Dynamics Simulator.
|
||||||
|
|||||||
@ -191,7 +191,7 @@ Bibliography
|
|||||||
A.\ Calhoun, M. Pavese, G. Voth, Chem Phys Letters, 262, 415 (1996).
|
A.\ Calhoun, M. Pavese, G. Voth, Chem Phys Letters, 262, 415 (1996).
|
||||||
|
|
||||||
**(Campana)**
|
**(Campana)**
|
||||||
C.\ Campana and M. H. Muser, *Practical Green's function approach to the simulation of elastic semi-infinite solids*\ , `Phys. Rev. B [74], 075420 (2006) <https://doi.org/10.1103/PhysRevB.74.075420>`_
|
C.\ Campana and M. H. Muser, *Practical Green's function approach to the simulation of elastic semi-infinite solids*, `Phys. Rev. B [74], 075420 (2006) <https://doi.org/10.1103/PhysRevB.74.075420>`_
|
||||||
|
|
||||||
**(Cao1)**
|
**(Cao1)**
|
||||||
J.\ Cao and B. Berne, J Chem Phys, 99, 2902 (1993).
|
J.\ Cao and B. Berne, J Chem Phys, 99, 2902 (1993).
|
||||||
@ -767,7 +767,7 @@ Bibliography
|
|||||||
Morris, Fox, Zhu, J Comp Physics, 136, 214-226 (1997).
|
Morris, Fox, Zhu, J Comp Physics, 136, 214-226 (1997).
|
||||||
|
|
||||||
**(Moustafa)**
|
**(Moustafa)**
|
||||||
Sabry G. Moustafa, Andrew J. Schultz, and David A. Kofke, *Very fast averaging of thermal properties of crystals by molecular simulation*\ , `Phys. Rev. E [92], 043303 (2015) <https://link.aps.org/doi/10.1103/PhysRevE.92.043303>`_
|
Sabry G. Moustafa, Andrew J. Schultz, and David A. Kofke, *Very fast averaging of thermal properties of crystals by molecular simulation*, `Phys. Rev. E [92], 043303 (2015) <https://link.aps.org/doi/10.1103/PhysRevE.92.043303>`_
|
||||||
|
|
||||||
**(Muller-Plathe1)**
|
**(Muller-Plathe1)**
|
||||||
Muller-Plathe, J Chem Phys, 106, 6082 (1997).
|
Muller-Plathe, J Chem Phys, 106, 6082 (1997).
|
||||||
|
|||||||
@ -204,9 +204,9 @@ be multiple tests run automatically:
|
|||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
Found 74 packages
|
Found 88 packages
|
||||||
Standard package NEWPACKAGE missing in Packages_standard.rst
|
Package NEWPACKAGE missing in Packages_list.rst
|
||||||
Standard package NEWPACKAGE missing in Packages_details.rst
|
Package NEWPACKAGE missing in Packages_details.rst
|
||||||
|
|
||||||
- A test that only standard, printable ASCII text characters are used.
|
- A test that only standard, printable ASCII text characters are used.
|
||||||
This runs the command ``env LC_ALL=C grep -n '[^ -~]' src/*.rst`` and
|
This runs the command ``env LC_ALL=C grep -n '[^ -~]' src/*.rst`` and
|
||||||
|
|||||||
@ -2,7 +2,7 @@ Commands by category
|
|||||||
====================
|
====================
|
||||||
|
|
||||||
This page lists most of the LAMMPS commands, grouped by category. The
|
This page lists most of the LAMMPS commands, grouped by category. The
|
||||||
:doc:`General commands <Commands_all>` doc page lists all general commands
|
:doc:`General commands <Commands_all>` page lists all general commands
|
||||||
alphabetically. Style options for entries like fix, compute, pair etc.
|
alphabetically. Style options for entries like fix, compute, pair etc.
|
||||||
have their own pages where they are listed alphabetically.
|
have their own pages where they are listed alphabetically.
|
||||||
|
|
||||||
|
|||||||
@ -179,14 +179,14 @@ OPT.
|
|||||||
* :doc:`qeq/dynamic <fix_qeq>`
|
* :doc:`qeq/dynamic <fix_qeq>`
|
||||||
* :doc:`qeq/fire <fix_qeq>`
|
* :doc:`qeq/fire <fix_qeq>`
|
||||||
* :doc:`qeq/point <fix_qeq>`
|
* :doc:`qeq/point <fix_qeq>`
|
||||||
* :doc:`qeq/reax (ko) <fix_qeq_reax>`
|
* :doc:`qeq/reaxff (ko) <fix_qeq_reaxff>`
|
||||||
* :doc:`qeq/shielded <fix_qeq>`
|
* :doc:`qeq/shielded <fix_qeq>`
|
||||||
* :doc:`qeq/slater <fix_qeq>`
|
* :doc:`qeq/slater <fix_qeq>`
|
||||||
* :doc:`qmmm <fix_qmmm>`
|
* :doc:`qmmm <fix_qmmm>`
|
||||||
* :doc:`qtb <fix_qtb>`
|
* :doc:`qtb <fix_qtb>`
|
||||||
* :doc:`rattle <fix_shake>`
|
* :doc:`rattle <fix_shake>`
|
||||||
* :doc:`reax/c/bonds (k) <fix_reaxc_bonds>`
|
* :doc:`reaxff/bonds (k) <fix_reaxff_bonds>`
|
||||||
* :doc:`reax/c/species (k) <fix_reaxc_species>`
|
* :doc:`reaxff/species (k) <fix_reaxff_species>`
|
||||||
* :doc:`recenter <fix_recenter>`
|
* :doc:`recenter <fix_recenter>`
|
||||||
* :doc:`restrain <fix_restrain>`
|
* :doc:`restrain <fix_restrain>`
|
||||||
* :doc:`rhok <fix_rhok>`
|
* :doc:`rhok <fix_rhok>`
|
||||||
|
|||||||
@ -50,6 +50,6 @@ values are not desired, the :doc:`processors <processors>` and
|
|||||||
tell LAMMPS how to map processors to the simulation box.
|
tell LAMMPS how to map processors to the simulation box.
|
||||||
|
|
||||||
Many input script errors are detected by LAMMPS and an ERROR or
|
Many input script errors are detected by LAMMPS and an ERROR or
|
||||||
WARNING message is printed. The :doc:`Errors <Errors>` doc page gives
|
WARNING message is printed. The :doc:`Errors <Errors>` page gives
|
||||||
more information on what errors mean. The documentation for each
|
more information on what errors mean. The documentation for each
|
||||||
command lists restrictions on how the command can be used.
|
command lists restrictions on how the command can be used.
|
||||||
|
|||||||
@ -29,7 +29,7 @@ OPT.
|
|||||||
* :doc:`hybrid/scaled <pair_hybrid>`
|
* :doc:`hybrid/scaled <pair_hybrid>`
|
||||||
* :doc:`kim <pair_kim>`
|
* :doc:`kim <pair_kim>`
|
||||||
* :doc:`list <pair_list>`
|
* :doc:`list <pair_list>`
|
||||||
*
|
* :doc:`tracker <pair_tracker>`
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
@ -75,6 +75,7 @@ OPT.
|
|||||||
* :doc:`coul/debye (gko) <pair_coul>`
|
* :doc:`coul/debye (gko) <pair_coul>`
|
||||||
* :doc:`coul/diel (o) <pair_coul_diel>`
|
* :doc:`coul/diel (o) <pair_coul_diel>`
|
||||||
* :doc:`coul/dsf (gko) <pair_coul>`
|
* :doc:`coul/dsf (gko) <pair_coul>`
|
||||||
|
* :doc:`coul/exclude <pair_coul>`
|
||||||
* :doc:`coul/long (gko) <pair_coul>`
|
* :doc:`coul/long (gko) <pair_coul>`
|
||||||
* :doc:`coul/long/cs (g) <pair_cs>`
|
* :doc:`coul/long/cs (g) <pair_cs>`
|
||||||
* :doc:`coul/long/dielectric <pair_dielectric>`
|
* :doc:`coul/long/dielectric <pair_dielectric>`
|
||||||
@ -235,7 +236,7 @@ OPT.
|
|||||||
* :doc:`python <pair_python>`
|
* :doc:`python <pair_python>`
|
||||||
* :doc:`quip <pair_quip>`
|
* :doc:`quip <pair_quip>`
|
||||||
* :doc:`rann <pair_rann>`
|
* :doc:`rann <pair_rann>`
|
||||||
* :doc:`reax/c (ko) <pair_reaxc>`
|
* :doc:`reaxff (ko) <pair_reaxff>`
|
||||||
* :doc:`rebo (io) <pair_airebo>`
|
* :doc:`rebo (io) <pair_airebo>`
|
||||||
* :doc:`resquared (go) <pair_resquared>`
|
* :doc:`resquared (go) <pair_resquared>`
|
||||||
* :doc:`sdpd/taitwater/isothermal <pair_sdpd_taitwater_isothermal>`
|
* :doc:`sdpd/taitwater/isothermal <pair_sdpd_taitwater_isothermal>`
|
||||||
@ -273,7 +274,6 @@ OPT.
|
|||||||
* :doc:`tip4p/cut (o) <pair_coul>`
|
* :doc:`tip4p/cut (o) <pair_coul>`
|
||||||
* :doc:`tip4p/long (o) <pair_coul>`
|
* :doc:`tip4p/long (o) <pair_coul>`
|
||||||
* :doc:`tip4p/long/soft (o) <pair_fep_soft>`
|
* :doc:`tip4p/long/soft (o) <pair_fep_soft>`
|
||||||
* :doc:`tracker <pair_tracker>`
|
|
||||||
* :doc:`tri/lj <pair_tri_lj>`
|
* :doc:`tri/lj <pair_tri_lj>`
|
||||||
* :doc:`ufm (got) <pair_ufm>`
|
* :doc:`ufm (got) <pair_ufm>`
|
||||||
* :doc:`vashishta (gko) <pair_vashishta>`
|
* :doc:`vashishta (gko) <pair_vashishta>`
|
||||||
|
|||||||
@ -47,7 +47,7 @@ LAMMPS:
|
|||||||
named "x" followed by an "x" character.
|
named "x" followed by an "x" character.
|
||||||
|
|
||||||
How the variable is converted to a text string depends on what style
|
How the variable is converted to a text string depends on what style
|
||||||
of variable it is; see the :doc:`variable <variable>` doc page for
|
of variable it is; see the :doc:`variable <variable>` page for
|
||||||
details. It can be a variable that stores multiple text strings, and
|
details. It can be a variable that stores multiple text strings, and
|
||||||
return one of them. The returned text string can be multiple "words"
|
return one of them. The returned text string can be multiple "words"
|
||||||
(space separated) which will then be interpreted as multiple
|
(space separated) which will then be interpreted as multiple
|
||||||
|
|||||||
@ -17,7 +17,7 @@ currently supports building with :doc:`conventional makefiles
|
|||||||
differ in how packages are enabled or disabled for inclusion into a
|
differ in how packages are enabled or disabled for inclusion into a
|
||||||
LAMMPS binary so they cannot be mixed. The source files for each
|
LAMMPS binary so they cannot be mixed. The source files for each
|
||||||
package are in all-uppercase sub-directories of the ``src`` folder, for
|
package are in all-uppercase sub-directories of the ``src`` folder, for
|
||||||
example ``src/MOLECULE`` or ``src/USER-MISC``. The ``src/STUBS``
|
example ``src/MOLECULE`` or ``src/EXTRA-MOLECULE``. The ``src/STUBS``
|
||||||
sub-directory is not a package but contains a dummy MPI library, that is
|
sub-directory is not a package but contains a dummy MPI library, that is
|
||||||
used when building a serial version of the code. The ``src/MAKE``
|
used when building a serial version of the code. The ``src/MAKE``
|
||||||
directory and its sub-directories contain makefiles with settings and
|
directory and its sub-directories contain makefiles with settings and
|
||||||
|
|||||||
@ -334,10 +334,11 @@ arguments of commands in LAMMPS are parsed and to make abstractions of
|
|||||||
repetitive tasks.
|
repetitive tasks.
|
||||||
|
|
||||||
The :cpp:class:`LAMMPS_NS::ArgInfo` class provides an abstraction
|
The :cpp:class:`LAMMPS_NS::ArgInfo` class provides an abstraction
|
||||||
for parsing references to compute or fix styles or variables. These
|
for parsing references to compute or fix styles, variables or custom
|
||||||
would start with a "c\_", "f\_", "v\_" followed by the ID or name of
|
integer or double properties handled by :doc:`fix property/atom <fix_property_atom>`.
|
||||||
than instance and may be postfixed with one or two array indices
|
These would start with a "c\_", "f\_", "v\_", "d\_", "d2\_", "i\_", or "i2\_"
|
||||||
"[<number>]" with numbers > 0.
|
followed by the ID or name of than instance and may be postfixed with
|
||||||
|
one or two array indices "[<number>]" with numbers > 0.
|
||||||
|
|
||||||
A typical code segment would look like this:
|
A typical code segment would look like this:
|
||||||
|
|
||||||
|
|||||||
@ -17,8 +17,9 @@ 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://www.lammps.org/mail.html>`_
|
* Check the `mailing list archives <https://www.lammps.org/mail.html>`_ or
|
||||||
to see if the issue has been discussed before.
|
the `LAMMPS forum <https://www.lammps.org/forum.html>`_ 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
|
||||||
bug report on the `GitHub Issue page <https://github.com/lammps/lammps/issues>`_.
|
bug report on the `GitHub Issue page <https://github.com/lammps/lammps/issues>`_.
|
||||||
|
|||||||
@ -570,10 +570,10 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
|
|||||||
See the region prism command for details.
|
See the region prism command for details.
|
||||||
|
|
||||||
*Can only use -plog with multiple partitions*
|
*Can only use -plog with multiple partitions*
|
||||||
Self-explanatory. See doc page discussion of command-line switches.
|
Self-explanatory. See page discussion of command-line switches.
|
||||||
|
|
||||||
*Can only use -pscreen with multiple partitions*
|
*Can only use -pscreen with multiple partitions*
|
||||||
Self-explanatory. See doc page discussion of command-line switches.
|
Self-explanatory. See page discussion of command-line switches.
|
||||||
|
|
||||||
*Can only use Kokkos supported regions with Kokkos package*
|
*Can only use Kokkos supported regions with Kokkos package*
|
||||||
Self-explanatory.
|
Self-explanatory.
|
||||||
@ -1154,7 +1154,7 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
|
|||||||
Self-explanatory.
|
Self-explanatory.
|
||||||
|
|
||||||
*Cannot use -reorder after -partition*
|
*Cannot use -reorder after -partition*
|
||||||
Self-explanatory. See doc page discussion of command-line switches.
|
Self-explanatory. See page discussion of command-line switches.
|
||||||
|
|
||||||
*Cannot use Ewald with 2d simulation*
|
*Cannot use Ewald with 2d simulation*
|
||||||
The kspace style ewald cannot be used in 2d simulations. You can use
|
The kspace style ewald cannot be used in 2d simulations. You can use
|
||||||
@ -2347,14 +2347,14 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
|
|||||||
*Compute used in variable between runs is not current*
|
*Compute used in variable between runs is not current*
|
||||||
Computes cannot be invoked by a variable in between runs. Thus they
|
Computes cannot be invoked by a variable in between runs. Thus they
|
||||||
must have been evaluated on the last timestep of the previous run in
|
must have been evaluated on the last timestep of the previous run in
|
||||||
order for their value(s) to be accessed. See the doc page for the
|
order for their value(s) to be accessed. See the page for the
|
||||||
variable command for more info.
|
variable command for more info.
|
||||||
|
|
||||||
*Compute used in variable thermo keyword between runs is not current*
|
*Compute used in variable thermo keyword between runs is not current*
|
||||||
Some thermo keywords rely on a compute to calculate their value(s).
|
Some thermo keywords rely on a compute to calculate their value(s).
|
||||||
Computes cannot be invoked by a variable in between runs. Thus they
|
Computes cannot be invoked by a variable in between runs. Thus they
|
||||||
must have been evaluated on the last timestep of the previous run in
|
must have been evaluated on the last timestep of the previous run in
|
||||||
order for their value(s) to be accessed. See the doc page for the
|
order for their value(s) to be accessed. See the page for the
|
||||||
variable command for more info.
|
variable command for more info.
|
||||||
|
|
||||||
*Compute vcm/chunk does not use chunk/atom compute*
|
*Compute vcm/chunk does not use chunk/atom compute*
|
||||||
@ -3126,7 +3126,7 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
|
|||||||
*Energy was not tallied on needed timestep*
|
*Energy was not tallied on needed timestep*
|
||||||
You are using a thermo keyword that requires potentials to
|
You are using a thermo keyword that requires potentials to
|
||||||
have tallied energy, but they did not on this timestep. See the
|
have tallied energy, but they did not on this timestep. See the
|
||||||
variable doc page for ideas on how to make this work.
|
variable page for ideas on how to make this work.
|
||||||
|
|
||||||
*Epsilon or sigma reference not set by pair style in PPPMDisp*
|
*Epsilon or sigma reference not set by pair style in PPPMDisp*
|
||||||
Self-explanatory.
|
Self-explanatory.
|
||||||
@ -4535,10 +4535,10 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
|
|||||||
particles.
|
particles.
|
||||||
|
|
||||||
*Incorrect # of floating-point values in Bodies section of data file*
|
*Incorrect # of floating-point values in Bodies section of data file*
|
||||||
See doc page for body style.
|
See page for body style.
|
||||||
|
|
||||||
*Incorrect # of integer values in Bodies section of data file*
|
*Incorrect # of integer values in Bodies section of data file*
|
||||||
See doc page for body style.
|
See page for body style.
|
||||||
|
|
||||||
*Incorrect %s format in data file*
|
*Incorrect %s format in data file*
|
||||||
A section of the data file being read by fix property/atom does
|
A section of the data file being read by fix property/atom does
|
||||||
@ -4573,7 +4573,7 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
|
|||||||
The number of fields per line is not what expected.
|
The number of fields per line is not what expected.
|
||||||
|
|
||||||
*Incorrect bonus data format in data file*
|
*Incorrect bonus data format in data file*
|
||||||
See the read_data doc page for a description of how various kinds of
|
See the read_data page for a description of how various kinds of
|
||||||
bonus data must be formatted for certain atom styles.
|
bonus data must be formatted for certain atom styles.
|
||||||
|
|
||||||
*Incorrect boundaries with slab Ewald*
|
*Incorrect boundaries with slab Ewald*
|
||||||
@ -4641,7 +4641,7 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
|
|||||||
Incorrect number of words per line in the potential file.
|
Incorrect number of words per line in the potential file.
|
||||||
|
|
||||||
*Incorrect integer value in Bodies section of data file*
|
*Incorrect integer value in Bodies section of data file*
|
||||||
See doc page for body style.
|
See page for body style.
|
||||||
|
|
||||||
*Incorrect multiplicity arg for dihedral coefficients*
|
*Incorrect multiplicity arg for dihedral coefficients*
|
||||||
Self-explanatory. Check the input script or data file.
|
Self-explanatory. Check the input script or data file.
|
||||||
@ -5996,7 +5996,7 @@ Doc page with :doc:`WARNING messages <Errors_warnings>`
|
|||||||
Self-explanatory.
|
Self-explanatory.
|
||||||
|
|
||||||
*Needed bonus data not in data file*
|
*Needed bonus data not in data file*
|
||||||
Some atom styles require bonus data. See the read_data doc page for
|
Some atom styles require bonus data. See the read_data page for
|
||||||
details.
|
details.
|
||||||
|
|
||||||
*Needed molecular topology not in data file*
|
*Needed molecular topology not in data file*
|
||||||
@ -6198,7 +6198,7 @@ keyword to allow for additional bonds to be formed
|
|||||||
|
|
||||||
*One or more atom IDs is too big*
|
*One or more atom IDs is too big*
|
||||||
The limit on atom IDs is set by the SMALLBIG, BIGBIG, SMALLSMALL
|
The limit on atom IDs is set by the SMALLBIG, BIGBIG, SMALLSMALL
|
||||||
setting in your LAMMPS build. See the :doc:`Build settings <Build_settings>` doc page for more info.
|
setting in your LAMMPS build. See the :doc:`Build settings <Build_settings>` page for more info.
|
||||||
|
|
||||||
*One or more atom IDs is zero*
|
*One or more atom IDs is zero*
|
||||||
Either all atoms IDs must be zero or none of them.
|
Either all atoms IDs must be zero or none of them.
|
||||||
@ -6593,7 +6593,7 @@ keyword to allow for additional bonds to be formed
|
|||||||
|
|
||||||
*Pair style bop requires comm ghost cutoff at least 3x larger than %g*
|
*Pair style bop requires comm ghost cutoff at least 3x larger than %g*
|
||||||
Use the communicate ghost command to set this. See the pair bop
|
Use the communicate ghost command to set this. See the pair bop
|
||||||
doc page for more details.
|
page for more details.
|
||||||
|
|
||||||
*Pair style born/coul/long requires atom attribute q*
|
*Pair style born/coul/long requires atom attribute q*
|
||||||
An atom style that defines this attribute must be used.
|
An atom style that defines this attribute must be used.
|
||||||
@ -6913,7 +6913,7 @@ keyword to allow for additional bonds to be formed
|
|||||||
*Per-atom energy was not tallied on needed timestep*
|
*Per-atom energy was not tallied on needed timestep*
|
||||||
You are using a thermo keyword that requires potentials to
|
You are using a thermo keyword that requires potentials to
|
||||||
have tallied energy, but they did not on this timestep. See the
|
have tallied energy, but they did not on this timestep. See the
|
||||||
variable doc page for ideas on how to make this work.
|
variable page for ideas on how to make this work.
|
||||||
|
|
||||||
*Per-atom fix in equal-style variable formula*
|
*Per-atom fix in equal-style variable formula*
|
||||||
Equal-style variables cannot use per-atom quantities.
|
Equal-style variables cannot use per-atom quantities.
|
||||||
@ -6921,7 +6921,7 @@ keyword to allow for additional bonds to be formed
|
|||||||
*Per-atom virial was not tallied on needed timestep*
|
*Per-atom virial was not tallied on needed timestep*
|
||||||
You are using a thermo keyword that requires potentials to have
|
You are using a thermo keyword that requires potentials to have
|
||||||
tallied the virial, but they did not on this timestep. See the
|
tallied the virial, but they did not on this timestep. See the
|
||||||
variable doc page for ideas on how to make this work.
|
variable page for ideas on how to make this work.
|
||||||
|
|
||||||
*Per-processor system is too big*
|
*Per-processor system is too big*
|
||||||
The number of owned atoms plus ghost atoms on a single
|
The number of owned atoms plus ghost atoms on a single
|
||||||
@ -8408,7 +8408,7 @@ keyword to allow for additional bonds to be formed
|
|||||||
*Virial was not tallied on needed timestep*
|
*Virial was not tallied on needed timestep*
|
||||||
You are using a thermo keyword that requires potentials to
|
You are using a thermo keyword that requires potentials to
|
||||||
have tallied the virial, but they did not on this timestep. See the
|
have tallied the virial, but they did not on this timestep. See the
|
||||||
variable doc page for ideas on how to make this work.
|
variable page for ideas on how to make this work.
|
||||||
|
|
||||||
*Voro++ error: narea and neigh have a different size*
|
*Voro++ error: narea and neigh have a different size*
|
||||||
This error is returned by the Voro++ library.
|
This error is returned by the Voro++ library.
|
||||||
|
|||||||
@ -213,7 +213,7 @@ Doc page with :doc:`ERROR messages <Errors_messages>`
|
|||||||
in unexpected behavior.
|
in unexpected behavior.
|
||||||
|
|
||||||
*Fix bond/swap will ignore defined angles*
|
*Fix bond/swap will ignore defined angles*
|
||||||
See the doc page for fix bond/swap for more info on this
|
See the page for fix bond/swap for more info on this
|
||||||
restriction.
|
restriction.
|
||||||
|
|
||||||
*Fix deposit near setting < possible overlap separation %g*
|
*Fix deposit near setting < possible overlap separation %g*
|
||||||
@ -514,7 +514,7 @@ This will most likely cause errors in kinetic fluctuations.
|
|||||||
will integrate the body motion, but it would be more efficient to use
|
will integrate the body motion, but it would be more efficient to use
|
||||||
fix rigid.
|
fix rigid.
|
||||||
|
|
||||||
*Not using real units with pair reax*
|
*Not using real units with pair reaxff*
|
||||||
This is most likely an error, unless you have created your own ReaxFF
|
This is most likely an error, unless you have created your own ReaxFF
|
||||||
parameter file in a different set of units.
|
parameter file in a different set of units.
|
||||||
|
|
||||||
@ -805,5 +805,3 @@ This will most likely cause errors in kinetic fluctuations.
|
|||||||
*Using pair tail corrections with pair_modify compute no*
|
*Using pair tail corrections with pair_modify compute no*
|
||||||
The tail corrections will thus not be computed.
|
The tail corrections will thus not be computed.
|
||||||
|
|
||||||
*pair style reax is now deprecated and will soon be retired. Users should switch to pair_style reax/c*
|
|
||||||
Self-explanatory.
|
|
||||||
|
|||||||
@ -174,10 +174,10 @@ 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
|
||||||
script a series of JPG images will be produced by the run (assuming
|
script a series of JPG images will be produced by the run (assuming
|
||||||
you built LAMMPS with JPG support; see the
|
you built LAMMPS with JPG support; see the
|
||||||
:doc:`Build_settings <Build_settings>` doc page for details). These can
|
:doc:`Build_settings <Build_settings>` page for details). These can
|
||||||
be viewed individually or turned into a movie or animated by tools
|
be viewed individually or turned into a movie or animated by tools
|
||||||
like ImageMagick or QuickTime or various Windows-based tools. See the
|
like ImageMagick or QuickTime or various Windows-based tools. See the
|
||||||
:doc:`dump image <dump_image>` doc page for more details. E.g. this
|
:doc:`dump image <dump_image>` page for more details. E.g. this
|
||||||
Imagemagick command would create a GIF file suitable for viewing in a
|
Imagemagick command would create a GIF file suitable for viewing in a
|
||||||
browser.
|
browser.
|
||||||
|
|
||||||
@ -207,14 +207,12 @@ Uppercase directories
|
|||||||
+------------+--------------------------------------------------------------------------------------------------+
|
+------------+--------------------------------------------------------------------------------------------------+
|
||||||
| MC | using LAMMPS in a Monte Carlo mode to relax the energy of a system |
|
| MC | using LAMMPS in a Monte Carlo mode to relax the energy of a system |
|
||||||
+------------+--------------------------------------------------------------------------------------------------+
|
+------------+--------------------------------------------------------------------------------------------------+
|
||||||
| PACKAGES | examples for specific packages and contributed commands in USER-MISC |
|
| PACKAGES | examples for specific packages and contributed commands |
|
||||||
+------------+--------------------------------------------------------------------------------------------------+
|
+------------+--------------------------------------------------------------------------------------------------+
|
||||||
| SPIN | examples for features of the SPIN package |
|
| SPIN | examples for features of the SPIN package |
|
||||||
+------------+--------------------------------------------------------------------------------------------------+
|
+------------+--------------------------------------------------------------------------------------------------+
|
||||||
| UNITS | examples that run the same simulation in lj, real, metal units |
|
| UNITS | examples that run the same simulation in lj, real, metal units |
|
||||||
+------------+--------------------------------------------------------------------------------------------------+
|
+------------+--------------------------------------------------------------------------------------------------+
|
||||||
| USER-MISC | examples for commands in the USER-MISC packages |
|
|
||||||
+------------+--------------------------------------------------------------------------------------------------+
|
|
||||||
| VISCOSITY | compute viscosity via several methods |
|
| VISCOSITY | compute viscosity via several methods |
|
||||||
+------------+--------------------------------------------------------------------------------------------------+
|
+------------+--------------------------------------------------------------------------------------------------+
|
||||||
|
|
||||||
@ -228,7 +226,4 @@ of the sub-directories have their own README files which give further
|
|||||||
instructions. See the :doc:`Packages_details <Packages_details>` doc
|
instructions. See the :doc:`Packages_details <Packages_details>` doc
|
||||||
page for more info on specific packages.
|
page for more info on specific packages.
|
||||||
|
|
||||||
Similarly the USER-MISC directory has sub-directories for examples
|
|
||||||
corresponding to individual commands or styles in the USER-MISC package.
|
|
||||||
|
|
||||||
.. _openkim: https://openkim.org
|
.. _openkim: https://openkim.org
|
||||||
|
|||||||
@ -50,7 +50,7 @@ a temperature or pressure compute to a barostatting fix.
|
|||||||
|
|
||||||
Thermodynamic output, which can be setup via the
|
Thermodynamic output, which can be setup via the
|
||||||
:doc:`thermo_style <thermo_style>` command, often includes pressure
|
:doc:`thermo_style <thermo_style>` command, often includes pressure
|
||||||
values. As explained on the doc page for the
|
values. As explained on the page for the
|
||||||
:doc:`thermo_style <thermo_style>` command, the default pressure is
|
:doc:`thermo_style <thermo_style>` command, the default pressure is
|
||||||
setup by the thermo command itself. It is NOT the pressure associated
|
setup by the thermo command itself. It is NOT the pressure associated
|
||||||
with any barostatting fix you have defined or with any compute you
|
with any barostatting fix you have defined or with any compute you
|
||||||
|
|||||||
@ -49,7 +49,7 @@ command's documentation for the formula it computes.
|
|||||||
COMPASS is a general force field for atomistic simulation of common
|
COMPASS is a general force field for atomistic simulation of common
|
||||||
organic molecules, inorganic small molecules, and polymers which was
|
organic molecules, inorganic small molecules, and polymers which was
|
||||||
developed using ab initio and empirical parameterization techniques.
|
developed using ab initio and empirical parameterization techniques.
|
||||||
See the :doc:`Tools <Tools>` doc page for the msi2lmp tool for creating
|
See the :doc:`Tools <Tools>` page for the msi2lmp tool for creating
|
||||||
LAMMPS template input and data files from BIOVIA's Materials Studio
|
LAMMPS template input and data files from BIOVIA's Materials Studio
|
||||||
files. Please note that the msi2lmp tool is very old and largely
|
files. Please note that the msi2lmp tool is very old and largely
|
||||||
unmaintained, so it does not support all features of Materials Studio
|
unmaintained, so it does not support all features of Materials Studio
|
||||||
|
|||||||
@ -10,7 +10,7 @@ deformable objects, etc. Note that other kinds of finite-size
|
|||||||
spherical and aspherical particles are also supported by LAMMPS, such
|
spherical and aspherical particles are also supported by LAMMPS, such
|
||||||
as spheres, ellipsoids, line segments, and triangles, but they are
|
as spheres, ellipsoids, line segments, and triangles, but they are
|
||||||
simpler entities than body particles. See the :doc:`Howto spherical
|
simpler entities than body particles. See the :doc:`Howto spherical
|
||||||
<Howto_spherical>` doc page for a general overview of all these
|
<Howto_spherical>` page for a general overview of all these
|
||||||
particle types.
|
particle types.
|
||||||
|
|
||||||
Body particles are used via the :doc:`atom_style body <atom_style>`
|
Body particles are used via the :doc:`atom_style body <atom_style>`
|
||||||
@ -170,14 +170,14 @@ with this body style to compute body/body and body/non-body interactions.
|
|||||||
The *rounded/polygon* body style represents body particles as a 2d
|
The *rounded/polygon* body style represents body particles as a 2d
|
||||||
polygon with a variable number of N vertices. This style can only be
|
polygon with a variable number of N vertices. This style can only be
|
||||||
used for 2d models; see the :doc:`boundary <boundary>` command. See the
|
used for 2d models; see the :doc:`boundary <boundary>` command. See the
|
||||||
"pair_style body/rounded/polygon" doc page for a diagram of two
|
"pair_style body/rounded/polygon" page for a diagram of two
|
||||||
squares with rounded circles at the vertices. Special cases for N = 1
|
squares with rounded circles at the vertices. Special cases for N = 1
|
||||||
(circle) and N = 2 (rod with rounded ends) can also be specified.
|
(circle) and N = 2 (rod with rounded ends) can also be specified.
|
||||||
|
|
||||||
One use of this body style is for 2d discrete element models, as
|
One use of this body style is for 2d discrete element models, as
|
||||||
described in :ref:`Fraige <body-Fraige>`.
|
described in :ref:`Fraige <body-Fraige>`.
|
||||||
|
|
||||||
Similar to body style *nparticle*\ , the atom_style body command for
|
Similar to body style *nparticle*, the atom_style body command for
|
||||||
this body style takes two additional arguments:
|
this body style takes two additional arguments:
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
@ -284,7 +284,7 @@ The *rounded/polyhedron* body style represents body particles as a 3d
|
|||||||
polyhedron with a variable number of N vertices, E edges and F faces.
|
polyhedron with a variable number of N vertices, E edges and F faces.
|
||||||
This style can only be used for 3d models; see the
|
This style can only be used for 3d models; see the
|
||||||
:doc:`boundary <boundary>` command. See the "pair_style
|
:doc:`boundary <boundary>` command. See the "pair_style
|
||||||
body/rounded/polygon" doc page for a diagram of a two 2d squares with
|
body/rounded/polygon" page for a diagram of a two 2d squares with
|
||||||
rounded circles at the vertices. A 3d cube with rounded spheres at
|
rounded circles at the vertices. A 3d cube with rounded spheres at
|
||||||
the 8 vertices and 12 rounded edges would be similar. Special cases
|
the 8 vertices and 12 rounded edges would be similar. Special cases
|
||||||
for N = 1 (sphere) and N = 2 (rod with rounded ends) can also be
|
for N = 1 (sphere) and N = 2 (rod with rounded ends) can also be
|
||||||
@ -293,7 +293,7 @@ specified.
|
|||||||
This body style is for 3d discrete element models, as described in
|
This body style is for 3d discrete element models, as described in
|
||||||
:ref:`Wang <body-Wang>`.
|
:ref:`Wang <body-Wang>`.
|
||||||
|
|
||||||
Similar to body style *rounded/polygon*\ , the atom_style body command
|
Similar to body style *rounded/polygon*, the atom_style body command
|
||||||
for this body style takes two additional arguments:
|
for this body style takes two additional arguments:
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|||||||
@ -51,7 +51,7 @@ scales the floating point value to spread it across multiple integers.
|
|||||||
Spatial bins can be of various kinds, e.g. 1d bins = slabs, 2d bins =
|
Spatial bins can be of various kinds, e.g. 1d bins = slabs, 2d bins =
|
||||||
pencils, 3d bins = boxes, spherical bins, cylindrical bins.
|
pencils, 3d bins = boxes, spherical bins, cylindrical bins.
|
||||||
|
|
||||||
This compute also calculates the number of chunks *Nchunk*\ , which is
|
This compute also calculates the number of chunks *Nchunk*, which is
|
||||||
used by other commands to tally per-chunk data. *Nchunk* can be a
|
used by other commands to tally per-chunk data. *Nchunk* can be a
|
||||||
static value or change over time (e.g. the number of clusters). The
|
static value or change over time (e.g. the number of clusters). The
|
||||||
chunk ID for an individual atom can also be static (e.g. a molecule
|
chunk ID for an individual atom can also be static (e.g. a molecule
|
||||||
|
|||||||
@ -119,7 +119,7 @@ server code. Another code could be substituted for either.
|
|||||||
|
|
||||||
The examples below show launching both codes from the same window (or
|
The examples below show launching both codes from the same window (or
|
||||||
batch script), using the "&" character to launch the first code in the
|
batch script), using the "&" character to launch the first code in the
|
||||||
background. For all modes except *mpi/one*\ , you could also launch the
|
background. For all modes except *mpi/one*, you could also launch the
|
||||||
codes in separate windows on your desktop machine. It does not
|
codes in separate windows on your desktop machine. It does not
|
||||||
matter whether you launch the client or server first.
|
matter whether you launch the client or server first.
|
||||||
|
|
||||||
@ -132,7 +132,7 @@ mpirun, even if one or both of them runs on a single processor. This
|
|||||||
is so that MPI can figure out how to connect both MPI processes
|
is so that MPI can figure out how to connect both MPI processes
|
||||||
together to exchange MPI messages between them.
|
together to exchange MPI messages between them.
|
||||||
|
|
||||||
For message exchange in *file*\ , *zmq*\ , or *mpi/two* modes:
|
For message exchange in *file*, *zmq*, or *mpi/two* modes:
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
|
|||||||
@ -362,7 +362,7 @@ have to be enabled to be included into a LAMMPS executable. Packages
|
|||||||
are enabled through setting variables of the kind ``PKG_<NAME>`` to
|
are enabled through setting variables of the kind ``PKG_<NAME>`` to
|
||||||
``on`` and disabled by setting them to ``off`` (or using ``yes``,
|
``on`` and disabled by setting them to ``off`` (or using ``yes``,
|
||||||
``no``, ``1``, ``0`` correspondingly). ``<NAME>`` has to be replaced by
|
``no``, ``1``, ``0`` correspondingly). ``<NAME>`` has to be replaced by
|
||||||
the name of the package, e.g. ``MOLECULE`` or ``USER-MISC``.
|
the name of the package, e.g. ``MOLECULE`` or ``EXTRA-PAIR``.
|
||||||
|
|
||||||
|
|
||||||
Using presets
|
Using presets
|
||||||
|
|||||||
@ -5,7 +5,7 @@ The adiabatic core-shell model by :ref:`Mitchell and Fincham <MitchellFincham>`
|
|||||||
to a system. In order to mimic the electron shell of an ion, a
|
to a system. In order to mimic the electron shell of an ion, a
|
||||||
satellite particle is attached to it. This way the ions are split into
|
satellite particle is attached to it. This way the ions are split into
|
||||||
a core and a shell where the latter is meant to react to the
|
a core and a shell where the latter is meant to react to the
|
||||||
electrostatic environment inducing polarizability. See the :doc:`Howto polarizable <Howto_polarizable>` doc page for a discussion of all
|
electrostatic environment inducing polarizability. See the :doc:`Howto polarizable <Howto_polarizable>` page for a discussion of all
|
||||||
the polarizable models available in LAMMPS.
|
the polarizable models available in LAMMPS.
|
||||||
|
|
||||||
Technically, shells are attached to the cores by a spring force f =
|
Technically, shells are attached to the cores by a spring force f =
|
||||||
@ -78,7 +78,7 @@ satellite particle if desired.
|
|||||||
Since the core/shell model permits distances of r = 0.0 between the
|
Since the core/shell model permits distances of r = 0.0 between the
|
||||||
core and shell, a pair style with a "cs" suffix needs to be used to
|
core and shell, a pair style with a "cs" suffix needs to be used to
|
||||||
implement a valid long-range Coulombic correction. Several such pair
|
implement a valid long-range Coulombic correction. Several such pair
|
||||||
styles are provided in the CORESHELL package. See :doc:`this doc page <pair_cs>` for details. All of the core/shell enabled pair
|
styles are provided in the CORESHELL package. See :doc:`this page <pair_cs>` for details. All of the core/shell enabled pair
|
||||||
styles require the use of a long-range Coulombic solver, as specified
|
styles require the use of a long-range Coulombic solver, as specified
|
||||||
by the :doc:`kspace_style <kspace_style>` command. Either the PPPM or
|
by the :doc:`kspace_style <kspace_style>` command. Either the PPPM or
|
||||||
Ewald solvers can be used.
|
Ewald solvers can be used.
|
||||||
|
|||||||
@ -42,7 +42,7 @@ context of your application.
|
|||||||
stand-alone code could communicate with LAMMPS through files that the
|
stand-alone code could communicate with LAMMPS through files that the
|
||||||
command writes and reads.
|
command writes and reads.
|
||||||
|
|
||||||
See the :doc:`Modify command <Modify_command>` doc page for info on how
|
See the :doc:`Modify command <Modify_command>` page for info on how
|
||||||
to add a new command to LAMMPS.
|
to add a new command to LAMMPS.
|
||||||
|
|
||||||
.. spacer
|
.. spacer
|
||||||
|
|||||||
@ -91,7 +91,7 @@ DRUDE package) to convert a non-polarizable data file (here
|
|||||||
|
|
||||||
This will automatically insert the new atoms and bonds.
|
This will automatically insert the new atoms and bonds.
|
||||||
The masses and charges of DCs and DPs are computed
|
The masses and charges of DCs and DPs are computed
|
||||||
from *phenol.dff*\ , as well as the DC-DP bond constants. The file
|
from *phenol.dff*, as well as the DC-DP bond constants. The file
|
||||||
*phenol.dff* contains the polarizabilities of the atom types
|
*phenol.dff* contains the polarizabilities of the atom types
|
||||||
and the mass of the Drude particles, for instance:
|
and the mass of the Drude particles, for instance:
|
||||||
|
|
||||||
@ -106,7 +106,7 @@ and the mass of the Drude particles, for instance:
|
|||||||
|
|
||||||
The hydrogen atoms are absent from this file, so they will be treated
|
The hydrogen atoms are absent from this file, so they will be treated
|
||||||
as non-polarizable atoms. In the non-polarizable data file
|
as non-polarizable atoms. In the non-polarizable data file
|
||||||
*data.102494.lmp*\ , atom names corresponding to the atom type numbers
|
*data.102494.lmp*, atom names corresponding to the atom type numbers
|
||||||
have to be specified as comments at the end of lines of the *Masses*
|
have to be specified as comments at the end of lines of the *Masses*
|
||||||
section. You probably need to edit it to add these names. It should
|
section. You probably need to edit it to add these names. It should
|
||||||
look like
|
look like
|
||||||
@ -125,7 +125,7 @@ look like
|
|||||||
|
|
||||||
**Basic input file**
|
**Basic input file**
|
||||||
|
|
||||||
The atom style should be set to (or derive from) *full*\ , so that you
|
The atom style should be set to (or derive from) *full*, so that you
|
||||||
can define atomic charges and molecular bonds, angles, dihedrals...
|
can define atomic charges and molecular bonds, angles, dihedrals...
|
||||||
|
|
||||||
The *polarizer* tool also outputs certain lines related to the input
|
The *polarizer* tool also outputs certain lines related to the input
|
||||||
@ -143,7 +143,7 @@ and N for non-polarizable atoms. Here the atom types 1 to 3 (C and O
|
|||||||
atoms) are DC, atom types 4 and 5 (H atoms) are non-polarizable and
|
atoms) are DC, atom types 4 and 5 (H atoms) are non-polarizable and
|
||||||
the atom types 6 to 8 are the newly created DPs.
|
the atom types 6 to 8 are the newly created DPs.
|
||||||
|
|
||||||
By recognizing the fix *drude*\ , LAMMPS will find and store matching
|
By recognizing the fix *drude*, LAMMPS will find and store matching
|
||||||
DC-DP pairs and will treat DP as equivalent to their DC in the
|
DC-DP pairs and will treat DP as equivalent to their DC in the
|
||||||
*special bonds* relations. It may be necessary to extend the space
|
*special bonds* relations. It may be necessary to extend the space
|
||||||
for storing such special relations. In this case extra space should
|
for storing such special relations. In this case extra space should
|
||||||
@ -340,11 +340,11 @@ For the *thole* pair style the coefficients are
|
|||||||
The special neighbors have charge-charge and charge-dipole
|
The special neighbors have charge-charge and charge-dipole
|
||||||
interactions screened by the *coul* factors of the *special_bonds*
|
interactions screened by the *coul* factors of the *special_bonds*
|
||||||
command (0.0, 0.0, and 0.5 in the example above). Without using the
|
command (0.0, 0.0, and 0.5 in the example above). Without using the
|
||||||
pair_style *thole*\ , dipole-dipole interactions are screened by the
|
pair_style *thole*, dipole-dipole interactions are screened by the
|
||||||
same factor. By using the pair_style *thole*\ , dipole-dipole
|
same factor. By using the pair_style *thole*, dipole-dipole
|
||||||
interactions are screened by Thole's function, whatever their special
|
interactions are screened by Thole's function, whatever their special
|
||||||
relationship (except within each DC-DP pair of course). Consider for
|
relationship (except within each DC-DP pair of course). Consider for
|
||||||
example 1-2 neighbors: using the pair_style *thole*\ , their dipoles
|
example 1-2 neighbors: using the pair_style *thole*, their dipoles
|
||||||
will see each other (despite the *coul* factor being 0.) and the
|
will see each other (despite the *coul* factor being 0.) and the
|
||||||
interactions between these dipoles will be damped by Thole's function.
|
interactions between these dipoles will be damped by Thole's function.
|
||||||
|
|
||||||
@ -384,7 +384,7 @@ For our phenol example, the groups would be defined as
|
|||||||
group CORES type 1 2 3 # DCs
|
group CORES type 1 2 3 # DCs
|
||||||
group DRUDES type 6 7 8 # DPs
|
group DRUDES type 6 7 8 # DPs
|
||||||
|
|
||||||
Note that with the fixes *drude/transform*\ , it is not required to
|
Note that with the fixes *drude/transform*, it is not required to
|
||||||
specify *comm_modify vel yes* because the fixes do it anyway (several
|
specify *comm_modify vel yes* because the fixes do it anyway (several
|
||||||
times and for the forces also).
|
times and for the forces also).
|
||||||
|
|
||||||
|
|||||||
@ -140,8 +140,8 @@ After everything is done, add the files to the branch and commit them:
|
|||||||
flag) will automatically include **all** modified **and** new files
|
flag) will automatically include **all** modified **and** new files
|
||||||
and that is rarely the behavior you want. It can easily lead to
|
and that is rarely the behavior you want. It can easily lead to
|
||||||
accidentally adding unrelated and unwanted changes into the
|
accidentally adding unrelated and unwanted changes into the
|
||||||
repository. Instead it is preferable to explicitly use *git add*\ ,
|
repository. Instead it is preferable to explicitly use *git add*,
|
||||||
*git rm*\ , *git mv* for adding, removing, renaming individual files,
|
*git rm*, *git mv* for adding, removing, renaming individual files,
|
||||||
respectively, and then *git commit* to finalize the commit.
|
respectively, and then *git commit* to finalize the commit.
|
||||||
Carefully check all pending changes with *git status* before
|
Carefully check all pending changes with *git status* before
|
||||||
committing them. If you find doing this on the command line too
|
committing them. If you find doing this on the command line too
|
||||||
|
|||||||
@ -4,7 +4,7 @@ Calculate thermal conductivity
|
|||||||
The thermal conductivity kappa of a material can be measured in at
|
The thermal conductivity kappa of a material can be measured in at
|
||||||
least 4 ways using various options in LAMMPS. See the examples/KAPPA
|
least 4 ways using various options in LAMMPS. See the examples/KAPPA
|
||||||
directory for scripts that implement the 4 methods discussed here for
|
directory for scripts that implement the 4 methods discussed here for
|
||||||
a simple Lennard-Jones fluid model. Also, see the :doc:`Howto viscosity <Howto_viscosity>` doc page for an analogous discussion
|
a simple Lennard-Jones fluid model. Also, see the :doc:`Howto viscosity <Howto_viscosity>` page for an analogous discussion
|
||||||
for viscosity.
|
for viscosity.
|
||||||
|
|
||||||
The thermal conductivity tensor kappa is a measure of the propensity
|
The thermal conductivity tensor kappa is a measure of the propensity
|
||||||
@ -58,7 +58,7 @@ between hot and cold regions of the simulation box.
|
|||||||
The :doc:`compute heat/flux <compute_heat_flux>` command can calculate
|
The :doc:`compute heat/flux <compute_heat_flux>` command can calculate
|
||||||
the needed heat flux and describes how to implement the Green_Kubo
|
the needed heat flux and describes how to implement the Green_Kubo
|
||||||
formalism using additional LAMMPS commands, such as the :doc:`fix ave/correlate <fix_ave_correlate>` command to calculate the needed
|
formalism using additional LAMMPS commands, such as the :doc:`fix ave/correlate <fix_ave_correlate>` command to calculate the needed
|
||||||
auto-correlation. See the doc page for the :doc:`compute heat/flux <compute_heat_flux>` command for an example input script
|
auto-correlation. See the page for the :doc:`compute heat/flux <compute_heat_flux>` command for an example input script
|
||||||
that calculates the thermal conductivity of solid Ar via the GK
|
that calculates the thermal conductivity of solid Ar via the GK
|
||||||
formalism.
|
formalism.
|
||||||
|
|
||||||
|
|||||||
@ -3,7 +3,7 @@ Manifolds (surfaces)
|
|||||||
|
|
||||||
**Overview:**
|
**Overview:**
|
||||||
|
|
||||||
This doc page is not about a LAMMPS input script command, but about
|
This page is not about a LAMMPS input script command, but about
|
||||||
manifolds, which are generalized surfaces, as defined and used by the
|
manifolds, which are generalized surfaces, as defined and used by the
|
||||||
MANIFOLD package, to track particle motion on the manifolds. See
|
MANIFOLD package, to track particle motion on the manifolds. See
|
||||||
the src/MANIFOLD/README file for more details about the package
|
the src/MANIFOLD/README file for more details about the package
|
||||||
|
|||||||
@ -3,7 +3,7 @@ Using LAMMPS with the MDI library for code coupling
|
|||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
This Howto doc page will eventually replace the
|
This Howto page will eventually replace the
|
||||||
:doc:`Howto client/server <Howto_client_server>` doc page.
|
:doc:`Howto client/server <Howto_client_server>` doc page.
|
||||||
|
|
||||||
Client/server coupling of two codes is where one code is the "client"
|
Client/server coupling of two codes is where one code is the "client"
|
||||||
@ -120,7 +120,7 @@ input script will continue. After finishing execution of the input
|
|||||||
script, the instance of LAMMPS will be destroyed.
|
script, the instance of LAMMPS will be destroyed.
|
||||||
|
|
||||||
LAMMPS supports the full set of MD-appropriate engine commands defined
|
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
|
by the MDI library. See the :doc:`mdi/engine <mdi_engine>` page for
|
||||||
a list of these.
|
a list of these.
|
||||||
|
|
||||||
If those commands are not sufficient for a user-developed driver to use
|
If those commands are not sufficient for a user-developed driver to use
|
||||||
|
|||||||
@ -268,7 +268,7 @@ Computes that generate values to output
|
|||||||
Every :doc:`compute <compute>` in LAMMPS produces either global or
|
Every :doc:`compute <compute>` in LAMMPS produces either global or
|
||||||
per-atom or local values. The values can be scalars or vectors or
|
per-atom or local values. The values can be scalars or vectors or
|
||||||
arrays of data. These values can be output using the other commands
|
arrays of data. These values can be output using the other commands
|
||||||
described in this section. The doc page for each compute command
|
described in this section. The page for each compute command
|
||||||
describes what it produces. Computes that produce per-atom or local
|
describes what it produces. Computes that produce per-atom or local
|
||||||
values have the word "atom" or "local" in their style name. Computes
|
values have the word "atom" or "local" in their style name. Computes
|
||||||
without the word "atom" or "local" produce global values.
|
without the word "atom" or "local" produce global values.
|
||||||
@ -281,7 +281,7 @@ Fixes that generate values to output
|
|||||||
Some :doc:`fixes <fix>` in LAMMPS produces either global or per-atom or
|
Some :doc:`fixes <fix>` in LAMMPS produces either global or per-atom or
|
||||||
local values which can be accessed by other commands. The values can
|
local values which can be accessed by other commands. The values can
|
||||||
be scalars or vectors or arrays of data. These values can be output
|
be scalars or vectors or arrays of data. These values can be output
|
||||||
using the other commands described in this section. The doc page for
|
using the other commands described in this section. The page for
|
||||||
each fix command tells whether it produces any output quantities and
|
each fix command tells whether it produces any output quantities and
|
||||||
describes them.
|
describes them.
|
||||||
|
|
||||||
|
|||||||
@ -8,34 +8,33 @@ periodically.
|
|||||||
|
|
||||||
These are the relevant commands:
|
These are the relevant commands:
|
||||||
|
|
||||||
* :doc:`neb <neb>` for nudged elastic band calculations
|
* :doc:`hyper <hyper>` for bond boost hyperdynamics (HD)
|
||||||
|
* :doc:`neb <neb>` for nudged elastic band calculations (NEB)
|
||||||
* :doc:`neb_spin <neb_spin>` for magnetic nudged elastic band calculations
|
* :doc:`neb_spin <neb_spin>` for magnetic nudged elastic band calculations
|
||||||
* :doc:`prd <prd>` for parallel replica dynamics
|
* :doc:`prd <prd>` for parallel replica dynamics (PRD)
|
||||||
* :doc:`tad <tad>` for temperature accelerated dynamics
|
* :doc:`tad <tad>` for temperature accelerated dynamics (TAD)
|
||||||
* :doc:`temper <temper>` for parallel tempering
|
* :doc:`temper <temper>` for parallel tempering with fixed volume
|
||||||
|
* :doc:`temper/npt <temper_npt>` for parallel tempering extended for NPT
|
||||||
|
* :doc:`temper/grem <temper_grem>` for parallel tempering with generalized replica exchange (gREM)
|
||||||
* :doc:`fix pimd <fix_pimd>` for path-integral molecular dynamics (PIMD)
|
* :doc:`fix pimd <fix_pimd>` for path-integral molecular dynamics (PIMD)
|
||||||
|
|
||||||
NEB is a method for finding transition states and barrier energies.
|
NEB is a method for finding transition states and barrier potential energies.
|
||||||
PRD and TAD are methods for performing accelerated dynamics to find
|
HD, PRD, and TAD are methods for performing accelerated dynamics to find and
|
||||||
and perform infrequent events. Parallel tempering or replica exchange
|
perform infrequent events. Parallel tempering or replica exchange runs
|
||||||
runs different replicas at a series of temperature to facilitate
|
different replicas at a series of temperature to facilitate rare-event
|
||||||
rare-event sampling.
|
sampling. PIMD runs different replicas whose individual particles in different
|
||||||
|
replicas are coupled together by springs to model a system of ring-polymers which
|
||||||
|
can represent the quantum nature of atom cores.
|
||||||
|
|
||||||
These commands can only be used if LAMMPS was built with the REPLICA
|
These commands can only be used if LAMMPS was built with the REPLICA
|
||||||
package. See the :doc:`Build package <Build_package>` doc page for more
|
package. See the :doc:`Build package <Build_package>` page for more
|
||||||
info.
|
|
||||||
|
|
||||||
PIMD runs different replicas whose individual particles are coupled
|
|
||||||
together by springs to model a system or ring-polymers.
|
|
||||||
|
|
||||||
This commands can only be used if LAMMPS was built with the USER-MISC
|
|
||||||
package. See the :doc:`Build package <Build_package>` doc page for more
|
|
||||||
info.
|
info.
|
||||||
|
|
||||||
In all these cases, you must run with one or more processors per
|
In all these cases, you must run with one or more processors per
|
||||||
replica. The processors assigned to each replica are determined at
|
replica. The processors assigned to each replica are determined at
|
||||||
run-time by using the :doc:`-partition command-line switch <Run_options>` to launch LAMMPS on multiple partitions,
|
run-time by using the :doc:`-partition command-line switch
|
||||||
which in this context are the same as replicas. E.g. these commands:
|
<Run_options>` to launch LAMMPS on multiple partitions, which in this
|
||||||
|
context are the same as replicas. E.g. these commands:
|
||||||
|
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
@ -46,9 +45,11 @@ would each run 8 replicas, on either 16 or 8 processors. Note the use
|
|||||||
of the :doc:`-in command-line switch <Run_options>` to specify the input
|
of the :doc:`-in command-line switch <Run_options>` to specify the input
|
||||||
script which is required when running in multi-replica mode.
|
script which is required when running in multi-replica mode.
|
||||||
|
|
||||||
Also note that with MPI installed on a machine (e.g. your desktop),
|
Also note that with MPI installed on a machine (e.g. your desktop), you
|
||||||
you can run on more (virtual) processors than you have physical
|
can run on more (virtual) processors than you have physical processors.
|
||||||
processors. Thus the above commands could be run on a
|
Thus the above commands could be run on a single-processor (or
|
||||||
single-processor (or few-processor) desktop so that you can run
|
few-processor) desktop so that you can run a multi-replica simulation on
|
||||||
a multi-replica simulation on more replicas than you have
|
more replicas than you have physical processors. This is useful for
|
||||||
physical processors.
|
testing and debugging, since with most modern processors and MPI
|
||||||
|
libraries the efficiency of a calculation can severely diminish when
|
||||||
|
oversubscribing processors.
|
||||||
|
|||||||
@ -28,7 +28,7 @@ can be invoked via the *dpd/tstat* pair style:
|
|||||||
:doc:`Fix nvt <fix_nh>` only thermostats the translational velocity of
|
:doc:`Fix nvt <fix_nh>` only thermostats the translational velocity of
|
||||||
particles. :doc:`Fix nvt/sllod <fix_nvt_sllod>` also does this, except
|
particles. :doc:`Fix nvt/sllod <fix_nvt_sllod>` also does this, except
|
||||||
that it subtracts out a velocity bias due to a deforming box and
|
that it subtracts out a velocity bias due to a deforming box and
|
||||||
integrates the SLLOD equations of motion. See the :doc:`Howto nemd <Howto_nemd>` doc page for further details. :doc:`Fix nvt/sphere <fix_nvt_sphere>` and :doc:`fix nvt/asphere <fix_nvt_asphere>` thermostat not only translation
|
integrates the SLLOD equations of motion. See the :doc:`Howto nemd <Howto_nemd>` page for further details. :doc:`Fix nvt/sphere <fix_nvt_sphere>` and :doc:`fix nvt/asphere <fix_nvt_asphere>` thermostat not only translation
|
||||||
velocities but also rotational velocities for spherical and aspherical
|
velocities but also rotational velocities for spherical and aspherical
|
||||||
particles.
|
particles.
|
||||||
|
|
||||||
@ -88,7 +88,7 @@ Below is a list of some custom temperature computes that can be used like that:
|
|||||||
|
|
||||||
Thermodynamic output, which can be setup via the
|
Thermodynamic output, which can be setup via the
|
||||||
:doc:`thermo_style <thermo_style>` command, often includes temperature
|
:doc:`thermo_style <thermo_style>` command, often includes temperature
|
||||||
values. As explained on the doc page for the
|
values. As explained on the page for the
|
||||||
:doc:`thermo_style <thermo_style>` command, the default temperature is
|
:doc:`thermo_style <thermo_style>` command, the default temperature is
|
||||||
setup by the thermo command itself. It is NOT the temperature
|
setup by the thermo command itself. It is NOT the temperature
|
||||||
associated with any thermostatting fix you have defined or with any
|
associated with any thermostatting fix you have defined or with any
|
||||||
|
|||||||
@ -23,21 +23,21 @@ origin given by **a** = (xhi-xlo,0,0); **b** = (xy,yhi-ylo,0); **c** =
|
|||||||
and are called "tilt factors" because they are the amount of
|
and are called "tilt factors" because they are the amount of
|
||||||
displacement applied to faces of an originally orthogonal box to
|
displacement applied to faces of an originally orthogonal box to
|
||||||
transform it into the parallelepiped. In LAMMPS the triclinic
|
transform it into the parallelepiped. In LAMMPS the triclinic
|
||||||
simulation box edge vectors **a**\ , **b**\ , and **c** cannot be arbitrary
|
simulation box edge vectors **a**, **b**, and **c** cannot be arbitrary
|
||||||
vectors. As indicated, **a** must lie on the positive x axis. **b** must
|
vectors. As indicated, **a** must lie on the positive x axis. **b** must
|
||||||
lie in the xy plane, with strictly positive y component. **c** may have
|
lie in the xy plane, with strictly positive y component. **c** may have
|
||||||
any orientation with strictly positive z component. The requirement
|
any orientation with strictly positive z component. The requirement
|
||||||
that **a**\ , **b**\ , and **c** have strictly positive x, y, and z components,
|
that **a**, **b**, and **c** have strictly positive x, y, and z components,
|
||||||
respectively, ensures that **a**\ , **b**\ , and **c** form a complete
|
respectively, ensures that **a**, **b**, and **c** form a complete
|
||||||
right-handed basis. These restrictions impose no loss of generality,
|
right-handed basis. These restrictions impose no loss of generality,
|
||||||
since it is possible to rotate/invert any set of 3 crystal basis
|
since it is possible to rotate/invert any set of 3 crystal basis
|
||||||
vectors so that they conform to the restrictions.
|
vectors so that they conform to the restrictions.
|
||||||
|
|
||||||
For example, assume that the 3 vectors **A**\ ,\ **B**\ ,\ **C** are the edge
|
For example, assume that the 3 vectors **A**,\ **B**,\ **C** are the edge
|
||||||
vectors of a general parallelepiped, where there is no restriction on
|
vectors of a general parallelepiped, where there is no restriction on
|
||||||
**A**\ ,\ **B**\ ,\ **C** other than they form a complete right-handed basis i.e.
|
**A**,\ **B**,\ **C** other than they form a complete right-handed basis i.e.
|
||||||
**A** x **B** . **C** > 0. The equivalent LAMMPS **a**\ ,\ **b**\ ,\ **c** are a linear
|
**A** x **B** . **C** > 0. The equivalent LAMMPS **a**,\ **b**,\ **c** are a linear
|
||||||
rotation of **A**\ , **B**\ , and **C** and can be computed as follows:
|
rotation of **A**, **B**, and **C** and can be computed as follows:
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
@ -57,9 +57,9 @@ rotation of **A**\ , **B**\ , and **C** and can be computed as follows:
|
|||||||
where A = \| **A** \| indicates the scalar length of **A**\ . The hat symbol (\^)
|
where A = \| **A** \| indicates the scalar length of **A**\ . The hat symbol (\^)
|
||||||
indicates the corresponding unit vector. :math:`\beta` and :math:`\gamma` are angles
|
indicates the corresponding unit vector. :math:`\beta` and :math:`\gamma` are angles
|
||||||
between the vectors described below. Note that by construction,
|
between the vectors described below. Note that by construction,
|
||||||
**a**\ , **b**\ , and **c** have strictly positive x, y, and z components, respectively.
|
**a**, **b**, and **c** have strictly positive x, y, and z components, respectively.
|
||||||
If it should happen that
|
If it should happen that
|
||||||
**A**\ , **B**\ , and **C** form a left-handed basis, then the above equations
|
**A**, **B**, and **C** form a left-handed basis, then the above equations
|
||||||
are not valid for **c**\ . In this case, it is necessary
|
are not valid for **c**\ . In this case, it is necessary
|
||||||
to first apply an inversion. This can be achieved
|
to first apply an inversion. This can be achieved
|
||||||
by interchanging two basis vectors or by changing the sign of one of them.
|
by interchanging two basis vectors or by changing the sign of one of them.
|
||||||
@ -95,7 +95,7 @@ for details.
|
|||||||
The 9 parameters (xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) are defined at the
|
The 9 parameters (xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) are defined at the
|
||||||
time the simulation box is created. This happens in one of 3 ways.
|
time the simulation box is created. This happens in one of 3 ways.
|
||||||
If the :doc:`create_box <create_box>` command is used with a region of
|
If the :doc:`create_box <create_box>` command is used with a region of
|
||||||
style *prism*\ , then a triclinic box is setup. See the
|
style *prism*, then a triclinic box is setup. See the
|
||||||
:doc:`region <region>` command for details. If the
|
:doc:`region <region>` command for details. If the
|
||||||
:doc:`read_data <read_data>` command is used to define the simulation
|
:doc:`read_data <read_data>` command is used to define the simulation
|
||||||
box, and the header of the data file contains a line with the "xy xz
|
box, and the header of the data file contains a line with the "xy xz
|
||||||
@ -135,7 +135,7 @@ example), then configurations with tilt = ..., -15, -5, 5, 15, 25,
|
|||||||
... are geometrically all equivalent. If the box tilt exceeds this
|
... are geometrically all equivalent. If the box tilt exceeds this
|
||||||
limit during a dynamics run (e.g. via the :doc:`fix deform <fix_deform>`
|
limit during a dynamics run (e.g. via the :doc:`fix deform <fix_deform>`
|
||||||
command), then the box is "flipped" to an equivalent shape with a tilt
|
command), then the box is "flipped" to an equivalent shape with a tilt
|
||||||
factor within the bounds, so the run can continue. See the :doc:`fix deform <fix_deform>` doc page for further details.
|
factor within the bounds, so the run can continue. See the :doc:`fix deform <fix_deform>` page for further details.
|
||||||
|
|
||||||
One exception to this rule is if the first dimension in the tilt
|
One exception to this rule is if the first dimension in the tilt
|
||||||
factor (x for xy) is non-periodic. In that case, the limits on the
|
factor (x for xy) is non-periodic. In that case, the limits on the
|
||||||
@ -160,10 +160,10 @@ For extreme values of tilt, LAMMPS may also lose atoms and generate an
|
|||||||
error.
|
error.
|
||||||
|
|
||||||
Triclinic crystal structures are often defined using three lattice
|
Triclinic crystal structures are often defined using three lattice
|
||||||
constants *a*\ , *b*\ , and *c*\ , and three angles :math:`\alpha`,
|
constants *a*, *b*, and *c*, and three angles :math:`\alpha`,
|
||||||
:math:`\beta`, and :math:`\gamma`. Note that in this nomenclature,
|
:math:`\beta`, and :math:`\gamma`. Note that in this nomenclature,
|
||||||
the a, b, and c lattice constants are the scalar lengths of the edge
|
the a, b, and c lattice constants are the scalar lengths of the edge
|
||||||
vectors **a**\ , **b**\ , and **c** defined above. The relationship
|
vectors **a**, **b**, and **c** defined above. The relationship
|
||||||
between these 6 quantities (a, b, c, :math:`\alpha`, :math:`\beta`,
|
between these 6 quantities (a, b, c, :math:`\alpha`, :math:`\beta`,
|
||||||
:math:`\gamma`) and the LAMMPS box sizes (lx,ly,lz) =
|
:math:`\gamma`) and the LAMMPS box sizes (lx,ly,lz) =
|
||||||
(xhi-xlo,yhi-ylo,zhi-zlo) and tilt factors (xy,xz,yz) is as follows:
|
(xhi-xlo,yhi-ylo,zhi-zlo) and tilt factors (xy,xz,yz) is as follows:
|
||||||
@ -188,10 +188,10 @@ The inverse relationship can be written as follows:
|
|||||||
{\rm yz} = & \frac{b*c \cos{\alpha} - {\rm xy}*{\rm xz}}{\rm ly} \\
|
{\rm yz} = & \frac{b*c \cos{\alpha} - {\rm xy}*{\rm xz}}{\rm ly} \\
|
||||||
{\rm lz}^2 = & c^2 - {\rm xz}^2 - {\rm yz}^2 \\
|
{\rm lz}^2 = & c^2 - {\rm xz}^2 - {\rm yz}^2 \\
|
||||||
|
|
||||||
The values of *a*\ , *b*\ , *c* , :math:`\alpha` , :math:`\beta`, and
|
The values of *a*, *b*, *c*, :math:`\alpha` , :math:`\beta`, and
|
||||||
:math:`\gamma` can be printed out or accessed by computes using the
|
:math:`\gamma` can be printed out or accessed by computes using the
|
||||||
:doc:`thermo_style custom <thermo_style>` keywords
|
:doc:`thermo_style custom <thermo_style>` keywords
|
||||||
*cella*\ , *cellb*\ , *cellc*\ , *cellalpha*\ , *cellbeta*\ , *cellgamma*\ ,
|
*cella*, *cellb*, *cellc*, *cellalpha*, *cellbeta*, *cellgamma*,
|
||||||
respectively.
|
respectively.
|
||||||
|
|
||||||
As discussed on the :doc:`dump <dump>` command doc page, when the BOX
|
As discussed on the :doc:`dump <dump>` command doc page, when the BOX
|
||||||
|
|||||||
@ -42,7 +42,7 @@ command, which determines grad(Vstream) in the equation above.
|
|||||||
E.g. the derivative in the y-direction of the Vx component of fluid
|
E.g. the derivative in the y-direction of the Vx component of fluid
|
||||||
motion or grad(Vstream) = dVx/dy. The Pxy off-diagonal component of
|
motion or grad(Vstream) = dVx/dy. The Pxy off-diagonal component of
|
||||||
the pressure or stress tensor, as calculated by the :doc:`compute pressure <compute_pressure>` command, can also be monitored, which
|
the pressure or stress tensor, as calculated by the :doc:`compute pressure <compute_pressure>` command, can also be monitored, which
|
||||||
is the J term in the equation above. See the :doc:`Howto nemd <Howto_nemd>` doc page for details on NEMD simulations.
|
is the J term in the equation above. See the :doc:`Howto nemd <Howto_nemd>` page for details on NEMD simulations.
|
||||||
|
|
||||||
The third method is to perform a reverse non-equilibrium MD simulation
|
The third method is to perform a reverse non-equilibrium MD simulation
|
||||||
using the :doc:`fix viscosity <fix_viscosity>` command which implements
|
using the :doc:`fix viscosity <fix_viscosity>` command which implements
|
||||||
|
|||||||
@ -13,7 +13,7 @@ by several popular visualization tools. The :doc:`dump image <dump_image>` and :
|
|||||||
output internally rendered images and convert a sequence of them to a
|
output internally rendered images and convert a sequence of them to a
|
||||||
movie during the MD run. Several programs included with LAMMPS as
|
movie during the MD run. Several programs included with LAMMPS as
|
||||||
auxiliary tools can convert between LAMMPS format files and other
|
auxiliary tools can convert between LAMMPS format files and other
|
||||||
formats. See the :doc:`Tools <Tools>` doc page for details.
|
formats. See the :doc:`Tools <Tools>` page for details.
|
||||||
|
|
||||||
A Python-based toolkit distributed by our group can read native LAMMPS
|
A Python-based toolkit distributed by our group can read native LAMMPS
|
||||||
dump files, including custom dump files with additional columns of
|
dump files, including custom dump files with additional columns of
|
||||||
@ -25,7 +25,7 @@ RasMol visualization programs. Pizza.py has tools that do interactive
|
|||||||
3d OpenGL visualization and one that creates SVG images of dump file
|
3d OpenGL visualization and one that creates SVG images of dump file
|
||||||
snapshots.
|
snapshots.
|
||||||
|
|
||||||
.. _pizza: https://pizza.sandia.gov
|
.. _pizza: https://lammps.github.io/pizza
|
||||||
|
|
||||||
.. _ensight: https://www.ansys.com/products/fluids/ansys-ensight
|
.. _ensight: https://www.ansys.com/products/fluids/ansys-ensight
|
||||||
|
|
||||||
|
|||||||
@ -53,7 +53,7 @@ granular particles; all the other commands create smooth walls.
|
|||||||
* :doc:`fix wall/region <fix_wall_region>` - use region surface as wall
|
* :doc:`fix wall/region <fix_wall_region>` - use region surface as wall
|
||||||
* :doc:`fix wall/gran <fix_wall_gran>` - flat or curved walls with :doc:`pair_style granular <pair_gran>` potential
|
* :doc:`fix wall/gran <fix_wall_gran>` - flat or curved walls with :doc:`pair_style granular <pair_gran>` potential
|
||||||
|
|
||||||
The *lj93*\ , *lj126*\ , *colloid*\ , *harmonic*\ , and *morse* styles all
|
The *lj93*, *lj126*, *colloid*, *harmonic*, and *morse* styles all
|
||||||
allow the flat walls to move with a constant velocity, or oscillate in
|
allow the flat walls to move with a constant velocity, or oscillate in
|
||||||
time. The :doc:`fix wall/region <fix_wall_region>` command offers the
|
time. The :doc:`fix wall/region <fix_wall_region>` command offers the
|
||||||
most generality, since the region surface is treated as a wall, and
|
most generality, since the region surface is treated as a wall, and
|
||||||
|
|||||||
@ -24,11 +24,15 @@ General features
|
|||||||
^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
* runs on a single processor or in parallel
|
* runs on a single processor or in parallel
|
||||||
* distributed-memory message-passing parallelism (MPI)
|
* distributed memory message-passing parallelism (MPI)
|
||||||
* spatial-decomposition of simulation domain for parallelism
|
* shared memory multi-threading parallelism (OpenMP)
|
||||||
* open-source distribution
|
* spatial decomposition of simulation domain for MPI parallelism
|
||||||
* highly portable C++
|
* particle decomposition inside of spatial decomposition for OpenMP parallelism
|
||||||
* optional libraries used: MPI and single-processor FFT
|
* GPLv2 licensed open-source distribution
|
||||||
|
* highly portable C++-11
|
||||||
|
* modular code with most functionality in optional packages
|
||||||
|
* only depends on MPI library for basic parallel functionality
|
||||||
|
* other libraries are optional and only required for specific packages
|
||||||
* GPU (CUDA and OpenCL), Intel Xeon Phi, and OpenMP support for many code features
|
* GPU (CUDA and OpenCL), Intel Xeon Phi, and OpenMP support for many code features
|
||||||
* easy to extend with new features and functionality
|
* easy to extend with new features and functionality
|
||||||
* runs from an input script
|
* runs from an input script
|
||||||
@ -170,9 +174,12 @@ Multi-replica models
|
|||||||
^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
* :doc:`nudged elastic band <neb>`
|
* :doc:`nudged elastic band <neb>`
|
||||||
|
* :doc:`hyperdynamics <hyper>`
|
||||||
* :doc:`parallel replica dynamics <prd>`
|
* :doc:`parallel replica dynamics <prd>`
|
||||||
* :doc:`temperature accelerated dynamics <tad>`
|
* :doc:`temperature accelerated dynamics <tad>`
|
||||||
* :doc:`parallel tempering <temper>`
|
* :doc:`parallel tempering <temper>`
|
||||||
|
* :doc:`path-integral MD <fix_pimd>`
|
||||||
|
* multi-walker collective variables with :doc:`Colvars <fix_colvars>` and :doc:`Plumed <fix_plumed>`
|
||||||
|
|
||||||
.. _prepost:
|
.. _prepost:
|
||||||
|
|
||||||
@ -187,7 +194,7 @@ Pre- and post-processing
|
|||||||
plotting, and visualization for LAMMPS simulations. Pizza.py is
|
plotting, and visualization for LAMMPS simulations. Pizza.py is
|
||||||
written in `Python <python_>`_ and is available for download from `the Pizza.py WWW site <pizza_>`_.
|
written in `Python <python_>`_ and is available for download from `the Pizza.py WWW site <pizza_>`_.
|
||||||
|
|
||||||
.. _pizza: https://pizza.sandia.gov
|
.. _pizza: https://lammps.github.io/pizza
|
||||||
|
|
||||||
.. _python: http://www.python.org
|
.. _python: http://www.python.org
|
||||||
|
|
||||||
|
|||||||
@ -32,7 +32,7 @@ Here are suggestions on how to perform these tasks:
|
|||||||
are simple programs that will build simple molecular systems, such as
|
are simple programs that will build simple molecular systems, such as
|
||||||
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>` page for details on tools packaged with
|
||||||
LAMMPS. The `Pre/post processing page <http:/www.lammps.org/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
|
||||||
@ -49,7 +49,7 @@ Here are suggestions on how to perform these tasks:
|
|||||||
* **Simulation analysis:** If you want to perform analysis on-the-fly as
|
* **Simulation analysis:** If you want to perform analysis on-the-fly as
|
||||||
your simulation runs, see the :doc:`compute <compute>` and
|
your simulation runs, see the :doc:`compute <compute>` and
|
||||||
:doc:`fix <fix>` doc pages, which list commands that can be used in a
|
:doc:`fix <fix>` doc pages, which list commands that can be used in a
|
||||||
LAMMPS input script. Also see the :doc:`Modify <Modify>` doc page for
|
LAMMPS input script. Also see the :doc:`Modify <Modify>` page for
|
||||||
info on how to add your own analysis code or algorithms to LAMMPS.
|
info on how to add your own analysis code or algorithms to LAMMPS.
|
||||||
For post-processing, LAMMPS output such as :doc:`dump file snapshots <dump>` can be converted into formats used by other MD or
|
For post-processing, LAMMPS output such as :doc:`dump file snapshots <dump>` can be converted into formats used by other MD or
|
||||||
post-processing codes. To some degree, that conversion can be done
|
post-processing codes. To some degree, that conversion can be done
|
||||||
@ -61,7 +61,7 @@ Here are suggestions on how to perform these tasks:
|
|||||||
LAMMPS will do these conversions. Scripts provided in the
|
LAMMPS will do these conversions. Scripts provided in the
|
||||||
tools/python directory can extract and massage data in dump files to
|
tools/python directory can extract and massage data in dump files to
|
||||||
make it easier to import into other programs. See the
|
make it easier to import into other programs. See the
|
||||||
:doc:`Tools <Tools>` doc page for details on these various options.
|
:doc:`Tools <Tools>` page for details on these various options.
|
||||||
* **Visualization:** LAMMPS can produce NETPBM, JPG or PNG snapshot images
|
* **Visualization:** LAMMPS can produce NETPBM, JPG or PNG snapshot images
|
||||||
on-the-fly via its :doc:`dump image <dump_image>` command and pass
|
on-the-fly via its :doc:`dump image <dump_image>` command and pass
|
||||||
them to an external program, `FFmpeg <https://www.ffmpeg.org>`_ to generate
|
them to an external program, `FFmpeg <https://www.ffmpeg.org>`_ to generate
|
||||||
@ -71,13 +71,13 @@ Here are suggestions on how to perform these tasks:
|
|||||||
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
|
||||||
:doc:`Python <Python_head>` doc page for examples of plotting LAMMPS
|
:doc:`Python <Python_head>` page for examples of plotting LAMMPS
|
||||||
output. Scripts provided with the *python* tool in the tools
|
output. Scripts provided with the *python* tool in the tools
|
||||||
directory will extract and massage data in log and dump files to make
|
directory will extract and massage data in log and dump files to make
|
||||||
it easier to analyze and plot. See the :doc:`Tools <Tools>` doc page
|
it easier to analyze and plot. See the :doc:`Tools <Tools>` doc page
|
||||||
for more discussion of the various tools.
|
for more discussion of the various tools.
|
||||||
* **Pizza.py:** Our group has also written a separate toolkit called
|
* **Pizza.py:** Our group has also written a separate toolkit called
|
||||||
`Pizza.py <https://pizza.sandia.gov>`_ which can do certain kinds of
|
`Pizza.py <https://lammps.github.io/pizza>`_ which can do certain kinds of
|
||||||
setup, analysis, plotting, and visualization (via OpenGL) for LAMMPS
|
setup, analysis, plotting, and visualization (via OpenGL) for LAMMPS
|
||||||
simulations. It thus provides some functionality for several of the
|
simulations. It thus provides some functionality for several of the
|
||||||
above bullets. Pizza.py is written in `Python <http://www.python.org>`_
|
above bullets. Pizza.py is written in `Python <http://www.python.org>`_
|
||||||
|
|||||||
@ -18,14 +18,15 @@ supercomputers.
|
|||||||
.. _mpi: https://en.wikipedia.org/wiki/Message_Passing_Interface
|
.. _mpi: https://en.wikipedia.org/wiki/Message_Passing_Interface
|
||||||
.. _lws: https://www.lammps.org
|
.. _lws: https://www.lammps.org
|
||||||
|
|
||||||
LAMMPS is written in C++. Earlier versions were written in F77 and
|
LAMMPS is written in C++ and requires a compiler that is at least
|
||||||
F90. See the `History page <https://www.lammps.org/history.html>`_ of
|
compatible with the C++-11 standard.
|
||||||
the website for details. All versions can be downloaded from the
|
Earlier versions were written in F77 and F90. See the `History page
|
||||||
`LAMMPS website <lws_>`_.
|
<https://www.lammps.org/history.html>`_ of the website for details. All
|
||||||
|
versions can be downloaded from the `LAMMPS website <lws_>`_.
|
||||||
|
|
||||||
LAMMPS is designed to be easy to modify or extend with new
|
LAMMPS is designed to be easy to modify or extend with new
|
||||||
capabilities, such as new force fields, atom types, boundary
|
capabilities, such as new force fields, atom types, boundary
|
||||||
conditions, or diagnostics. See the :doc:`Modify <Modify>` doc page for
|
conditions, or diagnostics. See the :doc:`Modify <Modify>` page for
|
||||||
more details.
|
more details.
|
||||||
|
|
||||||
In the most general sense, LAMMPS integrates Newton's equations of
|
In the most general sense, LAMMPS integrates Newton's equations of
|
||||||
@ -41,8 +42,9 @@ short distances, so that the local density of particles never becomes
|
|||||||
too large. This is in contrast to methods used for modeling plasma
|
too large. This is in contrast to methods used for modeling plasma
|
||||||
or gravitational bodies (e.g. galaxy formation).
|
or gravitational bodies (e.g. galaxy formation).
|
||||||
|
|
||||||
On parallel machines, LAMMPS uses spatial-decomposition techniques to
|
On parallel machines, LAMMPS uses spatial-decomposition techniques with
|
||||||
partition the simulation domain into small sub-domains of equal
|
MPI parallelization to partition the simulation domain into small
|
||||||
computational cost, one of which is assigned to each processor.
|
sub-domains of equal computational cost, one of which is assigned to
|
||||||
Processors communicate and store "ghost" atom information for atoms
|
each processor. Processors communicate and store "ghost" atom
|
||||||
that border their sub-domain.
|
information for atoms that border their sub-domain. Multi-threading
|
||||||
|
parallelization with with particle-decomposition can be used in addition.
|
||||||
|
|||||||
@ -20,7 +20,8 @@ available online are listed below.
|
|||||||
* `Glossary of terms relevant to LAMMPS <https://www.lammps.org/glossary.html>`_
|
* `Glossary of terms relevant to LAMMPS <https://www.lammps.org/glossary.html>`_
|
||||||
* `LAMMPS highlights with images <https://www.lammps.org/pictures.html>`_
|
* `LAMMPS highlights with images <https://www.lammps.org/pictures.html>`_
|
||||||
* `LAMMPS highlights with movies <https://www.lammps.org/movies.html>`_
|
* `LAMMPS highlights with movies <https://www.lammps.org/movies.html>`_
|
||||||
* `Mail list <https://www.lammps.org/mail.html>`_
|
* `Mailing list <https://www.lammps.org/mail.html>`_
|
||||||
|
* `LAMMPS forum <https://www.lammps.org/forum.html>`_
|
||||||
* `Workshops <https://www.lammps.org/workshops.html>`_
|
* `Workshops <https://www.lammps.org/workshops.html>`_
|
||||||
* `Tutorials <https://www.lammps.org/tutorials.html>`_
|
* `Tutorials <https://www.lammps.org/tutorials.html>`_
|
||||||
|
|
||||||
|
|||||||
@ -17,6 +17,7 @@ It documents the following functions:
|
|||||||
- :cpp:func:`lammps_gather_atoms_subset`
|
- :cpp:func:`lammps_gather_atoms_subset`
|
||||||
- :cpp:func:`lammps_scatter_atoms`
|
- :cpp:func:`lammps_scatter_atoms`
|
||||||
- :cpp:func:`lammps_scatter_atoms_subset`
|
- :cpp:func:`lammps_scatter_atoms_subset`
|
||||||
|
- :cpp:func:`lammps_gather_bonds`
|
||||||
- :cpp:func:`lammps_gather`
|
- :cpp:func:`lammps_gather`
|
||||||
- :cpp:func:`lammps_gather_concat`
|
- :cpp:func:`lammps_gather_concat`
|
||||||
- :cpp:func:`lammps_gather_subset`
|
- :cpp:func:`lammps_gather_subset`
|
||||||
@ -51,6 +52,11 @@ It documents the following functions:
|
|||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
|
.. doxygenfunction:: lammps_gather_bonds
|
||||||
|
:project: progguide
|
||||||
|
|
||||||
|
-----------------------
|
||||||
|
|
||||||
.. doxygenfunction:: lammps_gather
|
.. doxygenfunction:: lammps_gather
|
||||||
:project: progguide
|
:project: progguide
|
||||||
|
|
||||||
|
|||||||
@ -8,7 +8,11 @@ functions. They do not directly call the LAMMPS library.
|
|||||||
- :cpp:func:`lammps_decode_image_flags`
|
- :cpp:func:`lammps_decode_image_flags`
|
||||||
- :cpp:func:`lammps_set_fix_external_callback`
|
- :cpp:func:`lammps_set_fix_external_callback`
|
||||||
- :cpp:func:`lammps_fix_external_set_energy_global`
|
- :cpp:func:`lammps_fix_external_set_energy_global`
|
||||||
|
- :cpp:func:`lammps_fix_external_set_energy_peratom`
|
||||||
- :cpp:func:`lammps_fix_external_set_virial_global`
|
- :cpp:func:`lammps_fix_external_set_virial_global`
|
||||||
|
- :cpp:func:`lammps_fix_external_set_virial_peratom`
|
||||||
|
- :cpp:func:`lammps_fix_external_set_vector_length`
|
||||||
|
- :cpp:func:`lammps_fix_external_set_vector`
|
||||||
- :cpp:func:`lammps_free`
|
- :cpp:func:`lammps_free`
|
||||||
- :cpp:func:`lammps_is_running`
|
- :cpp:func:`lammps_is_running`
|
||||||
- :cpp:func:`lammps_force_timeout`
|
- :cpp:func:`lammps_force_timeout`
|
||||||
@ -33,7 +37,7 @@ where such memory buffers were allocated that require the use of
|
|||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
.. doxygenfunction:: lammps_set_fix_external_callback(void *, char *, FixExternalFnPtr, void*)
|
.. doxygenfunction:: lammps_set_fix_external_callback(void *, const char *, FixExternalFnPtr, void*)
|
||||||
:project: progguide
|
:project: progguide
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
@ -43,11 +47,31 @@ where such memory buffers were allocated that require the use of
|
|||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
|
.. doxygenfunction:: lammps_fix_external_set_energy_peratom
|
||||||
|
:project: progguide
|
||||||
|
|
||||||
|
-----------------------
|
||||||
|
|
||||||
.. doxygenfunction:: lammps_fix_external_set_virial_global
|
.. doxygenfunction:: lammps_fix_external_set_virial_global
|
||||||
:project: progguide
|
:project: progguide
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
|
.. doxygenfunction:: lammps_fix_external_set_virial_peratom
|
||||||
|
:project: progguide
|
||||||
|
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
.. doxygenfunction:: lammps_fix_external_set_vector_length
|
||||||
|
:project: progguide
|
||||||
|
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
.. doxygenfunction:: lammps_fix_external_set_vector
|
||||||
|
:project: progguide
|
||||||
|
|
||||||
|
-----------------------
|
||||||
|
|
||||||
.. doxygenfunction:: lammps_free
|
.. doxygenfunction:: lammps_free
|
||||||
:project: progguide
|
:project: progguide
|
||||||
|
|
||||||
|
|||||||
@ -6,7 +6,7 @@ Body particles can represent complex entities, such as surface meshes
|
|||||||
of discrete points, collections of sub-particles, deformable objects,
|
of discrete points, collections of sub-particles, deformable objects,
|
||||||
etc.
|
etc.
|
||||||
|
|
||||||
See the :doc:`Howto body <Howto_body>` doc page for an overview of using
|
See the :doc:`Howto body <Howto_body>` page for an overview of using
|
||||||
body particles and the various body styles LAMMPS supports. New
|
body particles and the various body styles LAMMPS supports. New
|
||||||
styles can be created to add new kinds of body particles to LAMMPS.
|
styles can be created to add new kinds of body particles to LAMMPS.
|
||||||
|
|
||||||
|
|||||||
@ -25,13 +25,16 @@ the work of others (and possibly get scooped by them) or have your work
|
|||||||
duplicated by others.
|
duplicated by others.
|
||||||
|
|
||||||
For informal communication with (some of) the LAMMPS developers you may
|
For informal communication with (some of) the LAMMPS developers you may
|
||||||
ask to join the `LAMMPS developers on Slack <https://lammps.slack.com>`_.
|
ask to join the `LAMMPS developers on Slack
|
||||||
This slack work space is by invitation only. Thus for access, please
|
<https://lammps.slack.com>`_. This slack work space is by invitation
|
||||||
send an e-mail to ``slack@lammps.org`` explaining what part of LAMMPS
|
only. Thus for access, please send an e-mail to ``slack@lammps.org``
|
||||||
you are working on. Only discussions related to LAMMPS development are
|
explaining what part of LAMMPS you are working on. Only discussions
|
||||||
tolerated, so this is **NOT** for people that look for help with compiling,
|
related to LAMMPS development are tolerated, so this is **NOT** for
|
||||||
installing, or using LAMMPS. Please contact the `lammps-users mailing
|
people that look for help with compiling, installing, or using
|
||||||
list <https://www.lammps.org/mail.html>`_ for those purposes instead.
|
LAMMPS. Please contact the
|
||||||
|
`lammps-users mailing list <https://www.lammps.org/mail.html>`_ or the
|
||||||
|
`LAMMPS forum <https://www.lammps.org/forum.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 many and what
|
much effort it will cause to integrate and test it, how many and what
|
||||||
@ -49,11 +52,9 @@ with gzip. Please only use gzip compression, as this works well and is
|
|||||||
available on all platforms.
|
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:`package <Packages_list>`. The
|
files to LAMMPS or as part of a :doc:`package <Packages_list>`. All
|
||||||
USER-MISC package is simply a collection of (mostly) unrelated single
|
packages are listed and described on the :doc:`Packages details
|
||||||
files, which is the simplest way to have your contribution quickly added
|
<Packages_details>` doc page.
|
||||||
to the LAMMPS distribution. All packages 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
|
||||||
@ -61,7 +62,7 @@ them open-source, i.e. we can release them under the terms of the GPL
|
|||||||
a LGPL (version 2.1) distribution that we make available to developers
|
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
|
on request only and with files that are authorized for that kind of
|
||||||
distribution removed (e.g. interface to FFTW). See the
|
distribution removed (e.g. interface to FFTW). See the
|
||||||
:doc:`LAMMPS license <Intro_opensource>` doc page for details.
|
:doc:`LAMMPS license <Intro_opensource>` page for details.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
@ -79,7 +80,7 @@ distribution removed (e.g. interface to FFTW). See the
|
|||||||
|
|
||||||
.. _lws: https://www.lammps.org
|
.. _lws: https://www.lammps.org
|
||||||
|
|
||||||
The previous sections of this doc page describe how to add new "style"
|
The previous sections of this 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
|
||||||
one or more new class files which are invoked as a new style within a
|
one or more new class files which are invoked as a new style within a
|
||||||
LAMMPS input script. If designed correctly, these additions typically
|
LAMMPS input script. If designed correctly, these additions typically
|
||||||
@ -92,7 +93,7 @@ trivial change is making a parent-class method "virtual" when you derive
|
|||||||
a new child class from it.
|
a new child class from it.
|
||||||
|
|
||||||
Here is a checklist of steps you need to follow to submit a single file
|
Here is a checklist of steps you need to follow to submit a single file
|
||||||
or user package for our consideration. Following these steps will save
|
or package for our consideration. Following these steps will save
|
||||||
both you and us time. Please have a look at the existing files in
|
both you and us time. Please have a look at the existing files in
|
||||||
packages in the src directory for examples. If you are uncertain, please ask.
|
packages in the src directory for examples. If you are uncertain, please ask.
|
||||||
|
|
||||||
@ -106,7 +107,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 100 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,
|
||||||
@ -150,37 +151,40 @@ packages in the src directory for examples. If you are uncertain, please ask.
|
|||||||
You may also use ``// clang-format on/off`` throughout your file
|
You may also use ``// clang-format on/off`` throughout your file
|
||||||
to protect sections of the file from being reformatted.
|
to protect sections of the file from being reformatted.
|
||||||
|
|
||||||
* If you want your contribution to be added as a user-contributed
|
* Please review the list of :doc:`available Packages <Packages_details>`
|
||||||
feature, and it's a single file (actually a \*.cpp and \*.h file) it can
|
to see if your contribution could be added to be added to one of them.
|
||||||
rapidly be added to the USER-MISC directory. Send us the one-line
|
It should fit into the general purposed of that package. If it does not
|
||||||
entry to add to the USER-MISC/README file in that dir, along with the
|
fit well, it can be added to one of the EXTRA- packages or the MISC package.
|
||||||
2 source files. You can do this multiple times if you wish to
|
|
||||||
contribute several individual features.
|
|
||||||
|
|
||||||
* If you want your contribution to be added and it has several related
|
* If your contribution has several related features that are not covered
|
||||||
features or is dependent on an external or bundled library, it is best
|
by one of the existing packages or is dependent on a library (bundled
|
||||||
to make it a package directory with a name like FOO. In addition to
|
or external), it is best to make it a package directory with a name
|
||||||
your new files, the directory should contain a README text file. The
|
like FOO. In addition to your new files, the directory should contain
|
||||||
README should contain your name and contact information and a brief
|
a README text file. The README should contain your name and contact
|
||||||
description of what your new package does. If your files depend on
|
information and a brief description of what your new package does. If
|
||||||
other LAMMPS style files also being installed (e.g. because your file
|
your files depend on other LAMMPS style files also being installed
|
||||||
is a derived class from the other LAMMPS class), then an Install.sh
|
(e.g. because your file is a derived class from the other LAMMPS
|
||||||
file is also needed to check for those dependencies. See other README
|
class), then an Install.sh file is also needed to check for those
|
||||||
and Install.sh files in other directories as examples. Submit a pull
|
dependencies and modifications to src/Depend.sh to trigger the checks.
|
||||||
request on GitHub or send us a tarball of this FOO directory. Pull
|
See other README and Install.sh files in other directories as examples.
|
||||||
requests are strongly encouraged since the greatly reduce the effort
|
Similarly for CMake support changes need to be made to cmake/CMakeLists.txt,
|
||||||
to integrate a contribution and simplify the process of adjusting the
|
the files in cmake/presets, and possibly a file to cmake/Modules/Packages/
|
||||||
contributed code to cleanly integrate into the LAMMPS distribution.
|
added. Please check out how this is handled for existing packages and
|
||||||
|
ask the LAMMPS developers if you need assistance. Please submit a pull
|
||||||
|
request on GitHub or send us a tarball of this FOO directory and all
|
||||||
|
modified files. Pull requests are strongly encouraged since they greatly
|
||||||
|
reduce the effort required to integrate a contribution and simplify the
|
||||||
|
process of adjusting the contributed code to cleanly fit into the
|
||||||
|
LAMMPS distribution.
|
||||||
|
|
||||||
* Your new source files need to have the LAMMPS copyright, GPL notice,
|
* Your new source files need to have the LAMMPS copyright, GPL notice,
|
||||||
and your name and email address at the top, like other
|
and your name and email address at the top, like other
|
||||||
user-contributed LAMMPS source files. They need to create a class
|
user-contributed LAMMPS source files. They need to create a class
|
||||||
that is inside the LAMMPS namespace. If the file is for one of the
|
that is inside the LAMMPS namespace. To simplify maintenance, we
|
||||||
USER packages, including USER-MISC, then we are not as picky about the
|
may ask to adjust the programming style and formatting style to closer
|
||||||
coding style (see above). I.e. the files do not need to be in the
|
match the rest of LAMMPS. We bundle a clang-format configuration file
|
||||||
same stylistic format and syntax as other LAMMPS files, though that
|
that can help with adjusting the formatting, although this is not a
|
||||||
would be nice for developers as well as users who try to read your
|
strict requirement.
|
||||||
code.
|
|
||||||
|
|
||||||
* You **must** also create a **documentation** file for each new command
|
* You **must** also create a **documentation** file for each new command
|
||||||
or style you are adding to LAMMPS. For simplicity and convenience,
|
or style you are adding to LAMMPS. For simplicity and convenience,
|
||||||
@ -199,13 +203,13 @@ packages in the src directory for examples. If you are uncertain, please ask.
|
|||||||
pdf" in the doc folder. As appropriate, the text files can include
|
pdf" in the doc folder. As appropriate, the text files can include
|
||||||
inline mathematical expression or figures (see doc/JPG for examples).
|
inline mathematical expression or figures (see doc/JPG for examples).
|
||||||
Additional PDF files with further details (see doc/PDF for examples)
|
Additional PDF files with further details (see doc/PDF for examples)
|
||||||
may also be included. The doc page should also include literature
|
may also be included. The page should also include literature
|
||||||
citations as appropriate; see the bottom of doc/fix_nh.rst for
|
citations as appropriate; see the bottom of doc/fix_nh.rst for
|
||||||
examples and the earlier part of the same file for how to format the
|
examples and the earlier part of the same file for how to format the
|
||||||
cite itself. Citation labels must be unique across all .rst files.
|
cite itself. Citation labels must be unique across all .rst files.
|
||||||
The "Restrictions" section of the doc page should indicate if your
|
The "Restrictions" section of the page should indicate if your
|
||||||
command is only available if LAMMPS is built with the appropriate
|
command is only available if LAMMPS is built with the appropriate
|
||||||
USER-MISC or FOO package. See other package doc files for examples of
|
FOO package. See other package doc files for examples of
|
||||||
how to do this. Please run at least "make html" and "make spelling"
|
how to do this. Please run at least "make html" and "make spelling"
|
||||||
and carefully inspect and proofread the resulting HTML format doc page
|
and carefully inspect and proofread the resulting HTML format doc page
|
||||||
before submitting your code. Upon submission of a pull request,
|
before submitting your code. Upon submission of a pull request,
|
||||||
|
|||||||
@ -129,7 +129,7 @@ derived class. See fix.h for details.
|
|||||||
Typically, only a small fraction of these methods are defined for a
|
Typically, only a small fraction of these methods are defined for a
|
||||||
particular fix. Setmask is mandatory, as it determines when the fix
|
particular fix. Setmask is mandatory, as it determines when the fix
|
||||||
will be invoked during the timestep. Fixes that perform time
|
will be invoked during the timestep. Fixes that perform time
|
||||||
integration (\ *nve*\ , *nvt*\ , *npt*\ ) implement initial_integrate() and
|
integration (\ *nve*, *nvt*, *npt*\ ) implement initial_integrate() and
|
||||||
final_integrate() to perform velocity Verlet updates. Fixes that
|
final_integrate() to perform velocity Verlet updates. Fixes that
|
||||||
constrain forces implement post_force().
|
constrain forces implement post_force().
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@ -7,7 +7,7 @@ specific set of features. For example, force fields for molecular
|
|||||||
systems or rigid-body constraints are in packages. You can see the
|
systems or rigid-body constraints are in packages. You can see the
|
||||||
list of all packages and "make" commands to manage them by typing
|
list of all packages and "make" commands to manage them by typing
|
||||||
"make package" from within the src directory of the LAMMPS
|
"make package" from within the src directory of the LAMMPS
|
||||||
distribution. The :doc:`Build package <Build_package>` doc page gives
|
distribution. The :doc:`Build package <Build_package>` page gives
|
||||||
general info on how to install and un-install packages as part of the
|
general info on how to install and un-install packages as part of the
|
||||||
LAMMPS build process.
|
LAMMPS build process.
|
||||||
|
|
||||||
|
|||||||
@ -49,11 +49,17 @@ page gives those details.
|
|||||||
* :ref:`DPD-SMOOTH <PKG-DPD-SMOOTH>`
|
* :ref:`DPD-SMOOTH <PKG-DPD-SMOOTH>`
|
||||||
* :ref:`DRUDE <PKG-DRUDE>`
|
* :ref:`DRUDE <PKG-DRUDE>`
|
||||||
* :ref:`EFF <PKG-EFF>`
|
* :ref:`EFF <PKG-EFF>`
|
||||||
|
* :ref:`EXTRA-COMPUTE <PKG-EXTRA-COMPUTE>`
|
||||||
|
* :ref:`EXTRA-DUMP <PKG-EXTRA-DUMP>`
|
||||||
|
* :ref:`EXTRA-FIX <PKG-EXTRA-FIX>`
|
||||||
|
* :ref:`EXTRA-MOLECULE <PKG-EXTRA-MOLECULE>`
|
||||||
|
* :ref:`EXTRA-PAIR <PKG-EXTRA-PAIR>`
|
||||||
* :ref:`FEP <PKG-FEP>`
|
* :ref:`FEP <PKG-FEP>`
|
||||||
* :ref:`GPU <PKG-GPU>`
|
* :ref:`GPU <PKG-GPU>`
|
||||||
* :ref:`GRANULAR <PKG-GRANULAR>`
|
* :ref:`GRANULAR <PKG-GRANULAR>`
|
||||||
* :ref:`H5MD <PKG-H5MD>`
|
* :ref:`H5MD <PKG-H5MD>`
|
||||||
* :ref:`INTEL <PKG-INTEL>`
|
* :ref:`INTEL <PKG-INTEL>`
|
||||||
|
* :ref:`INTERLAYER <PKG-INTERLAYER>`
|
||||||
* :ref:`KIM <PKG-KIM>`
|
* :ref:`KIM <PKG-KIM>`
|
||||||
* :ref:`KOKKOS <PKG-KOKKOS>`
|
* :ref:`KOKKOS <PKG-KOKKOS>`
|
||||||
* :ref:`KSPACE <PKG-KSPACE>`
|
* :ref:`KSPACE <PKG-KSPACE>`
|
||||||
@ -83,6 +89,7 @@ page gives those details.
|
|||||||
* :ref:`NETCDF <PKG-NETCDF>`
|
* :ref:`NETCDF <PKG-NETCDF>`
|
||||||
* :ref:`OPENMP <PKG-OPENMP>`
|
* :ref:`OPENMP <PKG-OPENMP>`
|
||||||
* :ref:`OPT <PKG-OPT>`
|
* :ref:`OPT <PKG-OPT>`
|
||||||
|
* :ref:`ORIENT <PKG-ORIENT>`
|
||||||
* :ref:`PERI <PKG-PERI>`
|
* :ref:`PERI <PKG-PERI>`
|
||||||
* :ref:`PHONON <PKG-PHONON>`
|
* :ref:`PHONON <PKG-PHONON>`
|
||||||
* :ref:`PLUGIN <PKG-PLUGIN>`
|
* :ref:`PLUGIN <PKG-PLUGIN>`
|
||||||
@ -108,7 +115,6 @@ page gives those details.
|
|||||||
* :ref:`VORONOI <PKG-VORONOI>`
|
* :ref:`VORONOI <PKG-VORONOI>`
|
||||||
* :ref:`VTK <PKG-VTK>`
|
* :ref:`VTK <PKG-VTK>`
|
||||||
* :ref:`YAFF <PKG-YAFF>`
|
* :ref:`YAFF <PKG-YAFF>`
|
||||||
* :ref:`USER-MISC <PKG-USER-MISC>`
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -183,6 +189,7 @@ atomic information to continuum fields.
|
|||||||
**Install:**
|
**Install:**
|
||||||
|
|
||||||
This package has :ref:`specific installation instructions <atc>` on the :doc:`Build extras <Build_extras>` page.
|
This package has :ref:`specific installation instructions <atc>` on the :doc:`Build extras <Build_extras>` page.
|
||||||
|
The ATC package requires that also the `MANYBODY <PKG-MANYBODY>`_ package is installed.
|
||||||
|
|
||||||
**Supporting info:**
|
**Supporting info:**
|
||||||
|
|
||||||
@ -512,6 +519,11 @@ compute for simulating systems using boundary element solvers for
|
|||||||
computing the induced charges at the interface between two media with
|
computing the induced charges at the interface between two media with
|
||||||
different dielectric constants.
|
different dielectric constants.
|
||||||
|
|
||||||
|
**Install:**
|
||||||
|
|
||||||
|
To use this package, also the :ref:`KSPACE <PKG-KSPACE>` and
|
||||||
|
:ref:`EXTRA-PAIR <PKG-EXTRA-PAIR>` packages need to be installed.
|
||||||
|
|
||||||
**Author:** Trung Nguyen and Monica Olvera de la Cruz (Northwestern U)
|
**Author:** Trung Nguyen and Monica Olvera de la Cruz (Northwestern U)
|
||||||
|
|
||||||
**Supporting info:**
|
**Supporting info:**
|
||||||
@ -562,6 +574,7 @@ short-range or long-range interactions.
|
|||||||
* :doc:`pair_style lj/cut/dipole/cut <pair_dipole>`
|
* :doc:`pair_style lj/cut/dipole/cut <pair_dipole>`
|
||||||
* :doc:`pair_style lj/cut/dipole/long <pair_dipole>`
|
* :doc:`pair_style lj/cut/dipole/long <pair_dipole>`
|
||||||
* :doc:`pair_style lj/long/dipole/long <pair_dipole>`
|
* :doc:`pair_style lj/long/dipole/long <pair_dipole>`
|
||||||
|
* :doc: `angle_style dipole <angle_dipole>`
|
||||||
* examples/dipole
|
* examples/dipole
|
||||||
|
|
||||||
----------
|
----------
|
||||||
@ -755,6 +768,86 @@ tools/eff; see its README file.
|
|||||||
* tools/eff
|
* tools/eff
|
||||||
* https://www.lammps.org/movies.html#eff
|
* https://www.lammps.org/movies.html#eff
|
||||||
|
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
.. _PKG-EXTRA-COMPUTE:
|
||||||
|
|
||||||
|
EXTRA-COMPUTE package
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
**Contents:**
|
||||||
|
|
||||||
|
Additional compute styles that are less commonly used.
|
||||||
|
|
||||||
|
**Supporting info:**
|
||||||
|
|
||||||
|
* src/EXTRA-COMPUTE: filenames -> commands
|
||||||
|
* :doc:`compute <compute>`
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
|
.. _PKG-EXTRA-DUMP:
|
||||||
|
|
||||||
|
EXTRA-DUMP package
|
||||||
|
------------------
|
||||||
|
|
||||||
|
**Contents:**
|
||||||
|
|
||||||
|
Additional dump styles that are less commonly used.
|
||||||
|
|
||||||
|
**Supporting info:**
|
||||||
|
|
||||||
|
* src/EXTRA-DUMP: filenames -> commands
|
||||||
|
* :doc:`dump <dump>`
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
|
.. _PKG-EXTRA-FIX:
|
||||||
|
|
||||||
|
EXTRA-FIX package
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
**Contents:**
|
||||||
|
|
||||||
|
Additional fix styles that are less commonly used.
|
||||||
|
|
||||||
|
**Supporting info:**
|
||||||
|
|
||||||
|
* src/EXTRA-FIX: filenames -> commands
|
||||||
|
* :doc:`fix <fix>`
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
|
.. _PKG-EXTRA-MOLECULE:
|
||||||
|
|
||||||
|
EXTRA-MOLECULE package
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
**Contents:**
|
||||||
|
|
||||||
|
Additional bond, angle, dihedral, and improper styles that are less commonly used.
|
||||||
|
|
||||||
|
**Supporting info:**
|
||||||
|
|
||||||
|
* src/EXTRA-MOLECULE: filenames -> commands
|
||||||
|
* :doc:`molecular styles <Commands_bond>`
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
|
.. _PKG-EXTRA-PAIR:
|
||||||
|
|
||||||
|
EXTRA-PAIR package
|
||||||
|
------------------
|
||||||
|
|
||||||
|
**Contents:**
|
||||||
|
|
||||||
|
Additional pair styles that are less commonly used.
|
||||||
|
|
||||||
|
**Supporting info:**
|
||||||
|
|
||||||
|
* src/EXTRA-PAIR: filenames -> commands
|
||||||
|
* :doc:`pair_style <pair_style>`
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
.. _PKG-FEP:
|
.. _PKG-FEP:
|
||||||
@ -938,6 +1031,24 @@ This package has :ref:`specific installation instructions <intel>` on the :doc:`
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
.. _PKG-INTERLAYER:
|
||||||
|
|
||||||
|
INTERLAYER package
|
||||||
|
------------------
|
||||||
|
|
||||||
|
**Contents:**
|
||||||
|
|
||||||
|
A collection of pair styles specifically to be used for modeling layered
|
||||||
|
materials, most commonly graphene sheets (or equivalents).
|
||||||
|
|
||||||
|
**Supporting info:**
|
||||||
|
|
||||||
|
* src/INTERLAYER: filenames -> commands
|
||||||
|
* :doc:`Pair style <Commands_pair>` page
|
||||||
|
* examples/PACKAGES/interlayer
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
.. _PKG-KIM:
|
.. _PKG-KIM:
|
||||||
|
|
||||||
KIM package
|
KIM package
|
||||||
@ -1105,6 +1216,10 @@ can be used to model MD particles influenced by hydrodynamic forces.
|
|||||||
**Authors:** Frances Mackay and Colin Denniston (University of Western
|
**Authors:** Frances Mackay and Colin Denniston (University of Western
|
||||||
Ontario).
|
Ontario).
|
||||||
|
|
||||||
|
**Install:**
|
||||||
|
|
||||||
|
The LATBOLTZ package requires that LAMMPS is build in :ref:`MPI parallel mode <serial>`.
|
||||||
|
|
||||||
**Supporting info:**
|
**Supporting info:**
|
||||||
|
|
||||||
* src/LATBOLTZ: filenames -> commands
|
* src/LATBOLTZ: filenames -> commands
|
||||||
@ -1428,7 +1543,7 @@ MISC package
|
|||||||
|
|
||||||
**Contents:**
|
**Contents:**
|
||||||
|
|
||||||
A variety of compute, fix, pair, dump styles with specialized
|
A variety of compute, fix, pair, bond styles with specialized
|
||||||
capabilities that don't align with other packages. Do a directory
|
capabilities that don't align with other packages. Do a directory
|
||||||
listing, "ls src/MISC", to see the list of commands.
|
listing, "ls src/MISC", to see the list of commands.
|
||||||
|
|
||||||
@ -1440,18 +1555,16 @@ listing, "ls src/MISC", to see the list of commands.
|
|||||||
**Supporting info:**
|
**Supporting info:**
|
||||||
|
|
||||||
* src/MISC: filenames -> commands
|
* src/MISC: filenames -> commands
|
||||||
* :doc:`compute ti <compute_ti>`
|
* :doc:`bond_style special <bond_special>`
|
||||||
* :doc:`fix evaporate <fix_evaporate>`
|
* :doc:`compute viscosity/cos <compute_viscosity_cos>`
|
||||||
|
* :doc:`fix accelerate/cos <fix_accelerate_cos>`
|
||||||
* :doc:`fix imd <fix_imd>`
|
* :doc:`fix imd <fix_imd>`
|
||||||
* :doc:`fix oneway <fix_oneway>`
|
* :doc:`fix ipi <fix_ipi>`
|
||||||
* :doc:`fix orient/fcc <fix_orient>`
|
* :doc:`pair_style agni <pair_agni>`
|
||||||
* :doc:`fix ttm <fix_ttm>`
|
* :doc:`pair_style list <pair_list>`
|
||||||
* :doc:`fix thermal/conductivity <fix_thermal_conductivity>`
|
* :doc:`pair_style srp <pair_srp>`
|
||||||
* :doc:`fix viscosity <fix_viscosity>`
|
* :doc:`pair_style tracker <pair_tracker>`
|
||||||
* examples/KAPPA
|
* :doc:`fix pair/tracker <fix_pair_tracker>`
|
||||||
* examples/VISCOSITY
|
|
||||||
* https://www.lammps.org/pictures.html#ttm
|
|
||||||
* https://www.lammps.org/movies.html#evaporation
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -1500,9 +1613,9 @@ A general interface for machine-learning interatomic potentials, including PyTor
|
|||||||
|
|
||||||
**Install:**
|
**Install:**
|
||||||
|
|
||||||
To use this package, also the :ref:`ML-SNAP package <PKG-ML-SNAP>` package needs
|
To use this package, also the :ref:`ML-SNAP <PKG-ML-SNAP>` package needs
|
||||||
to be installed. To make the *mliappy* model available, also the
|
to be installed. To make the *mliappy* model available, also the
|
||||||
:ref:`PYTHON package <PKG-PYTHON>` package needs to be installed, the version
|
:ref:`PYTHON <PKG-PYTHON>` package needs to be installed, the version
|
||||||
of Python must be 3.6 or later, and the `cython <https://cython.org/>`_ software
|
of Python must be 3.6 or later, and the `cython <https://cython.org/>`_ software
|
||||||
must be installed.
|
must be installed.
|
||||||
|
|
||||||
@ -1767,6 +1880,10 @@ MPIIO library. It adds :doc:`dump styles <dump>` with a "mpiio" in
|
|||||||
their style name. Restart files with an ".mpiio" suffix are also
|
their style name. Restart files with an ".mpiio" suffix are also
|
||||||
written and read in parallel.
|
written and read in parallel.
|
||||||
|
|
||||||
|
**Install:**
|
||||||
|
|
||||||
|
The MPIIO package requires that LAMMPS is build in :ref:`MPI parallel mode <serial>`.
|
||||||
|
|
||||||
**Supporting info:**
|
**Supporting info:**
|
||||||
|
|
||||||
* src/MPIIO: filenames -> commands
|
* src/MPIIO: filenames -> commands
|
||||||
@ -1936,6 +2053,23 @@ This package has :ref:`specific installation instructions <opt>` on the :doc:`Bu
|
|||||||
* Search the :doc:`pair style <Commands_pair>` page for styles followed by (t)
|
* Search the :doc:`pair style <Commands_pair>` page for styles followed by (t)
|
||||||
* `Benchmarks page <https://www.lammps.org/bench.html>`_ of web site
|
* `Benchmarks page <https://www.lammps.org/bench.html>`_ of web site
|
||||||
|
|
||||||
|
.. _PKG-ORIENT:
|
||||||
|
|
||||||
|
ORIENT package
|
||||||
|
--------------
|
||||||
|
|
||||||
|
**Contents:**
|
||||||
|
|
||||||
|
A few fixes that apply orientation dependent forces for studying
|
||||||
|
grain boundary migration.
|
||||||
|
|
||||||
|
**Supporting info:**
|
||||||
|
|
||||||
|
* src/ORIENT: filenames -> commands
|
||||||
|
* :doc:`fix orient/bcc <fix_orient>`
|
||||||
|
* :doc:`fix orient/fcc <fix_orient>`
|
||||||
|
* :doc:`fix orient/eco <fix_orient_eco>`
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
.. _PKG-PERI:
|
.. _PKG-PERI:
|
||||||
@ -1983,6 +2117,12 @@ And a :doc:`dynamical_matrix <dynamical_matrix>` as well as a
|
|||||||
:doc:`third_order <third_order>` command to compute the dynamical matrix
|
:doc:`third_order <third_order>` command to compute the dynamical matrix
|
||||||
and third order tensor from finite differences.
|
and third order tensor from finite differences.
|
||||||
|
|
||||||
|
**Install:**
|
||||||
|
|
||||||
|
The PHONON package requires that also the `KSPACE <PKG-KSPACE>`_
|
||||||
|
package is installed.
|
||||||
|
|
||||||
|
|
||||||
**Authors:** Ling-Ti Kong (Shanghai Jiao Tong University) for "fix phonon"
|
**Authors:** Ling-Ti Kong (Shanghai Jiao Tong University) for "fix phonon"
|
||||||
and Charlie Sievers (UC Davis) for "dynamical_matrix" and "third_order"
|
and Charlie Sievers (UC Davis) for "dynamical_matrix" and "third_order"
|
||||||
|
|
||||||
@ -2274,10 +2414,10 @@ for monitoring molecules as bonds are created and destroyed.
|
|||||||
|
|
||||||
* src/REAXFF: filenames -> commands
|
* src/REAXFF: filenames -> commands
|
||||||
* src/REAXFF/README
|
* src/REAXFF/README
|
||||||
* :doc:`pair_style reax/c <pair_reaxc>`
|
* :doc:`pair_style reaxff <pair_reaxff>`
|
||||||
* :doc:`fix reax/c/bonds <fix_reaxc_bonds>`
|
* :doc:`fix reaxff/bonds <fix_reaxff_bonds>`
|
||||||
* :doc:`fix reax/c/species <fix_reaxc_species>`
|
* :doc:`fix reaxff/species <fix_reaxff_species>`
|
||||||
* examples/reax
|
* examples/reaxff
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -2305,10 +2445,13 @@ another set.
|
|||||||
* :doc:`prd <prd>`
|
* :doc:`prd <prd>`
|
||||||
* :doc:`tad <tad>`
|
* :doc:`tad <tad>`
|
||||||
* :doc:`temper <temper>`,
|
* :doc:`temper <temper>`,
|
||||||
|
* :doc:`temper/npt <temper_npt>`,
|
||||||
|
* :doc:`temper/grem <temper_grem>`,
|
||||||
* :doc:`run_style verlet/split <run_style>`
|
* :doc:`run_style verlet/split <run_style>`
|
||||||
* examples/neb
|
* examples/neb
|
||||||
* examples/prd
|
* examples/prd
|
||||||
* examples/tad
|
* examples/tad
|
||||||
|
* examples/PACKAGES/grem
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -2363,6 +2506,7 @@ the Forschungszentrum Juelich.
|
|||||||
**Install:**
|
**Install:**
|
||||||
|
|
||||||
This package has :ref:`specific installation instructions <scafacos>` on the :doc:`Build extras <Build_extras>` page.
|
This package has :ref:`specific installation instructions <scafacos>` on the :doc:`Build extras <Build_extras>` page.
|
||||||
|
The SCAFACOS package requires that LAMMPS is build in :ref:`MPI parallel mode <serial>`.
|
||||||
|
|
||||||
**Supporting info:**
|
**Supporting info:**
|
||||||
|
|
||||||
@ -2658,26 +2802,3 @@ which discuss the `QuickFF <quickff_>`_ methodology.
|
|||||||
* :doc:`pair_style mm3/switch3/coulgauss/long <pair_lj_switch3_coulgauss_long>`
|
* :doc:`pair_style mm3/switch3/coulgauss/long <pair_lj_switch3_coulgauss_long>`
|
||||||
* :doc:`pair_style lj/switch3/coulgauss/long <pair_lj_switch3_coulgauss_long>`
|
* :doc:`pair_style lj/switch3/coulgauss/long <pair_lj_switch3_coulgauss_long>`
|
||||||
* examples/PACKAGES/yaff
|
* examples/PACKAGES/yaff
|
||||||
|
|
||||||
----------
|
|
||||||
|
|
||||||
.. _PKG-USER-MISC:
|
|
||||||
|
|
||||||
USER-MISC package
|
|
||||||
-----------------
|
|
||||||
|
|
||||||
**Contents:**
|
|
||||||
|
|
||||||
A potpourri of (mostly) unrelated features contributed to LAMMPS by
|
|
||||||
users. Each feature is a single fix, compute, pair, bond, angle,
|
|
||||||
dihedral, improper, or command style.
|
|
||||||
|
|
||||||
**Authors:** The author for each style in the package is listed in the
|
|
||||||
src/USER-MISC/README file.
|
|
||||||
|
|
||||||
**Supporting info:**
|
|
||||||
|
|
||||||
* src/USER-MISC: filenames -> commands
|
|
||||||
* src/USER-MISC/README
|
|
||||||
* one page per individual command listed in src/USER-MISC/README
|
|
||||||
* examples/USER-MISC
|
|
||||||
|
|||||||
@ -143,6 +143,31 @@ whether an extra library is needed to build and use the package:
|
|||||||
- :doc:`pair_style eff/cut <pair_eff>`
|
- :doc:`pair_style eff/cut <pair_eff>`
|
||||||
- PACKAGES/eff
|
- PACKAGES/eff
|
||||||
- no
|
- no
|
||||||
|
* - :ref:`EXTRA-COMPUTE <PKG-EXTRA-COMPUTE>`
|
||||||
|
- additional compute styles
|
||||||
|
- :doc:`compute <compute>`
|
||||||
|
- n/a
|
||||||
|
- no
|
||||||
|
* - :ref:`EXTRA-DUMP <PKG-EXTRA-DUMP>`
|
||||||
|
- additional dump styles
|
||||||
|
- :doc:`dump <dump>`
|
||||||
|
- n/a
|
||||||
|
- no
|
||||||
|
* - :ref:`EXTRA-FIX <PKG-EXTRA-FIX>`
|
||||||
|
- additional fix styles
|
||||||
|
- :doc:`fix <fix>`
|
||||||
|
- n/a
|
||||||
|
- no
|
||||||
|
* - :ref:`EXTRA-MOLECULE <PKG-EXTRA-MOLECULE>`
|
||||||
|
- additional molecular styles
|
||||||
|
- :doc:`molecular styles <Commands_bond>`
|
||||||
|
- n/a
|
||||||
|
- no
|
||||||
|
* - :ref:`EXTRA-PAIR <PKG-EXTRA-PAIR>`
|
||||||
|
- additional pair styles
|
||||||
|
- :doc:`pair_style <pair_style>`
|
||||||
|
- n/a
|
||||||
|
- no
|
||||||
* - :ref:`FEP <PKG-FEP>`
|
* - :ref:`FEP <PKG-FEP>`
|
||||||
- free energy perturbation
|
- free energy perturbation
|
||||||
- :doc:`compute fep <compute_fep>`
|
- :doc:`compute fep <compute_fep>`
|
||||||
@ -168,6 +193,11 @@ whether an extra library is needed to build and use the package:
|
|||||||
- :doc:`Speed intel <Speed_intel>`
|
- :doc:`Speed intel <Speed_intel>`
|
||||||
- `Benchmarks <https://www.lammps.org/bench.html>`_
|
- `Benchmarks <https://www.lammps.org/bench.html>`_
|
||||||
- no
|
- no
|
||||||
|
* - :ref:`INTERLAYER <PKG-INTERLAYER>`
|
||||||
|
- Inter-layer pair potentials
|
||||||
|
- :doc:`several pair styles <Commands_pair>`
|
||||||
|
- PACKAGES/interlayer
|
||||||
|
- no
|
||||||
* - :ref:`KIM <PKG-KIM>`
|
* - :ref:`KIM <PKG-KIM>`
|
||||||
- OpenKIM wrapper
|
- OpenKIM wrapper
|
||||||
- :doc:`pair_style kim <pair_kim>`
|
- :doc:`pair_style kim <pair_kim>`
|
||||||
@ -313,6 +343,11 @@ whether an extra library is needed to build and use the package:
|
|||||||
- :doc:`Speed opt <Speed_opt>`
|
- :doc:`Speed opt <Speed_opt>`
|
||||||
- `Benchmarks <https://www.lammps.org/bench.html>`_
|
- `Benchmarks <https://www.lammps.org/bench.html>`_
|
||||||
- no
|
- no
|
||||||
|
* - :ref:`ORIENT <PKG-ORIENT>`
|
||||||
|
- fixes for orientation depended forces
|
||||||
|
- :doc:`fix orient/* <fix_orient>`
|
||||||
|
- PACKAGES/orient_eco
|
||||||
|
- no
|
||||||
* - :ref:`PERI <PKG-PERI>`
|
* - :ref:`PERI <PKG-PERI>`
|
||||||
- Peridynamics models
|
- Peridynamics models
|
||||||
- :doc:`pair_style peri <pair_peri>`
|
- :doc:`pair_style peri <pair_peri>`
|
||||||
@ -370,7 +405,7 @@ whether an extra library is needed to build and use the package:
|
|||||||
- no
|
- no
|
||||||
* - :ref:`REAXFF <PKG-REAXFF>`
|
* - :ref:`REAXFF <PKG-REAXFF>`
|
||||||
- ReaxFF potential (C/C++)
|
- ReaxFF potential (C/C++)
|
||||||
- :doc:`pair_style reaxc <pair_reaxc>`
|
- :doc:`pair_style reaxff <pair_reaxff>`
|
||||||
- reax
|
- reax
|
||||||
- no
|
- no
|
||||||
* - :ref:`REPLICA <PKG-REPLICA>`
|
* - :ref:`REPLICA <PKG-REPLICA>`
|
||||||
@ -423,11 +458,6 @@ whether an extra library is needed to build and use the package:
|
|||||||
- :doc:`fix nvt/uef <fix_nh_uef>`
|
- :doc:`fix nvt/uef <fix_nh_uef>`
|
||||||
- PACKAGES/uef
|
- PACKAGES/uef
|
||||||
- no
|
- no
|
||||||
* - :ref:`USER-MISC <PKG-USER-MISC>`
|
|
||||||
- single-file contributions
|
|
||||||
- USER-MISC/README
|
|
||||||
- USER-MISC
|
|
||||||
- no
|
|
||||||
* - :ref:`VORONOI <PKG-VORONOI>`
|
* - :ref:`VORONOI <PKG-VORONOI>`
|
||||||
- Voronoi tesselation
|
- Voronoi tesselation
|
||||||
- :doc:`compute voronoi/atom <compute_voronoi_atom>`
|
- :doc:`compute voronoi/atom <compute_voronoi_atom>`
|
||||||
|
|||||||
@ -43,7 +43,7 @@ complex loop with branching logic, than can be created using the
|
|||||||
simple looping and branching logic enabled by the :doc:`next <next>` and
|
simple looping and branching logic enabled by the :doc:`next <next>` and
|
||||||
:doc:`if <if>` commands.
|
:doc:`if <if>` commands.
|
||||||
|
|
||||||
See the :doc:`python <python>` doc page and the :doc:`variable <variable>`
|
See the :doc:`python <python>` page and the :doc:`variable <variable>`
|
||||||
doc page for its python-style variables for more info, including
|
doc page for its python-style variables for more info, including
|
||||||
examples of Python code you can write for both pure Python operations
|
examples of Python code you can write for both pure Python operations
|
||||||
and callbacks to LAMMPS.
|
and callbacks to LAMMPS.
|
||||||
|
|||||||
@ -35,9 +35,9 @@ visualization package you have installed.
|
|||||||
Note that for GL, you need to be able to run the Pizza.py GL tool,
|
Note that for GL, you need to be able to run the Pizza.py GL tool,
|
||||||
which is included in the pizza sub-directory. See the Pizza.py doc pages for more info:
|
which is included in the pizza sub-directory. See the Pizza.py doc pages for more info:
|
||||||
|
|
||||||
* `https://pizza.sandia.gov <pizza_>`_
|
* `https://lammps.github.io/pizza <pizza_>`_
|
||||||
|
|
||||||
.. _pizza: https://pizza.sandia.gov
|
.. _pizza: https://lammps.github.io/pizza
|
||||||
|
|
||||||
Note that for AtomEye, you need version 3, and there is a line in the
|
Note that for AtomEye, you need version 3, and there is a line in the
|
||||||
scripts that specifies the path and name of the executable. See the
|
scripts that specifies the path and name of the executable. See the
|
||||||
|
|||||||
@ -20,7 +20,7 @@ computes, fixes, or variables in LAMMPS using the :py:mod:`lammps` module.
|
|||||||
global vector or array, a single double value from the vector or array
|
global vector or array, a single double value from the vector or array
|
||||||
is returned, indexed by I (vector) or I and J (array). I,J are
|
is returned, indexed by I (vector) or I and J (array). I,J are
|
||||||
zero-based indices.
|
zero-based indices.
|
||||||
See the :doc:`Howto output <Howto_output>` doc page for a discussion of
|
See the :doc:`Howto output <Howto_output>` page for a discussion of
|
||||||
global, per-atom, and local data, and of scalar, vector, and array
|
global, per-atom, and local data, and of scalar, vector, and array
|
||||||
data types. See the doc pages for individual :doc:`computes <compute>`
|
data types. See the doc pages for individual :doc:`computes <compute>`
|
||||||
and :doc:`fixes <fix>` for a description of what they calculate and
|
and :doc:`fixes <fix>` for a description of what they calculate and
|
||||||
|
|||||||
@ -41,4 +41,4 @@ first importing from the ``lammps`` module:
|
|||||||
>>> CDLL("liblammps.so")
|
>>> CDLL("liblammps.so")
|
||||||
|
|
||||||
If an error occurs, carefully go through the steps in :ref:`python_install_guides` and on the
|
If an error occurs, carefully go through the steps in :ref:`python_install_guides` and on the
|
||||||
:doc:`Build_basics <Build_basics>` doc page about building a shared library.
|
:doc:`Build_basics <Build_basics>` page about building a shared library.
|
||||||
|
|||||||
@ -42,7 +42,7 @@ single processor. In theory you should get identical answers on any
|
|||||||
number of processors and on any machine. In practice, numerical
|
number of processors and on any machine. In practice, numerical
|
||||||
round-off due to using floating-point math can cause slight differences
|
round-off due to using floating-point math can cause slight differences
|
||||||
and an eventual divergence of molecular dynamics trajectories. See the
|
and an eventual divergence of molecular dynamics trajectories. See the
|
||||||
:doc:`Errors common <Errors_common>` doc page for discussion of this.
|
:doc:`Errors common <Errors_common>` page for discussion of this.
|
||||||
|
|
||||||
LAMMPS can run as large a problem as will fit in the physical memory of
|
LAMMPS can run as large a problem as will fit in the physical memory of
|
||||||
one or more processors. If you run out of memory, you must run on more
|
one or more processors. If you run out of memory, you must run on more
|
||||||
|
|||||||
@ -365,7 +365,7 @@ to insure that a specific Kspace processor (in the second partition) is
|
|||||||
matched up with a specific set of processors in the first partition.
|
matched up with a specific set of processors in the first partition.
|
||||||
See the :doc:`General tips <Speed_tips>` page for more details.
|
See the :doc:`General tips <Speed_tips>` page for more details.
|
||||||
|
|
||||||
If the keyword *nth* is used with a setting *N*\ , then it means every
|
If the keyword *nth* is used with a setting *N*, then it means every
|
||||||
Nth processor will be moved to the end of the ranking. This is useful
|
Nth processor will be moved to the end of the ranking. This is useful
|
||||||
when using the :doc:`run_style verlet/split <run_style>` command with 2
|
when using the :doc:`run_style verlet/split <run_style>` command with 2
|
||||||
partitions via the -partition command-line switch. The first set of
|
partitions via the -partition command-line switch. The first set of
|
||||||
@ -397,7 +397,7 @@ so that the processors in each partition will be
|
|||||||
See the "processors" command for how to insure processors from each
|
See the "processors" command for how to insure processors from each
|
||||||
partition could then be grouped optimally for quad-core nodes.
|
partition could then be grouped optimally for quad-core nodes.
|
||||||
|
|
||||||
If the keyword is *custom*\ , then a file that specifies a permutation
|
If the keyword is *custom*, then a file that specifies a permutation
|
||||||
of the processor ranks is also specified. The format of the reorder
|
of the processor ranks is also specified. The format of the reorder
|
||||||
file is as follows. Any number of initial blank or comment lines
|
file is as follows. Any number of initial blank or comment lines
|
||||||
(starting with a "#" character) can be present. These should be
|
(starting with a "#" character) can be present. These should be
|
||||||
@ -464,7 +464,7 @@ The syntax following restartfile (or remap), namely
|
|||||||
datafile keyword value ...
|
datafile keyword value ...
|
||||||
|
|
||||||
is identical to the arguments of the :doc:`write_data <write_data>`
|
is identical to the arguments of the :doc:`write_data <write_data>`
|
||||||
command. See its doc page for details. This includes its
|
command. See its page for details. This includes its
|
||||||
optional keyword/value settings.
|
optional keyword/value settings.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
@ -505,11 +505,11 @@ The syntax following restartfile (or remap), namely
|
|||||||
group-ID dumpstyle dumpfile arg1 arg2 ...
|
group-ID dumpstyle dumpfile arg1 arg2 ...
|
||||||
|
|
||||||
is identical to the arguments of the :doc:`write_dump <write_dump>`
|
is identical to the arguments of the :doc:`write_dump <write_dump>`
|
||||||
command. See its doc page for details. This includes what per-atom
|
command. See its page for details. This includes what per-atom
|
||||||
fields are written to the dump file and optional dump_modify settings,
|
fields are written to the dump file and optional dump_modify settings,
|
||||||
including ones that affect how parallel dump files are written, e.g.
|
including ones that affect how parallel dump files are written, e.g.
|
||||||
the *nfile* and *fileper* keywords. See the
|
the *nfile* and *fileper* keywords. See the
|
||||||
:doc:`dump_modify <dump_modify>` doc page for details.
|
:doc:`dump_modify <dump_modify>` page for details.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -537,7 +537,7 @@ partition screen files file.N.
|
|||||||
**-suffix style args**
|
**-suffix style args**
|
||||||
|
|
||||||
Use variants of various styles if they exist. The specified style can
|
Use variants of various styles if they exist. The specified style can
|
||||||
be *gpu*\ , *intel*\ , *kk*\ , *omp*\ , *opt*\ , or *hybrid*\ . These
|
be *gpu*, *intel*, *kk*, *omp*, *opt*, or *hybrid*\ . These
|
||||||
refer to optional packages that LAMMPS can be built with, as described
|
refer to optional packages that LAMMPS can be built with, as described
|
||||||
in :doc:`Accelerate performance <Speed>`. The "gpu" style corresponds to the
|
in :doc:`Accelerate performance <Speed>`. The "gpu" style corresponds to the
|
||||||
GPU package, the "intel" style to the INTEL package, the "kk"
|
GPU package, the "intel" style to the INTEL package, the "kk"
|
||||||
|
|||||||
@ -152,7 +152,7 @@ information is provided about the line search and statistics on how
|
|||||||
many iterations and force-evaluations the minimizer required.
|
many iterations and force-evaluations the minimizer required.
|
||||||
Multiple force evaluations are typically done at each iteration to
|
Multiple force evaluations are typically done at each iteration to
|
||||||
perform a 1d line minimization in the search direction. See the
|
perform a 1d line minimization in the search direction. See the
|
||||||
:doc:`minimize <minimize>` doc page for more details.
|
:doc:`minimize <minimize>` page for more details.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|||||||
@ -71,7 +71,7 @@ by AMD.
|
|||||||
|
|
||||||
**Building LAMMPS with the GPU package:**
|
**Building LAMMPS with the GPU package:**
|
||||||
|
|
||||||
See the :ref:`Build extras <gpu>` doc page for
|
See the :ref:`Build extras <gpu>` page for
|
||||||
instructions.
|
instructions.
|
||||||
|
|
||||||
**Run with the GPU package from the command line:**
|
**Run with the GPU package from the command line:**
|
||||||
@ -118,7 +118,7 @@ automatic selection of the number of GPUs to use.
|
|||||||
Using the "-pk" switch explicitly allows for setting of the number of
|
Using the "-pk" switch explicitly allows for setting of the number of
|
||||||
GPUs/node to use and additional options. Its syntax is the same as
|
GPUs/node to use and additional options. Its syntax is the same as
|
||||||
the "package gpu" command. See the :doc:`package <package>`
|
the "package gpu" command. See the :doc:`package <package>`
|
||||||
command doc page for details, including the default values used for
|
command page for details, including the default values used for
|
||||||
all its options if it is not specified.
|
all its options if it is not specified.
|
||||||
|
|
||||||
Note that the default for the :doc:`package gpu <package>` command is to
|
Note that the default for the :doc:`package gpu <package>` command is to
|
||||||
@ -182,7 +182,7 @@ deterministic results.
|
|||||||
calculations can be dynamically balanced across the CPU cores and
|
calculations can be dynamically balanced across the CPU cores and
|
||||||
GPUs. GPU-specific settings can be made which can be optimized
|
GPUs. GPU-specific settings can be made which can be optimized
|
||||||
for different hardware. See the :doc:`package <package>` command
|
for different hardware. See the :doc:`package <package>` command
|
||||||
doc page for details.
|
page for details.
|
||||||
* As described by the :doc:`package gpu <package>` command, GPU
|
* As described by the :doc:`package gpu <package>` command, GPU
|
||||||
accelerated pair styles can perform computations asynchronously with
|
accelerated pair styles can perform computations asynchronously with
|
||||||
CPU computations. The "Pair" time reported by LAMMPS will be the
|
CPU computations. The "Pair" time reported by LAMMPS will be the
|
||||||
|
|||||||
@ -103,7 +103,7 @@ Quick Start for Experienced Users
|
|||||||
"""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
LAMMPS should be built with the INTEL package installed.
|
LAMMPS should be built with the INTEL package installed.
|
||||||
Simulations should be run with 1 MPI task per physical *core*\ ,
|
Simulations should be run with 1 MPI task per physical *core*,
|
||||||
not *hardware thread*\ .
|
not *hardware thread*\ .
|
||||||
|
|
||||||
* Edit src/MAKE/OPTIONS/Makefile.intel_cpu_intelmpi as necessary.
|
* Edit src/MAKE/OPTIONS/Makefile.intel_cpu_intelmpi as necessary.
|
||||||
@ -205,7 +205,7 @@ this information can normally be obtained with:
|
|||||||
Building LAMMPS with the INTEL package
|
Building LAMMPS with the INTEL package
|
||||||
"""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
See the :ref:`Build extras <intel>` doc page for
|
See the :ref:`Build extras <intel>` page for
|
||||||
instructions. Some additional details are covered here.
|
instructions. Some additional details are covered here.
|
||||||
|
|
||||||
For building with make, several example Makefiles for building with
|
For building with make, several example Makefiles for building with
|
||||||
|
|||||||
@ -67,7 +67,7 @@ produce an executable compatible with a specific hardware.
|
|||||||
Building LAMMPS with the KOKKOS package
|
Building LAMMPS with the KOKKOS package
|
||||||
"""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
See the :ref:`Build extras <kokkos>` doc page for instructions.
|
See the :ref:`Build extras <kokkos>` page for instructions.
|
||||||
|
|
||||||
Running LAMMPS with the KOKKOS package
|
Running LAMMPS with the KOKKOS package
|
||||||
""""""""""""""""""""""""""""""""""""""
|
""""""""""""""""""""""""""""""""""""""
|
||||||
@ -217,7 +217,7 @@ threads/task as Nt. The product of these two values should be N, i.e.
|
|||||||
be best for many-body potentials. For simpler pair-wise potentials, it
|
be best for many-body potentials. For simpler pair-wise potentials, it
|
||||||
may be faster to use a "full" neighbor list with Newton flag to "off".
|
may be faster to use a "full" neighbor list with Newton flag to "off".
|
||||||
Use the "-pk kokkos" :doc:`command-line switch <Run_options>` to change
|
Use the "-pk kokkos" :doc:`command-line switch <Run_options>` to change
|
||||||
the default :doc:`package kokkos <package>` options. See its doc page for
|
the default :doc:`package kokkos <package>` options. See its page for
|
||||||
details and default settings. Experimenting with its options can provide
|
details and default settings. Experimenting with its options can provide
|
||||||
a speed-up for specific calculations. For example:
|
a speed-up for specific calculations. For example:
|
||||||
|
|
||||||
@ -279,7 +279,7 @@ one or more nodes, each with two GPUs:
|
|||||||
setting the neighbor binsize equal to twice the CPU default value will
|
setting the neighbor binsize equal to twice the CPU default value will
|
||||||
give speedup, which is the default when running on GPUs. Use the "-pk
|
give speedup, which is the default when running on GPUs. Use the "-pk
|
||||||
kokkos" :doc:`command-line switch <Run_options>` to change the default
|
kokkos" :doc:`command-line switch <Run_options>` to change the default
|
||||||
:doc:`package kokkos <package>` options. See its doc page for details and
|
:doc:`package kokkos <package>` options. See its page for details and
|
||||||
default settings. Experimenting with its options can provide a speed-up
|
default settings. Experimenting with its options can provide a speed-up
|
||||||
for specific calculations. For example:
|
for specific calculations. For example:
|
||||||
|
|
||||||
|
|||||||
@ -18,7 +18,7 @@ launched by each MPI task on the local node (using shared memory).
|
|||||||
Building LAMMPS with the OPENMP package
|
Building LAMMPS with the OPENMP package
|
||||||
"""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
See the :ref:`Build extras <openmp>` doc page for
|
See the :ref:`Build extras <openmp>` page for
|
||||||
instructions.
|
instructions.
|
||||||
|
|
||||||
Run with the OPENMP package from the command line
|
Run with the OPENMP package from the command line
|
||||||
@ -50,7 +50,7 @@ threads per MPI task via the OMP_NUM_THREADS environment variable.
|
|||||||
|
|
||||||
You can also use the "-pk omp Nt" :doc:`command-line switch <Run_options>`, to explicitly set Nt = # of OpenMP threads
|
You can also use the "-pk omp Nt" :doc:`command-line switch <Run_options>`, to explicitly set Nt = # of OpenMP threads
|
||||||
per MPI task to use, as well as additional options. Its syntax is the
|
per MPI task to use, as well as additional options. Its syntax is the
|
||||||
same as the :doc:`package omp <package>` command whose doc page gives
|
same as the :doc:`package omp <package>` command whose page gives
|
||||||
details, including the default values used if it is not specified. It
|
details, including the default values used if it is not specified. It
|
||||||
also gives more details on how to set the number of threads via the
|
also gives more details on how to set the number of threads via the
|
||||||
OMP_NUM_THREADS environment variable.
|
OMP_NUM_THREADS environment variable.
|
||||||
@ -70,7 +70,7 @@ Use the :doc:`suffix omp <suffix>` command, or you can explicitly add an
|
|||||||
|
|
||||||
You must also use the :doc:`package omp <package>` command to enable the
|
You must also use the :doc:`package omp <package>` command to enable the
|
||||||
OPENMP package. When you do this you also specify how many threads
|
OPENMP package. When you do this you also specify how many threads
|
||||||
per MPI task to use. The command doc page explains other options and
|
per MPI task to use. The command page explains other options and
|
||||||
how to set the number of threads via the OMP_NUM_THREADS environment
|
how to set the number of threads via the OMP_NUM_THREADS environment
|
||||||
variable.
|
variable.
|
||||||
|
|
||||||
|
|||||||
@ -15,7 +15,7 @@ Any hardware. Any compiler.
|
|||||||
Building LAMMPS with the OPT package
|
Building LAMMPS with the OPT package
|
||||||
""""""""""""""""""""""""""""""""""""
|
""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
See the :ref:`Build extras <opt>` doc page for instructions.
|
See the :ref:`Build extras <opt>` page for instructions.
|
||||||
|
|
||||||
Run with the OPT package from the command line
|
Run with the OPT package from the command line
|
||||||
""""""""""""""""""""""""""""""""""""""""""""""
|
""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|||||||
@ -15,7 +15,7 @@ Sandia which provides tools for doing setup, analysis, plotting, and
|
|||||||
visualization for LAMMPS simulations.
|
visualization for LAMMPS simulations.
|
||||||
|
|
||||||
.. _lws: https://www.lammps.org
|
.. _lws: https://www.lammps.org
|
||||||
.. _pizza: https://pizza.sandia.gov
|
.. _pizza: https://lammps.github.io/pizza
|
||||||
.. _python: https://www.python.org
|
.. _python: https://www.python.org
|
||||||
|
|
||||||
Additional tools included in the LAMMPS distribution are described on
|
Additional tools included in the LAMMPS distribution are described on
|
||||||
@ -76,7 +76,6 @@ Post-processing tools
|
|||||||
* :ref:`phonon <phonon>`
|
* :ref:`phonon <phonon>`
|
||||||
* :ref:`pymol_asphere <pymol>`
|
* :ref:`pymol_asphere <pymol>`
|
||||||
* :ref:`python <pythontools>`
|
* :ref:`python <pythontools>`
|
||||||
* :ref:`reax <reax_tool>`
|
|
||||||
* :ref:`replica <replica>`
|
* :ref:`replica <replica>`
|
||||||
* :ref:`smd <smd>`
|
* :ref:`smd <smd>`
|
||||||
* :ref:`spin <spin>`
|
* :ref:`spin <spin>`
|
||||||
@ -364,7 +363,7 @@ michele.ceriotti at gmail.com, to interface to a variety of molecular
|
|||||||
dynamics codes.
|
dynamics codes.
|
||||||
|
|
||||||
See the tools/i-pi/manual.pdf file for an overview of i-PI, and the
|
See the tools/i-pi/manual.pdf file for an overview of i-PI, and the
|
||||||
:doc:`fix ipi <fix_ipi>` doc page for further details on running PIMD
|
:doc:`fix ipi <fix_ipi>` page for further details on running PIMD
|
||||||
calculations with LAMMPS.
|
calculations with LAMMPS.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
@ -947,20 +946,6 @@ while at the Shell lab at UC Santa Barbara. (tanmoy dot 7989 at gmail.com)
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
.. _reax_tool:
|
|
||||||
|
|
||||||
reax tool
|
|
||||||
--------------------------
|
|
||||||
|
|
||||||
The reax sub-directory contains stand-alone codes that can
|
|
||||||
post-process the output of the :doc:`fix reax/c/bonds <fix_reaxc_bonds>`
|
|
||||||
command from a LAMMPS simulation using :doc:`ReaxFF <pair_reaxc>`. See
|
|
||||||
the README.txt file for more info.
|
|
||||||
|
|
||||||
These tools were written by Aidan Thompson at Sandia.
|
|
||||||
|
|
||||||
----------
|
|
||||||
|
|
||||||
.. _smd:
|
.. _smd:
|
||||||
|
|
||||||
smd tool
|
smd tool
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
Styles with a *gpu*, *intel*, *kk*, *omp*, or *opt* suffix are
|
||||||
functionally the same as the corresponding style without the suffix.
|
functionally the same as the corresponding style without the suffix.
|
||||||
They have been optimized to run faster, depending on your available
|
They have been optimized to run faster, depending on your available
|
||||||
hardware, as discussed on the :doc:`Speed packages <Speed_packages>` doc
|
hardware, as discussed on the :doc:`Speed packages <Speed_packages>` doc
|
||||||
@ -7,11 +7,11 @@ produce the same results, except for round-off and precision issues.
|
|||||||
|
|
||||||
These accelerated styles are part of the GPU, INTEL, KOKKOS,
|
These accelerated styles are part of the GPU, INTEL, KOKKOS,
|
||||||
OPENMP and OPT packages, respectively. They are only enabled if
|
OPENMP and OPT packages, respectively. They are only enabled if
|
||||||
LAMMPS was built with those packages. See the :doc:`Build package <Build_package>` doc page for more info.
|
LAMMPS was built with those packages. See the :doc:`Build package <Build_package>` page for more info.
|
||||||
|
|
||||||
You can specify the accelerated styles explicitly in your input script
|
You can specify the accelerated styles explicitly in your input script
|
||||||
by including their suffix, or you can use the :doc:`-suffix command-line switch <Run_options>` when you invoke LAMMPS, or you can use the
|
by including their suffix, or you can use the :doc:`-suffix command-line switch <Run_options>` when you invoke LAMMPS, or you can use the
|
||||||
:doc:`suffix <suffix>` command in your input script.
|
:doc:`suffix <suffix>` command in your input script.
|
||||||
|
|
||||||
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
See the :doc:`Speed packages <Speed_packages>` page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|||||||
@ -56,7 +56,7 @@ radian\^2.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
|
Styles with a *gpu*, *intel*, *kk*, *omp*, or *opt* suffix are
|
||||||
functionally the same as the corresponding style without the suffix.
|
functionally the same as the corresponding style without the suffix.
|
||||||
They have been optimized to run faster, depending on your available
|
They have been optimized to run faster, depending on your available
|
||||||
hardware, as discussed on the :doc:`Speed packages <Speed_packages>` doc
|
hardware, as discussed on the :doc:`Speed packages <Speed_packages>` doc
|
||||||
@ -65,13 +65,13 @@ produce the same results, except for round-off and precision issues.
|
|||||||
|
|
||||||
These accelerated styles are part of the GPU, INTEL, KOKKOS,
|
These accelerated styles are part of the GPU, INTEL, KOKKOS,
|
||||||
OPENMP and OPT packages, respectively. They are only enabled if
|
OPENMP and OPT packages, respectively. They are only enabled if
|
||||||
LAMMPS was built with those packages. See the :doc:`Build package <Build_package>` doc page for more info.
|
LAMMPS was built with those packages. See the :doc:`Build package <Build_package>` page for more info.
|
||||||
|
|
||||||
You can specify the accelerated styles explicitly in your input script
|
You can specify the accelerated styles explicitly in your input script
|
||||||
by including their suffix, or you can use the :doc:`-suffix command-line switch <Run_options>` when you invoke LAMMPS, or you can use the
|
by including their suffix, or you can use the :doc:`-suffix command-line switch <Run_options>` when you invoke LAMMPS, or you can use the
|
||||||
:doc:`suffix <suffix>` command in your input script.
|
:doc:`suffix <suffix>` command in your input script.
|
||||||
|
|
||||||
See :doc:`Speed packages <Speed_packages>` doc page for more
|
See :doc:`Speed packages <Speed_packages>` page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|||||||
@ -54,7 +54,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
||||||
for more info.
|
for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -58,7 +58,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
EXTRA-MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
||||||
for more info.
|
for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -53,7 +53,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package.
|
MOLECULE package.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
""""""""""""""""
|
""""""""""""""""
|
||||||
|
|||||||
@ -64,7 +64,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||||
page for more info.
|
page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -88,7 +88,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
DIPOLE package. See the :doc:`Build package <Build_package>` doc
|
||||||
page for more info.
|
page for more info.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
@ -106,7 +106,9 @@ page for more info.
|
|||||||
The :doc:`newton <newton>` command for intramolecular interactions must be "on"
|
The :doc:`newton <newton>` command for intramolecular interactions must be "on"
|
||||||
(which is the default except when using some accelerator packages).
|
(which is the default except when using some accelerator packages).
|
||||||
|
|
||||||
This angle style should not be used with SHAKE.
|
.. note::
|
||||||
|
|
||||||
|
This angle style should **NOT** be used with fix shake.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
""""""""""""""""
|
""""""""""""""""
|
||||||
|
|||||||
@ -50,7 +50,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||||
page for more info.
|
page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -49,7 +49,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||||
page for more info.
|
page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -49,7 +49,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||||
page for more info.
|
page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -58,7 +58,7 @@ specifying additional BondBond (and BondAngle) coefficients either via
|
|||||||
the input script or in the data file. I.e. *class2* must be added to
|
the input script or in the data file. I.e. *class2* must be added to
|
||||||
each line after the angle type. For lines in the BondBond (or
|
each line after the angle type. For lines in the BondBond (or
|
||||||
BondAngle) section of the data file for angle types that are not
|
BondAngle) section of the data file for angle types that are not
|
||||||
*class2*\ , you must use an angle style of *skip* as a placeholder, e.g.
|
*class2*, you must use an angle style of *skip* as a placeholder, e.g.
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
|
|||||||
@ -57,7 +57,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This angle style can only be used if LAMMPS was built with the
|
This angle style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||||
page for more info.
|
page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -37,7 +37,7 @@ where :math:`\theta_0` is the equilibrium value of the angle and
|
|||||||
*lj/sdk* pair style between the atoms 1 and 3. This angle potential is
|
*lj/sdk* pair style between the atoms 1 and 3. This angle potential is
|
||||||
intended for coarse grained MD simulations with the CMM parameterization
|
intended for coarse grained MD simulations with the CMM parameterization
|
||||||
using the :doc:`pair_style lj/sdk <pair_sdk>`. Relative to the
|
using the :doc:`pair_style lj/sdk <pair_sdk>`. Relative to the
|
||||||
pair_style *lj/sdk*\ , however, the energy is shifted by
|
pair_style *lj/sdk*, however, the energy is shifted by
|
||||||
:math:`\epsilon`, to avoid sudden jumps. Note that the usual 1/2 factor
|
:math:`\epsilon`, to avoid sudden jumps. Note that the usual 1/2 factor
|
||||||
is included in :math:`K`.
|
is included in :math:`K`.
|
||||||
|
|
||||||
|
|||||||
@ -66,7 +66,7 @@ specified by the associated :doc:`angle_coeff <angle_coeff>` command.
|
|||||||
|
|
||||||
There are also additional accelerated pair styles included in the
|
There are also additional accelerated pair styles included in the
|
||||||
LAMMPS distribution for faster performance on CPUs, GPUs, and KNLs.
|
LAMMPS distribution for faster performance on CPUs, GPUs, and KNLs.
|
||||||
The individual style names on the :ref:`Commands angle <angle>` doc page are followed by one or more
|
The individual style names on the :ref:`Commands angle <angle>` page are followed by one or more
|
||||||
of (g,i,k,o,t) to indicate which accelerated styles exist.
|
of (g,i,k,o,t) to indicate which accelerated styles exist.
|
||||||
|
|
||||||
* :doc:`none <angle_none>` - turn off angle interactions
|
* :doc:`none <angle_none>` - turn off angle interactions
|
||||||
@ -103,7 +103,7 @@ Angle styles can only be set for atom_styles that allow angles to be
|
|||||||
defined.
|
defined.
|
||||||
|
|
||||||
Most angle styles are part of the MOLECULE package. They are only
|
Most angle styles are part of the MOLECULE package. They are only
|
||||||
enabled if LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info. The doc pages for
|
enabled if LAMMPS was built with that package. See the :doc:`Build package <Build_package>` page for more info. The doc pages for
|
||||||
individual bond potentials tell if it is part of a package.
|
individual bond potentials tell if it is part of a package.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -66,7 +66,7 @@ Restrictions
|
|||||||
Only for be used with the specific controllers *thermal* or *momentum*.
|
Only for be used with the specific controllers *thermal* or *momentum*.
|
||||||
They are ignored if a lumped solution is requested.
|
They are ignored if a lumped solution is requested.
|
||||||
|
|
||||||
*control thermal* is only for be used with specific transfers: thermal (*rescale*\ , *hoover*\ , *flux*\ ), *two_temperature* (*flux*\ ).
|
*control thermal* is only for be used with specific transfers: thermal (*rescale*, *hoover*, *flux*\ ), *two_temperature* (*flux*\ ).
|
||||||
*rescale* not valid with time filtering activated
|
*rescale* not valid with time filtering activated
|
||||||
|
|
||||||
*correction_max_iterations* is only for use with *thermal* physics using
|
*correction_max_iterations* is only for use with *thermal* physics using
|
||||||
|
|||||||
@ -40,7 +40,7 @@ command. The *id* and *map* keywords must be specified before a
|
|||||||
simulation box is defined; other keywords can be specified any time.
|
simulation box is defined; other keywords can be specified any time.
|
||||||
|
|
||||||
The *id* keyword determines whether non-zero atom IDs can be assigned
|
The *id* keyword determines whether non-zero atom IDs can be assigned
|
||||||
to each atom. If the value is *yes*\ , which is the default, IDs are
|
to each atom. If the value is *yes*, which is the default, IDs are
|
||||||
assigned, whether you use the :doc:`create atoms <create_atoms>` or
|
assigned, whether you use the :doc:`create atoms <create_atoms>` or
|
||||||
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
||||||
commands to initialize atoms. If the value is *no* the IDs for all
|
commands to initialize atoms. If the value is *no* the IDs for all
|
||||||
|
|||||||
@ -61,7 +61,7 @@ command.
|
|||||||
Restrictions section.
|
Restrictions section.
|
||||||
|
|
||||||
Once a style is assigned, it cannot be changed, so use a style general
|
Once a style is assigned, it cannot be changed, so use a style general
|
||||||
enough to encompass all attributes. E.g. with style *bond*\ , angular
|
enough to encompass all attributes. E.g. with style *bond*, angular
|
||||||
terms cannot be used or added later to the model. It is OK to use a
|
terms cannot be used or added later to the model. It is OK to use a
|
||||||
style more general than needed, though it may be slightly inefficient.
|
style more general than needed, though it may be slightly inefficient.
|
||||||
|
|
||||||
@ -136,13 +136,13 @@ quantities.
|
|||||||
It is possible to add some attributes, such as a molecule ID, to
|
It is possible to add some attributes, such as a molecule ID, to
|
||||||
atom styles that do not have them via the :doc:`fix property/atom <fix_property_atom>` command. This command also
|
atom styles that do not have them via the :doc:`fix property/atom <fix_property_atom>` command. This command also
|
||||||
allows new custom attributes consisting of extra integer or
|
allows new custom attributes consisting of extra integer or
|
||||||
floating-point values to be added to atoms. See the :doc:`fix property/atom <fix_property_atom>` doc page for examples of cases
|
floating-point values to be added to atoms. See the :doc:`fix property/atom <fix_property_atom>` page for examples of cases
|
||||||
where this is useful and details on how to initialize, access, and
|
where this is useful and details on how to initialize, access, and
|
||||||
output the custom values.
|
output the custom values.
|
||||||
|
|
||||||
All of the above styles define point particles, except the *sphere*\ ,
|
All of the above styles define point particles, except the *sphere*,
|
||||||
*ellipsoid*\ , *electron*\ , *peri*\ , *wavepacket*\ , *line*\ , *tri*\ , and
|
*ellipsoid*, *electron*, *peri*, *wavepacket*, *line*, *tri*, and
|
||||||
*body* styles, which define finite-size particles. See the :doc:`Howto spherical <Howto_spherical>` doc page for an overview of using
|
*body* styles, which define finite-size particles. See the :doc:`Howto spherical <Howto_spherical>` page for an overview of using
|
||||||
finite-size particle models with LAMMPS.
|
finite-size particle models with LAMMPS.
|
||||||
|
|
||||||
All of the point-particle styles assign mass to particles on a
|
All of the point-particle styles assign mass to particles on a
|
||||||
@ -236,7 +236,7 @@ individual physical bodies from penetrating each other.
|
|||||||
For the *spin* style, a magnetic spin is associated to each atom.
|
For the *spin* style, a magnetic spin is associated to each atom.
|
||||||
Those spins have a norm (their magnetic moment) and a direction.
|
Those spins have a norm (their magnetic moment) and a direction.
|
||||||
|
|
||||||
The *wavepacket* style is similar to *electron*\ , but the electrons may
|
The *wavepacket* style is similar to *electron*, but the electrons may
|
||||||
consist of several Gaussian wave packets, summed up with coefficients
|
consist of several Gaussian wave packets, summed up with coefficients
|
||||||
cs= (cs_re,cs_im). Each of the wave packets is treated as a separate
|
cs= (cs_re,cs_im). Each of the wave packets is treated as a separate
|
||||||
particle in LAMMPS, wave packets belonging to the same electron must
|
particle in LAMMPS, wave packets belonging to the same electron must
|
||||||
@ -256,7 +256,7 @@ command. The template stores one or more molecules with a single copy
|
|||||||
of the topology info (bonds,angles,etc) of each. Individual atoms
|
of the topology info (bonds,angles,etc) of each. Individual atoms
|
||||||
only store a template index and template atom to identify which
|
only store a template index and template atom to identify which
|
||||||
molecule and which atom-within-the-molecule they represent. Using the
|
molecule and which atom-within-the-molecule they represent. Using the
|
||||||
*template* style instead of the *bond*\ , *angle*\ , *molecular* styles
|
*template* style instead of the *bond*, *angle*, *molecular* styles
|
||||||
can save memory for systems comprised of a large number of small
|
can save memory for systems comprised of a large number of small
|
||||||
molecules, all of a single type (or small number of types). See the
|
molecules, all of a single type (or small number of types). See the
|
||||||
paper by Grime and Voth, in :ref:`(Grime) <Grime>`, for examples of how this
|
paper by Grime and Voth, in :ref:`(Grime) <Grime>`, for examples of how this
|
||||||
@ -283,7 +283,7 @@ the *bstyle* argument. Body particles can represent complex entities,
|
|||||||
such as surface meshes of discrete points, collections of
|
such as surface meshes of discrete points, collections of
|
||||||
sub-particles, deformable objects, etc.
|
sub-particles, deformable objects, etc.
|
||||||
|
|
||||||
The :doc:`Howto body <Howto_body>` doc page describes the body styles
|
The :doc:`Howto body <Howto_body>` page describes the body styles
|
||||||
LAMMPS currently supports, and provides more details as to the kind of
|
LAMMPS currently supports, and provides more details as to the kind of
|
||||||
body particles they represent. For all styles, each body particle
|
body particles they represent. For all styles, each body particle
|
||||||
stores moments of inertia and a quaternion 4-vector, so that its
|
stores moments of inertia and a quaternion 4-vector, so that its
|
||||||
@ -332,14 +332,14 @@ styles.
|
|||||||
|
|
||||||
The accelerated styles are part of the KOKKOS package. They are only
|
The accelerated styles are part of the KOKKOS package. They are only
|
||||||
enabled if LAMMPS was built with those packages. See the :doc:`Build
|
enabled if LAMMPS was built with those packages. See the :doc:`Build
|
||||||
package <Build_package>` doc page for more info.
|
package <Build_package>` page for more info.
|
||||||
|
|
||||||
You can specify the accelerated styles explicitly in your input script
|
You can specify the accelerated styles explicitly in your input script
|
||||||
by including their suffix, or you can use the :doc:`-suffix command-line
|
by including their suffix, or you can use the :doc:`-suffix command-line
|
||||||
switch <Run_options>` when you invoke LAMMPS, or you can use the
|
switch <Run_options>` when you invoke LAMMPS, or you can use the
|
||||||
:doc:`suffix <suffix>` command in your input script.
|
:doc:`suffix <suffix>` command in your input script.
|
||||||
|
|
||||||
See the :doc:`Speed packages <Speed_packages>` doc page for more
|
See the :doc:`Speed packages <Speed_packages>` page for more
|
||||||
instructions on how to use the accelerated styles effectively.
|
instructions on how to use the accelerated styles effectively.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
@ -350,9 +350,9 @@ This command cannot be used after the simulation box is defined by a
|
|||||||
|
|
||||||
Many of the styles listed above are only enabled if LAMMPS was built
|
Many of the styles listed above are only enabled if LAMMPS was built
|
||||||
with a specific package, as listed below. See the :doc:`Build package
|
with a specific package, as listed below. See the :doc:`Build package
|
||||||
<Build_package>` doc page for more info.
|
<Build_package>` page for more info.
|
||||||
|
|
||||||
The *angle*\ , *bond*\ , *full*\ , *molecular*\ , and *template* styles are
|
The *angle*, *bond*, *full*, *molecular*, and *template* styles are
|
||||||
part of the MOLECULE package.
|
part of the MOLECULE package.
|
||||||
|
|
||||||
The *line* and *tri* styles are part of the ASPHERE package.
|
The *line* and *tri* styles are part of the ASPHERE package.
|
||||||
@ -370,7 +370,7 @@ The *electron* style is part of the EFF package for :doc:`electronic force field
|
|||||||
The *dpd* style is part of the DPD-REACT package for dissipative
|
The *dpd* style is part of the DPD-REACT package for dissipative
|
||||||
particle dynamics (DPD).
|
particle dynamics (DPD).
|
||||||
|
|
||||||
The *edpd*\ , *mdpd*\ , and *tdpd* styles are part of the DPD-MESO package
|
The *edpd*, *mdpd*, and *tdpd* styles are part of the DPD-MESO package
|
||||||
for energy-conserving dissipative particle dynamics (eDPD), many-body
|
for energy-conserving dissipative particle dynamics (eDPD), many-body
|
||||||
dissipative particle dynamics (mDPD), and transport dissipative particle
|
dissipative particle dynamics (mDPD), and transport dissipative particle
|
||||||
dynamics (tDPD), respectively.
|
dynamics (tDPD), respectively.
|
||||||
|
|||||||
@ -11,7 +11,7 @@ Syntax
|
|||||||
balance thresh style args ... keyword args ...
|
balance thresh style args ... keyword args ...
|
||||||
|
|
||||||
* thresh = imbalance threshold that must be exceeded to perform a re-balance
|
* thresh = imbalance threshold that must be exceeded to perform a re-balance
|
||||||
* one style/arg pair can be used (or multiple for *x*\ ,\ *y*\ ,\ *z*\ )
|
* one style/arg pair can be used (or multiple for *x*,\ *y*,\ *z*\ )
|
||||||
* style = *x* or *y* or *z* or *shift* or *rcb*
|
* style = *x* or *y* or *z* or *shift* or *rcb*
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
@ -170,10 +170,10 @@ fractions of the box length) are also printed.
|
|||||||
----------
|
----------
|
||||||
|
|
||||||
The method used to perform a load balance is specified by one of the
|
The method used to perform a load balance is specified by one of the
|
||||||
listed styles (or more in the case of *x*\ ,\ *y*\ ,\ *z*\ ), which are
|
listed styles (or more in the case of *x*,\ *y*,\ *z*\ ), which are
|
||||||
described in detail below. There are 2 kinds of styles.
|
described in detail below. There are 2 kinds of styles.
|
||||||
|
|
||||||
The *x*\ , *y*\ , *z*\ , and *shift* styles are "grid" methods which
|
The *x*, *y*, *z*, and *shift* styles are "grid" methods which
|
||||||
produce a logical 3d grid of processors. They operate by changing the
|
produce a logical 3d grid of processors. They operate by changing the
|
||||||
cutting planes (or lines) between processors in 3d (or 2d), to adjust
|
cutting planes (or lines) between processors in 3d (or 2d), to adjust
|
||||||
the volume (area in 2d) assigned to each processor, as in the
|
the volume (area in 2d) assigned to each processor, as in the
|
||||||
@ -222,7 +222,7 @@ from scratch.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
The *x*\ , *y*\ , and *z* styles invoke a "grid" method for balancing, as
|
The *x*, *y*, and *z* styles invoke a "grid" method for balancing, as
|
||||||
described above. Note that any or all of these 3 styles can be
|
described above. Note that any or all of these 3 styles can be
|
||||||
specified together, one after the other, but they cannot be used with
|
specified together, one after the other, but they cannot be used with
|
||||||
any other style. This style adjusts the position of cutting planes
|
any other style. This style adjusts the position of cutting planes
|
||||||
@ -263,7 +263,7 @@ once. You should normally only list dimensions where you expect there
|
|||||||
to be a density variation in the particles.
|
to be a density variation in the particles.
|
||||||
|
|
||||||
Balancing proceeds by adjusting the cutting planes in each of the
|
Balancing proceeds by adjusting the cutting planes in each of the
|
||||||
dimensions listed in *dimstr*\ , one dimension at a time. For a single
|
dimensions listed in *dimstr*, one dimension at a time. For a single
|
||||||
dimension, the balancing operation (described below) is iterated on up
|
dimension, the balancing operation (described below) is iterated on up
|
||||||
to *Niter* times. After each dimension finishes, the imbalance factor
|
to *Niter* times. After each dimension finishes, the imbalance factor
|
||||||
is re-computed, and the balancing operation halts if the *stopthresh*
|
is re-computed, and the balancing operation halts if the *stopthresh*
|
||||||
@ -428,8 +428,8 @@ weights. It assigns the same weight to each particle owned by a
|
|||||||
processor based on the total computational time spent by that
|
processor based on the total computational time spent by that
|
||||||
processor. See details below on what time window is used. It uses
|
processor. See details below on what time window is used. It uses
|
||||||
the same timing information as is used for the :doc:`MPI task timing
|
the same timing information as is used for the :doc:`MPI task timing
|
||||||
breakdown <Run_output>`, namely, for sections *Pair*\ , *Bond*\ ,
|
breakdown <Run_output>`, namely, for sections *Pair*, *Bond*,
|
||||||
*Kspace*\ , and *Neigh*\ . The time spent in those portions of the
|
*Kspace*, and *Neigh*\ . The time spent in those portions of the
|
||||||
timestep are measured for each MPI rank, summed, then divided by the
|
timestep are measured for each MPI rank, summed, then divided by the
|
||||||
number of particles owned by that processor. I.e. the weight is an
|
number of particles owned by that processor. I.e. the weight is an
|
||||||
effective CPU time/particle averaged over the particles on that
|
effective CPU time/particle averaged over the particles on that
|
||||||
@ -455,7 +455,7 @@ are for the entire previous run. For the *fix balance* command the
|
|||||||
timing data is for only the timesteps since the last balancing
|
timing data is for only the timesteps since the last balancing
|
||||||
operation was performed. If timing information for the required
|
operation was performed. If timing information for the required
|
||||||
sections is not available, e.g. at the beginning of a run, or when the
|
sections is not available, e.g. at the beginning of a run, or when the
|
||||||
:doc:`timer <timer>` command is set to either *loop* or *off*\ , a warning
|
:doc:`timer <timer>` command is set to either *loop* or *off*, a warning
|
||||||
is issued. In this case no weights are computed.
|
is issued. In this case no weights are computed.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
@ -477,12 +477,18 @@ atom-style variables can reference the position of a particle, its
|
|||||||
velocity, the volume of its Voronoi cell, etc.
|
velocity, the volume of its Voronoi cell, etc.
|
||||||
|
|
||||||
The *store* weight style does not compute a weight factor. Instead it
|
The *store* weight style does not compute a weight factor. Instead it
|
||||||
stores the current accumulated weights in a custom per-atom property
|
stores the current accumulated weights in a custom per-atom vector
|
||||||
specified by *name*\ . This must be a property defined as *d_name* via
|
specified by *name*\ . This must be a vector defined as *d_name* via
|
||||||
the :doc:`fix property/atom <fix_property_atom>` command. Note that
|
the :doc:`fix property/atom <fix_property_atom>` command. This means
|
||||||
these custom per-atom properties can be output in a :doc:`dump <dump>`
|
the values in the vector can be read as part of a data file with the
|
||||||
file, so this is a way to examine, debug, or visualize the
|
:doc:`read_data <read_data>` command or specified with the :doc:`set
|
||||||
per-particle weights computed during the load-balancing operation.
|
<set>` command. These weights can also be output in a :doc:`dump
|
||||||
|
<dump>` file, so this is a way to examine, debug, or visualize the
|
||||||
|
per-particle weights used during the load-balancing operation.
|
||||||
|
|
||||||
|
Note that the name of the custom per-atom vector is specified just
|
||||||
|
as *name*, not as *d_name* as it is for other commands that use
|
||||||
|
different kinds of custom atom vectors or arrays as arguments.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -558,7 +564,7 @@ Related commands
|
|||||||
:doc:`group <group>`, :doc:`processors <processors>`,
|
:doc:`group <group>`, :doc:`processors <processors>`,
|
||||||
:doc:`fix balance <fix_balance>`, :doc:`comm_style <comm_style>`
|
:doc:`fix balance <fix_balance>`, :doc:`comm_style <comm_style>`
|
||||||
|
|
||||||
.. _pizza: https://pizza.sandia.gov
|
.. _pizza: https://lammps.github.io/pizza
|
||||||
|
|
||||||
Default
|
Default
|
||||||
"""""""
|
"""""""
|
||||||
|
|||||||
@ -55,7 +55,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This bond style can only be used if LAMMPS was built with the CLASS2
|
This bond style can only be used if LAMMPS was built with the CLASS2
|
||||||
package. See the :doc:`Build package <Build_package>` doc page for more
|
package. See the :doc:`Build package <Build_package>` page for more
|
||||||
info.
|
info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -58,7 +58,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This bond style can only be used if LAMMPS was built with the MOLECULE
|
This bond style can only be used if LAMMPS was built with the MOLECULE
|
||||||
package. See the :doc:`Build package <Build_package>` doc page for more
|
package. See the :doc:`Build package <Build_package>` page for more
|
||||||
info.
|
info.
|
||||||
|
|
||||||
You typically should specify :doc:`special_bonds fene <special_bonds>`
|
You typically should specify :doc:`special_bonds fene <special_bonds>`
|
||||||
|
|||||||
@ -60,7 +60,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This bond style can only be used if LAMMPS was built with the MOLECULE
|
This bond style can only be used if LAMMPS was built with the MOLECULE
|
||||||
package. See the :doc:`Build package <Build_package>` doc page for more
|
package. See the :doc:`Build package <Build_package>` page for more
|
||||||
info.
|
info.
|
||||||
|
|
||||||
You typically should specify :doc:`special_bonds fene <special_bonds>`
|
You typically should specify :doc:`special_bonds fene <special_bonds>`
|
||||||
|
|||||||
@ -50,7 +50,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This bond style can only be used if LAMMPS was built with the
|
This bond style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||||
page for more info.
|
page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -51,7 +51,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This bond style can only be used if LAMMPS was built with the MOLECULE
|
This bond style can only be used if LAMMPS was built with the MOLECULE
|
||||||
package. See the :doc:`Build package <Build_package>` doc page for more
|
package. See the :doc:`Build package <Build_package>` page for more
|
||||||
info.
|
info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -53,7 +53,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This bond style can only be used if LAMMPS was built with the MOLECULE
|
This bond style can only be used if LAMMPS was built with the MOLECULE
|
||||||
package. See the :doc:`Build package <Build_package>` doc page for more
|
package. See the :doc:`Build package <Build_package>` page for more
|
||||||
info.
|
info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -56,7 +56,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This bond style can only be used if LAMMPS was built with the
|
This bond style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||||
page for more info.
|
page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -54,7 +54,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This bond style can only be used if LAMMPS was built with the
|
This bond style can only be used if LAMMPS was built with the
|
||||||
USER-MISC package. See the :doc:`Build package <Build_package>` doc
|
MOLECULE package. See the :doc:`Build package <Build_package>` doc
|
||||||
page for more info.
|
page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -64,7 +64,7 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This bond style can only be used if LAMMPS was built with the MOLECULE
|
This bond style can only be used if LAMMPS was built with the MOLECULE
|
||||||
package. See the :doc:`Build package <Build_package>` doc page for more
|
package. See the :doc:`Build package <Build_package>` page for more
|
||||||
info.
|
info.
|
||||||
|
|
||||||
Unlike other bond styles, the hybrid bond style does not store bond
|
Unlike other bond styles, the hybrid bond style does not store bond
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user