Compare commits
435 Commits
patch_22Se
...
patch_17Ja
| Author | SHA1 | Date | |
|---|---|---|---|
| 5e9d257ec2 | |||
| e1e6825eb2 | |||
| 88a2f9fcc6 | |||
| 480d7dd6ce | |||
| 9b12984378 | |||
| 8d29f64236 | |||
| 1b91c0eab0 | |||
| 0c8af0704e | |||
| f1901237be | |||
| 0cd864134d | |||
| bf48f3e240 | |||
| 23dda3d51b | |||
| 5d254855eb | |||
| 9a70f2d182 | |||
| b95cf658c7 | |||
| 709ce8a230 | |||
| 2ad823ffd4 | |||
| 4c0cd5f1ad | |||
| 8d37c89cb6 | |||
| 21ff4407ab | |||
| f2c0c4a7d1 | |||
| 1640066132 | |||
| 3b1ec14a68 | |||
| 01cfb710ff | |||
| 3de39c70c1 | |||
| 86ed55599d | |||
| e798cdf31f | |||
| 97dd812647 | |||
| e07a6d1e34 | |||
| 6e37272c9d | |||
| 6bd6e62767 | |||
| 57dd6c78c1 | |||
| 9e413bf57a | |||
| b374813104 | |||
| 07ddb5e62c | |||
| 72b479d42e | |||
| c8b5d83cc7 | |||
| a5998179bf | |||
| 26d6f6d1f1 | |||
| f37f4f0041 | |||
| d2983caad4 | |||
| 2b7c233791 | |||
| 9e35e76b8c | |||
| 7a78875911 | |||
| 1cfc3118cc | |||
| 23e8fb0542 | |||
| 72eb2dab52 | |||
| f6075c9d2c | |||
| 24f1889b02 | |||
| dea8d592da | |||
| 52d3e98f3b | |||
| 6e3acce3be | |||
| 1ec54827d6 | |||
| 61ebf6265a | |||
| 190cc78034 | |||
| 5863f115dd | |||
| 75d259f5ee | |||
| 3b1b9a2cbf | |||
| 17b6a4c3cd | |||
| 1c10c78684 | |||
| 26917280be | |||
| 45674e6cd3 | |||
| 22d2d1cdf3 | |||
| 0d7bee40ae | |||
| db1ed32a51 | |||
| d7d087ae67 | |||
| 92e2df74c1 | |||
| 92742c5373 | |||
| 2047ae76e3 | |||
| 4adbb882b3 | |||
| 275c08453f | |||
| 91107cc1f3 | |||
| e26c170679 | |||
| 1bd9e175e9 | |||
| 9e9cfe5869 | |||
| 85ff0c1e46 | |||
| cc9b6118b8 | |||
| 09bed0c09a | |||
| 1b51efd6b8 | |||
| 8888b05b18 | |||
| 3bb8294f31 | |||
| 450c689ae9 | |||
| a5d401e164 | |||
| b96100c0b7 | |||
| 2690075405 | |||
| 09ca7b32fc | |||
| 3af389e6cf | |||
| 46217db8a5 | |||
| d6d7dde653 | |||
| 6070182f06 | |||
| 6c058fb56c | |||
| 91993b236d | |||
| 5ecc3ce366 | |||
| 75f1a4f3f0 | |||
| ffc74fca6c | |||
| 2896df2140 | |||
| c333401e72 | |||
| a9e9a2046b | |||
| d4f45f4f85 | |||
| 7d07baa8ad | |||
| b9184ef441 | |||
| ff2b61354d | |||
| 18acc6ae47 | |||
| 56e633a2cf | |||
| 798d68c607 | |||
| 46fe0a968b | |||
| 00a9672524 | |||
| a2756db66b | |||
| da83feb8ca | |||
| a7bc3ed391 | |||
| 68cf6941e1 | |||
| 73c55ac4d1 | |||
| 2a131d1416 | |||
| bcc5f49d0b | |||
| 950bfb84a9 | |||
| 4d725c3153 | |||
| 10fa54b2fd | |||
| 8a36cdc6bc | |||
| e5cd068cd5 | |||
| cec22dda92 | |||
| 9a71efc5d5 | |||
| 2f857c6eda | |||
| 8a93f63de9 | |||
| 193252275f | |||
| 5968850306 | |||
| 3291a4fe96 | |||
| 1b07a4edee | |||
| 0edad83b25 | |||
| 81a1c007ed | |||
| 0b51e9b2ff | |||
| 4b1bcaa1ae | |||
| ed8680d695 | |||
| 29df5a536f | |||
| d029cb9002 | |||
| 3e99d1a83a | |||
| c4e83be533 | |||
| d7e5d60f90 | |||
| 5179efd2bb | |||
| abb2fe5be7 | |||
| bae45e2493 | |||
| 73d509f339 | |||
| fa0c28b717 | |||
| bc3a84b480 | |||
| 4d915dba08 | |||
| f64544a5fe | |||
| fc742eb2ef | |||
| 1baecc689e | |||
| d916416cc5 | |||
| 2813923f15 | |||
| 4a3a6b4455 | |||
| f8891a4451 | |||
| 51688b2504 | |||
| 93be2d264e | |||
| b9fd1156b2 | |||
| bbfe16782b | |||
| 1931d2088a | |||
| 5d9a6c1fe2 | |||
| e7f97728c3 | |||
| 58ed92d905 | |||
| 14aa036f36 | |||
| 42e03da70c | |||
| 5d2e097b27 | |||
| da51a8a0bb | |||
| 80dffb27e2 | |||
| 5b33f153f4 | |||
| 31eb12920c | |||
| 31f2ca1e4c | |||
| 15a3364c2c | |||
| c3aa705d04 | |||
| 8c2d38c7e9 | |||
| e3b961b622 | |||
| 319508bd29 | |||
| 6f7bd78ea2 | |||
| 5647522906 | |||
| e4b14213b4 | |||
| fa6fc947f2 | |||
| e1189381e0 | |||
| 39d24ab7eb | |||
| 5770a20e2c | |||
| 83ec9815fe | |||
| 90ee52296b | |||
| f02eb225c6 | |||
| a111cf640a | |||
| e755a8339d | |||
| f7f6a15ac0 | |||
| 36b7aa73aa | |||
| 9a5723123f | |||
| 7d07f062b6 | |||
| f3ed148828 | |||
| 5ba80662c3 | |||
| 53c1558271 | |||
| 8e5d4fa891 | |||
| ec067bde36 | |||
| adbc75cae6 | |||
| dde94c28a7 | |||
| f2dc764d1d | |||
| c4c59b909e | |||
| e2e21f0661 | |||
| 6abf68f614 | |||
| a97553a92e | |||
| dbd4acc4d6 | |||
| 40e776ebc6 | |||
| f043212511 | |||
| 4342bcdafc | |||
| 2e40c00995 | |||
| f39c6213e1 | |||
| 88474fc5c2 | |||
| 16b5315845 | |||
| e337db4059 | |||
| ba43465268 | |||
| 09c61ca598 | |||
| 0f971bf07c | |||
| 5a8c5eb479 | |||
| aa0d6cd75b | |||
| b34000a5e1 | |||
| 279339ebd0 | |||
| 605fe53c07 | |||
| 65b77230fd | |||
| 91e4bcca33 | |||
| 7ef17efe2e | |||
| 8a804460f9 | |||
| f6658d10b7 | |||
| f4d0aa3393 | |||
| 99a6c6edb4 | |||
| a26ffc7ff7 | |||
| b002e071e7 | |||
| 9f44e3e5b0 | |||
| e79cd6c62c | |||
| 82c6fd609e | |||
| 2dbb44f2c6 | |||
| d1630bbe34 | |||
| 41c25877e8 | |||
| 39df9f5d94 | |||
| 68d04119d3 | |||
| 0148c2ac81 | |||
| 253a17b6d0 | |||
| a7ad12491f | |||
| 2137be3219 | |||
| ce78f6943d | |||
| 998aedc6c1 | |||
| 0a02c3c78c | |||
| aaf5e87c84 | |||
| 2d0f5e277c | |||
| 260bbc6f9f | |||
| 6b34a30528 | |||
| 83c7d3a1d2 | |||
| 961b976374 | |||
| ac6434e496 | |||
| f479f02589 | |||
| e284545c5b | |||
| e368acdaeb | |||
| 6e7504f153 | |||
| 71c4edda51 | |||
| 40147a7a64 | |||
| f709a723cd | |||
| 6dd55e49cb | |||
| 281b1dc375 | |||
| e93f8f8889 | |||
| 35f2cfa0bf | |||
| e44196c011 | |||
| 2fe1d1b904 | |||
| b1b4a52b14 | |||
| 382de50341 | |||
| 7dfc6b7eab | |||
| 19eb5d3897 | |||
| 17c17ac409 | |||
| 39ededd46c | |||
| 2c7528811d | |||
| 0966e14e73 | |||
| bb141aaae0 | |||
| 374d619769 | |||
| 59de1a71c8 | |||
| 4c6779cb0d | |||
| 5fb5f70ec6 | |||
| b0bba1976b | |||
| f8f13d929f | |||
| 3e89b270fd | |||
| f6ddc8c7c9 | |||
| a973c65d67 | |||
| 1a200588bd | |||
| 18ca2292c2 | |||
| d3ef4bd594 | |||
| 3df9caf435 | |||
| fa2e5ac2d9 | |||
| b7c7492608 | |||
| cee94da85e | |||
| 45aa7de171 | |||
| 53aa92cfaf | |||
| 7e35042c42 | |||
| 01051e4cb1 | |||
| d90aad887e | |||
| 775a15b9da | |||
| 93c9a92743 | |||
| 14dc1c698c | |||
| a1f5693fe0 | |||
| 534b7adde4 | |||
| 02646100e9 | |||
| 7e58f084d2 | |||
| 0f5d7dcc0f | |||
| b6187173e6 | |||
| 88a33edb50 | |||
| 6820db99e2 | |||
| 58e1969de2 | |||
| e91e505fb3 | |||
| f7cbdcf995 | |||
| 4cfa88b70f | |||
| 352a20fc1c | |||
| dc0e20947e | |||
| 05847a0e87 | |||
| 439c2fd980 | |||
| 15853a0e38 | |||
| bd17ee5df7 | |||
| a9b7ff1154 | |||
| 0dd7ba26c0 | |||
| 7a90eef527 | |||
| 5d0626e50e | |||
| 4b7ca0383a | |||
| 0ed987dc61 | |||
| 55a3fdca80 | |||
| 214c0cfb2b | |||
| e0efdd50fa | |||
| 44d2e8ff74 | |||
| 6bf2c60c07 | |||
| eecd2fbaee | |||
| 2b0bfcb10f | |||
| 3653f40120 | |||
| bda0ee3aa1 | |||
| 957263431a | |||
| f12031f84d | |||
| c522b1b7a9 | |||
| a55adf4a68 | |||
| 2876baafd0 | |||
| ca032f21fb | |||
| 197f082784 | |||
| 1bb7af9ef9 | |||
| 251f28049a | |||
| f07719e924 | |||
| 5f527091b8 | |||
| 30aaa7e47b | |||
| 74dcf0bf9b | |||
| e9b07a7a10 | |||
| fd8f5f8f9e | |||
| 5c59eb637b | |||
| 250ef9f837 | |||
| e44f370d49 | |||
| 1e790fbafe | |||
| 35cc795972 | |||
| 245bf74552 | |||
| 7e8bbe8481 | |||
| e6d687faac | |||
| 8a2cf5ce8e | |||
| 8f79f5ddb9 | |||
| 40ae6f215b | |||
| 4dcc49ebe2 | |||
| fe14eeccac | |||
| 9dc42fd4db | |||
| 5e89269631 | |||
| 11eed234f0 | |||
| af1fc45db0 | |||
| b34109af60 | |||
| 1dffb0cf82 | |||
| 588b2534c9 | |||
| d2aa05cb36 | |||
| 466fde6443 | |||
| 2a24cbfe0c | |||
| 00aef0fe00 | |||
| 92d9b361fc | |||
| 8acdc8020d | |||
| cc09a633a2 | |||
| 81be9b37de | |||
| 0c7879e902 | |||
| 8d384b9149 | |||
| 529eeb6039 | |||
| cf24dd0265 | |||
| a7b0d1f521 | |||
| fbe42cda2d | |||
| da7be99cc4 | |||
| 56d21bfb05 | |||
| 100231bba8 | |||
| 84378f8ae2 | |||
| 6e342d2e45 | |||
| 091d058090 | |||
| 4c71beb024 | |||
| a86572f4fc | |||
| 4524b0fa83 | |||
| 4ef63feea7 | |||
| 9f2740b7f1 | |||
| 2a06b75af8 | |||
| d7aac2fed5 | |||
| d898afaafb | |||
| c66ddf9ac0 | |||
| a64040ce2d | |||
| 480b087c93 | |||
| 0029583463 | |||
| c0f1a32661 | |||
| 80898b8695 | |||
| 855b6000ef | |||
| 285a123c90 | |||
| 0f52dd7c5f | |||
| 10d1741e7f | |||
| d11733d3a0 | |||
| 348c4eb7f3 | |||
| 75b3f34a58 | |||
| fe80c57bde | |||
| e49f0e396b | |||
| 37e55a825b | |||
| 67e48264d9 | |||
| 4e1eeca869 | |||
| 2fda041972 | |||
| 34c1adb4dd | |||
| 23e283f135 | |||
| de45fa6e71 | |||
| bfdc4acb8b | |||
| fd3ecd0481 | |||
| 8bba6d3e8c | |||
| 53e4ee4f2d | |||
| b60cff7e77 | |||
| 38530415c8 | |||
| 0573aaa6da | |||
| e6969002ce | |||
| 0448bc9caf | |||
| 836a6d292c | |||
| 32e0de7a67 | |||
| 789812ec3d | |||
| 88a882b457 | |||
| f1aea57e30 | |||
| b35f2ff8b4 | |||
| 4beccf508f | |||
| 78a486c0fd | |||
| d6316c40d9 | |||
| fe8244c1c2 | |||
| 3381a43378 | |||
| 73708b091c | |||
| 9a9af2ca5e | |||
| 491d5f3410 |
@ -37,6 +37,10 @@ enable_language(CXX)
|
||||
#####################################################################
|
||||
include(CheckCCompilerFlag)
|
||||
|
||||
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "Intel")
|
||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -restrict")
|
||||
endif()
|
||||
|
||||
########################################################################
|
||||
# User input options #
|
||||
########################################################################
|
||||
@ -76,7 +80,7 @@ add_definitions(-DLAMMPS_MEMALIGN=${LAMMPS_MEMALIGN})
|
||||
option(LAMMPS_EXCEPTIONS "enable the use of C++ exceptions for error messages (useful for library interface)" OFF)
|
||||
if(LAMMPS_EXCEPTIONS)
|
||||
add_definitions(-DLAMMPS_EXCEPTIONS)
|
||||
set(LAMMPS_API_DEFINES "${LAMMPS_API_DEFINES -DLAMMPS_EXCEPTIONS")
|
||||
set(LAMMPS_API_DEFINES "${LAMMPS_API_DEFINES} -DLAMMPS_EXCEPTIONS")
|
||||
endif()
|
||||
|
||||
set(LAMMPS_MACHINE "" CACHE STRING "Suffix to append to lmp binary and liblammps (WON'T enable any features automatically")
|
||||
@ -101,7 +105,7 @@ set(OTHER_PACKAGES KIM PYTHON MSCG MPIIO VORONOI POEMS LATTE
|
||||
USER-CGSDK USER-COLVARS USER-DIFFRACTION USER-DPD USER-DRUDE USER-EFF
|
||||
USER-FEP USER-H5MD USER-LB USER-MANIFOLD USER-MEAMC USER-MGPT USER-MISC
|
||||
USER-MOLFILE USER-NETCDF USER-PHONON USER-QTB USER-REAXC USER-SMD
|
||||
USER-SMTBQ USER-SPH USER-TALLY USER-VTK USER-QUIP USER-QMMM)
|
||||
USER-SMTBQ USER-SPH USER-TALLY USER-UEF USER-VTK USER-QUIP USER-QMMM)
|
||||
set(ACCEL_PACKAGES USER-OMP KOKKOS OPT USER-INTEL GPU)
|
||||
foreach(PKG ${DEFAULT_PACKAGES})
|
||||
option(ENABLE_${PKG} "Build ${PKG} Package" ${ENABLE_ALL})
|
||||
@ -194,14 +198,13 @@ if(ENABLE_PYTHON)
|
||||
add_definitions(-DLMP_PYTHON)
|
||||
include_directories(${PYTHON_INCLUDE_DIR})
|
||||
list(APPEND LAMMPS_LINK_LIBS ${PYTHON_LIBRARY})
|
||||
if(NOT PYTHON_INSTDIR)
|
||||
execute_process(COMMAND ${PYTHON_EXECUTABLE}
|
||||
-c "import distutils.sysconfig as cg; print(cg.get_python_lib(1,0,prefix='${CMAKE_INSTALL_PREFIX}'))"
|
||||
OUTPUT_VARIABLE PYTHON_INSTDIR OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
endif()
|
||||
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../python/lammps.py DESTINATION ${PYTHON_INSTDIR})
|
||||
if(NOT BUILD_SHARED_LIBS)
|
||||
message(FATAL_ERROR "Python package need lammps to be build shared, use -DBUILD_SHARED_LIBS=ON")
|
||||
if(BUILD_SHARED_LIBS)
|
||||
if(NOT PYTHON_INSTDIR)
|
||||
execute_process(COMMAND ${PYTHON_EXECUTABLE}
|
||||
-c "import distutils.sysconfig as cg; print(cg.get_python_lib(1,0,prefix='${CMAKE_INSTALL_PREFIX}'))"
|
||||
OUTPUT_VARIABLE PYTHON_INSTDIR OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
endif()
|
||||
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../python/lammps.py DESTINATION ${PYTHON_INSTDIR})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@ -397,6 +400,10 @@ foreach(SIMPLE_LIB REAX MEAM POEMS USER-ATC USER-AWPMD USER-COLVARS USER-H5MD
|
||||
target_include_directories(awpmd PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/awpmd/systems/interact ${LAMMPS_LIB_SOURCE_DIR}/awpmd/ivutils/include)
|
||||
elseif(PKG_LIB STREQUAL h5md)
|
||||
target_include_directories(h5md PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/h5md/include)
|
||||
elseif(PKG_LIB STREQUAL colvars)
|
||||
target_compile_options(colvars PRIVATE -DLEPTON)
|
||||
target_include_directories(colvars PRIVATE ${LAMMPS_LIB_SOURCE_DIR}/colvars/lepton/include)
|
||||
target_include_directories(colvars PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/colvars)
|
||||
else()
|
||||
target_include_directories(${PKG_LIB} PUBLIC ${LAMMPS_LIB_SOURCE_DIR}/${PKG_LIB})
|
||||
endif()
|
||||
@ -476,6 +483,8 @@ if(ENABLE_KOKKOS)
|
||||
${KOKKOS_PKG_SOURCES_DIR}/neigh_list_kokkos.cpp
|
||||
${KOKKOS_PKG_SOURCES_DIR}/neigh_bond_kokkos.cpp
|
||||
${KOKKOS_PKG_SOURCES_DIR}/fix_nh_kokkos.cpp
|
||||
${KOKKOS_PKG_SOURCES_DIR}/nbin_kokkos.cpp
|
||||
${KOKKOS_PKG_SOURCES_DIR}/npair_kokkos.cpp
|
||||
${KOKKOS_PKG_SOURCES_DIR}/domain_kokkos.cpp
|
||||
${KOKKOS_PKG_SOURCES_DIR}/modify_kokkos.cpp)
|
||||
set_property(GLOBAL PROPERTY "KOKKOS_PKG_SOURCES" "${KOKKOS_PKG_SOURCES}")
|
||||
@ -483,6 +492,17 @@ if(ENABLE_KOKKOS)
|
||||
# detects styles which have KOKKOS version
|
||||
RegisterStylesExt(${KOKKOS_PKG_SOURCES_DIR} kokkos KOKKOS_PKG_SOURCES)
|
||||
|
||||
# register kokkos-only styles
|
||||
RegisterNBinStyle(${KOKKOS_PKG_SOURCES_DIR}/nbin_kokkos.h)
|
||||
RegisterNPairStyle(${KOKKOS_PKG_SOURCES_DIR}/npair_kokkos.h)
|
||||
|
||||
if(ENABLE_USER-DPD)
|
||||
get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES)
|
||||
list(APPEND KOKKOS_PKG_SOURCES ${KOKKOS_PKG_SOURCES_DIR}/npair_ssa_kokkos.cpp)
|
||||
RegisterNPairStyle(${KOKKOS_PKG_SOURCES_DIR}/npair_ssa_kokkos.h)
|
||||
set_property(GLOBAL PROPERTY "KOKKOS_PKG_SOURCES" "${KOKKOS_PKG_SOURCES}")
|
||||
endif()
|
||||
|
||||
get_property(KOKKOS_PKG_SOURCES GLOBAL PROPERTY KOKKOS_PKG_SOURCES)
|
||||
|
||||
list(APPEND LIB_SOURCES ${KOKKOS_PKG_SOURCES})
|
||||
@ -665,7 +685,9 @@ include_directories(${LAMMPS_STYLE_HEADERS_DIR})
|
||||
############################################
|
||||
add_library(lammps ${LIB_SOURCES})
|
||||
target_link_libraries(lammps ${LAMMPS_LINK_LIBS})
|
||||
add_dependencies(lammps ${LAMMPS_DEPS})
|
||||
if(LAMMPS_DEPS)
|
||||
add_dependencies(lammps ${LAMMPS_DEPS})
|
||||
endif()
|
||||
set_target_properties(lammps PROPERTIES OUTPUT_NAME lammps${LAMMPS_MACHINE})
|
||||
if(BUILD_SHARED_LIBS)
|
||||
set_target_properties(lammps PROPERTIES SOVERSION ${SOVERSION})
|
||||
|
||||
@ -11,6 +11,12 @@ function(FindStyleHeaders path style_class file_pattern headers)
|
||||
set_property(GLOBAL PROPERTY ${headers} "${hlist}")
|
||||
endfunction(FindStyleHeaders)
|
||||
|
||||
function(AddStyleHeader path headers)
|
||||
get_property(hlist GLOBAL PROPERTY ${headers})
|
||||
list(APPEND hlist ${path})
|
||||
set_property(GLOBAL PROPERTY ${headers} "${hlist}")
|
||||
endfunction(AddStyleHeader)
|
||||
|
||||
function(FindStyleHeadersExt path style_class extension headers sources)
|
||||
get_property(hlist GLOBAL PROPERTY ${headers})
|
||||
get_property(slist GLOBAL PROPERTY ${sources})
|
||||
@ -62,6 +68,22 @@ function(GenerateStyleHeader path property style)
|
||||
CreateStyleHeader("${path}" "style_${style}.h" ${files})
|
||||
endfunction(GenerateStyleHeader)
|
||||
|
||||
function(RegisterNBinStyles search_path)
|
||||
FindStyleHeaders(${search_path} NBIN_CLASS nbin_ NBIN ) # nbin ) # neighbor
|
||||
endfunction(RegisterNBinStyles)
|
||||
|
||||
function(RegisterNPairStyles search_path)
|
||||
FindStyleHeaders(${search_path} NPAIR_CLASS npair_ NPAIR ) # npair ) # neighbor
|
||||
endfunction(RegisterNPairStyles)
|
||||
|
||||
function(RegisterNBinStyle path)
|
||||
AddStyleHeader(${path} NBIN)
|
||||
endfunction(RegisterNBinStyle)
|
||||
|
||||
function(RegisterNPairStyle path)
|
||||
AddStyleHeader(${path} NPAIR)
|
||||
endfunction(RegisterNPairStyle)
|
||||
|
||||
function(RegisterStyles search_path)
|
||||
FindStyleHeaders(${search_path} ANGLE_CLASS angle_ ANGLE ) # angle ) # force
|
||||
FindStyleHeaders(${search_path} ATOM_CLASS atom_vec_ ATOM_VEC ) # atom ) # atom atom_vec_hybrid
|
||||
|
||||
@ -20,6 +20,7 @@ ifeq ($(shell which virtualenv >/dev/null 2>&1; echo $$?), 0)
|
||||
HAS_VIRTUALENV = YES
|
||||
endif
|
||||
|
||||
SPHINXEXTRA = -j $(shell $(PYTHON) -c 'import multiprocessing;print(multiprocessing.cpu_count())')
|
||||
SOURCES=$(wildcard src/*.txt)
|
||||
OBJECTS=$(SOURCES:src/%.txt=$(RSTDIR)/%.rst)
|
||||
|
||||
@ -55,7 +56,7 @@ html: $(OBJECTS) $(ANCHORCHECK)
|
||||
@(\
|
||||
. $(VENV)/bin/activate ;\
|
||||
cp -r src/* $(RSTDIR)/ ;\
|
||||
sphinx-build -j 8 -b html -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) html ;\
|
||||
sphinx-build $(SPHINXEXTRA) -b html -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) html ;\
|
||||
echo "############################################" ;\
|
||||
doc_anchor_check src/*.txt ;\
|
||||
echo "############################################" ;\
|
||||
@ -91,7 +92,7 @@ epub: $(OBJECTS)
|
||||
@(\
|
||||
. $(VENV)/bin/activate ;\
|
||||
cp -r src/* $(RSTDIR)/ ;\
|
||||
sphinx-build -j 8 -b epub -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) epub ;\
|
||||
sphinx-build $(SPHINXEXTRA) -b epub -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) epub ;\
|
||||
deactivate ;\
|
||||
)
|
||||
@mv epub/LAMMPS.epub .
|
||||
@ -159,7 +160,7 @@ $(VENV):
|
||||
@( \
|
||||
virtualenv -p $(PYTHON) $(VENV); \
|
||||
. $(VENV)/bin/activate; \
|
||||
pip install Sphinx==1.5.6; \
|
||||
pip install Sphinx; \
|
||||
pip install sphinxcontrib-images; \
|
||||
deactivate;\
|
||||
)
|
||||
|
||||
BIN
doc/src/Eqs/bond_gromos.jpg
Normal file
BIN
doc/src/Eqs/bond_gromos.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.1 KiB |
10
doc/src/Eqs/bond_gromos.tex
Normal file
10
doc/src/Eqs/bond_gromos.tex
Normal file
@ -0,0 +1,10 @@
|
||||
\documentclass[12pt]{article}
|
||||
\pagestyle{empty}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = K (r^2 - r_0^2)^2
|
||||
$$
|
||||
|
||||
\end{document}
|
||||
BIN
doc/src/Eqs/fix_rhok.jpg
Normal file
BIN
doc/src/Eqs/fix_rhok.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
11
doc/src/Eqs/fix_rhok.tex
Normal file
11
doc/src/Eqs/fix_rhok.tex
Normal file
@ -0,0 +1,11 @@
|
||||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
U &=& \frac{1}{2} K (|\rho_{\vec{k}}| - a)^2 \\
|
||||
\rho_{\vec{k}} &=& \sum_j^N \exp(-i\vec{k} \cdot \vec{r}_j )/\sqrt{N} \\
|
||||
\vec{k} &=& (2\pi n_x /L_x , 2\pi n_y /L_y , 2\pi n_z/L_z )
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
||||
BIN
doc/src/JPG/uef_frames.jpg
Normal file
BIN
doc/src/JPG/uef_frames.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 12 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 19 KiB |
@ -1,7 +1,7 @@
|
||||
<!-- HTML_ONLY -->
|
||||
<HEAD>
|
||||
<TITLE>LAMMPS Users Manual</TITLE>
|
||||
<META NAME="docnumber" CONTENT="22 Sep 2017 version">
|
||||
<META NAME="docnumber" CONTENT="17 Jan 2018 version">
|
||||
<META NAME="author" CONTENT="http://lammps.sandia.gov - Sandia National Laboratories">
|
||||
<META NAME="copyright" CONTENT="Copyright (2003) Sandia Corporation. This software and manual is distributed under the GNU General Public License.">
|
||||
</HEAD>
|
||||
@ -21,7 +21,7 @@
|
||||
<H1></H1>
|
||||
|
||||
LAMMPS Documentation :c,h3
|
||||
22 Sep 2017 version :c,h4
|
||||
17 Jan 2018 version :c,h4
|
||||
|
||||
Version info: :h4
|
||||
|
||||
|
||||
Binary file not shown.
@ -619,8 +619,9 @@ USER-INTEL, k = KOKKOS, o = USER-OMP, t = OPT.
|
||||
"pour"_fix_pour.html,
|
||||
"press/berendsen"_fix_press_berendsen.html,
|
||||
"print"_fix_print.html,
|
||||
"property/atom"_fix_property_atom.html,
|
||||
"python"_fix_python.html,
|
||||
"property/atom (k)"_fix_property_atom.html,
|
||||
"python/invoke"_fix_python_invoke.html,
|
||||
"python/move"_fix_python_move.html,
|
||||
"qeq/comb (o)"_fix_qeq_comb.html,
|
||||
"qeq/dynamic"_fix_qeq.html,
|
||||
"qeq/fire"_fix_qeq.html,
|
||||
@ -637,10 +638,10 @@ USER-INTEL, k = KOKKOS, o = USER-OMP, t = OPT.
|
||||
"rigid/nve (o)"_fix_rigid.html,
|
||||
"rigid/nvt (o)"_fix_rigid.html,
|
||||
"rigid/small (o)"_fix_rigid.html,
|
||||
"rigid/small/nph (o)"_fix_rigid.html,
|
||||
"rigid/small/npt (o)"_fix_rigid.html,
|
||||
"rigid/small/nve (o)"_fix_rigid.html,
|
||||
"rigid/small/nvt (o)"_fix_rigid.html,
|
||||
"rigid/small/nph"_fix_rigid.html,
|
||||
"rigid/small/npt"_fix_rigid.html,
|
||||
"rigid/small/nve"_fix_rigid.html,
|
||||
"rigid/small/nvt"_fix_rigid.html,
|
||||
"setforce (k)"_fix_setforce.html,
|
||||
"shake"_fix_shake.html,
|
||||
"spring"_fix_spring.html,
|
||||
@ -668,7 +669,7 @@ USER-INTEL, k = KOKKOS, o = USER-OMP, t = OPT.
|
||||
"wall/harmonic"_fix_wall.html,
|
||||
"wall/lj1043"_fix_wall.html,
|
||||
"wall/lj126"_fix_wall.html,
|
||||
"wall/lj93"_fix_wall.html,
|
||||
"wall/lj93 (k)"_fix_wall.html,
|
||||
"wall/piston"_fix_wall_piston.html,
|
||||
"wall/reflect (k)"_fix_wall_reflect.html,
|
||||
"wall/region"_fix_wall_region.html,
|
||||
@ -683,14 +684,14 @@ package"_Section_start.html#start_3.
|
||||
"atc"_fix_atc.html,
|
||||
"ave/correlate/long"_fix_ave_correlate_long.html,
|
||||
"colvars"_fix_colvars.html,
|
||||
"dpd/energy"_fix_dpd_energy.html,
|
||||
"dpd/energy (k)"_fix_dpd_energy.html,
|
||||
"drude"_fix_drude.html,
|
||||
"drude/transform/direct"_fix_drude_transform.html,
|
||||
"drude/transform/reverse"_fix_drude_transform.html,
|
||||
"edpd/source"_fix_dpd_source.html,
|
||||
"eos/cv"_fix_eos_cv.html,
|
||||
"eos/table"_fix_eos_table.html,
|
||||
"eos/table/rx"_fix_eos_table_rx.html,
|
||||
"eos/table/rx (k)"_fix_eos_table_rx.html,
|
||||
"filter/corotate"_fix_filter_corotate.html,
|
||||
"flow/gauss"_fix_flow_gauss.html,
|
||||
"gle"_fix_gle.html,
|
||||
@ -720,17 +721,20 @@ package"_Section_start.html#start_3.
|
||||
"nve/eff"_fix_nve_eff.html,
|
||||
"nvt/eff"_fix_nh_eff.html,
|
||||
"nvt/sllod/eff"_fix_nvt_sllod_eff.html,
|
||||
"npt/uef"_fix_nh_uef.html,
|
||||
"nvt/uef"_fix_nh_uef.html,
|
||||
"phonon"_fix_phonon.html,
|
||||
"pimd"_fix_pimd.html,
|
||||
"qbmsst"_fix_qbmsst.html,
|
||||
"qeq/reax (ko)"_fix_qeq_reax.html,
|
||||
"qmmm"_fix_qmmm.html,
|
||||
"qtb"_fix_qtb.html,
|
||||
"reax/c/bonds"_fix_reax_bonds.html,
|
||||
"reax/c/species"_fix_reaxc_species.html,
|
||||
"rx"_fix_rx.html,
|
||||
"reax/c/bonds (k)"_fix_reax_bonds.html,
|
||||
"reax/c/species (k)"_fix_reaxc_species.html,
|
||||
"rhok"_fix_rhok.html,
|
||||
"rx (k)"_fix_rx.html,
|
||||
"saed/vtk"_fix_saed_vtk.html,
|
||||
"shardlow"_fix_shardlow.html,
|
||||
"shardlow (k)"_fix_shardlow.html,
|
||||
"smd"_fix_smd.html,
|
||||
"smd/adjust/dt"_fix_smd_adjust_dt.html,
|
||||
"smd/integrate/tlsph"_fix_smd_integrate_tlsph.html,
|
||||
@ -856,6 +860,7 @@ package"_Section_start.html#start_3.
|
||||
"meso/t/atom"_compute_meso_t_atom.html,
|
||||
"pe/tally"_compute_tally.html,
|
||||
"pe/mol/tally"_compute_tally.html,
|
||||
"pressure/uef"_compute_pressure_uef.html,
|
||||
"saed"_compute_saed.html,
|
||||
"smd/contact/radius"_compute_smd_contact_radius.html,
|
||||
"smd/damage"_compute_smd_damage.html,
|
||||
@ -884,6 +889,7 @@ package"_Section_start.html#start_3.
|
||||
"temp/deform/eff"_compute_temp_deform_eff.html,
|
||||
"temp/region/eff"_compute_temp_region_eff.html,
|
||||
"temp/rotate"_compute_temp_rotate.html,
|
||||
"temp/uef"_compute_temp_uef.html,
|
||||
"xrd"_compute_xrd.html :tb(c=6,ea=c)
|
||||
|
||||
:line
|
||||
@ -901,7 +907,7 @@ KOKKOS, o = USER-OMP, t = OPT.
|
||||
"none"_pair_none.html,
|
||||
"zero"_pair_zero.html,
|
||||
"hybrid"_pair_hybrid.html,
|
||||
"hybrid/overlay"_pair_hybrid.html,
|
||||
"hybrid/overlay (k)"_pair_hybrid.html,
|
||||
"adp (o)"_pair_adp.html,
|
||||
"airebo (oi)"_pair_airebo.html,
|
||||
"airebo/morse (oi)"_pair_airebo.html,
|
||||
@ -915,11 +921,12 @@ KOKKOS, o = USER-OMP, t = OPT.
|
||||
"born/coul/long/cs"_pair_born.html,
|
||||
"born/coul/msm (o)"_pair_born.html,
|
||||
"born/coul/wolf (go)"_pair_born.html,
|
||||
"born/coul/wolf/cs"_pair_born.html,
|
||||
"brownian (o)"_pair_brownian.html,
|
||||
"brownian/poly (o)"_pair_brownian.html,
|
||||
"buck (gkio)"_pair_buck.html,
|
||||
"buck/coul/cut (gkio)"_pair_buck.html,
|
||||
"buck/coul/long (gkio)"_pair_buck.html,
|
||||
"buck (giko)"_pair_buck.html,
|
||||
"buck/coul/cut (giko)"_pair_buck.html,
|
||||
"buck/coul/long (giko)"_pair_buck.html,
|
||||
"buck/coul/long/cs"_pair_buck.html,
|
||||
"buck/coul/msm (o)"_pair_buck.html,
|
||||
"buck/long/coul/long (o)"_pair_buck_long.html,
|
||||
@ -934,12 +941,13 @@ KOKKOS, o = USER-OMP, t = OPT.
|
||||
"coul/msm"_pair_coul.html,
|
||||
"coul/streitz"_pair_coul.html,
|
||||
"coul/wolf (ko)"_pair_coul.html,
|
||||
"dpd (go)"_pair_dpd.html,
|
||||
"coul/wolf/cs"_pair_coul.html,
|
||||
"dpd (gio)"_pair_dpd.html,
|
||||
"dpd/tstat (go)"_pair_dpd.html,
|
||||
"dsmc"_pair_dsmc.html,
|
||||
"eam (gkiot)"_pair_eam.html,
|
||||
"eam/alloy (gkiot)"_pair_eam.html,
|
||||
"eam/fs (gkiot)"_pair_eam.html,
|
||||
"eam (gikot)"_pair_eam.html,
|
||||
"eam/alloy (gikot)"_pair_eam.html,
|
||||
"eam/fs (gikot)"_pair_eam.html,
|
||||
"eim (o)"_pair_eim.html,
|
||||
"gauss (go)"_pair_gauss.html,
|
||||
"gayberne (gio)"_pair_gayberne.html,
|
||||
@ -953,9 +961,9 @@ KOKKOS, o = USER-OMP, t = OPT.
|
||||
"kim"_pair_kim.html,
|
||||
"lcbop"_pair_lcbop.html,
|
||||
"line/lj"_pair_line_lj.html,
|
||||
"lj/charmm/coul/charmm (kio)"_pair_charmm.html,
|
||||
"lj/charmm/coul/charmm (iko)"_pair_charmm.html,
|
||||
"lj/charmm/coul/charmm/implicit (ko)"_pair_charmm.html,
|
||||
"lj/charmm/coul/long (gkio)"_pair_charmm.html,
|
||||
"lj/charmm/coul/long (giko)"_pair_charmm.html,
|
||||
"lj/charmm/coul/msm"_pair_charmm.html,
|
||||
"lj/charmmfsw/coul/charmmfsh"_pair_charmm.html,
|
||||
"lj/charmmfsw/coul/long"_pair_charmm.html,
|
||||
@ -1005,9 +1013,9 @@ KOKKOS, o = USER-OMP, t = OPT.
|
||||
"resquared (go)"_pair_resquared.html,
|
||||
"snap"_pair_snap.html,
|
||||
"soft (go)"_pair_soft.html,
|
||||
"sw (gkio)"_pair_sw.html,
|
||||
"sw (giko)"_pair_sw.html,
|
||||
"table (gko)"_pair_table.html,
|
||||
"tersoff (gkio)"_pair_tersoff.html,
|
||||
"tersoff (giko)"_pair_tersoff.html,
|
||||
"tersoff/mod (gko)"_pair_tersoff_mod.html,
|
||||
"tersoff/mod/c (o)"_pair_tersoff_mod.html,
|
||||
"tersoff/zbl (gko)"_pair_tersoff_zbl.html,
|
||||
@ -1016,9 +1024,9 @@ KOKKOS, o = USER-OMP, t = OPT.
|
||||
"tri/lj"_pair_tri_lj.html,
|
||||
"vashishta (ko)"_pair_vashishta.html,
|
||||
"vashishta/table (o)"_pair_vashishta.html,
|
||||
"yukawa (go)"_pair_yukawa.html,
|
||||
"yukawa (gok)"_pair_yukawa.html,
|
||||
"yukawa/colloid (go)"_pair_yukawa_colloid.html,
|
||||
"zbl (go)"_pair_zbl.html :tb(c=4,ea=c)
|
||||
"zbl (gok)"_pair_zbl.html :tb(c=4,ea=c)
|
||||
|
||||
These are additional pair styles in USER packages, which can be used
|
||||
if "LAMMPS is built with the appropriate
|
||||
@ -1031,13 +1039,14 @@ package"_Section_start.html#start_3.
|
||||
"coul/diel (o)"_pair_coul_diel.html,
|
||||
"coul/long/soft (o)"_pair_lj_soft.html,
|
||||
"dpd/fdt"_pair_dpd_fdt.html,
|
||||
"dpd/fdt/energy"_pair_dpd_fdt.html,
|
||||
"dpd/fdt/energy (k)"_pair_dpd_fdt.html,
|
||||
"eam/cd (o)"_pair_eam.html,
|
||||
"edip (o)"_pair_edip.html,
|
||||
"edip/multi"_pair_edip.html,
|
||||
"edpd"_pair_meso.html,
|
||||
"eff/cut"_pair_eff.html,
|
||||
"exp6/rx"_pair_exp6_rx.html,
|
||||
"exp6/rx (k)"_pair_exp6_rx.html,
|
||||
"extep"_pair_extep.html,
|
||||
"gauss/cut"_pair_gauss.html,
|
||||
"kolmogorov/crespi/z"_pair_kolmogorov_crespi_z.html,
|
||||
"lennard/mdf"_pair_mdf.html,
|
||||
@ -1063,7 +1072,7 @@ package"_Section_start.html#start_3.
|
||||
"morse/smooth/linear"_pair_morse.html,
|
||||
"morse/soft"_pair_morse.html,
|
||||
"multi/lucy"_pair_multi_lucy.html,
|
||||
"multi/lucy/rx"_pair_multi_lucy_rx.html,
|
||||
"multi/lucy/rx (k)"_pair_multi_lucy_rx.html,
|
||||
"oxdna/coaxstk"_pair_oxdna.html,
|
||||
"oxdna/excv"_pair_oxdna.html,
|
||||
"oxdna/hbond"_pair_oxdna.html,
|
||||
@ -1080,6 +1089,7 @@ package"_Section_start.html#start_3.
|
||||
"smd/triangulated/surface"_pair_smd_triangulated_surface.html,
|
||||
"smd/ulsph"_pair_smd_ulsph.html,
|
||||
"smtbq"_pair_smtbq.html,
|
||||
"snap (k)"_pair_snap.html,
|
||||
"sph/heatconduction"_pair_sph_heatconduction.html,
|
||||
"sph/idealgas"_pair_sph_idealgas.html,
|
||||
"sph/lj"_pair_sph_lj.html,
|
||||
@ -1087,7 +1097,7 @@ package"_Section_start.html#start_3.
|
||||
"sph/taitwater"_pair_sph_taitwater.html,
|
||||
"sph/taitwater/morris"_pair_sph_taitwater_morris.html,
|
||||
"srp"_pair_srp.html,
|
||||
"table/rx"_pair_table_rx.html,
|
||||
"table/rx (k)"_pair_table_rx.html,
|
||||
"tdpd"_pair_meso.html,
|
||||
"tersoff/table (o)"_pair_tersoff.html,
|
||||
"thole"_pair_thole.html,
|
||||
@ -1111,6 +1121,7 @@ KOKKOS, o = USER-OMP, t = OPT.
|
||||
"class2 (ko)"_bond_class2.html,
|
||||
"fene (iko)"_bond_fene.html,
|
||||
"fene/expand (o)"_bond_fene_expand.html,
|
||||
"gromos (o)"_bond_gromos.html,
|
||||
"harmonic (ko)"_bond_harmonic.html,
|
||||
"morse (o)"_bond_morse.html,
|
||||
"nonlinear (o)"_bond_nonlinear.html,
|
||||
@ -1177,7 +1188,7 @@ USER-OMP, t = OPT.
|
||||
"none"_dihedral_none.html,
|
||||
"zero"_dihedral_zero.html,
|
||||
"hybrid"_dihedral_hybrid.html,
|
||||
"charmm (ko)"_dihedral_charmm.html,
|
||||
"charmm (iko)"_dihedral_charmm.html,
|
||||
"charmmfsw"_dihedral_charmm.html,
|
||||
"class2 (ko)"_dihedral_class2.html,
|
||||
"harmonic (io)"_dihedral_harmonic.html,
|
||||
@ -1190,7 +1201,7 @@ used if "LAMMPS is built with the appropriate
|
||||
package"_Section_start.html#start_3.
|
||||
|
||||
"cosine/shift/exp (o)"_dihedral_cosine_shift_exp.html,
|
||||
"fourier (o)"_dihedral_fourier.html,
|
||||
"fourier (io)"_dihedral_fourier.html,
|
||||
"nharmonic (o)"_dihedral_nharmonic.html,
|
||||
"quadratic (o)"_dihedral_quadratic.html,
|
||||
"spherical (o)"_dihedral_spherical.html,
|
||||
@ -1213,7 +1224,7 @@ USER-OMP, t = OPT.
|
||||
"hybrid"_improper_hybrid.html,
|
||||
"class2 (ko)"_improper_class2.html,
|
||||
"cvff (io)"_improper_cvff.html,
|
||||
"harmonic (ko)"_improper_harmonic.html,
|
||||
"harmonic (iko)"_improper_harmonic.html,
|
||||
"umbrella (o)"_improper_umbrella.html :tb(c=4,ea=c)
|
||||
|
||||
These are additional improper styles in USER packages, which can be
|
||||
@ -1241,7 +1252,7 @@ USER-OMP, t = OPT.
|
||||
"ewald/disp"_kspace_style.html,
|
||||
"msm (o)"_kspace_style.html,
|
||||
"msm/cg (o)"_kspace_style.html,
|
||||
"pppm (go)"_kspace_style.html,
|
||||
"pppm (gok)"_kspace_style.html,
|
||||
"pppm/cg (o)"_kspace_style.html,
|
||||
"pppm/disp (i)"_kspace_style.html,
|
||||
"pppm/disp/tip4p"_kspace_style.html,
|
||||
|
||||
@ -454,7 +454,7 @@ NOTE: By default, for 2d systems, granular particles are still modeled
|
||||
as 3d spheres, not 2d discs (circles), meaning their moment of inertia
|
||||
will be the same as in 3d. If you wish to model granular particles in
|
||||
2d as 2d discs, see the note on this topic in "Section
|
||||
6.2"_Section_howto.html#howto_2, where 2d simulations are disussed.
|
||||
6.2"_Section_howto.html#howto_2, where 2d simulations are discussed.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -150,6 +150,7 @@ Package, Description, Doc page, Example, Library
|
||||
"USER-SMTBQ"_#USER-SMTBQ, second moment tight binding QEq potential,"pair_style smtbq"_pair_smtbq.html, USER/smtbq, -
|
||||
"USER-SPH"_#USER-SPH, smoothed particle hydrodynamics,"SPH User Guide"_PDF/SPH_LAMMPS_userguide.pdf, USER/sph, -
|
||||
"USER-TALLY"_#USER-TALLY, pairwise tally computes,"compute XXX/tally"_compute_tally.html, USER/tally, -
|
||||
"USER-UEF"_#USER-UEF, extensional flow,"fix nvt/uef"_fix_nh_uef.html, USER/uef, -
|
||||
"USER-VTK"_#USER-VTK, dump output via VTK, "compute vtk"_dump_vtk.html, -, ext :tb(ea=c,ca1=l)
|
||||
|
||||
:line
|
||||
@ -242,7 +243,7 @@ COLLOID package :link(COLLOID),h4
|
||||
|
||||
[Contents:]
|
||||
|
||||
Coarse-grained finite-size colloidal particles. Pair stayle and fix
|
||||
Coarse-grained finite-size colloidal particles. Pair styles and fix
|
||||
wall styles for colloidal interactions. Includes the Fast Lubrication
|
||||
Dynamics (FLD) method for hydrodynamic interactions, which is a
|
||||
simplified approximation to Stokesian dynamics.
|
||||
@ -705,7 +706,7 @@ dynamics can be run with LAMMPS using density-functional tight-binding
|
||||
quantum forces calculated by LATTE.
|
||||
|
||||
More information on LATTE can be found at this web site:
|
||||
"https://github.com/lanl/LATTE"_#latte_home. A brief technical
|
||||
"https://github.com/lanl/LATTE"_latte_home. A brief technical
|
||||
description is given with the "fix latte"_fix_latte.html command.
|
||||
|
||||
:link(latte_home,https://github.com/lanl/LATTE)
|
||||
@ -728,11 +729,12 @@ make lib-latte args="-b" # download and build in lib/latte/LATTE-
|
||||
make lib-latte args="-p $HOME/latte" # use existing LATTE installation in $HOME/latte
|
||||
make lib-latte args="-b -m gfortran" # download and build in lib/latte and
|
||||
# copy Makefile.lammps.gfortran to Makefile.lammps
|
||||
:pre
|
||||
|
||||
Note that 3 symbolic (soft) links, "includelink" and "liblink" and
|
||||
"filelink", are created in lib/latte to point into the LATTE home dir.
|
||||
"filelink.o", are created in lib/latte to point into the LATTE home dir.
|
||||
When LAMMPS builds in src it will use these links. You should
|
||||
also check that the Makefile.lammps file you create is apporpriate
|
||||
also check that the Makefile.lammps file you create is appropriate
|
||||
for the compiler you use on your system to build LATTE.
|
||||
|
||||
You can then install/un-install the package and build LAMMPS in the
|
||||
@ -982,7 +984,7 @@ MSCG package :link(mscg),h4
|
||||
[Contents:]
|
||||
|
||||
A "fix mscg"_fix_mscg.html command which can parameterize a
|
||||
Mulit-Scale Coarse-Graining (MSCG) model using the open-source "MS-CG
|
||||
Multi-Scale Coarse-Graining (MSCG) model using the open-source "MS-CG
|
||||
library"_mscg_home.
|
||||
|
||||
:link(mscg_home,https://github.com/uchicago-voth/MSCG-release)
|
||||
@ -1779,7 +1781,7 @@ coarse-grained DPD-based models for energetic, reactive molecular
|
||||
crystalline materials. It includes many pair styles specific to these
|
||||
systems, including for reactive DPD, where each particle has internal
|
||||
state for multiple species and a coupled set of chemical reaction ODEs
|
||||
are integrated each timestep. Highly accurate time intergrators for
|
||||
are integrated each timestep. Highly accurate time integrators for
|
||||
isothermal, isoenergetic, isobaric and isenthalpic conditions are
|
||||
included. These enable long timesteps via the Shardlow splitting
|
||||
algorithm.
|
||||
@ -2229,7 +2231,7 @@ Several extensions of the the dissipative particle dynamics (DPD)
|
||||
method. Specifically, energy-conserving DPD (eDPD) that can model
|
||||
non-isothermal processes, many-body DPD (mDPD) for simulating
|
||||
vapor-liquid coexistence, and transport DPD (tDPD) for modeling
|
||||
advection-diffuion-reaction systems. The equations of motion of these
|
||||
advection-diffusion-reaction systems. The equations of motion of these
|
||||
DPD extensions are integrated through a modified velocity-Verlet (MVV)
|
||||
algorithm.
|
||||
|
||||
@ -2493,7 +2495,7 @@ make machine :pre
|
||||
|
||||
NOTE: The LAMMPS executable these steps produce is not yet functional
|
||||
for a QM/MM simulation. You must also build Quantum ESPRESSO and
|
||||
create a new executable which links LAMMPS and Quanutm ESPRESSO
|
||||
create a new executable which links LAMMPS and Quantum ESPRESSO
|
||||
together. These are steps 3 and 4 described in the lib/qmmm/README
|
||||
file.
|
||||
|
||||
@ -2552,7 +2554,7 @@ developed by the Cambridge University group.
|
||||
|
||||
:link(quip,https://github.com/libAtoms/QUIP)
|
||||
|
||||
To use this package you must have the QUIP libAatoms library available
|
||||
To use this package you must have the QUIP libAtoms library available
|
||||
on your system.
|
||||
|
||||
[Author:] Albert Bartok (Cambridge University)
|
||||
@ -2770,13 +2772,44 @@ examples/USER/tally :ul
|
||||
|
||||
:line
|
||||
|
||||
USER-UEF package :link(USER-UEF),h4
|
||||
|
||||
[Contents:]
|
||||
|
||||
A fix style for the integration of the equations of motion under
|
||||
extensional flow with proper boundary conditions, as well as several
|
||||
supporting compute styles and an output option.
|
||||
|
||||
[Author:] David Nicholson (MIT).
|
||||
|
||||
[Install or un-install:]
|
||||
|
||||
make yes-user-uef
|
||||
make machine :pre
|
||||
|
||||
make no-user-uef
|
||||
make machine :pre
|
||||
|
||||
[Supporting info:]
|
||||
|
||||
src/USER-UEF: filenames -> commands
|
||||
src/USER-UEF/README
|
||||
"fix nvt/uef"_fix_nh_uef.html
|
||||
"fix npt/uef"_fix_nh_uef.html
|
||||
"compute pressure/uef"_compute_pressure_uef.html
|
||||
"compute temp/uef"_compute_temp_uef.html
|
||||
"dump cfg/uef"_dump_cfg_uef.html
|
||||
examples/uef :ul
|
||||
|
||||
:line
|
||||
|
||||
USER-VTK package :link(USER-VTK),h4
|
||||
|
||||
[Contents:]
|
||||
|
||||
A "dump vtk"_dump_vtk.html command which outputs
|
||||
snapshot info in the "VTK format"_vtk, enabling visualization by
|
||||
"Paraview"_paraview or other visuzlization packages.
|
||||
A "dump vtk"_dump_vtk.html command which outputs snapshot info in the
|
||||
"VTK format"_vtk, enabling visualization by "Paraview"_paraview or
|
||||
other visualization packages.
|
||||
|
||||
:link(vtk,http://www.vtk.org)
|
||||
:link(paraview,http://www.paraview.org)
|
||||
|
||||
@ -123,7 +123,7 @@ code directly from an input script:
|
||||
|
||||
"python"_python.html
|
||||
"variable python"_variable.html
|
||||
"fix python"_fix_python.html
|
||||
"fix python/invoke"_fix_python_invoke.html
|
||||
"pair_style python"_pair_python.html :ul
|
||||
|
||||
The "python"_python.html command which can be used to define and
|
||||
@ -165,7 +165,7 @@ doc page for its python-style variables for more info, including
|
||||
examples of Python code you can write for both pure Python operations
|
||||
and callbacks to LAMMPS.
|
||||
|
||||
The "fix python"_fix_python.html command can execute
|
||||
The "fix python/invoke"_fix_python_invoke.html command can execute
|
||||
Python code at selected timesteps during a simulation run.
|
||||
|
||||
The "pair_style python"_pair_python command allows you to define
|
||||
|
||||
@ -79,7 +79,7 @@ This section has the following sub-sections:
|
||||
|
||||
Read this first :h5,link(start_2_1)
|
||||
|
||||
If you want to avoid building LAMMPS yourself, read the preceeding
|
||||
If you want to avoid building LAMMPS yourself, read the preceding
|
||||
section about options available for downloading and installing
|
||||
executables. Details are discussed on the "download"_download page.
|
||||
|
||||
@ -252,7 +252,7 @@ re-compile, after typing "make clean" (which will describe different
|
||||
clean options).
|
||||
|
||||
The LMP_INC variable is used to include options that turn on ifdefs
|
||||
within the LAMMPS code. The options that are currently recogized are:
|
||||
within the LAMMPS code. The options that are currently recognized are:
|
||||
|
||||
-DLAMMPS_GZIP
|
||||
-DLAMMPS_JPEG
|
||||
@ -363,7 +363,7 @@ installed on your platform. If MPI is installed on your system in the
|
||||
usual place (under /usr/local), you also may not need to specify these
|
||||
3 variables, assuming /usr/local is in your path. On some large
|
||||
parallel machines which use "modules" for their compile/link
|
||||
environements, you may simply need to include the correct module in
|
||||
environments, you may simply need to include the correct module in
|
||||
your build environment, before building LAMMPS. Or the parallel
|
||||
machine may have a vendor-provided MPI which the compiler has no
|
||||
trouble finding.
|
||||
@ -431,7 +431,7 @@ use the KISS library described above.
|
||||
You may also need to set the FFT_INC, FFT_PATH, and FFT_LIB variables,
|
||||
so the compiler and linker can find the needed FFT header and library
|
||||
files. Note that on some large parallel machines which use "modules"
|
||||
for their compile/link environements, you may simply need to include
|
||||
for their compile/link environments, you may simply need to include
|
||||
the correct module in your build environment. Or the parallel machine
|
||||
may have a vendor-provided FFT library which the compiler has no
|
||||
trouble finding. See the src/MAKE/OPTIONS/Makefile.fftw file for an
|
||||
@ -470,7 +470,7 @@ precision.
|
||||
|
||||
The FFT_INC variable also allows for a -DFFT_SINGLE setting that will
|
||||
use single-precision FFTs with PPPM, which can speed-up long-range
|
||||
calulations, particularly in parallel or on GPUs. Fourier transform
|
||||
calculations, particularly in parallel or on GPUs. Fourier transform
|
||||
and related PPPM operations are somewhat insensitive to floating point
|
||||
truncation errors and thus do not always need to be performed in
|
||||
double precision. Using the -DFFT_SINGLE setting trades off a little
|
||||
@ -483,7 +483,7 @@ with support for single-precision, as explained above. For FFTW3 you
|
||||
also need to include -lfftw3f with the FFT_LIB setting, in addition to
|
||||
-lfftw3. For FFTW2, you also need to specify -DFFT_SIZE with the
|
||||
FFT_INC setting and -lsfftw with the FFT_LIB setting (in place of
|
||||
-lfftw). Similarly, if FFTW2 has been preinstalled with an explicit
|
||||
-lfftw). Similarly, if FFTW2 has been pre-installed with an explicit
|
||||
double-precision library (libdfftw.a and not the default libfftw.a),
|
||||
then you can specify -DFFT_SIZE (and not -DFFT_SINGLE), and specify
|
||||
-ldfftw to use double-precision FFTs.
|
||||
@ -714,7 +714,7 @@ list various make commands that can be used to manage packages.
|
||||
If you use a command in a LAMMPS input script that is part of a
|
||||
package, you must have built LAMMPS with that package, else you will
|
||||
get an error that the style is invalid or the command is unknown.
|
||||
Every command's doc page specfies if it is part of a package. You can
|
||||
Every command's doc page specifies if it is part of a package. You can
|
||||
type
|
||||
|
||||
lmp_machine -h :pre
|
||||
@ -859,7 +859,7 @@ details for each package.
|
||||
[External libraries:]
|
||||
|
||||
Packages in the tables "Section 4"_Section_packages.html with an "ext"
|
||||
in the last column link to exernal libraries whose source code is not
|
||||
in the last column link to external libraries whose source code is not
|
||||
included with LAMMPS. You must first download and install the library
|
||||
before building LAMMPS with that package installed. E.g. the voronoi
|
||||
package links to the freely available "Voro++ library"_voro_home2. You
|
||||
@ -963,7 +963,7 @@ src/MAKE/Makefile.foo and perform the build in the directory
|
||||
Obj_shared_foo. This is so that each file can be compiled with the
|
||||
-fPIC flag which is required for inclusion in a shared library. The
|
||||
build will create the file liblammps_foo.so which another application
|
||||
can link to dyamically. It will also create a soft link liblammps.so,
|
||||
can link to dynamically. It will also create a soft link liblammps.so,
|
||||
which will point to the most recently built shared library. This is
|
||||
the file the Python wrapper loads by default.
|
||||
|
||||
@ -1329,8 +1329,8 @@ LAMMPS is compiled with CUDA=yes.
|
||||
numa Nm :pre
|
||||
|
||||
This option is only relevant when using pthreads with hwloc support.
|
||||
In this case Nm defines the number of NUMA regions (typicaly sockets)
|
||||
on a node which will be utilizied by a single MPI rank. By default Nm
|
||||
In this case Nm defines the number of NUMA regions (typically sockets)
|
||||
on a node which will be utilized by a single MPI rank. By default Nm
|
||||
= 1. If this option is used the total number of worker-threads per
|
||||
MPI rank is threads*numa. Currently it is always almost better to
|
||||
assign at least one MPI rank per NUMA region, and leave numa set to
|
||||
@ -1394,7 +1394,7 @@ replica runs on on one or a few processors. Note that with MPI
|
||||
installed on a machine (e.g. your desktop), you can run on more
|
||||
(virtual) processors than you have physical processors.
|
||||
|
||||
To run multiple independent simulatoins from one input script, using
|
||||
To run multiple independent simulations from one input script, using
|
||||
multiple partitions, see "Section 6.4"_Section_howto.html#howto_4
|
||||
of the manual. World- and universe-style "variables"_variable.html
|
||||
are useful in this context.
|
||||
@ -1673,7 +1673,7 @@ The first section provides a global loop timing summary. The {loop time}
|
||||
is the total wall time for the section. The {Performance} line is
|
||||
provided for convenience to help predicting the number of loop
|
||||
continuations required and for comparing performance with other,
|
||||
similar MD codes. The {CPU use} line provides the CPU utilzation per
|
||||
similar MD codes. The {CPU use} line provides the CPU utilization per
|
||||
MPI task; it should be close to 100% times the number of OpenMP
|
||||
threads (or 1 of no OpenMP). Lower numbers correspond to delays due
|
||||
to file I/O or insufficient thread utilization.
|
||||
|
||||
@ -48,6 +48,7 @@ own sub-directories with their own Makefiles and/or README files.
|
||||
"chain"_#chain
|
||||
"colvars"_#colvars
|
||||
"createatoms"_#createatoms
|
||||
"doxygen"_#doxygen
|
||||
"drude"_#drude
|
||||
"eam database"_#eamdb
|
||||
"eam generate"_#eamgn
|
||||
@ -172,6 +173,18 @@ The tool is authored by Xiaowang Zhou (Sandia), xzhou at sandia.gov.
|
||||
|
||||
:line
|
||||
|
||||
doxygen tool :h4,link(doxygen)
|
||||
|
||||
The tools/doxygen directory contains a shell script called
|
||||
doxygen.sh which can generate a call graph and API lists using
|
||||
the Doxygen_http://doxygen.org software.
|
||||
|
||||
See the included README file for details.
|
||||
|
||||
The tool is authored by Nandor Tamaskovics, numericalfreedom at googlemail.com.
|
||||
|
||||
:line
|
||||
|
||||
drude tool :h4,link(drude)
|
||||
|
||||
The tools/drude directory contains a Python script called
|
||||
|
||||
@ -25,14 +25,14 @@ LAMMPS to run on the CPU cores and coprocessor cores simultaneously.
|
||||
[Currently Available USER-INTEL Styles:]
|
||||
|
||||
Angle Styles: charmm, harmonic :ulb,l
|
||||
Bond Styles: fene, harmonic :l
|
||||
Bond Styles: fene, fourier, harmonic :l
|
||||
Dihedral Styles: charmm, harmonic, opls :l
|
||||
Fixes: nve, npt, nvt, nvt/sllod :l
|
||||
Fixes: nve, npt, nvt, nvt/sllod, nve/asphere :l
|
||||
Improper Styles: cvff, harmonic :l
|
||||
Pair Styles: airebo, airebo/morse, buck/coul/cut, buck/coul/long,
|
||||
buck, eam, eam/alloy, eam/fs, gayberne, lj/charmm/coul/charmm,
|
||||
lj/charmm/coul/long, lj/cut, lj/cut/coul/long, lj/long/coul/long, rebo,
|
||||
sw, tersoff :l
|
||||
buck, dpd, eam, eam/alloy, eam/fs, gayberne, lj/charmm/coul/charmm,
|
||||
lj/charmm/coul/long, lj/cut, lj/cut/coul/long, lj/long/coul/long,
|
||||
rebo, sw, tersoff :l
|
||||
K-Space Styles: pppm, pppm/disp :l
|
||||
:ule
|
||||
|
||||
@ -54,11 +54,12 @@ warmup run (for use with offload benchmarks).
|
||||
:c,image(JPG/user_intel.png)
|
||||
|
||||
Results are speedups obtained on Intel Xeon E5-2697v4 processors
|
||||
(code-named Broadwell) and Intel Xeon Phi 7250 processors
|
||||
(code-named Knights Landing) with "June 2017" LAMMPS built with
|
||||
Intel Parallel Studio 2017 update 2. Results are with 1 MPI task
|
||||
per physical core. See {src/USER-INTEL/TEST/README} for the raw
|
||||
simulation rates and instructions to reproduce.
|
||||
(code-named Broadwell), Intel Xeon Phi 7250 processors (code-named
|
||||
Knights Landing), and Intel Xeon Gold 6148 processors (code-named
|
||||
Skylake) with "June 2017" LAMMPS built with Intel Parallel Studio
|
||||
2017 update 2. Results are with 1 MPI task per physical core. See
|
||||
{src/USER-INTEL/TEST/README} for the raw simulation rates and
|
||||
instructions to reproduce.
|
||||
|
||||
:line
|
||||
|
||||
@ -77,11 +78,16 @@ order of operations compared to LAMMPS without acceleration:
|
||||
Neighbor lists can be created in a different order :ulb,l
|
||||
Bins used for sorting atoms can be oriented differently :l
|
||||
The default stencil order for PPPM is 7. By default, LAMMPS will
|
||||
calculate other PPPM parameters to fit the desired acuracy with
|
||||
calculate other PPPM parameters to fit the desired accuracy with
|
||||
this order :l
|
||||
The {newton} setting applies to all atoms, not just atoms shared
|
||||
between MPI tasks :l
|
||||
Vectorization can change the order for adding pairwise forces :l
|
||||
When using the -DLMP_USE_MKL_RNG define (all included intel optimized
|
||||
makefiles do) at build time, the random number generator for
|
||||
dissipative particle dynamics (pair style dpd/intel) uses the Mersenne
|
||||
Twister generator included in the Intel MKL library (that should be
|
||||
more robust than the default Masaglia random number generator) :l
|
||||
:ule
|
||||
|
||||
The precision mode (described below) used with the USER-INTEL
|
||||
@ -108,7 +114,7 @@ $t should be 2 for Intel Xeon CPUs and 2 or 4 for Intel Xeon Phi :l
|
||||
For some of the simple 2-body potentials without long-range
|
||||
electrostatics, performance and scalability can be better with
|
||||
the "newton off" setting added to the input script :l
|
||||
For simulations on higher node counts, add "processors * * * grid
|
||||
For simulations on higher node counts, add "processors * * * grid
|
||||
numa" to the beginning of the input script for better scalability :l
|
||||
If using {kspace_style pppm} in the input script, add
|
||||
"kspace_modify diff ad" for better performance :l
|
||||
@ -119,8 +125,8 @@ For Intel Xeon Phi CPUs:
|
||||
Runs should be performed using MCDRAM. :ulb,l
|
||||
:ule
|
||||
|
||||
For simulations using {kspace_style pppm} on Intel CPUs
|
||||
supporting AVX-512:
|
||||
For simulations using {kspace_style pppm} on Intel CPUs supporting
|
||||
AVX-512:
|
||||
|
||||
Add "kspace_modify diff ad" to the input script :ulb,l
|
||||
The command-line option should be changed to
|
||||
@ -237,14 +243,17 @@ However, if you do not have coprocessors on your system, building
|
||||
without offload support will produce a smaller binary.
|
||||
|
||||
The general requirements for Makefiles with the USER-INTEL package
|
||||
are as follows. "-DLAMMPS_MEMALIGN=64" is required for CCFLAGS. When
|
||||
using Intel compilers, "-restrict" is required and "-qopenmp" is
|
||||
highly recommended for CCFLAGS and LINKFLAGS. LIB should include
|
||||
"-ltbbmalloc". For builds supporting offload, "-DLMP_INTEL_OFFLOAD"
|
||||
is required for CCFLAGS and "-qoffload" is required for LINKFLAGS.
|
||||
Other recommended CCFLAG options for best performance are
|
||||
"-O2 -fno-alias -ansi-alias -qoverride-limits fp-model fast=2
|
||||
-no-prec-div".
|
||||
are as follows. When using Intel compilers, "-restrict" is required
|
||||
and "-qopenmp" is highly recommended for CCFLAGS and LINKFLAGS.
|
||||
CCFLAGS should include "-DLMP_INTEL_USELRT" (unless POSIX Threads
|
||||
are not supported in the build environment) and "-DLMP_USE_MKL_RNG"
|
||||
(unless Intel Math Kernel Library (MKL) is not available in the build
|
||||
environment). For Intel compilers, LIB should include "-ltbbmalloc"
|
||||
or if the library is not available, "-DLMP_INTEL_NO_TBB" can be added
|
||||
to CCFLAGS. For builds supporting offload, "-DLMP_INTEL_OFFLOAD" is
|
||||
required for CCFLAGS and "-qoffload" is required for LINKFLAGS. Other
|
||||
recommended CCFLAG options for best performance are "-O2 -fno-alias
|
||||
-ansi-alias -qoverride-limits fp-model fast=2 -no-prec-div".
|
||||
|
||||
NOTE: The vectorization and math capabilities can differ depending on
|
||||
the CPU. For Intel compilers, the "-x" flag specifies the type of
|
||||
|
||||
@ -11,336 +11,346 @@
|
||||
|
||||
5.3.3 KOKKOS package :h5
|
||||
|
||||
The KOKKOS package was developed primarily by Christian Trott (Sandia)
|
||||
with contributions of various styles by others, including Sikandar
|
||||
Mashayak (UIUC), Stan Moore (Sandia), and Ray Shan (Sandia). The
|
||||
underlying Kokkos library was written primarily by Carter Edwards,
|
||||
Kokkos is a templated C++ library that provides abstractions to allow
|
||||
a single implementation of an application kernel (e.g. a pair style) to run efficiently on
|
||||
different kinds of hardware, such as GPUs, Intel Xeon Phis, or many-core
|
||||
CPUs. Kokkos maps the C++ kernel onto different backend languages such as CUDA, OpenMP, or Pthreads.
|
||||
The Kokkos library also provides data abstractions to adjust (at
|
||||
compile time) the memory layout of data structures like 2d and
|
||||
3d arrays to optimize performance on different hardware. For more information on Kokkos, see
|
||||
"Github"_https://github.com/kokkos/kokkos. Kokkos is part of
|
||||
"Trilinos"_http://trilinos.sandia.gov/packages/kokkos. The Kokkos library was written primarily by Carter Edwards,
|
||||
Christian Trott, and Dan Sunderland (all Sandia).
|
||||
|
||||
The KOKKOS package contains versions of pair, fix, and atom styles
|
||||
The LAMMPS KOKKOS package contains versions of pair, fix, and atom styles
|
||||
that use data structures and macros provided by the Kokkos library,
|
||||
which is included with LAMMPS in lib/kokkos.
|
||||
|
||||
The Kokkos library is part of
|
||||
"Trilinos"_http://trilinos.sandia.gov/packages/kokkos and can also be
|
||||
downloaded from "Github"_https://github.com/kokkos/kokkos. Kokkos is a
|
||||
templated C++ library that provides two key abstractions for an
|
||||
application like LAMMPS. First, it allows a single implementation of
|
||||
an application kernel (e.g. a pair style) to run efficiently on
|
||||
different kinds of hardware, such as a GPU, Intel Phi, or many-core
|
||||
CPU.
|
||||
|
||||
The Kokkos library also provides data abstractions to adjust (at
|
||||
compile time) the memory layout of basic data structures like 2d and
|
||||
3d arrays and allow the transparent utilization of special hardware
|
||||
load and store operations. Such data structures are used in LAMMPS to
|
||||
store atom coordinates or forces or neighbor lists. The layout is
|
||||
chosen to optimize performance on different platforms. Again this
|
||||
functionality is hidden from the developer, and does not affect how
|
||||
the kernel is coded.
|
||||
|
||||
These abstractions are set at build time, when LAMMPS is compiled with
|
||||
the KOKKOS package installed. All Kokkos operations occur within the
|
||||
context of an individual MPI task running on a single node of the
|
||||
machine. The total number of MPI tasks used by LAMMPS (one or
|
||||
multiple per compute node) is set in the usual manner via the mpirun
|
||||
or mpiexec commands, and is independent of Kokkos.
|
||||
which is included with LAMMPS in /lib/kokkos. The KOKKOS package was developed primarily by Christian Trott (Sandia)
|
||||
and Stan Moore (Sandia) with contributions of various styles by others, including Sikandar
|
||||
Mashayak (UIUC), Ray Shan (Sandia), and Dan Ibanez (Sandia). For more information on developing using Kokkos abstractions
|
||||
see the Kokkos programmers' guide at /lib/kokkos/doc/Kokkos_PG.pdf.
|
||||
|
||||
Kokkos currently provides support for 3 modes of execution (per MPI
|
||||
task). These are OpenMP (for many-core CPUs), Cuda (for NVIDIA GPUs),
|
||||
and OpenMP (for Intel Phi). Note that the KOKKOS package supports
|
||||
running on the Phi in native mode, not offload mode like the
|
||||
USER-INTEL package supports. You choose the mode at build time to
|
||||
task). These are Serial (MPI-only for CPUs and Intel Phi), OpenMP (threading
|
||||
for many-core CPUs and Intel Phi), and CUDA (for NVIDIA GPUs). You choose the mode at build time to
|
||||
produce an executable compatible with specific hardware.
|
||||
|
||||
Here is a quick overview of how to use the KOKKOS package
|
||||
for CPU acceleration, assuming one or more 16-core nodes.
|
||||
More details follow.
|
||||
|
||||
use a C++11 compatible compiler
|
||||
make yes-kokkos
|
||||
make mpi KOKKOS_DEVICES=OpenMP # build with the KOKKOS package
|
||||
make kokkos_omp # or Makefile.kokkos_omp already has variable set :pre
|
||||
|
||||
mpirun -np 16 lmp_mpi -k on -sf kk -in in.lj # 1 node, 16 MPI tasks/node, no threads
|
||||
mpirun -np 2 -ppn 1 lmp_mpi -k on t 16 -sf kk -in in.lj # 2 nodes, 1 MPI task/node, 16 threads/task
|
||||
mpirun -np 2 lmp_mpi -k on t 8 -sf kk -in in.lj # 1 node, 2 MPI tasks/node, 8 threads/task
|
||||
mpirun -np 32 -ppn 4 lmp_mpi -k on t 4 -sf kk -in in.lj # 8 nodes, 4 MPI tasks/node, 4 threads/task :pre
|
||||
|
||||
specify variables and settings in your Makefile.machine that enable OpenMP, GPU, or Phi support
|
||||
include the KOKKOS package and build LAMMPS
|
||||
enable the KOKKOS package and its hardware options via the "-k on" command-line switch use KOKKOS styles in your input script :ul
|
||||
|
||||
Here is a quick overview of how to use the KOKKOS package for GPUs,
|
||||
assuming one or more nodes, each with 16 cores and a GPU. More
|
||||
details follow.
|
||||
|
||||
discuss use of NVCC, which Makefiles to examine
|
||||
|
||||
use a C++11 compatible compiler
|
||||
KOKKOS_DEVICES = Cuda, OpenMP
|
||||
KOKKOS_ARCH = Kepler35
|
||||
make yes-kokkos
|
||||
make machine :pre
|
||||
|
||||
mpirun -np 1 lmp_cuda -k on t 6 -sf kk -in in.lj # one MPI task, 6 threads on CPU
|
||||
mpirun -np 4 -ppn 1 lmp_cuda -k on t 6 -sf kk -in in.lj # ditto on 4 nodes :pre
|
||||
|
||||
mpirun -np 2 lmp_cuda -k on t 8 g 2 -sf kk -in in.lj # two MPI tasks, 8 threads per CPU
|
||||
mpirun -np 32 -ppn 2 lmp_cuda -k on t 8 g 2 -sf kk -in in.lj # ditto on 16 nodes :pre
|
||||
|
||||
Here is a quick overview of how to use the KOKKOS package
|
||||
for the Intel Phi:
|
||||
|
||||
use a C++11 compatible compiler
|
||||
KOKKOS_DEVICES = OpenMP
|
||||
KOKKOS_ARCH = KNC
|
||||
make yes-kokkos
|
||||
make machine :pre
|
||||
|
||||
host=MIC, Intel Phi with 61 cores (240 threads/phi via 4x hardware threading):
|
||||
mpirun -np 1 lmp_g++ -k on t 240 -sf kk -in in.lj # 1 MPI task on 1 Phi, 1*240 = 240
|
||||
mpirun -np 30 lmp_g++ -k on t 8 -sf kk -in in.lj # 30 MPI tasks on 1 Phi, 30*8 = 240
|
||||
mpirun -np 12 lmp_g++ -k on t 20 -sf kk -in in.lj # 12 MPI tasks on 1 Phi, 12*20 = 240
|
||||
mpirun -np 96 -ppn 12 lmp_g++ -k on t 20 -sf kk -in in.lj # ditto on 8 Phis :pre
|
||||
|
||||
[Required hardware/software:]
|
||||
|
||||
Kokkos support within LAMMPS must be built with a C++11 compatible
|
||||
compiler. If using gcc, version 4.7.2 or later is required.
|
||||
|
||||
To build with Kokkos support for CPUs, your compiler must support the
|
||||
OpenMP interface. You should have one or more multi-core CPUs so that
|
||||
multiple threads can be launched by each MPI task running on a CPU.
|
||||
|
||||
To build with Kokkos support for NVIDIA GPUs, NVIDIA CUDA software
|
||||
version 7.5 or later must be installed on your system. See the
|
||||
discussion for the "GPU"_accelerate_gpu.html package for details of
|
||||
how to check and do this.
|
||||
|
||||
NOTE: For good performance of the KOKKOS package on GPUs, you must
|
||||
have Kepler generation GPUs (or later). The Kokkos library exploits
|
||||
texture cache options not supported by Telsa generation GPUs (or
|
||||
older).
|
||||
|
||||
To build with Kokkos support for Intel Xeon Phi coprocessors, your
|
||||
sysmte must be configured to use them in "native" mode, not "offload"
|
||||
mode like the USER-INTEL package supports.
|
||||
|
||||
[Building LAMMPS with the KOKKOS package:]
|
||||
|
||||
You must choose at build time whether to build for CPUs (OpenMP),
|
||||
GPUs, or Phi.
|
||||
NOTE: Kokkos support within LAMMPS must be built with a C++11 compatible
|
||||
compiler. This means GCC version 4.7.2 or later, Intel 14.0.4 or later, or
|
||||
Clang 3.5.2 or later is required.
|
||||
|
||||
You can do any of these in one line, using the suitable make command
|
||||
line flags as described in "Section 4"_Section_packages.html of the
|
||||
manual. If run from the src directory, these
|
||||
commands will create src/lmp_kokkos_omp, lmp_kokkos_cuda_mpi, and
|
||||
lmp_kokkos_phi. Note that the OMP and PHI options use
|
||||
src/MAKE/Makefile.mpi as the starting Makefile.machine. The CUDA
|
||||
option uses src/MAKE/OPTIONS/Makefile.kokkos_cuda_mpi.
|
||||
The recommended method of building the KOKKOS package is to start with the provided Kokkos
|
||||
Makefiles in /src/MAKE/OPTIONS/. You may need to modify the KOKKOS_ARCH variable in the Makefile
|
||||
to match your specific hardware. For example:
|
||||
|
||||
The latter two steps can be done using the "-k on", "-pk kokkos" and
|
||||
"-sf kk" "command-line switches"_Section_start.html#start_6
|
||||
respectively. Or the effect of the "-pk" or "-sf" switches can be
|
||||
duplicated by adding the "package kokkos"_package.html or "suffix
|
||||
kk"_suffix.html commands respectively to your input script.
|
||||
for Sandy Bridge CPUs, set KOKKOS_ARCH=SNB
|
||||
for Broadwell CPUs, set KOKKOS_ARCH=BWD
|
||||
for K80 GPUs, set KOKKOS_ARCH=Kepler37
|
||||
for P100 GPUs and Power8 CPUs, set KOKKOS_ARCH=Pascal60,Power8 :ul
|
||||
|
||||
See the [Advanced Kokkos Options] section below for a listing of all KOKKOS_ARCH options.
|
||||
|
||||
Or you can follow these steps:
|
||||
[Compile for CPU-only (MPI only, no threading):]
|
||||
|
||||
CPU-only (run all-MPI or with OpenMP threading):
|
||||
|
||||
cd lammps/src
|
||||
make yes-kokkos
|
||||
make kokkos_omp :pre
|
||||
|
||||
CPU-only (only MPI, no threading):
|
||||
use a C++11 compatible compiler and set KOKKOS_ARCH variable in
|
||||
/src/MAKE/OPTIONS/Makefile.kokkos_mpi_only as described above. Then do the
|
||||
following:
|
||||
|
||||
cd lammps/src
|
||||
make yes-kokkos
|
||||
make kokkos_mpi_only :pre
|
||||
|
||||
Intel Xeon Phi (Intel Compiler, Intel MPI):
|
||||
[Compile for CPU-only (MPI plus OpenMP threading):]
|
||||
|
||||
NOTE: To build with Kokkos support for OpenMP threading, your compiler must support the
|
||||
OpenMP interface. You should have one or more multi-core CPUs so that
|
||||
multiple threads can be launched by each MPI task running on a CPU.
|
||||
|
||||
use a C++11 compatible compiler and set KOKKOS_ARCH variable in
|
||||
/src/MAKE/OPTIONS/Makefile.kokkos_omp as described above. Then do the
|
||||
following:
|
||||
|
||||
cd lammps/src
|
||||
make yes-kokkos
|
||||
make kokkos_omp :pre
|
||||
|
||||
[Compile for Intel KNL Xeon Phi (Intel Compiler, OpenMPI):]
|
||||
|
||||
use a C++11 compatible compiler and do the following:
|
||||
|
||||
cd lammps/src
|
||||
make yes-kokkos
|
||||
make kokkos_phi :pre
|
||||
|
||||
CPUs and GPUs (with MPICH or OpenMPI):
|
||||
[Compile for CPUs and GPUs (with OpenMPI or MPICH):]
|
||||
|
||||
NOTE: To build with Kokkos support for NVIDIA GPUs, NVIDIA CUDA software
|
||||
version 7.5 or later must be installed on your system. See the
|
||||
discussion for the "GPU"_accelerate_gpu.html package for details of
|
||||
how to check and do this.
|
||||
|
||||
use a C++11 compatible compiler and set KOKKOS_ARCH variable in
|
||||
/src/MAKE/OPTIONS/Makefile.kokkos_cuda_mpi for both GPU and CPU as described
|
||||
above. Then do the following:
|
||||
|
||||
cd lammps/src
|
||||
make yes-kokkos
|
||||
make kokkos_cuda_mpi :pre
|
||||
|
||||
These examples set the KOKKOS-specific OMP, MIC, CUDA variables on the
|
||||
make command line which requires a GNU-compatible make command. Try
|
||||
[Alternative Methods of Compiling:]
|
||||
|
||||
Alternatively, the KOKKOS package can be built by specifying Kokkos variables
|
||||
on the make command line. For example:
|
||||
|
||||
make mpi KOKKOS_DEVICES=OpenMP KOKKOS_ARCH=SNB # set the KOKKOS_DEVICES and KOKKOS_ARCH variable explicitly
|
||||
make kokkos_cuda_mpi KOKKOS_ARCH=Pascal60,Power8 # set the KOKKOS_ARCH variable explicitly :pre
|
||||
|
||||
Setting the KOKKOS_DEVICES and KOKKOS_ARCH variables on the
|
||||
make command line requires a GNU-compatible make command. Try
|
||||
"gmake" if your system's standard make complains.
|
||||
|
||||
NOTE: If you build using make line variables and re-build LAMMPS twice
|
||||
with different KOKKOS options and the *same* target, e.g. g++ in the
|
||||
first two examples above, then you *must* perform a "make clean-all"
|
||||
or "make clean-machine" before each build. This is to force all the
|
||||
with different KOKKOS options and the *same* target, then you *must* perform a "make clean-all"
|
||||
or "make clean-machine" before each build. This is to force all the
|
||||
KOKKOS-dependent files to be re-compiled with the new options.
|
||||
|
||||
NOTE: Currently, there are no precision options with the KOKKOS
|
||||
package. All compilation and computation is performed in double
|
||||
precision.
|
||||
[Running LAMMPS with the KOKKOS package:]
|
||||
|
||||
There are other allowed options when building with the KOKKOS package.
|
||||
As above, they can be set either as variables on the make command line
|
||||
or in Makefile.machine. This is the full list of options, including
|
||||
those discussed above, Each takes a value shown below. The
|
||||
default value is listed, which is set in the
|
||||
lib/kokkos/Makefile.kokkos file.
|
||||
All Kokkos operations occur within the
|
||||
context of an individual MPI task running on a single node of the
|
||||
machine. The total number of MPI tasks used by LAMMPS (one or
|
||||
multiple per compute node) is set in the usual manner via the mpirun
|
||||
or mpiexec commands, and is independent of Kokkos. E.g. the mpirun
|
||||
command in OpenMPI does this via its
|
||||
-np and -npernode switches. Ditto for MPICH via -np and -ppn.
|
||||
|
||||
#Default settings specific options
|
||||
#Options: force_uvm,use_ldg,rdc
|
||||
[Running on a multi-core CPU:]
|
||||
|
||||
KOKKOS_DEVICES, values = {OpenMP}, {Serial}, {Pthreads}, {Cuda}, default = {OpenMP}
|
||||
KOKKOS_ARCH, values = {KNC}, {SNB}, {HSW}, {Kepler}, {Kepler30}, {Kepler32}, {Kepler35}, {Kepler37}, {Maxwell}, {Maxwell50}, {Maxwell52}, {Maxwell53}, {ARMv8}, {BGQ}, {Power7}, {Power8}, default = {none}
|
||||
KOKKOS_DEBUG, values = {yes}, {no}, default = {no}
|
||||
KOKKOS_USE_TPLS, values = {hwloc}, {librt}, default = {none}
|
||||
KOKKOS_CUDA_OPTIONS, values = {force_uvm}, {use_ldg}, {rdc} :ul
|
||||
Here is a quick overview of how to use the KOKKOS package
|
||||
for CPU acceleration, assuming one or more 16-core nodes.
|
||||
|
||||
KOKKOS_DEVICE sets the parallelization method used for Kokkos code
|
||||
(within LAMMPS). KOKKOS_DEVICES=OpenMP means that OpenMP will be
|
||||
used. KOKKOS_DEVICES=Pthreads means that pthreads will be used.
|
||||
KOKKOS_DEVICES=Cuda means an NVIDIA GPU running CUDA will be used.
|
||||
|
||||
If KOKKOS_DEVICES=Cuda, then the lo-level Makefile in the src/MAKE
|
||||
directory must use "nvcc" as its compiler, via its CC setting. For
|
||||
best performance its CCFLAGS setting should use -O3 and have a
|
||||
KOKKOS_ARCH setting that matches the compute capability of your NVIDIA
|
||||
hardware and software installation, e.g. KOKKOS_ARCH=Kepler30. Note
|
||||
the minimal required compute capability is 2.0, but this will give
|
||||
significantly reduced performance compared to Kepler generation GPUs
|
||||
with compute capability 3.x. For the LINK setting, "nvcc" should not
|
||||
be used; instead use g++ or another compiler suitable for linking C++
|
||||
applications. Often you will want to use your MPI compiler wrapper
|
||||
for this setting (i.e. mpicxx). Finally, the lo-level Makefile must
|
||||
also have a "Compilation rule" for creating *.o files from *.cu files.
|
||||
See src/Makefile.cuda for an example of a lo-level Makefile with all
|
||||
of these settings.
|
||||
|
||||
KOKKOS_USE_TPLS=hwloc binds threads to hardware cores, so they do not
|
||||
migrate during a simulation. KOKKOS_USE_TPLS=hwloc should always be
|
||||
used if running with KOKKOS_DEVICES=Pthreads for pthreads. It is not
|
||||
necessary for KOKKOS_DEVICES=OpenMP for OpenMP, because OpenMP
|
||||
provides alternative methods via environment variables for binding
|
||||
threads to hardware cores. More info on binding threads to cores is
|
||||
given in "Section 5.3"_Section_accelerate.html#acc_3.
|
||||
|
||||
KOKKOS_ARCH=KNC enables compiler switches needed when compiling for an
|
||||
Intel Phi processor.
|
||||
|
||||
KOKKOS_USE_TPLS=librt enables use of a more accurate timer mechanism
|
||||
on most Unix platforms. This library is not available on all
|
||||
platforms.
|
||||
|
||||
KOKKOS_DEBUG is only useful when developing a Kokkos-enabled style
|
||||
within LAMMPS. KOKKOS_DEBUG=yes enables printing of run-time
|
||||
debugging information that can be useful. It also enables runtime
|
||||
bounds checking on Kokkos data structures.
|
||||
|
||||
KOKKOS_CUDA_OPTIONS are additional options for CUDA.
|
||||
|
||||
For more information on Kokkos see the Kokkos programmers' guide here:
|
||||
/lib/kokkos/doc/Kokkos_PG.pdf.
|
||||
|
||||
[Run with the KOKKOS package from the command line:]
|
||||
|
||||
The mpirun or mpiexec command sets the total number of MPI tasks used
|
||||
by LAMMPS (one or multiple per compute node) and the number of MPI
|
||||
tasks used per node. E.g. the mpirun command in MPICH does this via
|
||||
its -np and -ppn switches. Ditto for OpenMPI via -np and -npernode.
|
||||
|
||||
When using KOKKOS built with host=OMP, you need to choose how many
|
||||
OpenMP threads per MPI task will be used (via the "-k" command-line
|
||||
switch discussed below). Note that the product of MPI tasks * OpenMP
|
||||
threads/task should not exceed the physical number of cores (on a
|
||||
node), otherwise performance will suffer.
|
||||
|
||||
When using the KOKKOS package built with device=CUDA, you must use
|
||||
exactly one MPI task per physical GPU.
|
||||
|
||||
When using the KOKKOS package built with host=MIC for Intel Xeon Phi
|
||||
coprocessor support you need to insure there are one or more MPI tasks
|
||||
per coprocessor, and choose the number of coprocessor threads to use
|
||||
per MPI task (via the "-k" command-line switch discussed below). The
|
||||
product of MPI tasks * coprocessor threads/task should not exceed the
|
||||
maximum number of threads the coprocessor is designed to run,
|
||||
otherwise performance will suffer. This value is 240 for current
|
||||
generation Xeon Phi(TM) chips, which is 60 physical cores * 4
|
||||
threads/core. Note that with the KOKKOS package you do not need to
|
||||
specify how many Phi coprocessors there are per node; each
|
||||
coprocessors is simply treated as running some number of MPI tasks.
|
||||
mpirun -np 16 lmp_kokkos_mpi_only -k on -sf kk -in in.lj # 1 node, 16 MPI tasks/node, no multi-threading
|
||||
mpirun -np 2 -ppn 1 lmp_kokkos_omp -k on t 16 -sf kk -in in.lj # 2 nodes, 1 MPI task/node, 16 threads/task
|
||||
mpirun -np 2 lmp_kokkos_omp -k on t 8 -sf kk -in in.lj # 1 node, 2 MPI tasks/node, 8 threads/task
|
||||
mpirun -np 32 -ppn 4 lmp_kokkos_omp -k on t 4 -sf kk -in in.lj # 8 nodes, 4 MPI tasks/node, 4 threads/task :pre
|
||||
|
||||
To run using the KOKKOS package, use the "-k on", "-sf kk" and "-pk kokkos" "command-line switches"_Section_start.html#start_7 in your mpirun command.
|
||||
You must use the "-k on" "command-line
|
||||
switch"_Section_start.html#start_6 to enable the KOKKOS package. It
|
||||
switch"_Section_start.html#start_7 to enable the KOKKOS package. It
|
||||
takes additional arguments for hardware settings appropriate to your
|
||||
system. Those arguments are "documented
|
||||
here"_Section_start.html#start_6. The two most commonly used
|
||||
options are:
|
||||
system. Those arguments are "documented
|
||||
here"_Section_start.html#start_7. For OpenMP use:
|
||||
|
||||
-k on t Nt g Ng :pre
|
||||
|
||||
The "t Nt" option applies to host=OMP (even if device=CUDA) and
|
||||
host=MIC. For host=OMP, it specifies how many OpenMP threads per MPI
|
||||
task to use with a node. For host=MIC, it specifies how many Xeon Phi
|
||||
threads per MPI task to use within a node. The default is Nt = 1.
|
||||
Note that for host=OMP this is effectively MPI-only mode which may be
|
||||
fine. But for host=MIC you will typically end up using far less than
|
||||
all the 240 available threads, which could give very poor performance.
|
||||
|
||||
The "g Ng" option applies to device=CUDA. It specifies how many GPUs
|
||||
per compute node to use. The default is 1, so this only needs to be
|
||||
specified is you have 2 or more GPUs per compute node.
|
||||
-k on t Nt :pre
|
||||
|
||||
The "t Nt" option specifies how many OpenMP threads per MPI
|
||||
task to use with a node. The default is Nt = 1, which is MPI-only mode.
|
||||
Note that the product of MPI tasks * OpenMP
|
||||
threads/task should not exceed the physical number of cores (on a
|
||||
node), otherwise performance will suffer. If hyperthreading is enabled, then
|
||||
the product of MPI tasks * OpenMP threads/task should not exceed the
|
||||
physical number of cores * hardware threads.
|
||||
The "-k on" switch also issues a "package kokkos" command (with no
|
||||
additional arguments) which sets various KOKKOS options to default
|
||||
values, as discussed on the "package"_package.html command doc page.
|
||||
|
||||
Use the "-sf kk" "command-line switch"_Section_start.html#start_6,
|
||||
which will automatically append "kk" to styles that support it. Use
|
||||
the "-pk kokkos" "command-line switch"_Section_start.html#start_6 if
|
||||
you wish to change any of the default "package kokkos"_package.html
|
||||
optionns set by the "-k on" "command-line
|
||||
switch"_Section_start.html#start_6.
|
||||
The "-sf kk" "command-line switch"_Section_start.html#start_7
|
||||
will automatically append the "/kk" suffix to styles that support it.
|
||||
In this manner no modification to the input script is needed. Alternatively,
|
||||
one can run with the KOKKOS package by editing the input script as described below.
|
||||
|
||||
|
||||
|
||||
Note that the default for the "package kokkos"_package.html command is
|
||||
NOTE: The default for the "package kokkos"_package.html command is
|
||||
to use "full" neighbor lists and set the Newton flag to "off" for both
|
||||
pairwise and bonded interactions. This typically gives fastest
|
||||
performance. If the "newton"_newton.html command is used in the input
|
||||
script, it can override the Newton flag defaults.
|
||||
|
||||
However, when running in MPI-only mode with 1 thread per MPI task, it
|
||||
pairwise and bonded interactions. However, when running on CPUs, it
|
||||
will typically be faster to use "half" neighbor lists and set the
|
||||
Newton flag to "on", just as is the case for non-accelerated pair
|
||||
styles. You can do this with the "-pk" "command-line
|
||||
switch"_Section_start.html#start_6.
|
||||
styles. It can also be faster to use non-threaded communication.
|
||||
Use the "-pk kokkos" "command-line switch"_Section_start.html#start_7 to
|
||||
change the default "package kokkos"_package.html
|
||||
options. See its doc page for details and default settings. Experimenting with
|
||||
its options can provide a speed-up for specific calculations. For example:
|
||||
|
||||
[Or run with the KOKKOS package by editing an input script:]
|
||||
mpirun -np 16 lmp_kokkos_mpi_only -k on -sf kk -pk kokkos newton on neigh half comm no -in in.lj # Newton on, Half neighbor list, non-threaded comm :pre
|
||||
|
||||
The discussion above for the mpirun/mpiexec command and setting
|
||||
appropriate thread and GPU values for host=OMP or host=MIC or
|
||||
device=CUDA are the same.
|
||||
If the "newton"_newton.html command is used in the input
|
||||
script, it can also override the Newton flag defaults.
|
||||
|
||||
[Core and Thread Affinity:]
|
||||
|
||||
When using multi-threading, it is important for
|
||||
performance to bind both MPI tasks to physical cores, and threads to
|
||||
physical cores, so they do not migrate during a simulation.
|
||||
|
||||
If you are not certain MPI tasks are being bound (check the defaults
|
||||
for your MPI installation), binding can be forced with these flags:
|
||||
|
||||
OpenMPI 1.8: mpirun -np 2 --bind-to socket --map-by socket ./lmp_openmpi ...
|
||||
Mvapich2 2.0: mpiexec -np 2 --bind-to socket --map-by socket ./lmp_mvapich ... :pre
|
||||
|
||||
For binding threads with KOKKOS OpenMP, use thread affinity
|
||||
environment variables to force binding. With OpenMP 3.1 (gcc 4.7 or
|
||||
later, intel 12 or later) setting the environment variable
|
||||
OMP_PROC_BIND=true should be sufficient. In general, for best performance
|
||||
with OpenMP 4.0 or better set OMP_PROC_BIND=spread and OMP_PLACES=threads.
|
||||
For binding threads with the
|
||||
KOKKOS pthreads option, compile LAMMPS the KOKKOS HWLOC=yes option
|
||||
as described below.
|
||||
|
||||
[Running on Knight's Landing (KNL) Intel Xeon Phi:]
|
||||
|
||||
Here is a quick overview of how to use the KOKKOS package
|
||||
for the Intel Knight's Landing (KNL) Xeon Phi:
|
||||
|
||||
KNL Intel Phi chips have 68 physical cores. Typically 1 to 4 cores
|
||||
are reserved for the OS, and only 64 or 66 cores are used. Each core
|
||||
has 4 hyperthreads,so there are effectively N = 256 (4*64) or
|
||||
N = 264 (4*66) cores to run on. The product of MPI tasks * OpenMP threads/task should not exceed this limit,
|
||||
otherwise performance will suffer. Note that with the KOKKOS package you do not need to
|
||||
specify how many KNLs there are per node; each
|
||||
KNL is simply treated as running some number of MPI tasks.
|
||||
|
||||
Examples of mpirun commands that follow these rules are shown below.
|
||||
|
||||
Intel KNL node with 68 cores (272 threads/node via 4x hardware threading):
|
||||
mpirun -np 64 lmp_kokkos_phi -k on t 4 -sf kk -in in.lj # 1 node, 64 MPI tasks/node, 4 threads/task
|
||||
mpirun -np 66 lmp_kokkos_phi -k on t 4 -sf kk -in in.lj # 1 node, 66 MPI tasks/node, 4 threads/task
|
||||
mpirun -np 32 lmp_kokkos_phi -k on t 8 -sf kk -in in.lj # 1 node, 32 MPI tasks/node, 8 threads/task
|
||||
mpirun -np 512 -ppn 64 lmp_kokkos_phi -k on t 4 -sf kk -in in.lj # 8 nodes, 64 MPI tasks/node, 4 threads/task :pre
|
||||
|
||||
The -np setting of the mpirun command sets the number of MPI
|
||||
tasks/node. The "-k on t Nt" command-line switch sets the number of
|
||||
threads/task as Nt. The product of these two values should be N, i.e.
|
||||
256 or 264.
|
||||
|
||||
NOTE: The default for the "package kokkos"_package.html command is
|
||||
to use "full" neighbor lists and set the Newton flag to "off" for both
|
||||
pairwise and bonded interactions. When running on KNL, this
|
||||
will typically be best for pair-wise potentials. For manybody potentials,
|
||||
using "half" neighbor lists and setting the
|
||||
Newton flag to "on" may be faster. It can also be faster to use non-threaded communication.
|
||||
Use the "-pk kokkos" "command-line switch"_Section_start.html#start_7 to
|
||||
change the default "package kokkos"_package.html
|
||||
options. See its doc page for details and default settings. Experimenting with
|
||||
its options can provide a speed-up for specific calculations. For example:
|
||||
|
||||
mpirun -np 64 lmp_kokkos_phi -k on t 4 -sf kk -pk kokkos comm no -in in.lj # Newton off, full neighbor list, non-threaded comm
|
||||
mpirun -np 64 lmp_kokkos_phi -k on t 4 -sf kk -pk kokkos newton on neigh half comm no -in in.reax # Newton on, half neighbor list, non-threaded comm :pre
|
||||
|
||||
NOTE: MPI tasks and threads should be bound to cores as described above for CPUs.
|
||||
|
||||
NOTE: To build with Kokkos support for Intel Xeon Phi coprocessors such as Knight's Corner (KNC), your
|
||||
system must be configured to use them in "native" mode, not "offload"
|
||||
mode like the USER-INTEL package supports.
|
||||
|
||||
[Running on GPUs:]
|
||||
|
||||
Use the "-k" "command-line switch"_Section_commands.html#start_7 to
|
||||
specify the number of GPUs per node. Typically the -np setting
|
||||
of the mpirun command should set the number of MPI
|
||||
tasks/node to be equal to the # of physical GPUs on the node.
|
||||
You can assign multiple MPI tasks to the same GPU with the
|
||||
KOKKOS package, but this is usually only faster if significant portions
|
||||
of the input script have not been ported to use Kokkos. Using CUDA MPS
|
||||
is recommended in this scenario. As above for multi-core CPUs (and no GPU), if N is the number
|
||||
of physical cores/node, then the number of MPI tasks/node should not exceed N.
|
||||
|
||||
-k on g Ng :pre
|
||||
|
||||
Here are examples of how to use the KOKKOS package for GPUs,
|
||||
assuming one or more nodes, each with two GPUs:
|
||||
|
||||
mpirun -np 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -in in.lj # 1 node, 2 MPI tasks/node, 2 GPUs/node
|
||||
mpirun -np 32 -ppn 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -in in.lj # 16 nodes, 2 MPI tasks/node, 2 GPUs/node (32 GPUs total) :pre
|
||||
|
||||
NOTE: The default for the "package kokkos"_package.html command is
|
||||
to use "full" neighbor lists and set the Newton flag to "off" for both
|
||||
pairwise and bonded interactions, along with threaded communication.
|
||||
When running on Maxwell or Kepler GPUs, this will typically be best. For Pascal GPUs,
|
||||
using "half" neighbor lists and setting the
|
||||
Newton flag to "on" may be faster. For many pair styles, setting the neighbor binsize
|
||||
equal to the ghost atom cutoff will give speedup.
|
||||
Use the "-pk kokkos" "command-line switch"_Section_start.html#start_7 to
|
||||
change the default "package kokkos"_package.html
|
||||
options. See its doc page for details and default settings. Experimenting with
|
||||
its options can provide a speed-up for specific calculations. For example:
|
||||
|
||||
mpirun -np 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -pk kokkos binsize 2.8 -in in.lj # Set binsize = neighbor ghost cutoff
|
||||
mpirun -np 2 lmp_kokkos_cuda_openmpi -k on g 2 -sf kk -pk kokkos newton on neigh half binsize 2.8 -in in.lj # Newton on, half neighborlist, set binsize = neighbor ghost cutoff :pre
|
||||
|
||||
NOTE: For good performance of the KOKKOS package on GPUs, you must
|
||||
have Kepler generation GPUs (or later). The Kokkos library exploits
|
||||
texture cache options not supported by Telsa generation GPUs (or
|
||||
older).
|
||||
|
||||
NOTE: When using a GPU, you will achieve the best performance if your
|
||||
input script does not use fix or compute styles which are not yet
|
||||
Kokkos-enabled. This allows data to stay on the GPU for multiple
|
||||
timesteps, without being copied back to the host CPU. Invoking a
|
||||
non-Kokkos fix or compute, or performing I/O for
|
||||
"thermo"_thermo_style.html or "dump"_dump.html output will cause data
|
||||
to be copied back to the CPU incurring a performance penalty.
|
||||
|
||||
NOTE: To get an accurate timing breakdown between time spend in pair,
|
||||
kspace, etc., you must set the environment variable CUDA_LAUNCH_BLOCKING=1.
|
||||
However, this will reduce performance and is not recommended for production runs.
|
||||
|
||||
[Run with the KOKKOS package by editing an input script:]
|
||||
|
||||
Alternatively the effect of the "-sf" or "-pk" switches can be
|
||||
duplicated by adding the "package kokkos"_package.html or "suffix
|
||||
kk"_suffix.html commands to your input script.
|
||||
|
||||
The discussion above for building LAMMPS with the KOKKOS package, the mpirun/mpiexec command, and setting
|
||||
appropriate thread are the same.
|
||||
|
||||
You must still use the "-k on" "command-line
|
||||
switch"_Section_start.html#start_6 to enable the KOKKOS package, and
|
||||
switch"_Section_start.html#start_7 to enable the KOKKOS package, and
|
||||
specify its additional arguments for hardware options appropriate to
|
||||
your system, as documented above.
|
||||
|
||||
Use the "suffix kk"_suffix.html command, or you can explicitly add a
|
||||
You can use the "suffix kk"_suffix.html command, or you can explicitly add a
|
||||
"kk" suffix to individual styles in your input script, e.g.
|
||||
|
||||
pair_style lj/cut/kk 2.5 :pre
|
||||
|
||||
You only need to use the "package kokkos"_package.html command if you
|
||||
wish to change any of its option defaults, as set by the "-k on"
|
||||
"command-line switch"_Section_start.html#start_6.
|
||||
"command-line switch"_Section_start.html#start_7.
|
||||
|
||||
[Using OpenMP threading and CUDA together (experimental):]
|
||||
|
||||
With the KOKKOS package, both OpenMP multi-threading and GPUs can be used
|
||||
together in a few special cases. In the Makefile, the KOKKOS_DEVICES variable must
|
||||
include both "Cuda" and "OpenMP", as is the case for /src/MAKE/OPTIONS/Makefile.kokkos_cuda_mpi
|
||||
|
||||
KOKKOS_DEVICES=Cuda,OpenMP :pre
|
||||
|
||||
The suffix "/kk" is equivalent to "/kk/device", and for Kokkos CUDA,
|
||||
using the "-sf kk" in the command line gives the default CUDA version everywhere.
|
||||
However, if the "/kk/host" suffix is added to a specific style in the input
|
||||
script, the Kokkos OpenMP (CPU) version of that specific style will be used instead.
|
||||
Set the number of OpenMP threads as "t Nt" and the number of GPUs as "g Ng"
|
||||
|
||||
-k on t Nt g Ng :pre
|
||||
|
||||
For example, the command to run with 1 GPU and 8 OpenMP threads is then:
|
||||
|
||||
mpiexec -np 1 lmp_kokkos_cuda_openmpi -in in.lj -k on g 1 t 8 -sf kk :pre
|
||||
|
||||
Conversely, if the "-sf kk/host" is used in the command line and then the
|
||||
"/kk" or "/kk/device" suffix is added to a specific style in your input script,
|
||||
then only that specific style will run on the GPU while everything else will
|
||||
run on the CPU in OpenMP mode. Note that the execution of the CPU and GPU
|
||||
styles will NOT overlap, except for a special case:
|
||||
|
||||
A kspace style and/or molecular topology (bonds, angles, etc.) running on
|
||||
the host CPU can overlap with a pair style running on the GPU. First compile
|
||||
with "--default-stream per-thread" added to CCFLAGS in the Kokkos CUDA Makefile.
|
||||
Then explicitly use the "/kk/host" suffix for kspace and bonds, angles, etc.
|
||||
in the input file and the "kk" suffix (equal to "kk/device") on the command line.
|
||||
Also make sure the environment variable CUDA_LAUNCH_BLOCKING is not set to "1"
|
||||
so CPU/GPU overlap can occur.
|
||||
|
||||
[Speed-ups to expect:]
|
||||
|
||||
@ -353,7 +363,7 @@ Generally speaking, the following rules of thumb apply:
|
||||
When running on CPUs only, with a single thread per MPI task,
|
||||
performance of a KOKKOS style is somewhere between the standard
|
||||
(un-accelerated) styles (MPI-only mode), and those provided by the
|
||||
USER-OMP package. However the difference between all 3 is small (less
|
||||
USER-OMP package. However the difference between all 3 is small (less
|
||||
than 20%). :ulb,l
|
||||
|
||||
When running on CPUs only, with multiple threads per MPI task,
|
||||
@ -363,7 +373,7 @@ package. :l
|
||||
When running large number of atoms per GPU, KOKKOS is typically faster
|
||||
than the GPU package. :l
|
||||
|
||||
When running on Intel Xeon Phi, KOKKOS is not as fast as
|
||||
When running on Intel hardware, KOKKOS is not as fast as
|
||||
the USER-INTEL package, which is optimized for that hardware. :l
|
||||
:ule
|
||||
|
||||
@ -371,123 +381,78 @@ See the "Benchmark page"_http://lammps.sandia.gov/bench.html of the
|
||||
LAMMPS web site for performance of the KOKKOS package on different
|
||||
hardware.
|
||||
|
||||
[Guidelines for best performance:]
|
||||
[Advanced Kokkos options:]
|
||||
|
||||
Here are guidline for using the KOKKOS package on the different
|
||||
hardware configurations listed above.
|
||||
There are other allowed options when building with the KOKKOS package.
|
||||
As above, they can be set either as variables on the make command line
|
||||
or in Makefile.machine. This is the full list of options, including
|
||||
those discussed above. Each takes a value shown below. The
|
||||
default value is listed, which is set in the
|
||||
/lib/kokkos/Makefile.kokkos file.
|
||||
|
||||
Many of the guidelines use the "package kokkos"_package.html command
|
||||
See its doc page for details and default settings. Experimenting with
|
||||
its options can provide a speed-up for specific calculations.
|
||||
KOKKOS_DEVICES, values = {Serial}, {OpenMP}, {Pthreads}, {Cuda}, default = {OpenMP}
|
||||
KOKKOS_ARCH, values = {KNC}, {SNB}, {HSW}, {Kepler30}, {Kepler32}, {Kepler35}, {Kepler37}, {Maxwell50}, {Maxwell52}, {Maxwell53}, {Pascal60}, {Pascal61}, {ARMv80}, {ARMv81}, {ARMv81}, {ARMv8-ThunderX}, {BGQ}, {Power7}, {Power8}, {Power9}, {KNL}, {BDW}, {SKX}, default = {none}
|
||||
KOKKOS_DEBUG, values = {yes}, {no}, default = {no}
|
||||
KOKKOS_USE_TPLS, values = {hwloc}, {librt}, {experimental_memkind}, default = {none}
|
||||
KOKKOS_CXX_STANDARD, values = {c++11}, {c++1z}, default = {c++11}
|
||||
KOKKOS_OPTIONS, values = {aggressive_vectorization}, {disable_profiling}, default = {none}
|
||||
KOKKOS_CUDA_OPTIONS, values = {force_uvm}, {use_ldg}, {rdc}, {enable_lambda}, default = {enable_lambda} :ul
|
||||
|
||||
[Running on a multi-core CPU:]
|
||||
KOKKOS_DEVICES sets the parallelization method used for Kokkos code
|
||||
(within LAMMPS). KOKKOS_DEVICES=Serial means that no threading will be used.
|
||||
KOKKOS_DEVICES=OpenMP means that OpenMP threading will be
|
||||
used. KOKKOS_DEVICES=Pthreads means that pthreads will be used.
|
||||
KOKKOS_DEVICES=Cuda means an NVIDIA GPU running CUDA will be used.
|
||||
|
||||
If N is the number of physical cores/node, then the number of MPI
|
||||
tasks/node * number of threads/task should not exceed N, and should
|
||||
typically equal N. Note that the default threads/task is 1, as set by
|
||||
the "t" keyword of the "-k" "command-line
|
||||
switch"_Section_start.html#start_6. If you do not change this, no
|
||||
additional parallelism (beyond MPI) will be invoked on the host
|
||||
CPU(s).
|
||||
KOKKOS_ARCH enables compiler switches needed when compiling for a
|
||||
specific hardware:
|
||||
|
||||
You can compare the performance running in different modes:
|
||||
ARMv80 = ARMv8.0 Compatible CPU
|
||||
ARMv81 = ARMv8.1 Compatible CPU
|
||||
ARMv8-ThunderX = ARMv8 Cavium ThunderX CPU
|
||||
SNB = Intel Sandy/Ivy Bridge CPUs
|
||||
HSW = Intel Haswell CPUs
|
||||
BDW = Intel Broadwell Xeon E-class CPUs
|
||||
SKX = Intel Sky Lake Xeon E-class HPC CPUs (AVX512)
|
||||
KNC = Intel Knights Corner Xeon Phi
|
||||
KNL = Intel Knights Landing Xeon Phi
|
||||
Kepler30 = NVIDIA Kepler generation CC 3.0
|
||||
Kepler32 = NVIDIA Kepler generation CC 3.2
|
||||
Kepler35 = NVIDIA Kepler generation CC 3.5
|
||||
Kepler37 = NVIDIA Kepler generation CC 3.7
|
||||
Maxwell50 = NVIDIA Maxwell generation CC 5.0
|
||||
Maxwell52 = NVIDIA Maxwell generation CC 5.2
|
||||
Maxwell53 = NVIDIA Maxwell generation CC 5.3
|
||||
Pascal60 = NVIDIA Pascal generation CC 6.0
|
||||
Pascal61 = NVIDIA Pascal generation CC 6.1
|
||||
BGQ = IBM Blue Gene/Q CPUs
|
||||
Power8 = IBM POWER8 CPUs
|
||||
Power9 = IBM POWER9 CPUs :ul
|
||||
|
||||
run with 1 MPI task/node and N threads/task
|
||||
run with N MPI tasks/node and 1 thread/task
|
||||
run with settings in between these extremes :ul
|
||||
KOKKOS_USE_TPLS=hwloc binds threads to hardware cores, so they do not
|
||||
migrate during a simulation. KOKKOS_USE_TPLS=hwloc should always be
|
||||
used if running with KOKKOS_DEVICES=Pthreads for pthreads. It is not
|
||||
necessary for KOKKOS_DEVICES=OpenMP for OpenMP, because OpenMP
|
||||
provides alternative methods via environment variables for binding
|
||||
threads to hardware cores. More info on binding threads to cores is
|
||||
given in "Section 5.3"_Section_accelerate.html#acc_3.
|
||||
|
||||
Examples of mpirun commands in these modes are shown above.
|
||||
KOKKOS_USE_TPLS=librt enables use of a more accurate timer mechanism
|
||||
on most Unix platforms. This library is not available on all
|
||||
platforms.
|
||||
|
||||
When using KOKKOS to perform multi-threading, it is important for
|
||||
performance to bind both MPI tasks to physical cores, and threads to
|
||||
physical cores, so they do not migrate during a simulation.
|
||||
KOKKOS_DEBUG is only useful when developing a Kokkos-enabled style
|
||||
within LAMMPS. KOKKOS_DEBUG=yes enables printing of run-time
|
||||
debugging information that can be useful. It also enables runtime
|
||||
bounds checking on Kokkos data structures.
|
||||
|
||||
If you are not certain MPI tasks are being bound (check the defaults
|
||||
for your MPI installation), binding can be forced with these flags:
|
||||
KOKKOS_CXX_STANDARD and KOKKOS_OPTIONS are typically not changed when building LAMMPS.
|
||||
|
||||
OpenMPI 1.8: mpirun -np 2 -bind-to socket -map-by socket ./lmp_openmpi ...
|
||||
Mvapich2 2.0: mpiexec -np 2 -bind-to socket -map-by socket ./lmp_mvapich ... :pre
|
||||
|
||||
For binding threads with the KOKKOS OMP option, use thread affinity
|
||||
environment variables to force binding. With OpenMP 3.1 (gcc 4.7 or
|
||||
later, intel 12 or later) setting the environment variable
|
||||
OMP_PROC_BIND=true should be sufficient. For binding threads with the
|
||||
KOKKOS pthreads option, compile LAMMPS the KOKKOS HWLOC=yes option
|
||||
(see "this section"_Section_packages.html#KOKKOS of the manual for
|
||||
details).
|
||||
|
||||
[Running on GPUs:]
|
||||
|
||||
Insure the -arch setting in the machine makefile you are using,
|
||||
e.g. src/MAKE/Makefile.cuda, is correct for your GPU hardware/software.
|
||||
(see "this section"_Section_packages.html#KOKKOS of the manual for
|
||||
details).
|
||||
|
||||
The -np setting of the mpirun command should set the number of MPI
|
||||
tasks/node to be equal to the # of physical GPUs on the node.
|
||||
|
||||
Use the "-k" "command-line switch"_Section_commands.html#start_6 to
|
||||
specify the number of GPUs per node, and the number of threads per MPI
|
||||
task. As above for multi-core CPUs (and no GPU), if N is the number
|
||||
of physical cores/node, then the number of MPI tasks/node * number of
|
||||
threads/task should not exceed N. With one GPU (and one MPI task) it
|
||||
may be faster to use less than all the available cores, by setting
|
||||
threads/task to a smaller value. This is because using all the cores
|
||||
on a dual-socket node will incur extra cost to copy memory from the
|
||||
2nd socket to the GPU.
|
||||
|
||||
Examples of mpirun commands that follow these rules are shown above.
|
||||
|
||||
NOTE: When using a GPU, you will achieve the best performance if your
|
||||
input script does not use any fix or compute styles which are not yet
|
||||
Kokkos-enabled. This allows data to stay on the GPU for multiple
|
||||
timesteps, without being copied back to the host CPU. Invoking a
|
||||
non-Kokkos fix or compute, or performing I/O for
|
||||
"thermo"_thermo_style.html or "dump"_dump.html output will cause data
|
||||
to be copied back to the CPU.
|
||||
|
||||
You cannot yet assign multiple MPI tasks to the same GPU with the
|
||||
KOKKOS package. We plan to support this in the future, similar to the
|
||||
GPU package in LAMMPS.
|
||||
|
||||
You cannot yet use both the host (multi-threaded) and device (GPU)
|
||||
together to compute pairwise interactions with the KOKKOS package. We
|
||||
hope to support this in the future, similar to the GPU package in
|
||||
LAMMPS.
|
||||
|
||||
[Running on an Intel Phi:]
|
||||
|
||||
Kokkos only uses Intel Phi processors in their "native" mode, i.e.
|
||||
not hosted by a CPU.
|
||||
|
||||
As illustrated above, build LAMMPS with OMP=yes (the default) and
|
||||
MIC=yes. The latter insures code is correctly compiled for the Intel
|
||||
Phi. The OMP setting means OpenMP will be used for parallelization on
|
||||
the Phi, which is currently the best option within Kokkos. In the
|
||||
future, other options may be added.
|
||||
|
||||
Current-generation Intel Phi chips have either 61 or 57 cores. One
|
||||
core should be excluded for running the OS, leaving 60 or 56 cores.
|
||||
Each core is hyperthreaded, so there are effectively N = 240 (4*60) or
|
||||
N = 224 (4*56) cores to run on.
|
||||
|
||||
The -np setting of the mpirun command sets the number of MPI
|
||||
tasks/node. The "-k on t Nt" command-line switch sets the number of
|
||||
threads/task as Nt. The product of these 2 values should be N, i.e.
|
||||
240 or 224. Also, the number of threads/task should be a multiple of
|
||||
4 so that logical threads from more than one MPI task do not run on
|
||||
the same physical core.
|
||||
|
||||
Examples of mpirun commands that follow these rules are shown above.
|
||||
KOKKOS_CUDA_OPTIONS are additional options for CUDA. The LAMMPS KOKKOS package must be compiled
|
||||
with the {enable_lambda} option when using GPUs.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
As noted above, if using GPUs, the number of MPI tasks per compute
|
||||
node should equal to the number of GPUs per compute node. In the
|
||||
future Kokkos will support assigning multiple MPI tasks to a single
|
||||
GPU.
|
||||
|
||||
Currently Kokkos does not support AMD GPUs due to limits in the
|
||||
available backend programming models. Specifically, Kokkos requires
|
||||
extensive C++ support from the Kernel language. This is expected to
|
||||
change in the future.
|
||||
Currently, there are no precision options with the KOKKOS
|
||||
package. All compilation and computation is performed in double
|
||||
precision.
|
||||
|
||||
@ -16,7 +16,7 @@ atom_modify keyword values ... :pre
|
||||
one or more keyword/value pairs may be appended :ulb,l
|
||||
keyword = {id} or {map} or {first} or {sort} :l
|
||||
{id} value = {yes} or {no}
|
||||
{map} value = {array} or {hash}
|
||||
{map} value = {yes} or {array} or {hash}
|
||||
{first} value = group-ID = group whose atoms will appear first in internal atom lists
|
||||
{sort} values = Nfreq binsize
|
||||
Nfreq = sort atoms spatially every this many time steps
|
||||
@ -25,8 +25,8 @@ keyword = {id} or {map} or {first} or {sort} :l
|
||||
|
||||
[Examples:]
|
||||
|
||||
atom_modify map hash
|
||||
atom_modify map array sort 10000 2.0
|
||||
atom_modify map yes
|
||||
atom_modify map hash sort 10000 2.0
|
||||
atom_modify first colloid :pre
|
||||
|
||||
[Description:]
|
||||
@ -62,29 +62,33 @@ switch. This is described in "Section 2.2"_Section_start.html#start_2
|
||||
of the manual. If atom IDs are not used, they must be specified as 0
|
||||
for all atoms, e.g. in a data or restart file.
|
||||
|
||||
The {map} keyword determines how atom ID lookup is done for molecular
|
||||
atom styles. Lookups are performed by bond (angle, etc) routines in
|
||||
LAMMPS to find the local atom index associated with a global atom ID.
|
||||
The {map} keyword determines how atoms with specific IDs are found
|
||||
when required. An example are the bond (angle, etc) methods which
|
||||
need to find the local index of an atom with a specific global ID
|
||||
which is a bond (angle, etc) partner. LAMMPS performs this operation
|
||||
efficiently by creating a "map", which is either an {array} or {hash}
|
||||
table, as descibed below.
|
||||
|
||||
When the {array} value is used, each processor stores a lookup table
|
||||
of length N, where N is the largest atom ID in the system. This is a
|
||||
When the {map} keyword is not specified in your input script, LAMMPS
|
||||
only creates a map for "atom_styles"_atom_style.html for molecular
|
||||
systems which have permanent bonds (angles, etc). No map is created
|
||||
for atomic systems, since it is normally not needed. However some
|
||||
LAMMPS commands require a map, even for atomic systems, and will
|
||||
generate an error if one does not exist. The {map} keyword thus
|
||||
allows you to force the creation of a map. The {yes} value will
|
||||
create either an {array} or {hash} style map, as explained in the next
|
||||
paragraph. The {array} and {hash} values create an atom-style or
|
||||
hash-style map respectively.
|
||||
|
||||
For an {array}-style map, each processor stores a lookup table of
|
||||
length N, where N is the largest atom ID in the system. This is a
|
||||
fast, simple method for many simulations, but requires too much memory
|
||||
for large simulations. The {hash} value uses a hash table to perform
|
||||
the lookups. This can be slightly slower than the {array} method, but
|
||||
its memory cost is proportional to the number of atoms owned by a
|
||||
processor, i.e. N/P when N is the total number of atoms in the system
|
||||
and P is the number of processors.
|
||||
|
||||
When this setting is not specified in your input script, LAMMPS
|
||||
creates a map, if one is needed, as an array or hash. See the
|
||||
discussion of default values below for how LAMMPS chooses which kind
|
||||
of map to build. Note that atomic systems do not normally need to
|
||||
create a map. However, even in this case some LAMMPS commands will
|
||||
create a map to find atoms (and then destroy it), or require a
|
||||
permanent map. An example of the former is the "velocity loop
|
||||
all"_velocity.html command, which uses a map when looping over all
|
||||
atoms and insuring the same velocity values are assigned to an atom
|
||||
ID, no matter which processor owns it.
|
||||
for large simulations. For a {hash}-style map, a hash table is
|
||||
created on each processor, which finds an atom ID in constant time
|
||||
(independent of the global number of atom IDs). It can be slightly
|
||||
slower than the {array} map, but its memory cost is proportional to
|
||||
the number of atoms owned by a processor, i.e. N/P when N is the total
|
||||
number of atoms in the system and P is the number of processors.
|
||||
|
||||
The {first} keyword allows a "group"_group.html to be specified whose
|
||||
atoms will be maintained as the first atoms in each processor's list
|
||||
|
||||
@ -261,7 +261,7 @@ For images created by the "dump image"_dump_image.html command, if the
|
||||
polygon consisting of N line segments. Note that the line segments
|
||||
are drawn between the N vertices, which does not correspond exactly to
|
||||
the physical extent of the body (because the "pair_style
|
||||
rounded/polygon"_pair_body_rounded_polygon.cpp defines finite-size
|
||||
rounded/polygon"_pair_body_rounded_polygon.html defines finite-size
|
||||
spheres at those point and the line segments between the spheres are
|
||||
tangent to the spheres). The drawn diameter of each line segment is
|
||||
determined by the {bflag1} parameter for the {body} keyword. The
|
||||
|
||||
73
doc/src/bond_gromos.txt
Normal file
73
doc/src/bond_gromos.txt
Normal file
@ -0,0 +1,73 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Section_commands.html#comm)
|
||||
|
||||
:line
|
||||
|
||||
bond_style gromos command :h3
|
||||
bond_style gromos/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
bond_style gromos :pre
|
||||
|
||||
[Examples:]
|
||||
|
||||
bond_style gromos
|
||||
bond_coeff 5 80.0 1.2 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
The {gromos} bond style uses the potential
|
||||
|
||||
:c,image(Eqs/bond_gromos.jpg)
|
||||
|
||||
where r0 is the equilibrium bond distance. Note that the usual 1/4
|
||||
factor is included in K.
|
||||
|
||||
The following coefficients must be defined for each bond type via the
|
||||
"bond_coeff"_bond_coeff.html command as in the example above, or in
|
||||
the data file or restart files read by the "read_data"_read_data.html
|
||||
or "read_restart"_read_restart.html commands:
|
||||
|
||||
K (energy/distance^4)
|
||||
r0 (distance) :ul
|
||||
|
||||
:line
|
||||
|
||||
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
|
||||
functionally the same as the corresponding style without the suffix.
|
||||
They have been optimized to run faster, depending on your available
|
||||
hardware, as discussed in "Section 5"_Section_accelerate.html
|
||||
of the manual. The accelerated styles take the same arguments and
|
||||
should produce the same results, except for round-off and precision
|
||||
issues.
|
||||
|
||||
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
|
||||
USER-OMP and OPT packages, respectively. They are only enabled if
|
||||
LAMMPS was built with those packages. See the "Making
|
||||
LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
more instructions on how to use the accelerated styles effectively.
|
||||
|
||||
:line
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This bond style can only be used if LAMMPS was built with the
|
||||
MOLECULE package. See the "Making
|
||||
LAMMPS"_Section_start.html#start_3 section for more info on packages.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"bond_coeff"_bond_coeff.html, "delete_bonds"_delete_bonds.html
|
||||
|
||||
[Default:] none
|
||||
@ -8,6 +8,7 @@ Bond Styles :h1
|
||||
bond_class2
|
||||
bond_fene
|
||||
bond_fene_expand
|
||||
bond_gromos
|
||||
bond_harmonic
|
||||
bond_harmonic_shift
|
||||
bond_harmonic_shift_cut
|
||||
|
||||
@ -32,6 +32,7 @@ Commands :h1
|
||||
dimension
|
||||
displace_atoms
|
||||
dump
|
||||
dump_cfg_uef
|
||||
dump_h5md
|
||||
dump_image
|
||||
dump_modify
|
||||
|
||||
@ -28,7 +28,7 @@ compute 1 all aggregate/atom 3.5 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
Define a computation that assigns each atom a cluster, fragement,
|
||||
Define a computation that assigns each atom a cluster, fragment,
|
||||
or aggregate ID.
|
||||
|
||||
A cluster is defined as a set of atoms, each of which is within the
|
||||
@ -53,7 +53,7 @@ like micelles.
|
||||
Only atoms in the compute group are clustered and assigned cluster
|
||||
IDs. Atoms not in the compute group are assigned a cluster ID = 0.
|
||||
For fragments, only bonds where [both] atoms of the bond are included
|
||||
in the compute group are assigned to fragments, so that only fragmets
|
||||
in the compute group are assigned to fragments, so that only fragments
|
||||
are detected where [all] atoms are in the compute group. Thus atoms
|
||||
may be included in the compute group, yes still have a fragment ID of 0.
|
||||
|
||||
|
||||
@ -27,8 +27,8 @@ compute 1 all dihedral/local phi :pre
|
||||
|
||||
Define a computation that calculates properties of individual dihedral
|
||||
interactions. The number of datums generated, aggregated across all
|
||||
processors, equals the number of angles in the system, modified by the
|
||||
group parameter as explained below.
|
||||
processors, equals the number of dihedral angles in the system, modified
|
||||
by the group parameter as explained below.
|
||||
|
||||
The value {phi} is the dihedral angle, as defined in the diagram on
|
||||
the "dihedral_style"_dihedral_style.html doc page.
|
||||
|
||||
@ -67,7 +67,7 @@ parameters. This is followed by that number of integers giving the
|
||||
degree of each order parameter. Because {Q}2 and all odd-degree order
|
||||
parameters are zero for atoms in cubic crystals (see
|
||||
"Steinhardt"_#Steinhardt), the default order parameters are {Q}4,
|
||||
{Q}6, {Q}8, {Q}10, and {Q}12. For the FCC crystal with {nnn}=12, {Q}4
|
||||
{Q}6, {Q}8, {Q}10, and {Q}12. For the FCC crystal with {nnn} =12, {Q}4
|
||||
= sqrt(7/3)/8 = 0.19094.... The numerical values of all order
|
||||
parameters up to {Q}12 for a range of commonly encountered
|
||||
high-symmetry structures are given in Table I of "Mickel et
|
||||
|
||||
61
doc/src/compute_pressure_uef.txt
Normal file
61
doc/src/compute_pressure_uef.txt
Normal file
@ -0,0 +1,61 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Section_commands.html#comm)
|
||||
|
||||
:line
|
||||
|
||||
compute pressure/uef command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
compute ID group-ID pressure/uef temp-ID keyword ... :pre
|
||||
|
||||
ID, group-ID are documented in "compute"_compute.html command
|
||||
pressure/uef = style name of this compute command
|
||||
temp-ID = ID of compute that calculates temperature, can be NULL if not needed
|
||||
zero or more keywords may be appended
|
||||
keyword = {ke} or {pair} or {bond} or {angle} or {dihedral} or {improper} or {kspace} or {fix} or {virial} :ul
|
||||
|
||||
[Examples:]
|
||||
|
||||
compute 1 all pressure/uef my_temp_uef
|
||||
compute 2 all pressure/uef my_temp_uef virial :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
This command is used to compute the pressure tensor in
|
||||
the reference frame of the applied flow field when
|
||||
"fix nvt/uef"_fix_nh_uef.html" or
|
||||
"fix npt/uef"_fix_nh_uef.html" is used.
|
||||
It is not necessary to use this command to compute the scalar
|
||||
value of the pressure. A "compute pressure"_compute_pressure.html
|
||||
may be used for that purpose.
|
||||
|
||||
The keywords and output information are documented in
|
||||
"compute_pressure"_compute_pressure.html.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This fix is part of the USER-UEF package. It is only enabled if
|
||||
LAMMPS was built with that package. See the
|
||||
"Making LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
This command can only be used when "fix nvt/uef"_fix_nh_uef.html
|
||||
or "fix npt/uef"_fix_nh_uef.html is active.
|
||||
|
||||
The kinetic contribution to the pressure tensor
|
||||
will be accurate only when
|
||||
the compute specified by {temp-ID} is a
|
||||
"compute temp/uef"_compute_temp_uef.html.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"compute pressure"_compute_pressure.html,
|
||||
"fix nvt/uef"_fix_nh_uef.html,
|
||||
"compute temp/uef"_compute_temp_uef.html
|
||||
|
||||
[Default:] none
|
||||
|
||||
|
||||
@ -224,7 +224,7 @@ block contains six sub-blocks corresponding to the {xx}, {yy}, {zz},
|
||||
notation. Each of these sub-blocks contains one column for each
|
||||
bispectrum component, the same as for compute {sna/atom}
|
||||
|
||||
For example, if {K}=30 and ntypes=1, the number of columns in the per-atom
|
||||
For example, if {K} =30 and ntypes=1, the number of columns in the per-atom
|
||||
arrays generated by {sna/atom}, {snad/atom}, and {snav/atom}
|
||||
are 30, 90, and 180, respectively. With {quadratic} value=1,
|
||||
the numbers of columns are 930, 2790, and 5580, respectively.
|
||||
|
||||
52
doc/src/compute_temp_uef.txt
Normal file
52
doc/src/compute_temp_uef.txt
Normal file
@ -0,0 +1,52 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Section_commands.html#comm)
|
||||
|
||||
:line
|
||||
|
||||
compute temp/uef command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
compute ID group-ID temp/uef :pre
|
||||
|
||||
ID, group-ID are documented in "compute"_compute.html command
|
||||
temp/uef = style name of this compute command :ul
|
||||
|
||||
[Examples:]
|
||||
|
||||
compute 1 all temp/uef
|
||||
compute 2 sel temp/uef :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
This command is used to compute the kinetic energy tensor in
|
||||
the reference frame of the applied flow field when
|
||||
"fix nvt/uef"_fix_nh_uef.html" or
|
||||
"fix npt/uef"_fix_nh_uef.html" is used.
|
||||
It is not necessary to use this command to compute the scalar
|
||||
value of the temperature. A "compute temp"_compute_temp.html
|
||||
may be used for that purpose.
|
||||
|
||||
Output information for this command can be found in the
|
||||
documentation for "compute temp"_compute_temp.html.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This fix is part of the USER-UEF package. It is only enabled if
|
||||
LAMMPS was built with that package. See the
|
||||
"Making LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
This command can only be used when "fix nvt/uef"_fix_nh_uef.html
|
||||
or "fix npt/uef"_fix_nh_uef.html is active.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"compute temp"_compute_temp.html,
|
||||
"fix nvt/uef"_fix_nh_uef.html,
|
||||
"compute pressure/uef"_compute_pressure_uef.html
|
||||
|
||||
|
||||
[Default:] none
|
||||
@ -65,6 +65,7 @@ Computes :h1
|
||||
compute_pe_atom
|
||||
compute_plasticity_atom
|
||||
compute_pressure
|
||||
compute_pressure_uef
|
||||
compute_property_atom
|
||||
compute_property_chunk
|
||||
compute_property_local
|
||||
@ -114,6 +115,7 @@ Computes :h1
|
||||
compute_temp_region_eff
|
||||
compute_temp_rotate
|
||||
compute_temp_sphere
|
||||
compute_temp_uef
|
||||
compute_ti
|
||||
compute_torque_chunk
|
||||
compute_vacf
|
||||
|
||||
@ -36,9 +36,9 @@ keyword = {mol} or {basis} or {remap} or {var} or {set} or {units} :l
|
||||
{set} values = dim name
|
||||
dim = {x} or {y} or {z}
|
||||
name = name of variable to set with x, y, or z atom position
|
||||
{rotate} values = Rx Ry Rz theta
|
||||
Rx,Ry,Rz = rotation vector for single molecule
|
||||
{rotate} values = theta Rx Ry Rz
|
||||
theta = rotation angle for single molecule (degrees)
|
||||
Rx,Ry,Rz = rotation vector for single molecule
|
||||
{units} value = {lattice} or {box}
|
||||
{lattice} = the geometry is defined in lattice units
|
||||
{box} = the geometry is defined in simulation box units :pre
|
||||
@ -227,28 +227,30 @@ the sinusoid would appear to be "smoother". Also note the use of the
|
||||
converts lattice spacings to distance. Click on the image for a
|
||||
larger version.
|
||||
|
||||
dimension 2
|
||||
variable x equal 100
|
||||
variable y equal 25
|
||||
lattice hex 0.8442
|
||||
region box block 0 $x 0 $y -0.5 0.5
|
||||
create_box 1 box :pre
|
||||
|
||||
variable xx equal 0.0
|
||||
variable yy equal 0.0
|
||||
variable xx internal 0.0
|
||||
variable yy internal 0.0
|
||||
variable v equal "(0.2*v_y*ylat * cos(v_xx/xlat * 2.0*PI*4.0/v_x) + 0.5*v_y*ylat - v_yy) > 0.0"
|
||||
create_atoms 1 box var v set x xx set y yy :pre
|
||||
create_atoms 1 box var v set x xx set y yy
|
||||
write_dump all atom sinusoid.lammpstrj :pre
|
||||
|
||||
:c,image(JPG/sinusoid_small.jpg,JPG/sinusoid.jpg)
|
||||
|
||||
The {rotate} keyword can be used with the {single} style, when adding
|
||||
a single molecule to specify the orientation at which the molecule is
|
||||
inserted. The axis of rotation is determined by the rotation vector
|
||||
(Rx,Ry,Rz) that goes through the insertion point. The specified
|
||||
{theta} determines the angle of rotation around that axis. Note that
|
||||
the direction of rotation for the atoms around the rotation axis is
|
||||
consistent with the right-hand rule: if your right-hand's thumb points
|
||||
along {R}, then your fingers wrap around the axis in the direction of
|
||||
rotation.
|
||||
The {rotate} keyword can only be used with the {single} style and
|
||||
when adding a single molecule. It allows to specify the orientation
|
||||
at which the molecule is inserted. The axis of rotation is
|
||||
determined by the rotation vector (Rx,Ry,Rz) that goes through the
|
||||
insertion point. The specified {theta} determines the angle of
|
||||
rotation around that axis. Note that the direction of rotation for
|
||||
the atoms around the rotation axis is consistent with the right-hand
|
||||
rule: if your right-hand's thumb points along {R}, then your fingers
|
||||
wrap around the axis in the direction of rotation.
|
||||
|
||||
The {units} keyword determines the meaning of the distance units used
|
||||
to specify the coordinates of the one particle created by the {single}
|
||||
|
||||
@ -18,7 +18,7 @@ style = {many} or {single/bond} or {single/angle} or {single/dihedral} :ule,l
|
||||
group2-ID = ID of second group, bonds will be between atoms in the 2 groups
|
||||
btype = bond type of created bonds
|
||||
rmin = minimum distance between pair of atoms to bond together
|
||||
rmax = minimum distance between pair of atoms to bond together
|
||||
rmax = maximum distance between pair of atoms to bond together
|
||||
{single/bond} args = btype batom1 batom2
|
||||
btype = bond type of new bond
|
||||
batom1,batom2 = atom IDs for two atoms in bond
|
||||
|
||||
@ -7,6 +7,7 @@
|
||||
:line
|
||||
|
||||
dihedral_style fourier command :h3
|
||||
dihedral_style fourier/intel command :h3
|
||||
dihedral_style fourier/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
53
doc/src/dump_cfg_uef.txt
Normal file
53
doc/src/dump_cfg_uef.txt
Normal file
@ -0,0 +1,53 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Section_commands.html#comm)
|
||||
|
||||
:line
|
||||
|
||||
dump cfg/uef command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
dump ID group-ID cfg/uef N file mass type xs ys zs args :pre
|
||||
|
||||
ID = user-assigned name for the dump :ulb,l
|
||||
group-ID = ID of the group of atoms to be dumped :l
|
||||
N = dump every this many timesteps :l
|
||||
file = name of file to write dump info to :l
|
||||
args = same as args for "dump custom"_dump.html :pre
|
||||
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
dump 1 all cfg/uef 10 dump.*.cfg mass type xs ys zs
|
||||
dump 2 all cfg/uef 100 dump.*.cfg mass type xs ys zs id c_stress :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
This command is used to dump atomic coordinates in the
|
||||
reference frame of the applied flow field when
|
||||
"fix nvt/uef"_fix_nh_uef.html or
|
||||
"fix npt/uef"_fix_nh_uef.html or is used. Only the atomic
|
||||
coordinates and frame-invariant scalar quantities
|
||||
will be in the flow frame. If velocities are selected
|
||||
as output, for example, they will not be in the same
|
||||
reference frame as the atomic positions.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This fix is part of the USER-UEF package. It is only enabled if
|
||||
LAMMPS was built with that package. See the
|
||||
"Making LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
This command can only be used when "fix nvt/uef"_fix_nh_uef.html
|
||||
or "fix npt/uef"_fix_nh_uef.html is active.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"dump"_dump.html,
|
||||
"fix nvt/uef"_fix_nh_uef.html
|
||||
|
||||
[Default:] none
|
||||
@ -15,8 +15,9 @@ dump_modify dump-ID keyword values ... :pre
|
||||
dump-ID = ID of dump to modify :ulb,l
|
||||
one or more keyword/value pairs may be appended :l
|
||||
these keywords apply to various dump styles :l
|
||||
keyword = {append} or {buffer} or {element} or {every} or {fileper} or {first} or {flush} or {format} or {image} or {label} or {nfile} or {pad} or {precision} or {region} or {scale} or {sort} or {thresh} or {unwrap} :l
|
||||
{append} arg = {yes} or {no} or {at} N
|
||||
keyword = {append} or {at} or {buffer} or {element} or {every} or {fileper} or {first} or {flush} or {format} or {image} or {label} or {nfile} or {pad} or {precision} or {region} or {scale} or {sort} or {thresh} or {unwrap} :l
|
||||
{append} arg = {yes} or {no}
|
||||
{at} arg = N
|
||||
N = index of frame written upon first dump
|
||||
{buffer} arg = {yes} or {no}
|
||||
{element} args = E1 E2 ... EN, where N = # of atom types
|
||||
@ -141,13 +142,18 @@ and {dcd}. It also applies only to text output files, not to binary
|
||||
or gzipped or image/movie files. If specified as {yes}, then dump
|
||||
snapshots are appended to the end of an existing dump file. If
|
||||
specified as {no}, then a new dump file will be created which will
|
||||
overwrite an existing file with the same name. If the {at} option is present
|
||||
({netcdf} only), then the frame to append to can be specified. Negative values
|
||||
are counted from the end of the file. This keyword can only take effect if the
|
||||
dump_modify command is used after the "dump"_dump.html command, but before the
|
||||
first command that causes dump snapshots to be output, e.g. a "run"_run.html or
|
||||
"minimize"_minimize.html command. Once the dump file has been opened, this
|
||||
keyword has no further effect.
|
||||
overwrite an existing file with the same name.
|
||||
|
||||
:line
|
||||
|
||||
The {at} keyword only applies to the {netcdf} dump style. It can only
|
||||
be used if the {append yes} keyword is also used. The {N} argument is
|
||||
the index of which frame to append to. A negative value can be
|
||||
specified for {N}, which means a frame counted from the end of the
|
||||
file. The {at} keyword can only be used if the dump_modify command is
|
||||
before the first command that causes dump snapshots to be output,
|
||||
e.g. a "run"_run.html or "minimize"_minimize.html command. Once the
|
||||
dump file has been opened, this keyword has no further effect.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -25,7 +25,8 @@ args = list of atom attributes, same as for "dump_style custom"_dump.html :l,ule
|
||||
|
||||
dump 1 all netcdf 100 traj.nc type x y z vx vy vz
|
||||
dump_modify 1 append yes at -1 thermo yes
|
||||
dump 1 all netcdf/mpiio 1000 traj.nc id type x y z :pre
|
||||
dump 1 all netcdf/mpiio 1000 traj.nc id type x y z
|
||||
dump 1 all netcdf 1000 traj.*.nc id type x y z :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
@ -73,4 +74,3 @@ section for more info.
|
||||
[Related commands:]
|
||||
|
||||
"dump"_dump.html, "dump_modify"_dump_modify.html, "undump"_undump.html
|
||||
|
||||
|
||||
@ -83,7 +83,7 @@ the following dynamic equation:
|
||||
:c,image(Eqs/fix_controller1.jpg)
|
||||
|
||||
where {c} is the continuous time analog of the control variable,
|
||||
{e}={pvar}-{setpoint} is the error in the process variable, and
|
||||
{e} ={pvar}-{setpoint} is the error in the process variable, and
|
||||
{alpha}, {Kp}, {Ki}, and {Kd} are constants set by the corresponding
|
||||
keywords described above. The discretized version of this equation is:
|
||||
|
||||
@ -106,10 +106,10 @@ the value of {alpha} to reflect this, while leaving {Kp}, {Ki}, and
|
||||
When choosing the values of the four constants, it is best to first
|
||||
pick a value and sign for {alpha} that is consistent with the
|
||||
magnitudes and signs of {pvar} and {cvar}. The magnitude of {Kp}
|
||||
should then be tested over a large positive range keeping {Ki}={Kd}=0.
|
||||
should then be tested over a large positive range keeping {Ki} = {Kd} =0.
|
||||
A good value for {Kp} will produce a fast response in {pvar}, without
|
||||
overshooting the {setpoint}. For many applications, proportional
|
||||
feedback is sufficient, and so {Ki}={Kd}=0 can be used. In cases where
|
||||
feedback is sufficient, and so {Ki} = {Kd} =0 can be used. In cases where
|
||||
there is a substantial lag time in the response of {pvar} to a change
|
||||
in {cvar}, this can be counteracted by increasing {Kd}. In situations
|
||||
where {pvar} plateaus without reaching {setpoint}, this can be
|
||||
|
||||
@ -86,11 +86,16 @@ Change the volume and/or shape of the simulation box during a dynamics
|
||||
run. Orthogonal simulation boxes have 3 adjustable parameters
|
||||
(x,y,z). Triclinic (non-orthogonal) simulation boxes have 6
|
||||
adjustable parameters (x,y,z,xy,xz,yz). Any or all of them can be
|
||||
adjusted independently and simultaneously by this command. This fix
|
||||
can be used to perform non-equilibrium MD (NEMD) simulations of a
|
||||
continuously strained system. See the "fix
|
||||
adjusted independently and simultaneously by this command.
|
||||
|
||||
This fix can be used to perform non-equilibrium MD (NEMD) simulations
|
||||
of a continuously strained system. See the "fix
|
||||
nvt/sllod"_fix_nvt_sllod.html and "compute
|
||||
temp/deform"_compute_temp_deform.html commands for more details.
|
||||
temp/deform"_compute_temp_deform.html commands for more details. Note
|
||||
that simulation of a continuously extended system (extensional flow)
|
||||
can be modeled using the "USER-UEF
|
||||
package"_Section_packages.html#USER-UEF and its "fix
|
||||
commands"_fix_nh_uef.html.
|
||||
|
||||
For the {x}, {y}, {z} parameters, the associated dimension cannot be
|
||||
shrink-wrapped. For the {xy}, {yz}, {xz} parameters, the associated
|
||||
|
||||
@ -64,10 +64,10 @@ not performed once every {N} steps by this command. Instead it is
|
||||
performed (typically) only a small number of times and the elapsed
|
||||
times are used to predict when the end-of-the-run will be. Both of
|
||||
these attributes can be useful when performing benchmark calculations
|
||||
for a desired length of time with minmimal overhead. For example, if
|
||||
for a desired length of time with minimal overhead. For example, if
|
||||
a run is performing 1000s of timesteps/sec, the overhead for syncing
|
||||
the timer frequently across a large number of processors may be
|
||||
non-negligble.
|
||||
non-negligible.
|
||||
|
||||
Equal-style variables evaluate to a numeric value. See the
|
||||
"variable"_variable.html command for a description. They calculate
|
||||
@ -125,7 +125,7 @@ to the screen and logfile when the halt condition is triggered. If
|
||||
{message} is set to yes, a one line message with the values that
|
||||
triggered the halt is printed. If {message} is set to no, no message
|
||||
is printed; the run simply exits. The latter may be desirable for
|
||||
post-processing tools that extract thermodyanmic information from log
|
||||
post-processing tools that extract thermodynamic information from log
|
||||
files.
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
@ -66,7 +66,7 @@ reference charge of overlapping atom-centered densities and bond
|
||||
integrals are parameterized using a Slater-Koster tight-binding
|
||||
approach. This procedure, which usually is referred to as the DFTB
|
||||
method has been described in detail by ("Elstner"_#Elstner) and
|
||||
("Finnis"_#Finnis) and coworkers.
|
||||
("Finnis"_#Finnis2) and coworkers.
|
||||
|
||||
The work of the LATTE developers follows that of Elstner closely with
|
||||
respect to the physical model. However, the development of LATTE is
|
||||
@ -173,7 +173,7 @@ M. Haugk, T. Frauenheim, S. Suhai, and G. Seifert, Phys. Rev. B, 58,
|
||||
M. Haugk, T. Frauenheim, S. Suhai, and G. Seifert, Phys. Rev. B, 58,
|
||||
7260 (1998).
|
||||
|
||||
:link(Finnis)
|
||||
:link(Finnis2)
|
||||
[(Finnis)] M. W. Finnis, A. T. Paxton, M. Methfessel, and M. van
|
||||
Schilfgarde, Phys. Rev. Lett., 81, 5149 (1998).
|
||||
|
||||
@ -197,11 +197,11 @@ J. Sci. Comput. 36 (2), 147-170, (2014).
|
||||
[(Niklasson2014)] A. M. N. Niklasson and M. Cawkwell, J. Chem. Phys.,
|
||||
141, 164123, (2014).
|
||||
|
||||
:link(Niklasson2014)
|
||||
:link(Niklasson2017)
|
||||
[(Niklasson2017)] A. M. N. Niklasson, J. Chem. Phys., 147, 054103 (2017).
|
||||
|
||||
:link(Niklasson2012)
|
||||
[(Niklasson2017)] A. M. N. Niklasson, M. J. Cawkwell, Phys. Rev. B, 86
|
||||
:link(Cawkwell2012)
|
||||
[(Cawkwell2012)] A. M. N. Niklasson, M. J. Cawkwell, Phys. Rev. B, 86
|
||||
(17), 174308 (2012).
|
||||
|
||||
:link(Negre2016)
|
||||
|
||||
@ -44,7 +44,7 @@ the velocity for the force evaluation:
|
||||
|
||||
where the parameter <font size="4">λ</font> depends on the
|
||||
specific choice of DPD parameters, and needs to be tuned on a
|
||||
case-by-case basis. Specification of a {lambda} value is opttional.
|
||||
case-by-case basis. Specification of a {lambda} value is optional.
|
||||
If specified, the setting must be from 0.0 to 1.0. If not specified,
|
||||
a default value of 0.5 is used, which effectively reproduces the
|
||||
standard velocity-Verlet (VV) scheme. For more details, see
|
||||
|
||||
@ -93,7 +93,7 @@ intermediate replica with the previous and the next image:
|
||||
|
||||
Fnudge_parallel = {Kspring} * (|Ri+1 - Ri| - |Ri - Ri-1|) :pre
|
||||
|
||||
Note that in this case the specified {Kspring) is in force/distance
|
||||
Note that in this case the specified {Kspring} is in force/distance
|
||||
units.
|
||||
|
||||
With a value of {ideal}, the spring force is computed as suggested in
|
||||
@ -105,7 +105,7 @@ where RD is the "reaction coordinate" see "neb"_neb.html section, and
|
||||
RDideal is the ideal RD for which all the images are equally spaced.
|
||||
I.e. RDideal = (I-1)*meanDist when the climbing replica is off, where
|
||||
I is the replica number). The meanDist is the average distance
|
||||
between replicas. Note that in this case the specified {Kspring) is
|
||||
between replicas. Note that in this case the specified {Kspring} is
|
||||
in force units.
|
||||
|
||||
Note that the {ideal} form of nudging can often be more effective at
|
||||
@ -113,9 +113,9 @@ keeping the replicas equally spaced.
|
||||
|
||||
:line
|
||||
|
||||
The keyword {perp} specifies if and how a perpendicual nudging force
|
||||
The keyword {perp} specifies if and how a perpendicular nudging force
|
||||
is computed. It adds a spring force perpendicular to the path in
|
||||
order to prevent the path from becoming too kinky. It can
|
||||
order to prevent the path from becoming too strongly kinked. It can
|
||||
significantly improve the convergence of the NEB calculation when the
|
||||
resolution is poor. I.e. when few replicas are used; see
|
||||
"(Maras)"_#Maras1 for details.
|
||||
@ -138,17 +138,17 @@ By default, no additional forces act on the first and last replicas
|
||||
during the NEB relaxation, so these replicas simply relax toward their
|
||||
respective local minima. By using the key word {end}, additional
|
||||
forces can be applied to the first and/or last replicas, to enable
|
||||
them to relax toward a MEP while constraining their energy.
|
||||
them to relax toward a MEP while constraining their energy E to the
|
||||
target energy ETarget.
|
||||
|
||||
The interatomic force Fi for the specified replica becomes:
|
||||
If ETarget>E, the interatomic force Fi for the specified replica becomes:
|
||||
|
||||
Fi = -Grad(V) + (Grad(V) dot T' + (E-ETarget)*Kspring3) T', {when} Grad(V) dot T' < 0
|
||||
Fi = -Grad(V) + (Grad(V) dot T' + (ETarget- E)*Kspring3) T', {when} Grad(V) dot T' > 0
|
||||
:pre
|
||||
|
||||
where E is the current energy of the replica and ETarget is the target
|
||||
energy. The "spring" constant on the difference in energies is the
|
||||
specified {Kspring3} value.
|
||||
The "spring" constant on the difference in energies is the specified
|
||||
{Kspring3} value.
|
||||
|
||||
When {estyle} is specified as {first}, the force is applied to the
|
||||
first replica. When {estyle} is specified as {last}, the force is
|
||||
@ -183,10 +183,9 @@ After converging a NEB calculation using an {estyle} of
|
||||
have a larger energy than the first replica. If this is not the case,
|
||||
the path is probably not a MEP.
|
||||
|
||||
Finally, note that if the last replica converges toward a local
|
||||
minimum which has a larger energy than the energy of the first
|
||||
replica, a NEB calculation using an {estyle} of {last/efirst} or
|
||||
{last/efirst/middle} cannot reach final convergence.
|
||||
Finally, note that the last replica may never reach the target energy
|
||||
if it is stuck in a local minima which has a larger energy than the
|
||||
target energy.
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
|
||||
@ -393,32 +393,36 @@ thermostatting and barostatting.
|
||||
:line
|
||||
|
||||
These fixes compute a temperature and pressure each timestep. To do
|
||||
this, the fix creates its own computes of style "temp" and "pressure",
|
||||
as if one of these two sets of commands had been issued:
|
||||
this, the thermostat and barostat fixes create their own computes of
|
||||
style "temp" and "pressure", as if one of these sets of commands had
|
||||
been issued:
|
||||
|
||||
For fix nvt:
|
||||
compute fix-ID_temp group-ID temp
|
||||
compute fix-ID_press group-ID pressure fix-ID_temp :pre
|
||||
|
||||
For fix npt and fix nph:
|
||||
compute fix-ID_temp all temp
|
||||
compute fix-ID_press all pressure fix-ID_temp :pre
|
||||
|
||||
See the "compute temp"_compute_temp.html and "compute
|
||||
pressure"_compute_pressure.html commands for details. Note that the
|
||||
IDs of the new computes are the fix-ID + underscore + "temp" or fix_ID
|
||||
+ underscore + "press". For fix nvt, the group for the new computes
|
||||
is the same as the fix group. For fix nph and fix npt, the group for
|
||||
the new computes is "all" since pressure is computed for the entire
|
||||
system.
|
||||
For fix nvt, the group for the new temperature compute is the same as
|
||||
the fix group. For fix npt and fix nph, the group for both the new
|
||||
temperature and pressure compute is "all" since pressure is computed
|
||||
for the entire system. In the case of fix nph, the temperature
|
||||
compute is not used for thermostatting, but just for a kinetic-energy
|
||||
contribution to the pressure. See the "compute
|
||||
temp"_compute_temp.html and "compute pressure"_compute_pressure.html
|
||||
commands for details. Note that the IDs of the new computes are the
|
||||
fix-ID + underscore + "temp" or fix_ID + underscore + "press".
|
||||
|
||||
Note that these are NOT the computes used by thermodynamic output (see
|
||||
the "thermo_style"_thermo_style.html command) with ID = {thermo_temp}
|
||||
and {thermo_press}. This means you can change the attributes of this
|
||||
and {thermo_press}. This means you can change the attributes of these
|
||||
fix's temperature or pressure via the
|
||||
"compute_modify"_compute_modify.html command or print this temperature
|
||||
or pressure during thermodynamic output via the "thermo_style
|
||||
custom"_thermo_style.html command using the appropriate compute-ID.
|
||||
It also means that changing attributes of {thermo_temp} or
|
||||
{thermo_press} will have no effect on this fix.
|
||||
"compute_modify"_compute_modify.html command. Or you can print this
|
||||
temperature or pressure during thermodynamic output via the
|
||||
"thermo_style custom"_thermo_style.html command using the appropriate
|
||||
compute-ID. It also means that changing attributes of {thermo_temp}
|
||||
or {thermo_press} will have no effect on this fix.
|
||||
|
||||
Like other fixes that perform thermostatting, fix nvt and fix npt can
|
||||
be used with "compute commands"_compute.html that calculate a
|
||||
|
||||
228
doc/src/fix_nh_uef.txt
Normal file
228
doc/src/fix_nh_uef.txt
Normal file
@ -0,0 +1,228 @@
|
||||
<"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Section_commands.html#comm)
|
||||
|
||||
:line
|
||||
|
||||
fix nvt/uef command :h3
|
||||
fix npt/uef command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
fix ID group-ID style_name erate edot_x edot_y temp Tstart Tstop Tdamp keyword value ... :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command :ulb,l
|
||||
style_name = {nvt/uef} or {npt/uef} :l
|
||||
{Tstart}, {Tstop}, and {Tdamp} are documented in the "fix npt"_fix_nh.html command :l
|
||||
{edot_x} and {edot_y} are the strain rates in the x and y directions (1/(time units)) :l
|
||||
one or more keyword/value pairs may be appended :l
|
||||
keyword = {ext} or {strain} or {iso} or {x} or {y} or {z} or {tchain} or {pchain} or {tloop} or {ploop} or {mtk}
|
||||
{ext} value = {x} or {y} or {z} or {xy} or {yz} or {xz} = external dimensions
|
||||
sets the external dimensions used to calculate the scalar pressure
|
||||
{strain} values = e_x e_y = initial strain
|
||||
usually not needed, but may be needed to resume a run with a data file.
|
||||
{iso}, {x}, {y}, {z}, {tchain}, {pchain}, {tloop}, {ploop}, {mtk} keywords
|
||||
documented by the "fix npt"_fix_nh.html command :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix uniax_nvt all nvt/uef temp 400 400 100 erate 0.00001 -0.000005
|
||||
fix biax_nvt all nvt/uef temp 400 400 100 erate 0.000005 0.000005
|
||||
fix uniax_npt all npt/uef temp 400 400 300 iso 1 1 3000 erate 0.00001 -0.000005 ext yz
|
||||
fix biax_npt all npt/uef temp 400 400 100 erate -0.00001 0.000005 x 1 1 3000 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
This fix can be used to simulate non-equilibrium molecular dynamics
|
||||
(NEMD) under diagonal flow fields, including uniaxial and biaxial
|
||||
flow. Simulations under continuous extensional flow may be carried
|
||||
out for an indefinite amount of time. It is an implementation of the
|
||||
boundary conditions from "(Dobson)"_#Dobson, and also uses numerical
|
||||
lattice reduction as was proposed by "(Hunt)"_#Hunt. The lattice
|
||||
reduction algorithm is from "(Semaev)"_Semaev. The fix is intended for
|
||||
simulations of homogeneous flows, and integrates the SLLOD equations
|
||||
of motion, originally proposed by Hoover and Ladd (see "(Evans and
|
||||
Morriss)"_#Sllod). Additional detail about this implementation can be
|
||||
found in "(Nicholson and Rutledge)"_#Nicholson.
|
||||
|
||||
Note that NEMD simulations of a continuously strained system can be
|
||||
performed using the "fix deform"_fix_deform.html, "fix
|
||||
nvt/sllod"_fix_nvt_sllod.html, and "compute
|
||||
temp/deform"_compute_temp_deform.html commands.
|
||||
|
||||
The applied flow field is set by the {eps} keyword. The values
|
||||
{edot_x} and {edot_y} correspond to the strain rates in the xx and yy
|
||||
directions. It is implicitly assumed that the flow field is
|
||||
traceless, and therefore the strain rate in the zz direction is eqal
|
||||
to -({edot_x} + {edot_y}).
|
||||
|
||||
NOTE: Due to an instability in the SLLOD equations under extension,
|
||||
"fix momentum"_fix_momentum.html should be used to regularly reset the
|
||||
linear momentum.
|
||||
|
||||
The boundary conditions require a simulation box that does not have a
|
||||
consistent alignment relative to the applied flow field. Since LAMMPS
|
||||
utilizes an upper-triangular simulation box, it is not possible to
|
||||
express the evolving simulation box in the same coordinate system as
|
||||
the flow field. This fix keeps track of two coordinate systems: the
|
||||
flow frame, and the upper triangular LAMMPS frame. The coordinate
|
||||
systems are related to each other through the QR decomposition, as is
|
||||
illustrated in the image below.
|
||||
|
||||
:c,image(JPG/uef_frames.jpg)
|
||||
|
||||
During most molecular dynamics operations, the system is represented
|
||||
in the LAMMPS frame. Only when the positions and velocities are
|
||||
updated is the system rotated to the flow frame, and it is rotated
|
||||
back to the LAMMPS frame immediately afterwards. For this reason, all
|
||||
vector-valued quantities (except for the tensors from
|
||||
"compute_pressure/uef"_compute_pressure_uef.html and
|
||||
"compute_temp/uef"_compute_temp_uef.html) will be computed in the
|
||||
LAMMPS frame. Rotationally invariant scalar quantities like the
|
||||
temperature and hydrostatic pressure are frame-invariant and will be
|
||||
computed correctly. Additionally, the system is in the LAMMPS frame
|
||||
during all of the output steps, and therefore trajectory files made
|
||||
using the dump command will be in the LAMMPS frame unless the
|
||||
"dump_cfg/uef"_dump_cfg_uef.html command is used.
|
||||
|
||||
:line
|
||||
|
||||
Temperature control is achieved with the default Nose-Hoover style
|
||||
thermostat documented in "fix npt"_fix_nh.html. When this fix is
|
||||
active, only the peculiar velocity of each atom is stored, defined as
|
||||
the velocity relative to the streaming velocity. This is in contrast
|
||||
to "fix nvt/sllod"_fix_nvt_sllod.html, which uses a lab-frame
|
||||
velocity, and removes the contribution from the streaming velocity in
|
||||
order to compute the temperature.
|
||||
|
||||
Pressure control is achieved using the default Nose-Hoover barostat
|
||||
documented in "fix npt"_fix_nh.html. There are two ways to control the
|
||||
pressure using this fix. The first method involves using the {ext}
|
||||
keyword along with the {iso} pressure style. With this method, the
|
||||
pressure is controlled by scaling the simulation box isotropically to
|
||||
achieve the average pressure only in the directions specified by
|
||||
{ext}. For example, if the {ext} value is set to {xy}, the average
|
||||
pressure (Pxx+Pyy)/2 will be controlled.
|
||||
|
||||
This example command will control the total hydrostatic pressure under
|
||||
uniaxial tension:
|
||||
|
||||
fix f1 all npt/uef temp 0.7 0.7 0.5 iso 1 1 5 erate -0.5 -0.5 ext xyz :pre
|
||||
|
||||
This example command will control the average stress in compression
|
||||
directions, which would typically correspond to free surfaces under
|
||||
drawing with uniaxial tension:
|
||||
|
||||
fix f2 all npt/uef temp 0.7 0.7 0.5 iso 1 1 5 erate -0.5 -0.5 ext xy :pre
|
||||
|
||||
The second method for pressure control involves setting the normal
|
||||
stresses using the {x}, {y} , and/or {z} keywords. When using this
|
||||
method, the same pressure must be specified via {Pstart} and {Pstop}
|
||||
for all dimensions controlled. Any choice of pressure conditions that
|
||||
would cause LAMMPS to compute a deviatoric stress are not permissible
|
||||
and will result in an error. Additionally, all dimensions with
|
||||
controlled stress must have the same applied strain rate. The {ext}
|
||||
keyword must be set to the default value ({xyz}) when using this
|
||||
method.
|
||||
|
||||
For example, the following commands will work:
|
||||
|
||||
fix f3 all npt/uef temp 0.7 0.7 0.5 x 1 1 5 y 1 1 5 erate -0.5 -0.5
|
||||
fix f4 all npt/uef temp 0.7 0.7 0.5 z 1 1 5 erate 0.5 0.5 :pre
|
||||
|
||||
The following commands will not work:
|
||||
|
||||
fix f5 all npt/uef temp 0.7 0.7 0.5 x 1 1 5 z 1 1 5 erate -0.5 -0.5
|
||||
fix f6 all npt/uef temp 0.7 0.7 0.5 x 1 1 5 z 2 2 5 erate 0.5 0.5 :pre
|
||||
|
||||
:line
|
||||
|
||||
These fix computes a temperature and pressure each timestep. To do
|
||||
this, it creates its own computes of style "temp/uef" and
|
||||
"pressure/uef", as if one of these two sets of commands had been
|
||||
issued:
|
||||
|
||||
compute fix-ID_temp group-ID temp/uef
|
||||
compute fix-ID_press group-ID pressure/uef fix-ID_temp :pre
|
||||
|
||||
compute fix-ID_temp all temp/uef
|
||||
compute fix-ID_press all pressure/uef fix-ID_temp :pre
|
||||
|
||||
See the "compute temp/uef"_compute_temp_uef.html and "compute
|
||||
pressure/uef"_compute_pressure_uef.html commands for details. Note
|
||||
that the IDs of the new computes are the fix-ID + underscore + "temp"
|
||||
or fix_ID + underscore + "press".
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
The fix writes the state of all the thermostat and barostat variables,
|
||||
as well as the cumulative strain applied, to "binary restart
|
||||
files"_restart.html. See the "read_restart"_read_restart.html command
|
||||
for info on how to re-specify a fix in an input script that reads a
|
||||
restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
|
||||
NOTE: It is not necessary to set the {strain} keyword when resuming a
|
||||
run from a restart file. Only for resuming from data files, which do
|
||||
not contain the cumulative applied strain, will this keyword be
|
||||
necessary.
|
||||
|
||||
This fix can be used with the "fix_modify"_fix_modify.html {temp} and
|
||||
{press} options. The temperature and pressure computes used must be of
|
||||
type {temp/uef} and {pressure/uef}.
|
||||
|
||||
This fix computes the same global scalar and vecor quantities as "fix
|
||||
npt"_fix_nh.html.
|
||||
|
||||
The fix is not invoked during "energy minimization"_minimize.html.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This fix is part of the USER-UEF package. It is only enabled if LAMMPS
|
||||
was built with that package. See the "Making
|
||||
LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
Due to requirements of the boundary conditions, when the {strain}
|
||||
keyword is set to zero (or unset), the initial simulation box must be
|
||||
cubic and have style triclinic. If the box is initially of type ortho,
|
||||
use "change_box"_change_box.html before invoking the fix.
|
||||
|
||||
NOTE: When resuming from restart files, you may need to use "box tilt
|
||||
large"_box.html since lammps has internal criteria from lattice
|
||||
reduction that are not the same as the criteria in the numerical
|
||||
lattice reduction algorithm.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"fix nvt"_fix_nh.html, "fix nvt/sllod"_fix_nvt_sllod.html, "compute
|
||||
temp/uef"_compute_temp_uef.html, "compute
|
||||
pressure/uef"_compute_pressure_uef.html, "dump
|
||||
cfg/uef"_dump_cfg_uef.html
|
||||
|
||||
[Default:]
|
||||
|
||||
The default keyword values specific to this fix are exy = xyz, strain
|
||||
= 0 0. The remaining defaults are the same as for {fix
|
||||
npt}_fix_nh.html except tchain = 1. The reason for this change is
|
||||
given in "fix nvt/sllod"_fix_nvt_sllod.html.
|
||||
|
||||
:line
|
||||
|
||||
:link(Dobson)
|
||||
[(Dobson)] Dobson, J Chem Phys, 141, 184103 (2014).
|
||||
|
||||
:link(Hunt)
|
||||
[(Hunt)] Hunt, Mol Simul, 42, 347 (2016).
|
||||
|
||||
:link(Semaev)
|
||||
[(Semaev)] Semaev, Cryptography and Lattices, 181 (2001).
|
||||
|
||||
:link(Sllod)
|
||||
[(Evans and Morriss)] Evans and Morriss, Phys Rev A, 30, 1528 (1984).
|
||||
|
||||
:link(Nicholson)
|
||||
[(Nicholson and Rutledge)] Nicholson and Rutledge, J Chem Phys, 145,
|
||||
244903 (2016).
|
||||
@ -111,6 +111,10 @@ need to communicate their new values to/from ghost atoms, an operation
|
||||
that can be invoked from within a "pair style"_pair_style.html or
|
||||
"fix"_fix.html or "compute"_compute.html that you write.
|
||||
|
||||
NOTE: If this fix is defined [after] the simulation box is created,
|
||||
a 'run 0' command should be issued to properly initialize the storage
|
||||
created by this fix.
|
||||
|
||||
:line
|
||||
|
||||
This fix is one of a small number that can be defined in an input
|
||||
@ -155,7 +159,7 @@ these commands could be used:
|
||||
|
||||
fix prop all property/atom mol
|
||||
variable cluster atom ((id-1)/10)+1
|
||||
set id * mol v_cluster :pre
|
||||
set atom * mol v_cluster :pre
|
||||
|
||||
The "atom-style variable"_variable.html will create values for atoms
|
||||
with IDs 31,32,33,...40 that are 4.0,4.1,4.2,...,4.9. When the
|
||||
|
||||
@ -6,14 +6,14 @@
|
||||
|
||||
:line
|
||||
|
||||
fix python command :h3
|
||||
fix python/invoke command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
fix ID group-ID python N callback function_name :pre
|
||||
fix ID group-ID python/invoke N callback function_name :pre
|
||||
|
||||
ID, group-ID are ignored by this fix :ulb,l
|
||||
python = style name of this fix command :l
|
||||
python/invoke = style name of this fix command :l
|
||||
N = execute every N steps :l
|
||||
callback = {post_force} or {end_of_step} :l
|
||||
{post_force} = callback after force computations on atoms every N time steps
|
||||
@ -36,8 +36,8 @@ def end_of_step_callback(lammps_ptr):
|
||||
# access LAMMPS state using Python interface
|
||||
""" :pre
|
||||
|
||||
fix pf all python 50 post_force post_force_callback
|
||||
fix eos all python 50 end_of_step end_of_step_callback :pre
|
||||
fix pf all python/invoke 50 post_force post_force_callback
|
||||
fix eos all python/invoke 50 end_of_step end_of_step_callback :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
102
doc/src/fix_python_move.txt
Normal file
102
doc/src/fix_python_move.txt
Normal file
@ -0,0 +1,102 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Section_commands.html#comm)
|
||||
|
||||
:line
|
||||
|
||||
fix python/move command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
fix python/move pymodule.CLASS :pre
|
||||
|
||||
pymodule.CLASS = use class [CLASS] in module/file [pymodule] to compute how to move atoms
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix 1 all python/move py_nve.NVE
|
||||
fix 1 all python/move py_nve.NVE_OPT :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
The {python/move} fix style provides a way to define ways how particles
|
||||
are moved during an MD run from python script code, that is loaded from
|
||||
a file into LAMMPS and executed at the various steps where other fixes
|
||||
can be executed. This python script must contain specific python class
|
||||
definitions.
|
||||
|
||||
This allows to implement complex position updates and also modified
|
||||
time integration methods. Due to python being an interpreted language,
|
||||
however, the performance of this fix can be moderately to significantly
|
||||
slower than the corresponding C++ code. For specific cases, this
|
||||
performance penalty can be limited through effective use of NumPy.
|
||||
|
||||
:line
|
||||
|
||||
The python module file has to start with the following code:
|
||||
|
||||
from __future__ import print_function
|
||||
import lammps
|
||||
import ctypes
|
||||
import traceback
|
||||
import numpy as np
|
||||
#
|
||||
class LAMMPSFix(object):
|
||||
def __init__(self, ptr, group_name="all"):
|
||||
self.lmp = lammps.lammps(ptr=ptr)
|
||||
self.group_name = group_name
|
||||
#
|
||||
class LAMMPSFixMove(LAMMPSFix):
|
||||
def __init__(self, ptr, group_name="all"):
|
||||
super(LAMMPSFixMove, self).__init__(ptr, group_name)
|
||||
#
|
||||
def init(self):
|
||||
pass
|
||||
#
|
||||
def initial_integrate(self, vflag):
|
||||
pass
|
||||
#
|
||||
def final_integrate(self):
|
||||
pass
|
||||
#
|
||||
def initial_integrate_respa(self, vflag, ilevel, iloop):
|
||||
pass
|
||||
#
|
||||
def final_integrate_respa(self, ilevel, iloop):
|
||||
pass
|
||||
#
|
||||
def reset_dt(self):
|
||||
pass :pre
|
||||
|
||||
Any classes implementing new atom motion functionality have to be
|
||||
derived from the [LAMMPSFixMove] class, overriding the available
|
||||
methods as needed.
|
||||
|
||||
Examples for how to do this are in the {examples/python} folder.
|
||||
|
||||
:line
|
||||
|
||||
[Restart, fix_modify, output, run start/stop, minimize info:]
|
||||
|
||||
No information about this fix is written to "binary restart
|
||||
files"_restart.html. None of the "fix_modify"_fix_modify.html options
|
||||
are relevant to this fix. No global or per-atom quantities are stored
|
||||
by this fix for access by various "output
|
||||
commands"_Section_howto.html#howto_15. No parameter of this fix can
|
||||
be used with the {start/stop} keywords of the "run"_run.html command.
|
||||
This fix is not invoked during "energy minimization"_minimize.html.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This pair style is part of the PYTHON package. It is only enabled if
|
||||
LAMMPS was built with that package. See the "Making
|
||||
LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"fix nve"_fix_nve.html, "fix python/invoke"_fix_python_invoke.html
|
||||
|
||||
[Default:] none
|
||||
|
||||
56
doc/src/fix_rhok.txt
Normal file
56
doc/src/fix_rhok.txt
Normal file
@ -0,0 +1,56 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Section_commands.html#comm)
|
||||
|
||||
:line
|
||||
|
||||
fix rhok command :h3
|
||||
|
||||
fix ID group-ID rhok nx ny nz K a :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command
|
||||
nx, ny, nz = k-vektor of collective density field
|
||||
K = spring constant of bias potential
|
||||
a = anchor point of bias potential :ul
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix bias all rhok 16 0 0 4.0 16.0
|
||||
fix 1 all npt temp 0.8 0.8 4.0 z 2.2 2.2 8.0
|
||||
# output of 4 values from fix rhok: U_bias rho_k_RE rho_k_IM |rho_k|
|
||||
thermo_style custom step temp pzz lz f_bias f_bias\[1\] f_bias\[2\] f_bias\[3\] :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
The fix applies a force to atoms given by the potential
|
||||
|
||||
:c,image(Eqs/fix_rhok.jpg)
|
||||
|
||||
as described in "(Pedersen)"_#Pedersen.
|
||||
|
||||
This field, which biases configurations with long-range order, can be
|
||||
used to study crystal-liquid interfaces and determine melting
|
||||
temperatures "(Pedersen)"_#Pedersen.
|
||||
|
||||
An example of using the interface pinning method is located in the
|
||||
{examples/USER/misc/rhok} directory.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This fix is part of the MISC package. It is only enabled if LAMMPS
|
||||
was built with that package. See the "Making
|
||||
LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"thermo_style"_thermo_style.html
|
||||
|
||||
[Default:] none
|
||||
|
||||
:line
|
||||
|
||||
:link(Pedersen)
|
||||
[(Pedersen)] Pedersen, J. Chem. Phys., 139, 104102 (2013).
|
||||
|
||||
@ -7,11 +7,17 @@
|
||||
:line
|
||||
|
||||
fix rigid command :h3
|
||||
fix rigid/omp command :h3
|
||||
fix rigid/nve command :h3
|
||||
fix rigid/nve/omp command :h3
|
||||
fix rigid/nvt command :h3
|
||||
fix rigid/nvt/omp command :h3
|
||||
fix rigid/npt command :h3
|
||||
fix rigid/npt/omp command :h3
|
||||
fix rigid/nph command :h3
|
||||
fix rigid/nph/omp command :h3
|
||||
fix rigid/small command :h3
|
||||
fix rigid/small/omp command :h3
|
||||
fix rigid/nve/small command :h3
|
||||
fix rigid/nvt/small command :h3
|
||||
fix rigid/npt/small command :h3
|
||||
@ -26,6 +32,9 @@ style = {rigid} or {rigid/nve} or {rigid/nvt} or {rigid/npt} or {rigid/nph} or {
|
||||
bodystyle = {single} or {molecule} or {group} :l
|
||||
{single} args = none
|
||||
{molecule} args = none
|
||||
{custom} args = {i_propname} or {v_varname}
|
||||
i_propname = an integer property defined via fix property/atom
|
||||
v_varname = an atom-style or atomfile-style variable
|
||||
{group} args = N groupID1 groupID2 ...
|
||||
N = # of groups
|
||||
groupID1, groupID2, ... = list of N group IDs :pre
|
||||
@ -80,7 +89,17 @@ fix 1 rods rigid/npt molecule temp 300.0 300.0 100.0 iso 0.5 0.5 10.0
|
||||
fix 1 particles rigid/npt molecule temp 1.0 1.0 5.0 x 0.5 0.5 1.0 z 0.5 0.5 1.0 couple xz
|
||||
fix 1 water rigid/nph molecule iso 0.5 0.5 1.0
|
||||
fix 1 particles rigid/npt/small molecule temp 1.0 1.0 1.0 iso 0.5 0.5 1.0 :pre
|
||||
|
||||
|
||||
variable bodyid atom 1.0*gmask(clump1)+2.0*gmask(clump2)+3.0*gmask(clump3)
|
||||
fix 1 clump rigid custom v_bodyid :pre
|
||||
|
||||
variable bodyid atomfile bodies.txt
|
||||
fix 1 clump rigid custom v_bodyid :pre
|
||||
|
||||
fix 0 all property/atom i_bodyid
|
||||
read_restart data.rigid fix 0 NULL Bodies
|
||||
fix 1 clump rigid/small custom i_bodyid :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
Treat one or more sets of atoms as independent rigid bodies. This
|
||||
@ -100,7 +119,7 @@ of a biomolecule such as a protein.
|
||||
|
||||
Example of small rigid bodies are patchy nanoparticles, such as those
|
||||
modeled in "this paper"_#Zhang1 by Sharon Glotzer's group, clumps of
|
||||
granular particles, lipid molecules consiting of one or more point
|
||||
granular particles, lipid molecules consisting of one or more point
|
||||
dipoles connected to other spheroids or ellipsoids, irregular
|
||||
particles built from line segments (2d) or triangles (3d), and
|
||||
coarse-grain models of nano or colloidal particles consisting of a
|
||||
@ -203,11 +222,11 @@ most one rigid body. Which atoms are in which bodies can be defined
|
||||
via several options.
|
||||
|
||||
NOTE: With the {rigid/small} styles, which require that {bodystyle} be
|
||||
specified as {molecule}, you can define a system that has no rigid
|
||||
bodies initially. This is useful when you are using the {mol} keyword
|
||||
in conjunction with another fix that is adding rigid bodies on-the-fly
|
||||
as molecules, such as "fix deposit"_fix_deposit.html or "fix
|
||||
pour"_fix_pour.html.
|
||||
specified as {molecule} or {custom}, you can define a system that has
|
||||
no rigid bodies initially. This is useful when you are using the {mol}
|
||||
keyword in conjunction with another fix that is adding rigid bodies
|
||||
on-the-fly as molecules, such as "fix deposit"_fix_deposit.html or
|
||||
"fix pour"_fix_pour.html.
|
||||
|
||||
For bodystyle {single} the entire fix group of atoms is treated as one
|
||||
rigid body. This option is only allowed for the {rigid} styles.
|
||||
@ -222,6 +241,15 @@ molecule ID = 0) surrounding rigid bodies, this may not be what you
|
||||
want. Thus you should be careful to use a fix group that only
|
||||
includes atoms you want to be part of rigid bodies.
|
||||
|
||||
Bodystyle {custom} is similar to bodystyle {molecule}, however some
|
||||
custom properties are used to group atoms into rigid bodies. The
|
||||
special case for molecule/body ID = 0 is not available. Possible
|
||||
custom properties are an integer property associated with atoms through
|
||||
"fix property/atom"_fix_property_atom.html or an atom style variable
|
||||
or an atomfile style variable. For the latter two, the variable value
|
||||
will be rounded to an integer and then rigid bodies defined from
|
||||
those values.
|
||||
|
||||
For bodystyle {group}, each of the listed groups is treated as a
|
||||
separate rigid body. Only atoms that are also in the fix group are
|
||||
included in each rigid body. This option is only allowed for the
|
||||
|
||||
@ -58,7 +58,7 @@ required in order to eliminate velocity components along the bonds
|
||||
In order to formulate individual constraints for SHAKE and RATTLE,
|
||||
focus on a single molecule whose bonds are constrained. Let Ri and Vi
|
||||
be the position and velocity of atom {i} at time {n}, for
|
||||
{i}=1,...,{N}, where {N} is the number of sites of our reference
|
||||
{i} =1,...,{N}, where {N} is the number of sites of our reference
|
||||
molecule. The distance vector between sites {i} and {j} is given by
|
||||
|
||||
:c,image(Eqs/fix_rattle_rij.jpg)
|
||||
|
||||
@ -14,15 +14,12 @@ fix ID group-ID smd/integrate_tlsph keyword values :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command
|
||||
smd/integrate_tlsph = style name of this fix command
|
||||
zero or more keyword/value pairs may be appended :ul
|
||||
|
||||
keyword = {limit_velocity} :l
|
||||
zero or more keyword/value pairs may be appended
|
||||
keyword = {limit_velocity} :ul
|
||||
|
||||
{limit_velocity} value = max_vel
|
||||
max_vel = maximum allowed velocity :pre
|
||||
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix 1 all smd/integrate_tlsph
|
||||
|
||||
@ -14,9 +14,8 @@ fix ID group-ID smd/integrate_ulsph keyword :pre
|
||||
|
||||
ID, group-ID are documented in "fix"_fix.html command
|
||||
smd/integrate_ulsph = style name of this fix command
|
||||
zero or more keyword/value pairs may be appended :ul
|
||||
|
||||
keyword = adjust_radius or limit_velocity
|
||||
zero or more keyword/value pairs may be appended
|
||||
keyword = adjust_radius or limit_velocity :ul
|
||||
|
||||
adjust_radius values = adjust_radius_factor min_nn max_nn
|
||||
adjust_radius_factor = factor which scale the smooth/kernel radius
|
||||
@ -28,7 +27,7 @@ limit_velocity values = max_velocity
|
||||
|
||||
[Examples:]
|
||||
|
||||
fix 1 all smd/integrate_ulsph adjust_radius 1.02 25 50 :pre
|
||||
fix 1 all smd/integrate_ulsph adjust_radius 1.02 25 50
|
||||
fix 1 all smd/integrate_ulsph limit_velocity 1000 :pre
|
||||
|
||||
[Description:]
|
||||
@ -38,7 +37,7 @@ See "this PDF guide"_PDF/SMD_LAMMPS_userguide.pdf to using Smooth Mach Dynamics
|
||||
|
||||
The {adjust_radius} keyword activates dynamic adjustment of the per-particle SPH smoothing kernel radius such that the number of neighbors per particles remains
|
||||
within the interval {min_nn} to {max_nn}. The parameter {adjust_radius_factor} determines the amount of adjustment per timestep. Typical values are
|
||||
{adjust_radius_factor}=1.02, {min_nn}=15, and {max_nn}=20.
|
||||
{adjust_radius_factor} =1.02, {min_nn} =15, and {max_nn} =20.
|
||||
|
||||
The {limit_velocity} keyword will control the velocity, scaling the norm of
|
||||
the velocity vector to max_vel in case it exceeds this velocity limit.
|
||||
|
||||
19
doc/src/fix_surface_global.txt
Normal file
19
doc/src/fix_surface_global.txt
Normal file
@ -0,0 +1,19 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Section_commands.html#comm)
|
||||
|
||||
:line
|
||||
|
||||
fix wall/surface/globale command :h3
|
||||
|
||||
[Description:]
|
||||
|
||||
This feature is not yet implemented.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"dump image"_dump_image.html
|
||||
|
||||
|
||||
@ -59,6 +59,7 @@ Fixes :h1
|
||||
fix_langevin
|
||||
fix_langevin_drude
|
||||
fix_langevin_eff
|
||||
fix_latte
|
||||
fix_lb_fluid
|
||||
fix_lb_momentum
|
||||
fix_lb_pc
|
||||
@ -76,6 +77,7 @@ Fixes :h1
|
||||
fix_neb
|
||||
fix_nh
|
||||
fix_nh_eff
|
||||
fix_nh_uef
|
||||
fix_nph_asphere
|
||||
fix_nph_body
|
||||
fix_nph_sphere
|
||||
@ -113,7 +115,8 @@ Fixes :h1
|
||||
fix_press_berendsen
|
||||
fix_print
|
||||
fix_property_atom
|
||||
fix_python
|
||||
fix_python_invoke
|
||||
fix_python_move
|
||||
fix_qbmsst
|
||||
fix_qeq
|
||||
fix_qeq_comb
|
||||
@ -124,6 +127,7 @@ Fixes :h1
|
||||
fix_reaxc_species
|
||||
fix_recenter
|
||||
fix_restrain
|
||||
fix_rhok
|
||||
fix_rigid
|
||||
fix_rx
|
||||
fix_saed_vtk
|
||||
@ -144,6 +148,7 @@ Fixes :h1
|
||||
fix_srd
|
||||
fix_store_force
|
||||
fix_store_state
|
||||
fix_surface_global
|
||||
fix_temp_berendsen
|
||||
fix_temp_csvr
|
||||
fix_temp_rescale
|
||||
|
||||
@ -12,7 +12,7 @@ info command :h3
|
||||
|
||||
info args :pre
|
||||
|
||||
args = one or more of the following keywords: {out}, {all}, {system}, {memory}, {communication}, {computes}, {dumps}, {fixes}, {groups}, {regions}, {variables}, {styles}, {time}, or {configuration}
|
||||
args = one or more of the following keywords: {out}, {all}, {system}, {memory}, {communication}, {computes}, {dumps}, {fixes}, {groups}, {regions}, {variables}, {coeffs}, {styles}, {time}, or {configuration}
|
||||
{out} values = {screen}, {log}, {append} filename, {overwrite} filename
|
||||
{styles} values = {all}, {angle}, {atom}, {bond}, {compute}, {command}, {dump}, {dihedral}, {fix}, {improper}, {integrate}, {kspace}, {minimize}, {pair}, {region} :ul
|
||||
|
||||
@ -81,6 +81,11 @@ The {variables} category prints a list of all currently defined
|
||||
variables, their names, styles, definition and last computed value, if
|
||||
available.
|
||||
|
||||
The {coeffs} category prints a list for each defined force style
|
||||
(pair, bond, angle, dihedral, improper) indicating which of the
|
||||
corresponding coefficients have been set. This can be very helpful
|
||||
to debug error messages like "All pair coeffs are not set".
|
||||
|
||||
The {styles} category prints the list of styles available in the
|
||||
current LAMMPS binary. It supports one of the following options
|
||||
to control which category of styles is printed out:
|
||||
|
||||
@ -1,6 +1,5 @@
|
||||
#HTMLDOC 1.8.27
|
||||
-t pdf14 -f "../Manual.pdf" --book --toclevels 4 --no-numbered --toctitle "Table of Contents" --title --textcolor #000000 --linkcolor #0000ff --linkstyle plain --bodycolor #ffffff --size Universal --left 1.00in --right 0.50in --top 0.50in --bottom 0.50in --header .t. --header1 ... --footer ..1 --nup 1 --tocheader .t. --tocfooter ..i --portrait --color --no-pscommands --no-xrxcomments --compression=1 --jpeg=0 --fontsize 11.0 --fontspacing 1.2 --headingfont helvetica --bodyfont times --headfootsize 11.0 --headfootfont helvetica --charset iso-8859-1 --links --embedfonts --pagemode document --pagelayout single --firstpage c1 --pageeffect none --pageduration 10 --effectduration 1.0 --no-encryption --permissions all --owner-password "" --user-password "" --browserwidth 680 --no-strict --no-overflow
|
||||
|
||||
#HTMLDOC 1.8.28
|
||||
-t pdf14 -f "../Manual.pdf" --book --toclevels 4 --no-numbered --toctitle "Table of Contents" --title --textcolor #000000 --linkcolor #0000ff --linkstyle plain --bodycolor #ffffff --size Universal --left 1.00in --right 0.50in --top 0.50in --bottom 0.50in --header .t. --header1 ... --footer ..1 --nup 1 --tocheader .t. --tocfooter ..i --portrait --color --no-pscommands --no-xrxcomments --compression=9 --jpeg=0 --fontsize 11.0 --fontspacing 1.2 --headingfont Sans --bodyfont Serif --headfootsize 11.0 --headfootfont Sans-Bold --charset iso-8859-15 --links --embedfonts --pagemode document --pagelayout single --firstpage c1 --pageeffect none --pageduration 10 --effectduration 1.0 --no-encryption --permissions all --owner-password "" --user-password "" --browserwidth 680 --no-strict --no-overflow
|
||||
Manual.html
|
||||
Section_intro.html
|
||||
Section_start.html
|
||||
@ -62,6 +61,7 @@ dump_modify.html
|
||||
dump_molfile.html
|
||||
dump_netcdf.html
|
||||
dump_vtk.html
|
||||
dump_cfg_uef.html
|
||||
echo.html
|
||||
fix.html
|
||||
fix_modify.html
|
||||
@ -187,6 +187,7 @@ fix_ipi.html
|
||||
fix_langevin.html
|
||||
fix_langevin_drude.html
|
||||
fix_langevin_eff.html
|
||||
fix_latte.html
|
||||
fix_lb_fluid.html
|
||||
fix_lb_momentum.html
|
||||
fix_lb_pc.html
|
||||
@ -231,6 +232,7 @@ fix_nvt_manifold_rattle.html
|
||||
fix_nvt_sllod.html
|
||||
fix_nvt_sllod_eff.html
|
||||
fix_nvt_sphere.html
|
||||
fix_nh_uef.html
|
||||
fix_oneway.html
|
||||
fix_orient.html
|
||||
fix_phonon.html
|
||||
@ -241,7 +243,8 @@ fix_pour.html
|
||||
fix_press_berendsen.html
|
||||
fix_print.html
|
||||
fix_property_atom.html
|
||||
fix_python.html
|
||||
fix_python_invoke.html
|
||||
fix_python_move.html
|
||||
fix_qbmsst.html
|
||||
fix_qeq.html
|
||||
fix_qeq_comb.html
|
||||
@ -253,6 +256,7 @@ fix_reaxc_species.html
|
||||
fix_recenter.html
|
||||
fix_restrain.html
|
||||
fix_rigid.html
|
||||
fix_rhok.html
|
||||
fix_rx.html
|
||||
fix_saed_vtk.html
|
||||
fix_setforce.html
|
||||
@ -354,6 +358,7 @@ compute_pe.html
|
||||
compute_pe_atom.html
|
||||
compute_plasticity_atom.html
|
||||
compute_pressure.html
|
||||
compute_pressure_uef.html
|
||||
compute_property_atom.html
|
||||
compute_property_chunk.html
|
||||
compute_property_local.html
|
||||
@ -403,6 +408,7 @@ compute_temp_region.html
|
||||
compute_temp_region_eff.html
|
||||
compute_temp_rotate.html
|
||||
compute_temp_sphere.html
|
||||
compute_temp_uef.html
|
||||
compute_ti.html
|
||||
compute_torque_chunk.html
|
||||
compute_vacf.html
|
||||
@ -437,6 +443,7 @@ pair_edip.html
|
||||
pair_eff.html
|
||||
pair_eim.html
|
||||
pair_exp6_rx.html
|
||||
pair_extep.html
|
||||
pair_gauss.html
|
||||
pair_gayberne.html
|
||||
pair_gran.html
|
||||
@ -514,7 +521,7 @@ pair_zero.html
|
||||
bond_class2.html
|
||||
bond_fene.html
|
||||
bond_fene_expand.html
|
||||
bond_oxdna.html
|
||||
bond_gromos.html
|
||||
bond_harmonic.html
|
||||
bond_harmonic_shift.html
|
||||
bond_harmonic_shift_cut.html
|
||||
@ -522,6 +529,7 @@ bond_hybrid.html
|
||||
bond_morse.html
|
||||
bond_none.html
|
||||
bond_nonlinear.html
|
||||
bond_oxdna.html
|
||||
bond_quartic.html
|
||||
bond_table.html
|
||||
bond_zero.html
|
||||
|
||||
@ -322,9 +322,9 @@ the fix neb command.
|
||||
The forward (reverse) energy barrier is the potential energy of the
|
||||
highest replica minus the energy of the first (last) replica.
|
||||
|
||||
Supplementary informations for all replicas can be printed out to the
|
||||
screen and master log.lammps file by adding the verbose keyword. These
|
||||
informations include the following. The "path angle" (pathangle) for
|
||||
Supplementary information for all replicas can be printed out to the
|
||||
screen and master log.lammps file by adding the verbose keyword. This
|
||||
information include the following. The "path angle" (pathangle) for
|
||||
the replica i which is the angle between the 3N-length vectors (Ri-1 -
|
||||
Ri) and (Ri+1 - Ri) (where Ri is the atomic coordinates of replica
|
||||
i). A "path angle" of 180 indicates that replicas i-1, i and i+1 are
|
||||
@ -339,8 +339,8 @@ energy gradient of image i. ReplicaForce is the two-norm of the
|
||||
3N-length force vector (including nudging forces) for replica i.
|
||||
MaxAtomForce is the maximum force component of any atom in replica i.
|
||||
|
||||
When a NEB calculation does not converge properly, these suplementary
|
||||
informations can help understanding what is going wrong. For instance
|
||||
When a NEB calculation does not converge properly, the suplementary
|
||||
information can help understanding what is going wrong. For instance
|
||||
when the path angle becomes accute the definition of tangent used in
|
||||
the NEB calculation is questionable and the NEB cannot may diverge
|
||||
"(Maras)"_#Maras2.
|
||||
|
||||
@ -62,7 +62,7 @@ args = arguments specific to the style :l
|
||||
{no_affinity} values = none
|
||||
{kokkos} args = keyword value ...
|
||||
zero or more keyword/value pairs may be appended
|
||||
keywords = {neigh} or {neigh/qeq} or {newton} or {binsize} or {comm} or {comm/exchange} or {comm/forward}
|
||||
keywords = {neigh} or {neigh/qeq} or {newton} or {binsize} or {comm} or {comm/exchange} or {comm/forward} or {comm/reverse}
|
||||
{neigh} value = {full} or {half}
|
||||
full = full neighbor list
|
||||
half = half neighbor list built in thread-safe manner
|
||||
@ -75,9 +75,10 @@ args = arguments specific to the style :l
|
||||
{binsize} value = size
|
||||
size = bin size for neighbor list construction (distance units)
|
||||
{comm} value = {no} or {host} or {device}
|
||||
use value for both comm/exchange and comm/forward
|
||||
use value for comm/exchange and comm/forward and comm/reverse
|
||||
{comm/exchange} value = {no} or {host} or {device}
|
||||
{comm/forward} value = {no} or {host} or {device}
|
||||
{comm/reverse} value = {no} or {host} or {device}
|
||||
no = perform communication pack/unpack in non-KOKKOS mode
|
||||
host = perform pack/unpack on host (e.g. with OpenMP threading)
|
||||
device = perform pack/unpack on device (e.g. on GPU)
|
||||
@ -429,17 +430,18 @@ Coulombic solver"_kspace_style.html because the GPU is faster at
|
||||
performing pairwise interactions, then this rule of thumb may give too
|
||||
large a binsize.
|
||||
|
||||
The {comm} and {comm/exchange} and {comm/forward} keywords determine
|
||||
The {comm} and {comm/exchange} and {comm/forward} and {comm/reverse} keywords determine
|
||||
whether the host or device performs the packing and unpacking of data
|
||||
when communicating per-atom data between processors. "Exchange"
|
||||
communication happens only on timesteps that neighbor lists are
|
||||
rebuilt. The data is only for atoms that migrate to new processors.
|
||||
"Forward" communication happens every timestep. The data is for atom
|
||||
"Forward" communication happens every timestep. "Reverse" communication
|
||||
happens every timestep if the {newton} option is on. The data is for atom
|
||||
coordinates and any other atom properties that needs to be updated for
|
||||
ghost atoms owned by each processor.
|
||||
|
||||
The {comm} keyword is simply a short-cut to set the same value
|
||||
for both the {comm/exchange} and {comm/forward} keywords.
|
||||
for both the {comm/exchange} and {comm/forward} and {comm/reverse} keywords.
|
||||
|
||||
The value options for all 3 keywords are {no} or {host} or {device}.
|
||||
A value of {no} means to use the standard non-KOKKOS method of
|
||||
|
||||
19
doc/src/pair_body_rounded_polygon.txt
Normal file
19
doc/src/pair_body_rounded_polygon.txt
Normal file
@ -0,0 +1,19 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Section_commands.html#comm)
|
||||
|
||||
:line
|
||||
|
||||
pair_style body/rounded/polygon command :h3
|
||||
|
||||
[Description:]
|
||||
|
||||
Note: This feature is not yet implemented.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"pair_style body"_pair_body.html
|
||||
|
||||
[Default:] none
|
||||
@ -17,6 +17,7 @@ pair_style born/coul/long/omp command :h3
|
||||
pair_style born/coul/msm command :h3
|
||||
pair_style born/coul/msm/omp command :h3
|
||||
pair_style born/coul/wolf command :h3
|
||||
pair_style born/coul/wolf/cs command :h3
|
||||
pair_style born/coul/wolf/gpu command :h3
|
||||
pair_style born/coul/wolf/omp command :h3
|
||||
pair_style born/coul/dsf command :h3
|
||||
@ -36,7 +37,7 @@ args = list of arguments for a particular style :ul
|
||||
{born/coul/msm} args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
{born/coul/wolf} args = alpha cutoff (cutoff2)
|
||||
{born/coul/wolf} or {born/coul/wolf/cs} args = alpha cutoff (cutoff2)
|
||||
alpha = damping parameter (inverse distance units)
|
||||
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
@ -65,6 +66,7 @@ pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 :pre
|
||||
|
||||
pair_style born/coul/wolf 0.25 10.0
|
||||
pair_style born/coul/wolf 0.25 10.0 9.0
|
||||
pair_style born/coul/wolf/cs 0.25 10.0 9.0
|
||||
pair_coeff * * 6.08 0.317 2.340 24.18 11.51
|
||||
pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 :pre
|
||||
|
||||
@ -106,8 +108,9 @@ damped shifted force model as in the "coul/dsf"_pair_coul.html style.
|
||||
Style {born/coul/long/cs} is identical to {born/coul/long} except that
|
||||
a term is added for the "core/shell model"_Section_howto.html#howto_25
|
||||
to allow charges on core and shell particles to be separated by r =
|
||||
0.0. The same correction is introduced for {born/coul/dsf/cs} style
|
||||
which is identical to {born/coul/dsf}.
|
||||
0.0. The same correction is introduced for the {born/coul/dsf/cs}
|
||||
style which is identical to {born/coul/dsf}. And likewise for
|
||||
{born/coul/wolf/cs} style which is identical to {born/coul/wolf}.
|
||||
|
||||
Note that these potentials are related to the "Buckingham
|
||||
potential"_pair_buck.html.
|
||||
|
||||
@ -29,6 +29,7 @@ pair_style coul/streitz command :h3
|
||||
pair_style coul/wolf command :h3
|
||||
pair_style coul/wolf/kk command :h3
|
||||
pair_style coul/wolf/omp command :h3
|
||||
pair_style coul/wolf/cs command :h3
|
||||
pair_style tip4p/cut command :h3
|
||||
pair_style tip4p/long command :h3
|
||||
pair_style tip4p/cut/omp command :h3
|
||||
@ -43,6 +44,7 @@ pair_style coul/long cutoff
|
||||
pair_style coul/long/cs cutoff
|
||||
pair_style coul/long/gpu cutoff
|
||||
pair_style coul/wolf alpha cutoff
|
||||
pair_style coul/wolf/cs alpha cutoff
|
||||
pair_style coul/streitz cutoff keyword alpha
|
||||
pair_style tip4p/cut otype htype btype atype qdist cutoff
|
||||
pair_style tip4p/long otype htype btype atype qdist cutoff :pre
|
||||
@ -72,6 +74,7 @@ pair_style coul/msm 10.0
|
||||
pair_coeff * * :pre
|
||||
|
||||
pair_style coul/wolf 0.2 9.0
|
||||
pair_style coul/wolf/cs 0.2 9.0
|
||||
pair_coeff * * :pre
|
||||
|
||||
pair_style coul/streitz 12.0 ewald
|
||||
@ -202,7 +205,9 @@ interactions outside that distance are computed in reciprocal space.
|
||||
|
||||
Style {coul/long/cs} is identical to {coul/long} except that a term is
|
||||
added for the "core/shell model"_Section_howto.html#howto_25 to allow
|
||||
charges on core and shell particles to be separated by r = 0.0.
|
||||
charges on core and shell particles to be separated by r = 0.0. The
|
||||
same correction is introduced for the {coul/wolf/cs} style which is
|
||||
identical to {coul/wolf}.
|
||||
|
||||
Styles {tip4p/cut} and {tip4p/long} implement the coulomb part of
|
||||
the TIP4P water model of "(Jorgensen)"_#Jorgensen3, which introduces
|
||||
|
||||
@ -9,12 +9,13 @@
|
||||
pair_style born/coul/long/cs command :h3
|
||||
pair_style buck/coul/long/cs command :h3
|
||||
pair_style born/coul/dsf/cs command :h3
|
||||
pair_style born/coul/wolf/cs command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
pair_style style args :pre
|
||||
|
||||
style = {born/coul/long/cs} or {buck/coul/long/cs} or {born/coul/dsf/cs}
|
||||
style = {born/coul/long/cs} or {buck/coul/long/cs} or {born/coul/dsf/cs} or {born/coul/wolf/cs}
|
||||
args = list of arguments for a particular style :ul
|
||||
{born/coul/long/cs} args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
|
||||
@ -26,6 +27,10 @@ args = list of arguments for a particular style :ul
|
||||
alpha = damping parameter (inverse distance units)
|
||||
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (distance units) :pre
|
||||
{born/coul/wolf/cs} args = alpha cutoff (cutoff2)
|
||||
alpha = damping parameter (inverse distance units)
|
||||
cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
|
||||
[Examples:]
|
||||
|
||||
@ -41,6 +46,10 @@ pair_style born/coul/dsf/cs 0.1 10.0 12.0
|
||||
pair_coeff * * 0.0 1.00 0.00 0.00 0.00
|
||||
pair_coeff 1 1 480.0 0.25 0.00 1.05 0.50 :pre
|
||||
|
||||
pair_style born/coul/wolf/cs 0.25 10.0 12.0
|
||||
pair_coeff * * 0.0 1.00 0.00 0.00 0.00
|
||||
pair_coeff 1 1 480.0 0.25 0.00 1.05 0.50 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
These pair styles are designed to be used with the adiabatic
|
||||
@ -73,13 +82,21 @@ the core and shell, epsilon is the dielectric constant and r_min is the
|
||||
minimal distance.
|
||||
|
||||
The pair style {born/coul/dsf/cs} is identical to the
|
||||
"pair_style born/coul/dsf"_pair_born.html style, which uses the
|
||||
"pair_style born/coul/dsf"_pair_born.html style, which uses
|
||||
the damped shifted force model as in "coul/dsf"_pair_coul.html
|
||||
to compute the Coulomb contribution. This approach does not require
|
||||
a long-range solver, thus the only correction is the addition of a
|
||||
minimal distance to avoid the possible r = 0.0 case for a
|
||||
core/shell pair.
|
||||
|
||||
The pair style {born/coul/wolf/cs} is identical to the
|
||||
"pair_style born/coul/wolf"_pair_born.html style, which uses
|
||||
the Wolf summation as in "coul/wolf"_pair_coul.html to compute
|
||||
the Coulomb contribution. This approach does not require
|
||||
a long-range solver, thus the only correction is the addition of a
|
||||
minimal distance to avoid the possible r = 0.0 case for a
|
||||
core/shell pair.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
These pair styles are part of the CORESHELL package. They are only
|
||||
|
||||
@ -8,6 +8,7 @@
|
||||
|
||||
pair_style dpd command :h3
|
||||
pair_style dpd/gpu command :h3
|
||||
pair_style dpd/intel command :h3
|
||||
pair_style dpd/omp command :h3
|
||||
pair_style dpd/tstat command :h3
|
||||
pair_style dpd/tstat/gpu command :h3
|
||||
|
||||
@ -294,7 +294,7 @@ distribution have a ".cdeam" suffix.
|
||||
|
||||
Style {eam/fs} computes pairwise interactions for metals and metal
|
||||
alloys using a generalized form of EAM potentials due to Finnis and
|
||||
Sinclair "(Finnis)"_#Finnis. The total energy Ei of an atom I is
|
||||
Sinclair "(Finnis)"_#Finnis1. The total energy Ei of an atom I is
|
||||
given by
|
||||
|
||||
:c,image(Eqs/pair_eam_fs.jpg)
|
||||
@ -442,7 +442,7 @@ of Physics: Condensed Matter, 16, S2629 (2004).
|
||||
[(Daw)] Daw, Baskes, Phys Rev Lett, 50, 1285 (1983).
|
||||
Daw, Baskes, Phys Rev B, 29, 6443 (1984).
|
||||
|
||||
:link(Finnis)
|
||||
:link(Finnis1)
|
||||
[(Finnis)] Finnis, Sinclair, Philosophical Magazine A, 50, 45 (1984).
|
||||
|
||||
:link(Stukowski)
|
||||
|
||||
40
doc/src/pair_extep.txt
Normal file
40
doc/src/pair_extep.txt
Normal file
@ -0,0 +1,40 @@
|
||||
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
||||
|
||||
:link(lws,http://lammps.sandia.gov)
|
||||
:link(ld,Manual.html)
|
||||
:link(lc,Section_commands.html#comm)
|
||||
|
||||
:line
|
||||
|
||||
pair_style extep command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
pair_style extep :pre
|
||||
|
||||
[Examples:]
|
||||
|
||||
pair_style extep
|
||||
pair_coeff * * BN.extep B N :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
Style {extep} computes the Extended Tersoff Potential (ExTeP)
|
||||
interactions as described in "(Los2017)"_#Los2017.
|
||||
|
||||
:line
|
||||
|
||||
[Restrictions:] none
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"pair_tersoff" pair_tersoff.html
|
||||
|
||||
[Default:] none
|
||||
|
||||
:line
|
||||
|
||||
:link(Los2017)
|
||||
[(Los2017)] J. H. Los et al. "Extended Tersoff potential for boron nitride:
|
||||
Energetics and elastic properties of pristine and defective h-BN",
|
||||
Phys. Rev. B 96 (184108), 2017.
|
||||
@ -28,7 +28,7 @@ The parameter <contact_stiffness> has units of pressure and should equal roughly
|
||||
of the Young's modulus (or bulk modulus in the case of fluids) of the material model associated with the SPH particles.
|
||||
|
||||
The parameter {scale_factor} can be used to scale the particles' contact radii. This can be useful to control how close
|
||||
particles can approach each other. Usually, {scale_factor}=1.0.
|
||||
particles can approach each other. Usually, {scale_factor} =1.0.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -29,7 +29,7 @@ The parameter <contact_stiffness> has units of pressure and should equal roughly
|
||||
of the Young's modulus (or bulk modulus in the case of fluids) of the material model associated with the SPH particle
|
||||
|
||||
The parameter {scale_factor} can be used to scale the particles' contact radii. This can be useful to control how close
|
||||
particles can approach the triangulated surface. Usually, {scale_factor}=1.0.
|
||||
particles can approach the triangulated surface. Usually, {scale_factor} =1.0.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -12,8 +12,8 @@ pair_style smd/ulsph command :h3
|
||||
|
||||
pair_style smd/ulsph args :pre
|
||||
|
||||
these keywords must be given :l
|
||||
keyword = {*DENSITY_SUMMATION} or {*DENSITY_CONTINUITY} and {*VELOCITY_GRADIENT} or {*NO_VELOCITY_GRADIENT} and {*GRADIENT_CORRECTION} or {*NO_GRADIENT_CORRECTION}
|
||||
these keywords must be given :ul
|
||||
keyword = {*DENSITY_SUMMATION} or {*DENSITY_CONTINUITY} and {*VELOCITY_GRADIENT} or {*NO_VELOCITY_GRADIENT} and {*GRADIENT_CORRECTION} or {*NO_GRADIENT_CORRECTION} :pre
|
||||
|
||||
[Examples:]
|
||||
|
||||
|
||||
@ -7,6 +7,7 @@
|
||||
:line
|
||||
|
||||
pair_style snap command :h3
|
||||
pair_style snap/kk command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -171,6 +172,29 @@ This pair style can only be used via the {pair} keyword of the
|
||||
|
||||
:line
|
||||
|
||||
Styles with a {gpu}, {intel}, {kk}, {omp}, or {opt} suffix are
|
||||
functionally the same as the corresponding style without the suffix.
|
||||
They have been optimized to run faster, depending on your available
|
||||
hardware, as discussed in "Section 5"_Section_accelerate.html
|
||||
of the manual. The accelerated styles take the same arguments and
|
||||
should produce the same results, except for round-off and precision
|
||||
issues.
|
||||
|
||||
These accelerated styles are part of the GPU, USER-INTEL, KOKKOS,
|
||||
USER-OMP and OPT packages, respectively. They are only enabled if
|
||||
LAMMPS was built with those packages. See the "Making
|
||||
LAMMPS"_Section_start.html#start_3 section for more info.
|
||||
|
||||
You can specify the accelerated styles explicitly in your input script
|
||||
by including their suffix, or you can use the "-suffix command-line
|
||||
switch"_Section_start.html#start_6 when you invoke LAMMPS, or you can
|
||||
use the "suffix"_suffix.html command in your input script.
|
||||
|
||||
See "Section 5"_Section_accelerate.html of the manual for
|
||||
more instructions on how to use the accelerated styles effectively.
|
||||
|
||||
:line
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
This style is part of the SNAP package. It is only enabled if
|
||||
|
||||
@ -9,6 +9,7 @@
|
||||
pair_style yukawa command :h3
|
||||
pair_style yukawa/gpu command :h3
|
||||
pair_style yukawa/omp command :h3
|
||||
pair_style yukawa/kk command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
|
||||
@ -8,6 +8,7 @@
|
||||
|
||||
pair_style zbl command :h3
|
||||
pair_style zbl/gpu command :h3
|
||||
pair_style zbl/kk command :h3
|
||||
pair_style zbl/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
@ -11,6 +11,7 @@ Pair Styles :h1
|
||||
pair_awpmd
|
||||
pair_beck
|
||||
pair_body
|
||||
pair_body_rounded_polygon
|
||||
pair_bop
|
||||
pair_born
|
||||
pair_brownian
|
||||
@ -32,6 +33,7 @@ Pair Styles :h1
|
||||
pair_eff
|
||||
pair_eim
|
||||
pair_exp6_rx
|
||||
pair_extep
|
||||
pair_gauss
|
||||
pair_gayberne
|
||||
pair_gran
|
||||
|
||||
@ -14,10 +14,11 @@ print string keyword value :pre
|
||||
|
||||
string = text string to print, which may contain variables :ulb,l
|
||||
zero or more keyword/value pairs may be appended :l
|
||||
keyword = {file} or {append} or {screen} :l
|
||||
keyword = {file} or {append} or {screen} or {universe} :l
|
||||
{file} value = filename
|
||||
{append} value = filename
|
||||
{screen} value = {yes} or {no} :pre
|
||||
{screen} value = {yes} or {no}
|
||||
{universe} value = {yes} or {no} :pre
|
||||
:ule
|
||||
|
||||
[Examples:]
|
||||
@ -26,6 +27,7 @@ print "Done with equilibration" file info.dat
|
||||
print Vol=$v append info.dat screen no
|
||||
print "The system volume is now $v"
|
||||
print 'The system volume is now $v'
|
||||
print "NEB calculation 1 complete" screen no universe yes
|
||||
print """
|
||||
System volume = $v
|
||||
System temperature = $t
|
||||
@ -49,6 +51,11 @@ it does not exist.
|
||||
If the {screen} keyword is used, output to the screen and logfile can
|
||||
be turned on or off as desired.
|
||||
|
||||
If the {universe} keyword is used, output to the global screen and
|
||||
logfile can be turned on or off as desired. In multi-partition
|
||||
calculations, the {screen} option and the corresponding output only
|
||||
apply to the screen and logfile of the individual partition.
|
||||
|
||||
If you want the print command to be executed multiple times (with
|
||||
changing variable values), there are 3 options. First, consider using
|
||||
the "fix print"_fix_print.html command, which will print a string
|
||||
@ -74,4 +81,4 @@ thermodynamic properties, global values calculated by a
|
||||
|
||||
[Default:]
|
||||
|
||||
The option defaults are no file output and screen = yes.
|
||||
The option defaults are no file output, screen = yes, and universe = no.
|
||||
|
||||
@ -406,7 +406,7 @@ cases, LAMMPS has no simple way to check that something illogical is
|
||||
being attempted.
|
||||
|
||||
The same applies to Python functions called during a simulation run at
|
||||
each time step using "fix python"_fix_python.html.
|
||||
each time step using "fix python/invoke"_fix_python_invoke.html.
|
||||
|
||||
:line
|
||||
|
||||
@ -493,6 +493,6 @@ different source files, problems may occur.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
"shell"_shell.html, "variable"_variable.html, "fix python"_fix_python.html
|
||||
"shell"_shell.html, "variable"_variable.html, "fix python/invoke"_fix_python_invoke.html
|
||||
|
||||
[Default:] none
|
||||
|
||||
@ -10,9 +10,11 @@ replicate command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
replicate nx ny nz :pre
|
||||
replicate nx ny nz {keyword} :pre
|
||||
|
||||
nx,ny,nz = replication factors in each dimension :ul
|
||||
nx,ny,nz = replication factors in each dimension :ulb
|
||||
optional {keyword} = {bbox} :l
|
||||
{bbox} = only check atoms in replicas that overlap with a processor's subdomain :ule
|
||||
|
||||
[Examples:]
|
||||
|
||||
@ -43,6 +45,12 @@ file that crosses a periodic boundary should be between two atoms with
|
||||
image flags that differ by 1. This will allow the bond to be
|
||||
unwrapped appropriately.
|
||||
|
||||
The optional keyword {bbox} uses a bounding box to only check atoms
|
||||
in replicas that overlap with a processor's subdomain when assigning
|
||||
atoms to processors, and thus can result in substantial speedups for
|
||||
calculations using a large number of processors. It does require
|
||||
temporarily using more memory.
|
||||
|
||||
[Restrictions:]
|
||||
|
||||
A 2d simulation cannot be replicated in the z dimension.
|
||||
|
||||
@ -67,7 +67,8 @@ class RSTMarkup(Markup):
|
||||
text = text.replace('*', '\\*')
|
||||
text = text.replace('^', '\\^')
|
||||
text = text.replace('|', '\\|')
|
||||
text = re.sub(r'([^"])_', r'\1\\_', text)
|
||||
text = re.sub(r'([^"])_([ \t\n\r\f])', r'\1\\\\_\2', text)
|
||||
text = re.sub(r'([^"])_([^ \t\n\r\f])', r'\1\\_\2', text)
|
||||
return text
|
||||
|
||||
def unescape_rst_chars(self, text):
|
||||
@ -148,15 +149,18 @@ class RSTFormatting(Formatting):
|
||||
return "\n----------\n\n" + content.strip()
|
||||
|
||||
def image(self, content, file, link=None):
|
||||
if link and (link.lower().endswith('.jpg') or
|
||||
link.lower().endswith('.jpeg') or
|
||||
link.lower().endswith('.png') or
|
||||
link.lower().endswith('.gif')):
|
||||
converted = ".. thumbnail:: " + self.markup.unescape_rst_chars(link) + "\n"
|
||||
else:
|
||||
converted = ".. image:: " + self.markup.unescape_rst_chars(file) + "\n"
|
||||
if link:
|
||||
converted += " :target: " + self.markup.unescape_rst_chars(link) + "\n"
|
||||
# 2017-12-07: commented out to disable thumbnail processing due to dropping
|
||||
# support for obsolete sphinxcontrib.images extension
|
||||
#
|
||||
#if link and (link.lower().endswith('.jpg') or
|
||||
# link.lower().endswith('.jpeg') or
|
||||
# link.lower().endswith('.png') or
|
||||
# link.lower().endswith('.gif')):
|
||||
# converted = ".. thumbnail:: " + self.markup.unescape_rst_chars(link) + "\n"
|
||||
#else:
|
||||
converted = ".. image:: " + self.markup.unescape_rst_chars(file) + "\n"
|
||||
if link:
|
||||
converted += " :target: " + self.markup.unescape_rst_chars(link) + "\n"
|
||||
|
||||
if "c" in self.current_command_list:
|
||||
converted += " :align: center\n"
|
||||
|
||||
@ -31,8 +31,11 @@ import os
|
||||
# ones.
|
||||
extensions = [
|
||||
'sphinx.ext.mathjax',
|
||||
'sphinxcontrib.images',
|
||||
]
|
||||
# 2017-12-07: commented out, since this package is broken with Sphinx 16.x
|
||||
# yet we can no longer use Sphinx 15.x, since that breaks with
|
||||
# newer version of the multiprocessor module.
|
||||
# 'sphinxcontrib.images',
|
||||
|
||||
images_config = {
|
||||
'default_image_width' : '25%',
|
||||
|
||||
@ -17,33 +17,36 @@ additional wrapper library that interfaces the C interface of the
|
||||
LAMMPS library to Fortran and also translates the MPI communicator
|
||||
from Fortran to C.
|
||||
|
||||
Once you have built LAMMPS as a library (see examples/COUPLE/README),
|
||||
you can then build any of the driver codes with compile lines like
|
||||
these, which include paths to the LAMMPS library interface, MPI (an
|
||||
installed MPICH in this case), and FFTW (assuming you built LAMMPS as
|
||||
a library with its PPPM solver).
|
||||
First build LAMMPS as a library (see examples/COUPLE/README), e.g.
|
||||
|
||||
This builds the C++ driver with the LAMMPS library using a C++ compiler:
|
||||
make mode=shlib mpi
|
||||
|
||||
g++ -I/home/sjplimp/lammps/src -c simple.cpp
|
||||
g++ -L/home/sjplimp/lammps/src simple.o \
|
||||
-llammps -lfftw -lmpich -lmpl -lpthread -o simpleCC
|
||||
You can then build any of the driver codes with compile lines like
|
||||
these, which include paths to the LAMMPS library interface, and
|
||||
linking with FFTW (only needed if you built LAMMPS as a library with
|
||||
its PPPM solver).
|
||||
|
||||
This builds the C driver with the LAMMPS library using a C compiler:
|
||||
This builds the C++ driver with the LAMMPS library using the mpiCC
|
||||
(C++) compiler:
|
||||
|
||||
gcc -I/home/sjplimp/lammps/src -c simple.c
|
||||
gcc -L/home/sjplimp/lammps/src simple.o \
|
||||
-llammps -lfftw -lmpich -lmpl -lpthread -lstdc++ -o simpleC
|
||||
mpiCC -I/home/sjplimp/lammps/src -c simple.cpp
|
||||
mpiCC -L/home/sjplimp/lammps/src simple.o -llammps -lfftw -o simpleCC
|
||||
|
||||
This builds the C driver with the LAMMPS library using the mpicc (C)
|
||||
compiler:
|
||||
|
||||
mpicc -I/home/sjplimp/lammps/src -c simple.c
|
||||
mpicc -L/home/sjplimp/lammps/src simple.o -llammps -lfftw -o simpleC
|
||||
|
||||
This builds the Fortran wrapper and driver with the LAMMPS library
|
||||
using a Fortran and C compiler, using the wrapper in the fortran
|
||||
directory:
|
||||
using the mpicc (C) and mpifort (Fortran) compilers, using the wrapper
|
||||
in the fortran directory:
|
||||
|
||||
cp ../fortran/libfwrapper.c .
|
||||
gcc -I/home/sjplimp/lammps/src -c libfwrapper.c
|
||||
gfortran -I/home/sjplimp/lammps/src -c simple.f90
|
||||
gfortran -L/home/sjplimp/lammps/src simple.o libfwrapper.o \
|
||||
-llammps -lfftw -lfmpich -lmpich -lpthread -lstdc++ -o simpleF
|
||||
mpicc -I/home/sjplimp/lammps/src -c libfwrapper.c
|
||||
mpifort -c simple.f90
|
||||
mpifort -L/home/sjplimp/lammps/src simple.o libfwrapper.o \
|
||||
-llammps -lfftw -o simpleF
|
||||
|
||||
You then run simpleCC, simpleC, or simpleF on a parallel machine
|
||||
on some number of processors Q with 2 arguments:
|
||||
|
||||
@ -145,7 +145,7 @@ int main(int narg, char **arg)
|
||||
for (i = 0; i < natoms; i++) type[i] = 1;
|
||||
|
||||
lammps_command(lmp,"delete_atoms group all");
|
||||
lammps_create_atoms(lmp,natoms,NULL,type,x,v);
|
||||
lammps_create_atoms(lmp,natoms,NULL,type,x,v,NULL,0);
|
||||
lammps_command(lmp,"run 10");
|
||||
}
|
||||
|
||||
|
||||
@ -109,11 +109,11 @@ int main(int narg, char **arg)
|
||||
int natoms = static_cast<int> (lmp->atom->natoms);
|
||||
x = new double[3*natoms];
|
||||
v = new double[3*natoms];
|
||||
lammps_gather_atoms(lmp,"x",1,3,x);
|
||||
lammps_gather_atoms(lmp,"v",1,3,v);
|
||||
lammps_gather_atoms(lmp,(char *) "x",1,3,x);
|
||||
lammps_gather_atoms(lmp,(char *) "v",1,3,v);
|
||||
double epsilon = 0.1;
|
||||
x[0] += epsilon;
|
||||
lammps_scatter_atoms(lmp,"x",1,3,x);
|
||||
lammps_scatter_atoms(lmp,(char *) "x",1,3,x);
|
||||
|
||||
// these 2 lines are the same
|
||||
|
||||
@ -124,21 +124,22 @@ int main(int narg, char **arg)
|
||||
// extract force on single atom two different ways
|
||||
|
||||
if (lammps == 1) {
|
||||
double **f = (double **) lammps_extract_atom(lmp,"f");
|
||||
double **f = (double **) lammps_extract_atom(lmp,(char *) "f");
|
||||
printf("Force on 1 atom via extract_atom: %g\n",f[0][0]);
|
||||
|
||||
double *fx = (double *) lammps_extract_variable(lmp,"fx","all");
|
||||
double *fx = (double *)
|
||||
lammps_extract_variable(lmp,(char *) "fx",(char *) "all");
|
||||
printf("Force on 1 atom via extract_variable: %g\n",fx[0]);
|
||||
}
|
||||
|
||||
// use commands_string() and commands_list() to invoke more commands
|
||||
|
||||
char *strtwo = "run 10\nrun 20";
|
||||
char *strtwo = (char *) "run 10\nrun 20";
|
||||
if (lammps == 1) lammps_commands_string(lmp,strtwo);
|
||||
|
||||
char *cmds[2];
|
||||
cmds[0] = "run 10";
|
||||
cmds[1] = "run 20";
|
||||
cmds[0] = (char *) "run 10";
|
||||
cmds[1] = (char *) "run 20";
|
||||
if (lammps == 1) lammps_commands_list(lmp,2,cmds);
|
||||
|
||||
// delete all atoms
|
||||
|
||||
@ -115,9 +115,12 @@ PROGRAM f_driver
|
||||
CALL lammps_get_natoms(ptr,natoms)
|
||||
ALLOCATE(x(3*natoms))
|
||||
|
||||
CALL lammps_gather_atoms(ptr,'x',1,3,x);
|
||||
x(1) = x(1) + epsilon
|
||||
CALL lammps_scatter_atoms(ptr,'x',1,3,x);
|
||||
! these calls are commented out, b/c libfwrapper.c
|
||||
! needs to be updated to use gather_atoms and scatter_atoms
|
||||
|
||||
!CALL lammps_gather_atoms(ptr,'x',1,3,x);
|
||||
!x(1) = x(1) + epsilon
|
||||
!CALL lammps_scatter_atoms(ptr,'x',1,3,x);
|
||||
|
||||
DEALLOCATE(x)
|
||||
|
||||
|
||||
116
examples/USER/misc/extep/BN.data
Normal file
116
examples/USER/misc/extep/BN.data
Normal file
@ -0,0 +1,116 @@
|
||||
info: BN sample with r_BN=1.45
|
||||
|
||||
100 atoms
|
||||
2 atom types
|
||||
|
||||
0.0 21.75000000 xlo xhi
|
||||
0.0 12.55736835 ylo yhi
|
||||
0.0 50.00000000 zlo zhi
|
||||
|
||||
Masses
|
||||
|
||||
1 10.811
|
||||
2 14.0067
|
||||
|
||||
Atoms
|
||||
|
||||
1 1 0.00000000 0.00000000 0.00000000
|
||||
2 2 1.45000000 0.00000000 0.00000000
|
||||
3 1 2.17500000 1.25573684 0.00000000
|
||||
4 2 3.62500000 1.25573684 0.00000000
|
||||
5 1 0.00000000 2.51147367 0.00000000
|
||||
6 2 1.45000000 2.51147367 0.00000000
|
||||
7 1 2.17500000 3.76721051 0.00000000
|
||||
8 2 3.62500000 3.76721051 0.00000000
|
||||
9 1 0.00000000 5.02294734 0.00000000
|
||||
10 2 1.45000000 5.02294734 0.00000000
|
||||
11 1 2.17500000 6.27868418 0.00000000
|
||||
12 2 3.62500000 6.27868418 0.00000000
|
||||
13 1 0.00000000 7.53442101 0.00000000
|
||||
14 2 1.45000000 7.53442101 0.00000000
|
||||
15 1 2.17500000 8.79015785 0.00000000
|
||||
16 2 3.62500000 8.79015785 0.00000000
|
||||
17 1 0.00000000 10.04589468 0.00000000
|
||||
18 2 1.45000000 10.04589468 0.00000000
|
||||
19 1 2.17500000 11.30163152 0.00000000
|
||||
20 2 3.62500000 11.30163152 0.00000000
|
||||
21 1 4.35000000 0.00000000 0.00000000
|
||||
22 2 5.80000000 0.00000000 0.00000000
|
||||
23 1 6.52500000 1.25573684 0.00000000
|
||||
24 2 7.97500000 1.25573684 0.00000000
|
||||
25 1 4.35000000 2.51147367 0.00000000
|
||||
26 2 5.80000000 2.51147367 0.00000000
|
||||
27 1 6.52500000 3.76721051 0.00000000
|
||||
28 2 7.97500000 3.76721051 0.00000000
|
||||
29 1 4.35000000 5.02294734 0.00000000
|
||||
30 2 5.80000000 5.02294734 0.00000000
|
||||
31 1 6.52500000 6.27868418 0.00000000
|
||||
32 2 7.97500000 6.27868418 0.00000000
|
||||
33 1 4.35000000 7.53442101 0.00000000
|
||||
34 2 5.80000000 7.53442101 0.00000000
|
||||
35 1 6.52500000 8.79015785 0.00000000
|
||||
36 2 7.97500000 8.79015785 0.00000000
|
||||
37 1 4.35000000 10.04589468 0.00000000
|
||||
38 2 5.80000000 10.04589468 0.00000000
|
||||
39 1 6.52500000 11.30163152 0.00000000
|
||||
40 2 7.97500000 11.30163152 0.00000000
|
||||
41 1 8.70000000 0.00000000 0.00000000
|
||||
42 2 10.15000000 0.00000000 0.00000000
|
||||
43 1 10.87500000 1.25573684 0.00000000
|
||||
44 2 12.32500000 1.25573684 0.00000000
|
||||
45 1 8.70000000 2.51147367 0.00000000
|
||||
46 2 10.15000000 2.51147367 0.00000000
|
||||
47 1 10.87500000 3.76721051 0.00000000
|
||||
48 2 12.32500000 3.76721051 0.00000000
|
||||
49 1 8.70000000 5.02294734 0.00000000
|
||||
50 2 10.15000000 5.02294734 0.00000000
|
||||
51 1 10.87500000 6.27868418 0.00000000
|
||||
52 2 12.32500000 6.27868418 0.00000000
|
||||
53 1 8.70000000 7.53442101 0.00000000
|
||||
54 2 10.15000000 7.53442101 0.00000000
|
||||
55 1 10.87500000 8.79015785 0.00000000
|
||||
56 2 12.32500000 8.79015785 0.00000000
|
||||
57 1 8.70000000 10.04589468 0.00000000
|
||||
58 2 10.15000000 10.04589468 0.00000000
|
||||
59 1 10.87500000 11.30163152 0.00000000
|
||||
60 2 12.32500000 11.30163152 0.00000000
|
||||
61 1 13.05000000 0.00000000 0.00000000
|
||||
62 2 14.50000000 0.00000000 0.00000000
|
||||
63 1 15.22500000 1.25573684 0.00000000
|
||||
64 2 16.67500000 1.25573684 0.00000000
|
||||
65 1 13.05000000 2.51147367 0.00000000
|
||||
66 2 14.50000000 2.51147367 0.00000000
|
||||
67 1 15.22500000 3.76721051 0.00000000
|
||||
68 2 16.67500000 3.76721051 0.00000000
|
||||
69 1 13.05000000 5.02294734 0.00000000
|
||||
70 2 14.50000000 5.02294734 0.00000000
|
||||
71 1 15.22500000 6.27868418 0.00000000
|
||||
72 2 16.67500000 6.27868418 0.00000000
|
||||
73 1 13.05000000 7.53442101 0.00000000
|
||||
74 2 14.50000000 7.53442101 0.00000000
|
||||
75 1 15.22500000 8.79015785 0.00000000
|
||||
76 2 16.67500000 8.79015785 0.00000000
|
||||
77 1 13.05000000 10.04589468 0.00000000
|
||||
78 2 14.50000000 10.04589468 0.00000000
|
||||
79 1 15.22500000 11.30163152 0.00000000
|
||||
80 2 16.67500000 11.30163152 0.00000000
|
||||
81 1 17.40000000 0.00000000 0.00000000
|
||||
82 2 18.85000000 0.00000000 0.00000000
|
||||
83 1 19.57500000 1.25573684 0.00000000
|
||||
84 2 21.02500000 1.25573684 0.00000000
|
||||
85 1 17.40000000 2.51147367 0.00000000
|
||||
86 2 18.85000000 2.51147367 0.00000000
|
||||
87 1 19.57500000 3.76721051 0.00000000
|
||||
88 2 21.02500000 3.76721051 0.00000000
|
||||
89 1 17.40000000 5.02294734 0.00000000
|
||||
90 2 18.85000000 5.02294734 0.00000000
|
||||
91 1 19.57500000 6.27868418 0.00000000
|
||||
92 2 21.02500000 6.27868418 0.00000000
|
||||
93 1 17.40000000 7.53442101 0.00000000
|
||||
94 2 18.85000000 7.53442101 0.00000000
|
||||
95 1 19.57500000 8.79015785 0.00000000
|
||||
96 2 21.02500000 8.79015785 0.00000000
|
||||
97 1 17.40000000 10.04589468 0.00000000
|
||||
98 2 18.85000000 10.04589468 0.00000000
|
||||
99 1 19.57500000 11.30163152 0.00000000
|
||||
100 2 21.02500000 11.30163152 0.00000000
|
||||
29
examples/USER/misc/extep/in.extep-bn
Normal file
29
examples/USER/misc/extep/in.extep-bn
Normal file
@ -0,0 +1,29 @@
|
||||
# Initialization
|
||||
units metal
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
processors * * 1
|
||||
|
||||
# System and atom definition
|
||||
read_data BN.data # read lammps data file
|
||||
|
||||
# Neighbor update settings
|
||||
neighbor 2.0 bin
|
||||
neigh_modify every 1
|
||||
neigh_modify delay 0
|
||||
neigh_modify check yes
|
||||
|
||||
# Potential
|
||||
pair_style extep
|
||||
pair_coeff * * ../../../../potentials/BN.extep B N
|
||||
|
||||
# Output
|
||||
thermo 10
|
||||
thermo_style custom step time etotal pe temp lx ly lz pxx pyy pzz
|
||||
thermo_modify line one format float %14.8g
|
||||
|
||||
# Setup NPT MD run
|
||||
timestep 0.0001 # ps
|
||||
velocity all create 300.0 12345
|
||||
fix thermos all npt temp 300 300 1.0 x 0 0 1.0 y 0 0 1.0
|
||||
run 1000
|
||||
180
examples/USER/misc/extep/log.23Oct17.extep-bn.g++.1
Normal file
180
examples/USER/misc/extep/log.23Oct17.extep-bn.g++.1
Normal file
@ -0,0 +1,180 @@
|
||||
LAMMPS (23 Oct 2017)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# Initialization
|
||||
units metal
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
processors * * 1
|
||||
|
||||
# System and atom definition
|
||||
read_data BN.data # read lammps data file
|
||||
orthogonal box = (0 0 0) to (21.75 12.5574 50)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
100 atoms
|
||||
|
||||
# Neighbor update settings
|
||||
neighbor 2.0 bin
|
||||
neigh_modify every 1
|
||||
neigh_modify delay 0
|
||||
neigh_modify check yes
|
||||
|
||||
# Potential
|
||||
pair_style extep
|
||||
pair_coeff * * ../../../../potentials/BN.extep B N
|
||||
Reading potential file ../../../../potentials/BN.extep with DATE: 2017-11-28
|
||||
|
||||
# Output
|
||||
thermo 10
|
||||
thermo_style custom step time etotal pe temp lx ly lz pxx pyy pzz
|
||||
thermo_modify line one format float %14.8g
|
||||
|
||||
# Setup NPT MD run
|
||||
timestep 0.0001 # ps
|
||||
velocity all create 300.0 12345
|
||||
fix thermos all npt temp 300 300 1.0 x 0 0 1.0 y 0 0 1.0
|
||||
run 1000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 4.2
|
||||
ghost atom cutoff = 4.2
|
||||
binsize = 2.1, bins = 11 6 24
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair extep, perpetual
|
||||
attributes: full, newton on, ghost
|
||||
pair build: full/bin/ghost
|
||||
stencil: full/ghost/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.97 | 2.97 | 2.97 Mbytes
|
||||
Step Time TotEng PotEng Temp Lx Ly Lz Pxx Pyy Pzz
|
||||
0 0 -665.11189 -668.95092 300 21.75 12.557368 50 -1638.8315 -1636.7368 321.73163
|
||||
10 0.001 -665.11194 -668.81065 289.03491 21.749944 12.557333 50 -1391.3771 -1841.1723 316.66669
|
||||
20 0.002 -665.1121 -668.4273 259.06599 21.749789 12.557222 50 -1137.0171 -1980.5977 301.79466
|
||||
30 0.003 -665.11237 -667.90117 217.93027 21.749552 12.557029 50 -912.51949 -2055.822 278.00774
|
||||
40 0.004 -665.11278 -667.36471 175.97662 21.74925 12.556752 50 -755.38643 -2078.0669 246.62816
|
||||
50 0.005 -665.11333 -666.94254 142.94321 21.748894 12.556389 50 -694.93153 -2062.1349 209.26356
|
||||
60 0.006 -665.11405 -666.71476 125.08741 21.748487 12.55594 50 -744.6962 -2019.9093 167.70563
|
||||
70 0.007 -665.11494 -666.69555 123.51632 21.748026 12.555408 50 -898.67863 -1956.2845 123.88845
|
||||
80 0.008 -665.116 -666.83408 134.25892 21.7475 12.554796 50 -1132.5952 -1868.738 79.87581
|
||||
90 0.009 -665.1172 -667.03647 149.98053 21.746893 12.554106 50 -1409.6896 -1750.4875 37.821017
|
||||
100 0.01 -665.11853 -667.20002 162.65705 21.746185 12.553344 50 -1689.1599 -1595.9411 -0.14399002
|
||||
110 0.011 -665.11997 -667.24752 166.25742 21.745356 12.552516 50 -1934.6334 -1406.3665 -32.091026
|
||||
120 0.012 -665.12148 -667.15088 158.58671 21.744389 12.55163 50 -2120.4014 -1193.6117 -56.50543
|
||||
130 0.013 -665.12306 -666.93754 141.7922 21.743271 12.550694 50 -2234.0841 -980.32815 -72.45885
|
||||
140 0.014 -665.1247 -666.67903 121.4631 21.741993 12.549719 50 -2275.5656 -796.26701 -79.693692
|
||||
150 0.015 -665.1264 -666.46562 104.65306 21.740553 12.54871 50 -2253.08 -671.5409 -78.603431
|
||||
160 0.016 -665.1282 -666.37541 97.462619 21.738952 12.547674 50 -2178.0108 -628.83531 -70.130423
|
||||
170 0.017 -665.13011 -666.44775 102.96665 21.737195 12.546611 50 -2060.2073 -677.02227 -55.623931
|
||||
180 0.018 -665.13215 -666.67004 120.17784 21.735292 12.54552 50 -1905.36 -808.22824 -36.699042
|
||||
190 0.019 -665.13431 -666.98201 144.38814 21.733253 12.544396 50 -1715.2526 -999.2481 -15.117617
|
||||
200 0.02 -665.13656 -667.29591 168.74214 21.731091 12.543231 50 -1490.6934 -1216.735 7.3107732
|
||||
210 0.021 -665.13885 -667.52511 186.47391 21.728823 12.542015 50 -1235.9283 -1424.4324 28.822782
|
||||
220 0.022 -665.14112 -667.61153 193.0492 21.726467 12.540741 50 -962.70697 -1590.2885 47.801678
|
||||
230 0.023 -665.14332 -667.54317 187.53534 21.724043 12.539402 50 -692.12856 -1691.6537 62.881768
|
||||
240 0.024 -665.1454 -667.35665 172.79772 21.72157 12.537993 50 -453.02755 -1717.6064 73.041858
|
||||
250 0.025 -665.14735 -667.12424 154.48373 21.719064 12.536514 50 -276.81709 -1668.3598 77.670868
|
||||
260 0.026 -665.14918 -666.92939 139.11409 21.716539 12.534967 50 -190.03656 -1552.4049 76.59734
|
||||
270 0.027 -665.15091 -666.83859 131.88391 21.714 12.533357 50 -206.85537 -1382.4915 70.085105
|
||||
280 0.028 -665.15258 -666.87889 134.90214 21.711446 12.53169 50 -324.01795 -1171.7578 58.801327
|
||||
290 0.029 -665.15421 -667.02881 146.49028 21.708869 12.529975 50 -520.0146 -931.26466 43.758636
|
||||
300 0.03 -665.1558 -667.22646 161.81084 21.706255 12.528222 50 -758.87113 -669.74523 26.225956
|
||||
310 0.031 -665.15734 -667.39183 174.61368 21.703587 12.526442 50 -997.42782 -395.56111 7.601897
|
||||
320 0.032 -665.15878 -667.45546 179.47345 21.700849 12.524646 50 -1193.9402 -119.86797 -10.744258
|
||||
330 0.033 -665.16008 -667.38312 173.71901 21.698026 12.522846 50 -1315.6446 140.7451 -27.638433
|
||||
340 0.034 -665.16118 -667.18792 158.37888 21.695112 12.521051 50 -1343.5396 363.95099 -42.231049
|
||||
350 0.035 -665.16207 -666.92571 137.81938 21.692103 12.519271 50 -1273.6625 524.73453 -54.046178
|
||||
360 0.036 -665.16274 -666.67543 118.20885 21.689004 12.517514 50 -1115.1514 601.37143 -62.932702
|
||||
370 0.037 -665.1632 -666.5115 105.36258 21.685827 12.515781 50 -886.11568 582.42087 -68.942158
|
||||
380 0.038 -665.16348 -666.47849 102.76116 21.682589 12.514072 50 -608.71321 472.04732 -72.193259
|
||||
390 0.039 -665.1636 -666.57728 110.47178 21.679308 12.512382 50 -304.85697 291.41908 -72.787214
|
||||
400 0.04 -665.16356 -666.76741 125.33244 21.676006 12.510704 50 6.3732307 75.407852 -70.806087
|
||||
410 0.041 -665.16336 -666.98363 142.24457 21.672705 12.50903 50 309.23046 -134.40319 -66.378966
|
||||
420 0.042 -665.16298 -667.15939 156.00935 21.669426 12.507351 50 590.16982 -298.16702 -59.767469
|
||||
430 0.043 -665.16239 -667.24843 163.01313 21.66619 12.50566 50 836.19535 -385.22443 -51.420249
|
||||
440 0.044 -665.16157 -667.23746 162.2204 21.663014 12.503955 50 1033.943 -378.7816 -41.969885
|
||||
450 0.045 -665.1605 -667.14707 155.24066 21.659911 12.502234 50 1170.3399 -277.11556 -32.175503
|
||||
460 0.046 -665.15917 -667.0218 145.55489 21.656891 12.500503 50 1234.9026 -91.620499 -22.833423
|
||||
470 0.047 -665.15761 -666.91366 137.22578 21.65396 12.498768 50 1222.9519 157.31306 -14.680548
|
||||
480 0.048 -665.15585 -666.86462 133.53159 21.651114 12.497041 50 1138.5551 445.2926 -8.3071781
|
||||
490 0.049 -665.15393 -666.89359 135.9458 21.64835 12.495333 50 996.00682 748.51842 -4.0872169
|
||||
500 0.05 -665.15188 -666.99142 143.75058 21.645657 12.493655 50 819.08561 1046.9785 -2.1306918
|
||||
510 0.051 -665.14975 -667.12519 154.36991 21.643022 12.49202 50 637.99022 1325.7112 -2.2650822
|
||||
520 0.052 -665.14756 -667.25 164.29491 21.640432 12.49044 50 484.54509 1574.1916 -4.0528391
|
||||
530 0.053 -665.14531 -667.32459 170.29969 21.637878 12.488923 50 386.77357 1784.4858 -6.8479114
|
||||
540 0.054 -665.143 -667.32552 170.55254 21.635352 12.48748 50 364.14599 1949.2189 -9.8841824
|
||||
550 0.055 -665.14064 -667.25527 165.24765 21.632853 12.486117 50 424.6565 2060.4607 -12.37851
|
||||
560 0.056 -665.13822 -667.14127 156.52756 21.630385 12.484837 50 564.3912 2110.2547 -13.62742
|
||||
570 0.057 -665.13576 -667.0259 147.70502 21.627958 12.483643 50 769.54354 2092.8157 -13.082914
|
||||
580 0.058 -665.13327 -666.95107 142.05154 21.625586 12.482535 50 1020.1218 2007.6508 -10.405617
|
||||
590 0.059 -665.13079 -666.94279 141.59877 21.623287 12.481508 50 1294.1274 1862.3568 -5.5031153
|
||||
600 0.06 -665.12832 -667.00189 146.40928 21.621079 12.480557 50 1570.9478 1673.8456 1.4410957
|
||||
610 0.061 -665.12591 -667.10417 154.59072 21.618982 12.479674 50 1833.1388 1467.2639 9.9561573
|
||||
620 0.062 -665.12355 -667.20973 163.02368 21.617015 12.478851 50 2066.4951 1272.6732 19.310607
|
||||
630 0.063 -665.12128 -667.27744 168.49239 21.615193 12.47808 50 2259.0193 1120.2758 28.59477
|
||||
640 0.064 -665.11911 -667.27898 168.7823 21.613531 12.477355 50 2399.792 1035.3525 36.8539
|
||||
650 0.065 -665.11707 -667.20773 163.37438 21.612037 12.476673 50 2478.6675 1034.0481 43.239368
|
||||
660 0.066 -665.11518 -667.0802 153.55598 21.610718 12.476033 50 2487.2505 1120.8274 47.131883
|
||||
670 0.067 -665.11345 -666.93026 141.97434 21.609573 12.475439 50 2420.9786 1288.0136 48.201717
|
||||
680 0.068 -665.11191 -666.79864 131.80955 21.608598 12.474897 50 2281.6131 1517.4002 46.399066
|
||||
690 0.069 -665.11056 -666.72065 125.82027 21.607784 12.474418 50 2079.2055 1783.5346 41.895586
|
||||
700 0.07 -665.10941 -666.71578 125.5291 21.607116 12.474011 50 1832.7039 2057.9076 35.011051
|
||||
710 0.071 -665.10848 -666.78203 130.77932 21.606577 12.473687 50 1568.7275 2313.0601 26.153491
|
||||
720 0.072 -665.10776 -666.89681 139.80468 21.606148 12.473458 50 1318.5189 2525.6808 15.783637
|
||||
730 0.073 -665.10727 -667.0243 149.80574 21.605812 12.47333 50 1113.5537 2678.1859 4.3967762
|
||||
740 0.074 -665.10701 -667.12698 157.85016 21.605555 12.473311 50 980.633 2758.9123 -7.4930622
|
||||
750 0.075 -665.10697 -667.17729 161.78497 21.605368 12.473404 50 937.45086 2761.5936 -19.376492
|
||||
760 0.076 -665.10714 -667.1654 160.84249 21.605247 12.473609 50 989.5724 2684.9256 -30.776106
|
||||
770 0.077 -665.1075 -667.10061 155.75086 21.605196 12.473922 50 1129.4775 2532.7048 -41.263677
|
||||
780 0.078 -665.10803 -667.00654 148.35835 21.605226 12.474338 50 1337.8663 2314.4556 -50.455407
|
||||
790 0.079 -665.10869 -666.91242 140.9515 21.605349 12.474848 50 1586.9099 2045.9808 -57.988114
|
||||
800 0.08 -665.10946 -666.84375 135.52533 21.605585 12.475441 50 1844.7038 1749.1281 -63.495405
|
||||
810 0.081 -665.11032 -666.81538 133.24173 21.60595 12.476105 50 2079.9601 1450.3113 -66.60795
|
||||
820 0.082 -665.11127 -666.82877 134.21424 21.606461 12.476828 50 2266.0059 1177.7937 -66.990929
|
||||
830 0.083 -665.1123 -666.87353 137.6312 21.607131 12.477599 50 2383.4351 958.19752 -64.411861
|
||||
840 0.084 -665.11343 -666.93214 142.12323 21.607968 12.478409 50 2421.1969 812.91475 -58.816538
|
||||
850 0.085 -665.11467 -666.98597 146.2321 21.608975 12.479253 50 2376.3483 755.06052 -50.389393
|
||||
860 0.086 -665.11603 -667.02075 148.84448 21.610149 12.480128 50 2252.9811 787.43069 -39.585062
|
||||
870 0.087 -665.1175 -667.03045 149.48743 21.611481 12.481034 50 2060.884 901.76342 -27.129117
|
||||
880 0.088 -665.11907 -667.01838 148.42091 21.612958 12.481978 50 1814.3354 1079.4855 -13.988401
|
||||
890 0.089 -665.12073 -666.99552 146.50471 21.614562 12.482966 50 1531.1565 1293.9709 -1.305884
|
||||
900 0.09 -665.12247 -666.97639 144.87389 21.616275 12.484007 50 1231.9005 1514.0741 9.7083525
|
||||
910 0.091 -665.12426 -666.97371 144.52455 21.618074 12.485109 50 938.90089 1708.364 17.929974
|
||||
920 0.092 -665.12609 -666.99389 145.95889 21.61994 12.486281 50 674.90767 1849.2415 22.497207
|
||||
930 0.093 -665.12794 -667.03498 149.02559 21.621853 12.487528 50 461.18604 1916.1468 22.971745
|
||||
940 0.094 -665.12977 -667.08777 153.00718 21.6238 12.488852 50 315.19601 1897.3867 19.43758
|
||||
950 0.095 -665.13156 -667.13925 156.8903 21.62577 12.490254 50 248.20946 1790.5667 12.504818
|
||||
960 0.096 -665.13326 -667.17668 159.68273 21.627757 12.491728 50 263.35912 1601.9528 3.2123256
|
||||
970 0.097 -665.13485 -667.19079 160.6611 21.629764 12.493267 50 354.58496 1345.1489 -7.1487162
|
||||
980 0.098 -665.13628 -667.17758 159.5175 21.631796 12.494862 50 506.7626 1039.346 -17.249179
|
||||
990 0.099 -665.13753 -667.13942 156.43758 21.633864 12.496499 50 697.06054 707.26671 -25.92737
|
||||
1000 0.1 -665.13859 -667.0853 152.12472 21.635982 12.498164 50 897.38498 372.94791 -32.344697
|
||||
Loop time of 0.463574 on 1 procs for 1000 steps with 100 atoms
|
||||
|
||||
Performance: 18.638 ns/day, 1.288 hours/ns, 2157.152 timesteps/s
|
||||
99.0% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.44776 | 0.44776 | 0.44776 | 0.0 | 96.59
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0.0023057 | 0.0023057 | 0.0023057 | 0.0 | 0.50
|
||||
Output | 0.0015752 | 0.0015752 | 0.0015752 | 0.0 | 0.34
|
||||
Modify | 0.010602 | 0.010602 | 0.010602 | 0.0 | 2.29
|
||||
Other | | 0.001331 | | | 0.29
|
||||
|
||||
Nlocal: 100 ave 100 max 100 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 360 ave 360 max 360 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 1800 ave 1800 max 1800 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 1800
|
||||
Ave neighs/atom = 18
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
180
examples/USER/misc/extep/log.23Oct17.extep-bn.g++.4
Normal file
180
examples/USER/misc/extep/log.23Oct17.extep-bn.g++.4
Normal file
@ -0,0 +1,180 @@
|
||||
LAMMPS (23 Oct 2017)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# Initialization
|
||||
units metal
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
processors * * 1
|
||||
|
||||
# System and atom definition
|
||||
read_data BN.data # read lammps data file
|
||||
orthogonal box = (0 0 0) to (21.75 12.5574 50)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
100 atoms
|
||||
|
||||
# Neighbor update settings
|
||||
neighbor 2.0 bin
|
||||
neigh_modify every 1
|
||||
neigh_modify delay 0
|
||||
neigh_modify check yes
|
||||
|
||||
# Potential
|
||||
pair_style extep
|
||||
pair_coeff * * ../../../../potentials/BN.extep B N
|
||||
Reading potential file ../../../../potentials/BN.extep with DATE: 2017-11-28
|
||||
|
||||
# Output
|
||||
thermo 10
|
||||
thermo_style custom step time etotal pe temp lx ly lz pxx pyy pzz
|
||||
thermo_modify line one format float %14.8g
|
||||
|
||||
# Setup NPT MD run
|
||||
timestep 0.0001 # ps
|
||||
velocity all create 300.0 12345
|
||||
fix thermos all npt temp 300 300 1.0 x 0 0 1.0 y 0 0 1.0
|
||||
run 1000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 4.2
|
||||
ghost atom cutoff = 4.2
|
||||
binsize = 2.1, bins = 11 6 24
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair extep, perpetual
|
||||
attributes: full, newton on, ghost
|
||||
pair build: full/bin/ghost
|
||||
stencil: full/ghost/bin/3d
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.943 | 2.943 | 2.943 Mbytes
|
||||
Step Time TotEng PotEng Temp Lx Ly Lz Pxx Pyy Pzz
|
||||
0 0 -665.11189 -668.95092 300 21.75 12.557368 50 -1638.8315 -1636.7368 321.73163
|
||||
10 0.001 -665.11194 -668.81065 289.03491 21.749944 12.557333 50 -1391.3771 -1841.1723 316.66669
|
||||
20 0.002 -665.1121 -668.4273 259.06599 21.749789 12.557222 50 -1137.0171 -1980.5977 301.79466
|
||||
30 0.003 -665.11237 -667.90117 217.93027 21.749552 12.557029 50 -912.51949 -2055.822 278.00774
|
||||
40 0.004 -665.11278 -667.36471 175.97662 21.74925 12.556752 50 -755.38643 -2078.0669 246.62816
|
||||
50 0.005 -665.11333 -666.94254 142.94321 21.748894 12.556389 50 -694.93153 -2062.1349 209.26356
|
||||
60 0.006 -665.11405 -666.71476 125.08741 21.748487 12.55594 50 -744.6962 -2019.9093 167.70563
|
||||
70 0.007 -665.11494 -666.69555 123.51632 21.748026 12.555408 50 -898.67863 -1956.2845 123.88845
|
||||
80 0.008 -665.116 -666.83408 134.25892 21.7475 12.554796 50 -1132.5952 -1868.738 79.87581
|
||||
90 0.009 -665.1172 -667.03647 149.98053 21.746893 12.554106 50 -1409.6896 -1750.4875 37.821017
|
||||
100 0.01 -665.11853 -667.20002 162.65705 21.746185 12.553344 50 -1689.1599 -1595.9411 -0.14399002
|
||||
110 0.011 -665.11997 -667.24752 166.25742 21.745356 12.552516 50 -1934.6334 -1406.3665 -32.091026
|
||||
120 0.012 -665.12148 -667.15088 158.58671 21.744389 12.55163 50 -2120.4014 -1193.6117 -56.50543
|
||||
130 0.013 -665.12306 -666.93754 141.7922 21.743271 12.550694 50 -2234.0841 -980.32815 -72.45885
|
||||
140 0.014 -665.1247 -666.67903 121.4631 21.741993 12.549719 50 -2275.5656 -796.26701 -79.693692
|
||||
150 0.015 -665.1264 -666.46562 104.65306 21.740553 12.54871 50 -2253.08 -671.5409 -78.603431
|
||||
160 0.016 -665.1282 -666.37541 97.462619 21.738952 12.547674 50 -2178.0108 -628.83531 -70.130423
|
||||
170 0.017 -665.13011 -666.44775 102.96665 21.737195 12.546611 50 -2060.2073 -677.02227 -55.623931
|
||||
180 0.018 -665.13215 -666.67004 120.17784 21.735292 12.54552 50 -1905.36 -808.22824 -36.699042
|
||||
190 0.019 -665.13431 -666.98201 144.38814 21.733253 12.544396 50 -1715.2526 -999.2481 -15.117617
|
||||
200 0.02 -665.13656 -667.29591 168.74214 21.731091 12.543231 50 -1490.6934 -1216.735 7.3107732
|
||||
210 0.021 -665.13885 -667.52511 186.47391 21.728823 12.542015 50 -1235.9283 -1424.4324 28.822782
|
||||
220 0.022 -665.14112 -667.61153 193.0492 21.726467 12.540741 50 -962.70697 -1590.2885 47.801678
|
||||
230 0.023 -665.14332 -667.54317 187.53534 21.724043 12.539402 50 -692.12856 -1691.6537 62.881768
|
||||
240 0.024 -665.1454 -667.35665 172.79772 21.72157 12.537993 50 -453.02755 -1717.6064 73.041858
|
||||
250 0.025 -665.14735 -667.12424 154.48373 21.719064 12.536514 50 -276.81709 -1668.3598 77.670868
|
||||
260 0.026 -665.14918 -666.92939 139.11409 21.716539 12.534967 50 -190.03656 -1552.4049 76.59734
|
||||
270 0.027 -665.15091 -666.83859 131.88391 21.714 12.533357 50 -206.85537 -1382.4915 70.085105
|
||||
280 0.028 -665.15258 -666.87889 134.90214 21.711446 12.53169 50 -324.01795 -1171.7578 58.801327
|
||||
290 0.029 -665.15421 -667.02881 146.49028 21.708869 12.529975 50 -520.0146 -931.26466 43.758636
|
||||
300 0.03 -665.1558 -667.22646 161.81084 21.706255 12.528222 50 -758.87113 -669.74523 26.225956
|
||||
310 0.031 -665.15734 -667.39183 174.61368 21.703587 12.526442 50 -997.42782 -395.56111 7.601897
|
||||
320 0.032 -665.15878 -667.45546 179.47345 21.700849 12.524646 50 -1193.9402 -119.86797 -10.744258
|
||||
330 0.033 -665.16008 -667.38312 173.71901 21.698026 12.522846 50 -1315.6446 140.7451 -27.638433
|
||||
340 0.034 -665.16118 -667.18792 158.37888 21.695112 12.521051 50 -1343.5396 363.95099 -42.231049
|
||||
350 0.035 -665.16207 -666.92571 137.81938 21.692103 12.519271 50 -1273.6625 524.73453 -54.046178
|
||||
360 0.036 -665.16274 -666.67543 118.20885 21.689004 12.517514 50 -1115.1514 601.37143 -62.932702
|
||||
370 0.037 -665.1632 -666.5115 105.36258 21.685827 12.515781 50 -886.11568 582.42087 -68.942158
|
||||
380 0.038 -665.16348 -666.47849 102.76116 21.682589 12.514072 50 -608.71321 472.04732 -72.193259
|
||||
390 0.039 -665.1636 -666.57728 110.47178 21.679308 12.512382 50 -304.85697 291.41908 -72.787214
|
||||
400 0.04 -665.16356 -666.76741 125.33244 21.676006 12.510704 50 6.3732307 75.407852 -70.806087
|
||||
410 0.041 -665.16336 -666.98363 142.24457 21.672705 12.50903 50 309.23046 -134.40319 -66.378966
|
||||
420 0.042 -665.16298 -667.15939 156.00935 21.669426 12.507351 50 590.16982 -298.16702 -59.767469
|
||||
430 0.043 -665.16239 -667.24843 163.01313 21.66619 12.50566 50 836.19535 -385.22443 -51.420249
|
||||
440 0.044 -665.16157 -667.23746 162.2204 21.663014 12.503955 50 1033.943 -378.7816 -41.969885
|
||||
450 0.045 -665.1605 -667.14707 155.24066 21.659911 12.502234 50 1170.3399 -277.11556 -32.175503
|
||||
460 0.046 -665.15917 -667.0218 145.55489 21.656891 12.500503 50 1234.9026 -91.620499 -22.833423
|
||||
470 0.047 -665.15761 -666.91366 137.22578 21.65396 12.498768 50 1222.9519 157.31306 -14.680548
|
||||
480 0.048 -665.15585 -666.86462 133.53159 21.651114 12.497041 50 1138.5551 445.2926 -8.3071781
|
||||
490 0.049 -665.15393 -666.89359 135.9458 21.64835 12.495333 50 996.00682 748.51842 -4.0872169
|
||||
500 0.05 -665.15188 -666.99142 143.75058 21.645657 12.493655 50 819.08561 1046.9785 -2.1306918
|
||||
510 0.051 -665.14975 -667.12519 154.36991 21.643022 12.49202 50 637.99022 1325.7112 -2.2650822
|
||||
520 0.052 -665.14756 -667.25 164.29491 21.640432 12.49044 50 484.54509 1574.1916 -4.0528391
|
||||
530 0.053 -665.14531 -667.32459 170.29969 21.637878 12.488923 50 386.77357 1784.4858 -6.8479114
|
||||
540 0.054 -665.143 -667.32552 170.55254 21.635352 12.48748 50 364.14599 1949.2189 -9.8841824
|
||||
550 0.055 -665.14064 -667.25527 165.24765 21.632853 12.486117 50 424.6565 2060.4607 -12.37851
|
||||
560 0.056 -665.13822 -667.14127 156.52756 21.630385 12.484837 50 564.3912 2110.2547 -13.62742
|
||||
570 0.057 -665.13576 -667.0259 147.70502 21.627958 12.483643 50 769.54354 2092.8157 -13.082914
|
||||
580 0.058 -665.13327 -666.95107 142.05154 21.625586 12.482535 50 1020.1218 2007.6508 -10.405617
|
||||
590 0.059 -665.13079 -666.94279 141.59877 21.623287 12.481508 50 1294.1274 1862.3568 -5.5031153
|
||||
600 0.06 -665.12832 -667.00189 146.40928 21.621079 12.480557 50 1570.9478 1673.8456 1.4410957
|
||||
610 0.061 -665.12591 -667.10417 154.59072 21.618982 12.479674 50 1833.1388 1467.2639 9.9561573
|
||||
620 0.062 -665.12355 -667.20973 163.02368 21.617015 12.478851 50 2066.4951 1272.6732 19.310607
|
||||
630 0.063 -665.12128 -667.27744 168.49239 21.615193 12.47808 50 2259.0193 1120.2758 28.59477
|
||||
640 0.064 -665.11911 -667.27898 168.7823 21.613531 12.477355 50 2399.792 1035.3525 36.8539
|
||||
650 0.065 -665.11707 -667.20773 163.37438 21.612037 12.476673 50 2478.6675 1034.0481 43.239368
|
||||
660 0.066 -665.11518 -667.0802 153.55598 21.610718 12.476033 50 2487.2505 1120.8274 47.131883
|
||||
670 0.067 -665.11345 -666.93026 141.97434 21.609573 12.475439 50 2420.9786 1288.0136 48.201717
|
||||
680 0.068 -665.11191 -666.79864 131.80955 21.608598 12.474897 50 2281.6131 1517.4002 46.399066
|
||||
690 0.069 -665.11056 -666.72065 125.82027 21.607784 12.474418 50 2079.2055 1783.5346 41.895586
|
||||
700 0.07 -665.10941 -666.71578 125.5291 21.607116 12.474011 50 1832.7039 2057.9076 35.011051
|
||||
710 0.071 -665.10848 -666.78203 130.77932 21.606577 12.473687 50 1568.7275 2313.0601 26.153491
|
||||
720 0.072 -665.10776 -666.89681 139.80468 21.606148 12.473458 50 1318.5189 2525.6808 15.783637
|
||||
730 0.073 -665.10727 -667.0243 149.80574 21.605812 12.47333 50 1113.5537 2678.1859 4.3967762
|
||||
740 0.074 -665.10701 -667.12698 157.85016 21.605555 12.473311 50 980.633 2758.9123 -7.4930622
|
||||
750 0.075 -665.10697 -667.17729 161.78497 21.605368 12.473404 50 937.45086 2761.5936 -19.376492
|
||||
760 0.076 -665.10714 -667.1654 160.84249 21.605247 12.473609 50 989.5724 2684.9256 -30.776106
|
||||
770 0.077 -665.1075 -667.10061 155.75086 21.605196 12.473922 50 1129.4775 2532.7048 -41.263677
|
||||
780 0.078 -665.10803 -667.00654 148.35835 21.605226 12.474338 50 1337.8663 2314.4556 -50.455407
|
||||
790 0.079 -665.10869 -666.91242 140.9515 21.605349 12.474848 50 1586.9099 2045.9808 -57.988114
|
||||
800 0.08 -665.10946 -666.84375 135.52533 21.605585 12.475441 50 1844.7038 1749.1281 -63.495405
|
||||
810 0.081 -665.11032 -666.81538 133.24173 21.60595 12.476105 50 2079.9601 1450.3113 -66.60795
|
||||
820 0.082 -665.11127 -666.82877 134.21424 21.606461 12.476828 50 2266.0059 1177.7937 -66.990929
|
||||
830 0.083 -665.1123 -666.87353 137.6312 21.607131 12.477599 50 2383.4351 958.19752 -64.411861
|
||||
840 0.084 -665.11343 -666.93214 142.12323 21.607968 12.478409 50 2421.1969 812.91475 -58.816538
|
||||
850 0.085 -665.11467 -666.98597 146.2321 21.608975 12.479253 50 2376.3483 755.06052 -50.389393
|
||||
860 0.086 -665.11603 -667.02075 148.84448 21.610149 12.480128 50 2252.9811 787.43069 -39.585062
|
||||
870 0.087 -665.1175 -667.03045 149.48743 21.611481 12.481034 50 2060.884 901.76342 -27.129117
|
||||
880 0.088 -665.11907 -667.01838 148.42091 21.612958 12.481978 50 1814.3354 1079.4855 -13.988401
|
||||
890 0.089 -665.12073 -666.99552 146.50471 21.614562 12.482966 50 1531.1565 1293.9709 -1.305884
|
||||
900 0.09 -665.12247 -666.97639 144.87389 21.616275 12.484007 50 1231.9005 1514.0741 9.7083525
|
||||
910 0.091 -665.12426 -666.97371 144.52455 21.618074 12.485109 50 938.90089 1708.364 17.929974
|
||||
920 0.092 -665.12609 -666.99389 145.95889 21.61994 12.486281 50 674.90767 1849.2415 22.497207
|
||||
930 0.093 -665.12794 -667.03498 149.02559 21.621853 12.487528 50 461.18604 1916.1468 22.971745
|
||||
940 0.094 -665.12977 -667.08777 153.00718 21.6238 12.488852 50 315.19601 1897.3867 19.43758
|
||||
950 0.095 -665.13156 -667.13925 156.8903 21.62577 12.490254 50 248.20946 1790.5667 12.504818
|
||||
960 0.096 -665.13326 -667.17668 159.68273 21.627757 12.491728 50 263.35912 1601.9528 3.2123256
|
||||
970 0.097 -665.13485 -667.19079 160.6611 21.629764 12.493267 50 354.58496 1345.1489 -7.1487162
|
||||
980 0.098 -665.13628 -667.17758 159.5175 21.631796 12.494862 50 506.7626 1039.346 -17.249179
|
||||
990 0.099 -665.13753 -667.13942 156.43758 21.633864 12.496499 50 697.06054 707.26671 -25.92737
|
||||
1000 0.1 -665.13859 -667.0853 152.12472 21.635982 12.498164 50 897.38498 372.94791 -32.344697
|
||||
Loop time of 0.174508 on 4 procs for 1000 steps with 100 atoms
|
||||
|
||||
Performance: 49.511 ns/day, 0.485 hours/ns, 5730.393 timesteps/s
|
||||
98.8% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.12409 | 0.12834 | 0.13408 | 1.1 | 73.54
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0.016369 | 0.021358 | 0.025324 | 2.7 | 12.24
|
||||
Output | 0.0023892 | 0.0025101 | 0.0028272 | 0.4 | 1.44
|
||||
Modify | 0.01733 | 0.018302 | 0.018958 | 0.5 | 10.49
|
||||
Other | | 0.003995 | | | 2.29
|
||||
|
||||
Nlocal: 25 ave 26 max 24 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Nghost: 179 ave 180 max 178 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 450 ave 468 max 432 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 1800
|
||||
Ave neighs/atom = 18
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
74
examples/USER/misc/rhok/README.md
Normal file
74
examples/USER/misc/rhok/README.md
Normal file
@ -0,0 +1,74 @@
|
||||
# The Interface Pinning method for studying solid-liquid transitions
|
||||
|
||||
In this example we will use the interface pinnig method to study a solid-liquid transition.
|
||||
This is done by adding a harmonic potential to the Hamiltonian
|
||||
that bias the system towards two-phase configurations:
|
||||
|
||||
U_bias = 0.5*K*(Q-a)^2
|
||||
|
||||
The bias field couple to an order-parameter of crystallinity Q. The implementation use long-range order:
|
||||
|
||||
Q=|rho_k|,
|
||||
|
||||
where rho_k is the collective density field of the wave-vector k.
|
||||
For future reference we note that the structure factor S(k) is given by the variance of the collective density field:
|
||||
|
||||
S(k)=|rho_k|^2.
|
||||
|
||||
### About the method
|
||||
|
||||
It is recommended to get familiar with the interface pinning method by reading:
|
||||
|
||||
[Ulf R. Pedersen, JCP 139, 104102 (2013)](http://dx.doi.org/10.1063/1.4818747)
|
||||
|
||||
A detailed bibliography is provided at
|
||||
|
||||
<http://urp.dk/interface_pinning.htm>
|
||||
|
||||
and a brief introduction can be found at YouTube:
|
||||
|
||||
[](http://www.youtube.com/watch?v=F_79JZNdyoQ)
|
||||
|
||||
### Implimentation in LAMMPS
|
||||
|
||||
For this example we will be using the rhok fix.
|
||||
|
||||
fix [name] [groupID] rhok [nx] [ny] [nz] [K] [a]
|
||||
|
||||
This fix include a harmonic bias potential U_bias=0.5*K*(|rho_k|-a)^2 to the force calculation.
|
||||
The elements of the wave-vector k is given by the nx, ny and nz input:
|
||||
|
||||
k_x = (2 pi / L_x) * n_x, k_y = (2 pi / L_y) * n_y and k_z = (2 pi / L_z) * n_z.
|
||||
|
||||
We will use a k vector that correspond to a Bragg peak.
|
||||
|
||||
## Example: the Lennard-Jones (LJ) model
|
||||
|
||||
We will use the interface pinning method to study melting of the LJ model
|
||||
at temperature 0.8 and pressure 2.185. This is a coexistence state-point, and the method
|
||||
can be used to show this. The present directory contains the input files that we will use:
|
||||
|
||||
in.crystal
|
||||
in.setup
|
||||
in.pinning
|
||||
|
||||
1. First we will determine the density of the crystal with the LAMMPS input file in.crystal.
|
||||
From the output we get that the average density after equilibration is 0.9731.
|
||||
We need this density to ensure hydrostatic pressure when in a two-phase simulation.
|
||||
|
||||
2. Next, we setup a two-phase configuration using in.setup.
|
||||
|
||||
3. Finally, we run a two-phase simulation with the bias-field applied using in.pinning.
|
||||
The last column in the output show |rho_k|. We note that after a equilibration period
|
||||
the value fluctuates around the anchor point (a) -- showing that this is indeed a coexistence
|
||||
state point.
|
||||
|
||||
The reference [JCP 139, 104102 (2013)](http://dx.doi.org/10.1063/1.4818747) gives details on using the method to find coexistence state points,
|
||||
and the reference [JCP 142, 044104 (2015)](http://dx.doi.org/10.1063/1.4818747) show how the crystal growth rate can be computed from fluctuations.
|
||||
That method have been experienced to be most effective in the slightly super-heated regime above the melting temperature.
|
||||
|
||||
## Contact
|
||||
|
||||
Ulf R. Pedersen;
|
||||
<http://www.urp.dk>;
|
||||
ulf AT urp.dk
|
||||
36
examples/USER/misc/rhok/in.crystal
Normal file
36
examples/USER/misc/rhok/in.crystal
Normal file
@ -0,0 +1,36 @@
|
||||
units lj
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
# truncated and shifted LJ potential
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
lattice fcc 0.9731
|
||||
region my_box block 0 8.0 0 8.0 0 20.0
|
||||
create_box 1 my_box
|
||||
region particles block 0 8.0 0 8.0 0 20.0
|
||||
create_atoms 1 region particles
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
pair_modify tail no
|
||||
pair_modify shift yes
|
||||
mass 1 1.0
|
||||
velocity all create 1.6 1 mom yes rot yes
|
||||
|
||||
# simulation parameters
|
||||
neighbor 0.6 bin
|
||||
timestep 0.004
|
||||
run_style verlet
|
||||
fix ensemble all npt temp 0.8 0.8 4.0 aniso 2.185 2.185 8.0 pchain 32
|
||||
|
||||
# computing long-range order (no bias is added since k=0)
|
||||
fix bias all rhok 16 0 0 0.0 0.0
|
||||
|
||||
# output
|
||||
thermo 50
|
||||
thermo_style custom step temp press density f_bias[3]
|
||||
# dump dumpXYZ all xyz 2000 traj.xyz
|
||||
|
||||
# NOTE: this is cut short to 5000 steps for demonstration purposes
|
||||
# run 100000
|
||||
run 5000
|
||||
33
examples/USER/misc/rhok/in.pinning
Normal file
33
examples/USER/misc/rhok/in.pinning
Normal file
@ -0,0 +1,33 @@
|
||||
units lj
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
# truncated and shifted LJ potential
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
read_data data.halfhalf
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
mass 1 1.0
|
||||
|
||||
# simulation parameters
|
||||
neighbor 0.6 bin
|
||||
timestep 0.004
|
||||
run_style verlet
|
||||
|
||||
velocity all create 0.8 1 mom yes rot yes
|
||||
fix ensemble all npt temp 0.8 0.8 4.0 z 2.185 2.185 8.0
|
||||
fix 100 all momentum 100 linear 1 1 1
|
||||
|
||||
# harmonic rho_k bias-field
|
||||
# nx ny nz K a
|
||||
fix bias all rhok 16 0 0 4.0 26.00
|
||||
|
||||
# output U_bias rho_k_RE rho_k_IM |rho_k|
|
||||
thermo_style custom step temp pzz pe lz f_bias f_bias[1] f_bias[2] f_bias[3]
|
||||
thermo 50
|
||||
# dump dumpXYZ all xyz 500 traj.xyz
|
||||
|
||||
# NOTE: run reduced for demonstration purposes
|
||||
# run 50000
|
||||
run 5000
|
||||
41
examples/USER/misc/rhok/in.setup
Normal file
41
examples/USER/misc/rhok/in.setup
Normal file
@ -0,0 +1,41 @@
|
||||
units lj
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
# truncated and shifted LJ potential
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
|
||||
# fcc lattice
|
||||
lattice fcc 0.9731
|
||||
region my_box block 0 8.0 0 8.0 0 20.0
|
||||
create_box 1 my_box
|
||||
region particles block 0 8.0 0 8.0 0 20.0
|
||||
create_atoms 1 region particles
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
mass 1 1.0
|
||||
change_box all z final 0.0 34 remap units box
|
||||
|
||||
# select particles in one side of the elongated box
|
||||
region left plane 0 0 10 0 0 1
|
||||
group left region left
|
||||
|
||||
velocity left create 6.0 1 mom yes rot yes
|
||||
|
||||
# simulation parameters
|
||||
neighbor 0.6 bin
|
||||
timestep 0.004
|
||||
run_style verlet
|
||||
fix ensemble left nve # Note: only move particle in left-hand side
|
||||
fix langevin left langevin 3.0 0.8 100.0 2017
|
||||
|
||||
# outout
|
||||
thermo_style custom step temp pzz pe lz
|
||||
thermo 100
|
||||
# dump dumpXYZ all xyz 100 traj.xyz
|
||||
|
||||
# run reduced for demonstration purposes
|
||||
# run 10000
|
||||
run 5000
|
||||
write_data data.halfhalf
|
||||
187
examples/USER/misc/rhok/log.22Sep2017.crystal.g++.1
Normal file
187
examples/USER/misc/rhok/log.22Sep2017.crystal.g++.1
Normal file
@ -0,0 +1,187 @@
|
||||
LAMMPS (22 Sep 2017)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
units lj
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
# truncated and shifted LJ potential
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
lattice fcc 0.9731
|
||||
Lattice spacing in x,y,z = 1.6019 1.6019 1.6019
|
||||
region my_box block 0 8.0 0 8.0 0 20.0
|
||||
create_box 1 my_box
|
||||
Created orthogonal box = (0 0 0) to (12.8152 12.8152 32.0379)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
region particles block 0 8.0 0 8.0 0 20.0
|
||||
create_atoms 1 region particles
|
||||
Created 5120 atoms
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
pair_modify tail no
|
||||
pair_modify shift yes
|
||||
mass 1 1.0
|
||||
velocity all create 1.6 1 mom yes rot yes
|
||||
|
||||
# simulation parameters
|
||||
neighbor 0.6 bin
|
||||
timestep 0.004
|
||||
run_style verlet
|
||||
fix ensemble all npt temp 0.8 0.8 4.0 aniso 2.185 2.185 8.0 pchain 32
|
||||
|
||||
# computing long-range order (no bias is added since k=0)
|
||||
fix bias all rhok 16 0 0 0.0 0.0
|
||||
|
||||
# output
|
||||
thermo 50
|
||||
thermo_style custom step temp press density f_bias[3]
|
||||
# dump dumpXYZ all xyz 2000 traj.xyz
|
||||
|
||||
# NOTE: this is cut short to 5000 steps for demonstration purposes
|
||||
# run 100000
|
||||
run 5000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.1
|
||||
ghost atom cutoff = 3.1
|
||||
binsize = 1.55, bins = 9 9 21
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.523 | 4.523 | 4.523 Mbytes
|
||||
Step Temp Press Density f_bias[3]
|
||||
0 1.6 -2.7568106 0.9731 71.554175
|
||||
50 0.78457786 3.1029192 0.97362639 54.327705
|
||||
100 0.85528971 2.4670259 0.97213457 55.189308
|
||||
150 0.85241818 2.3210306 0.9698027 56.138125
|
||||
200 0.82301385 2.3448692 0.96708227 55.735326
|
||||
250 0.83076383 2.0890816 0.96425763 55.320625
|
||||
300 0.81602823 2.0118796 0.96173925 54.095736
|
||||
350 0.81084006 1.9122192 0.95979392 54.526429
|
||||
400 0.80776593 1.8502174 0.95869117 54.434901
|
||||
450 0.80694697 1.8435873 0.95851085 53.20809
|
||||
500 0.81384248 1.8111331 0.95917305 53.419395
|
||||
550 0.81027072 1.9222272 0.96056019 54.36723
|
||||
600 0.81199582 2.0291945 0.96248486 54.888582
|
||||
650 0.82507964 2.0706462 0.96467227 55.807137
|
||||
700 0.832562 2.1471442 0.9668913 56.721267
|
||||
750 0.83358138 2.2674672 0.968984 56.723838
|
||||
800 0.83477542 2.3658275 0.97072603 56.234689
|
||||
850 0.84722921 2.3506233 0.97189674 56.262424
|
||||
900 0.83526965 2.4532068 0.97248856 56.219103
|
||||
950 0.83174583 2.4763958 0.97249527 56.409813
|
||||
1000 0.83022557 2.4334341 0.97194093 55.890858
|
||||
1050 0.83208978 2.3478416 0.97092452 54.934691
|
||||
1100 0.82789545 2.272404 0.9696152 54.90894
|
||||
1150 0.82678617 2.1798046 0.96819776 54.927782
|
||||
1200 0.8088841 2.1960256 0.96687735 54.914327
|
||||
1250 0.81512784 2.0736261 0.96579008 53.927291
|
||||
1300 0.81271067 2.0297138 0.96504188 54.289698
|
||||
1350 0.8201767 1.9493976 0.96464115 55.342131
|
||||
1400 0.80880489 2.0016987 0.96468463 55.757758
|
||||
1450 0.8114196 2.0282699 0.96514115 55.865676
|
||||
1500 0.81085664 2.0838361 0.96591869 56.553425
|
||||
1550 0.81257075 2.1283157 0.96694549 56.921544
|
||||
1600 0.82617645 2.1017986 0.96817075 56.858808
|
||||
1650 0.82616141 2.1885582 0.96941073 56.717917
|
||||
1700 0.81634174 2.2996967 0.97047447 56.453745
|
||||
1750 0.82447573 2.2924266 0.97128663 56.916813
|
||||
1800 0.83610432 2.236456 0.97178453 56.400752
|
||||
1850 0.82479203 2.3103493 0.97197318 55.891368
|
||||
1900 0.82298992 2.3059289 0.97181084 55.680563
|
||||
1950 0.82098556 2.2801003 0.97138609 55.754406
|
||||
2000 0.8181203 2.2480175 0.97078591 55.801363
|
||||
2050 0.82822293 2.1208884 0.97004107 55.687
|
||||
2100 0.7976818 2.2711199 0.96930169 55.459844
|
||||
2150 0.81817848 2.0680351 0.96860201 56.514731
|
||||
2200 0.80707457 2.1112141 0.96810519 55.504308
|
||||
2250 0.81651111 2.0077603 0.96781161 55.635702
|
||||
2300 0.80634534 2.0662241 0.96777177 56.051086
|
||||
2350 0.80892831 2.0619333 0.96799037 56.548711
|
||||
2400 0.82454203 1.9585394 0.9684672 56.695235
|
||||
2450 0.81517178 2.075283 0.96921622 56.613082
|
||||
2500 0.80969595 2.1624581 0.97010528 56.57516
|
||||
2550 0.80862964 2.2088622 0.97100774 57.072594
|
||||
2600 0.81468816 2.2293973 0.97192868 56.879212
|
||||
2650 0.82063107 2.2244887 0.97269715 55.454502
|
||||
2700 0.81691618 2.2789954 0.97319841 54.421943
|
||||
2750 0.8141787 2.2981247 0.97340453 54.469921
|
||||
2800 0.81973871 2.2422136 0.9733278 55.959235
|
||||
2850 0.82037399 2.201016 0.97302727 56.685826
|
||||
2900 0.80650164 2.2672955 0.9726128 56.574395
|
||||
2950 0.81752783 2.1317541 0.97207545 56.809412
|
||||
3000 0.80836945 2.1461483 0.97151192 57.205206
|
||||
3050 0.80785109 2.1189056 0.97103049 57.418763
|
||||
3100 0.79835058 2.146416 0.97069705 57.329383
|
||||
3150 0.79792089 2.1388267 0.97051679 57.279852
|
||||
3200 0.79934603 2.1049562 0.97046851 56.351494
|
||||
3250 0.79523232 2.1549779 0.97063956 56.00356
|
||||
3300 0.8004458 2.1145975 0.97096375 55.725509
|
||||
3350 0.79772742 2.166292 0.97143785 55.558075
|
||||
3400 0.80621087 2.1309217 0.97198456 55.816704
|
||||
3450 0.80540626 2.1727557 0.97263267 55.671283
|
||||
3500 0.80867606 2.1905129 0.97321538 55.390086
|
||||
3550 0.80917896 2.2144872 0.97370472 55.742085
|
||||
3600 0.80930722 2.2288938 0.974093 56.23064
|
||||
3650 0.80390523 2.2777327 0.97431886 56.084731
|
||||
3700 0.79620093 2.3143541 0.97435103 55.942797
|
||||
3750 0.80252393 2.2564638 0.9741875 56.042055
|
||||
3800 0.78981264 2.3156481 0.9739121 55.971352
|
||||
3850 0.80391951 2.1804938 0.97351088 55.855858
|
||||
3900 0.81268129 2.0855818 0.97308521 56.288315
|
||||
3950 0.7958182 2.175259 0.97273088 56.140141
|
||||
4000 0.80054484 2.1163279 0.97243129 56.366818
|
||||
4050 0.79760187 2.105362 0.97225308 56.684619
|
||||
4100 0.79283424 2.1357603 0.972206 56.203341
|
||||
4150 0.79543088 2.1036951 0.97227608 56.606315
|
||||
4200 0.79410999 2.1402049 0.97253758 56.277478
|
||||
4250 0.7985469 2.1285154 0.97293622 56.356076
|
||||
4300 0.79700387 2.1470614 0.97337091 56.722298
|
||||
4350 0.80479321 2.1403244 0.97384674 57.212574
|
||||
4400 0.79505512 2.224463 0.97434415 56.561877
|
||||
4450 0.78346648 2.3347865 0.97478611 56.681362
|
||||
4500 0.79811284 2.259123 0.97510069 57.365929
|
||||
4550 0.80015561 2.2345254 0.97523653 57.34799
|
||||
4600 0.79648318 2.2651869 0.97525975 57.502318
|
||||
4650 0.80524865 2.1943025 0.97507638 57.702488
|
||||
4700 0.80397778 2.1758629 0.97478268 57.162107
|
||||
4750 0.78914913 2.2470191 0.9744625 56.849565
|
||||
4800 0.79324889 2.2028993 0.97408817 57.572344
|
||||
4850 0.78993209 2.181763 0.97373372 57.683552
|
||||
4900 0.79041263 2.1604768 0.97348692 56.922312
|
||||
4950 0.79741332 2.1105901 0.97332545 57.488932
|
||||
5000 0.7891178 2.163416 0.97328963 57.365252
|
||||
Loop time of 33.6467 on 1 procs for 5000 steps with 5120 atoms
|
||||
|
||||
Performance: 51357.258 tau/day, 148.603 timesteps/s
|
||||
99.7% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 24.699 | 24.699 | 24.699 | 0.0 | 73.41
|
||||
Neigh | 2.8894 | 2.8894 | 2.8894 | 0.0 | 8.59
|
||||
Comm | 0.34907 | 0.34907 | 0.34907 | 0.0 | 1.04
|
||||
Output | 0.0056 | 0.0056 | 0.0056 | 0.0 | 0.02
|
||||
Modify | 5.5718 | 5.5718 | 5.5718 | 0.0 | 16.56
|
||||
Other | | 0.1319 | | | 0.39
|
||||
|
||||
Nlocal: 5120 ave 5120 max 5120 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 7594 ave 7594 max 7594 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 323081 ave 323081 max 323081 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 323081
|
||||
Ave neighs/atom = 63.1018
|
||||
Neighbor list builds = 248
|
||||
Dangerous builds = 0
|
||||
|
||||
Please see the log.cite file for references relevant to this simulation
|
||||
|
||||
Total wall time: 0:00:33
|
||||
187
examples/USER/misc/rhok/log.22Sep2017.crystal.g++.4
Normal file
187
examples/USER/misc/rhok/log.22Sep2017.crystal.g++.4
Normal file
@ -0,0 +1,187 @@
|
||||
LAMMPS (22 Sep 2017)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
units lj
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
# truncated and shifted LJ potential
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
lattice fcc 0.9731
|
||||
Lattice spacing in x,y,z = 1.6019 1.6019 1.6019
|
||||
region my_box block 0 8.0 0 8.0 0 20.0
|
||||
create_box 1 my_box
|
||||
Created orthogonal box = (0 0 0) to (12.8152 12.8152 32.0379)
|
||||
1 by 1 by 4 MPI processor grid
|
||||
region particles block 0 8.0 0 8.0 0 20.0
|
||||
create_atoms 1 region particles
|
||||
Created 5120 atoms
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
pair_modify tail no
|
||||
pair_modify shift yes
|
||||
mass 1 1.0
|
||||
velocity all create 1.6 1 mom yes rot yes
|
||||
|
||||
# simulation parameters
|
||||
neighbor 0.6 bin
|
||||
timestep 0.004
|
||||
run_style verlet
|
||||
fix ensemble all npt temp 0.8 0.8 4.0 aniso 2.185 2.185 8.0 pchain 32
|
||||
|
||||
# computing long-range order (no bias is added since k=0)
|
||||
fix bias all rhok 16 0 0 0.0 0.0
|
||||
|
||||
# output
|
||||
thermo 50
|
||||
thermo_style custom step temp press density f_bias[3]
|
||||
# dump dumpXYZ all xyz 2000 traj.xyz
|
||||
|
||||
# NOTE: this is cut short to 5000 steps for demonstration purposes
|
||||
# run 100000
|
||||
run 5000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.1
|
||||
ghost atom cutoff = 3.1
|
||||
binsize = 1.55, bins = 9 9 21
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.23 | 3.23 | 3.23 Mbytes
|
||||
Step Temp Press Density f_bias[3]
|
||||
0 1.6 -2.7568106 0.9731 71.554175
|
||||
50 0.78457786 3.1029192 0.97362639 54.327705
|
||||
100 0.85528971 2.4670259 0.97213457 55.189308
|
||||
150 0.85241818 2.3210306 0.9698027 56.138125
|
||||
200 0.82301385 2.3448692 0.96708227 55.735326
|
||||
250 0.83076383 2.0890816 0.96425763 55.320625
|
||||
300 0.81602823 2.0118796 0.96173925 54.095736
|
||||
350 0.81084006 1.9122192 0.95979392 54.526429
|
||||
400 0.80776593 1.8502174 0.95869117 54.434901
|
||||
450 0.80694697 1.8435873 0.95851085 53.20809
|
||||
500 0.81384248 1.8111331 0.95917305 53.419395
|
||||
550 0.81027072 1.9222272 0.96056019 54.36723
|
||||
600 0.81199582 2.0291945 0.96248486 54.888582
|
||||
650 0.82507964 2.0706462 0.96467227 55.807137
|
||||
700 0.832562 2.1471442 0.9668913 56.721267
|
||||
750 0.83358138 2.2674672 0.968984 56.723838
|
||||
800 0.83477542 2.3658275 0.97072603 56.234689
|
||||
850 0.84722921 2.3506233 0.97189674 56.262424
|
||||
900 0.83526965 2.4532068 0.97248856 56.219103
|
||||
950 0.83174583 2.4763958 0.97249527 56.409813
|
||||
1000 0.83022557 2.4334341 0.97194093 55.890858
|
||||
1050 0.83208978 2.3478416 0.97092452 54.934691
|
||||
1100 0.82789545 2.272404 0.9696152 54.90894
|
||||
1150 0.82678617 2.1798046 0.96819776 54.927782
|
||||
1200 0.8088841 2.1960256 0.96687735 54.914327
|
||||
1250 0.81512784 2.0736261 0.96579008 53.927291
|
||||
1300 0.81271067 2.0297138 0.96504188 54.289698
|
||||
1350 0.8201767 1.9493976 0.96464115 55.342131
|
||||
1400 0.80880489 2.0016987 0.96468463 55.757758
|
||||
1450 0.8114196 2.0282699 0.96514115 55.865676
|
||||
1500 0.81085664 2.0838361 0.96591869 56.553425
|
||||
1550 0.81257075 2.1283157 0.96694549 56.921544
|
||||
1600 0.82617645 2.1017986 0.96817075 56.858808
|
||||
1650 0.82616141 2.1885582 0.96941073 56.717917
|
||||
1700 0.81634174 2.2996967 0.97047447 56.453745
|
||||
1750 0.82447573 2.2924266 0.97128663 56.916813
|
||||
1800 0.83610432 2.236456 0.97178453 56.400752
|
||||
1850 0.824792 2.3103491 0.97197318 55.891368
|
||||
1900 0.82298989 2.3059287 0.97181084 55.680562
|
||||
1950 0.82098545 2.2801009 0.97138609 55.754404
|
||||
2000 0.81812031 2.2480166 0.97078591 55.801371
|
||||
2050 0.82822262 2.1208887 0.97004108 55.687001
|
||||
2100 0.79768162 2.2711186 0.9693017 55.459852
|
||||
2150 0.81817874 2.0680317 0.96860202 56.514744
|
||||
2200 0.80707412 2.1112032 0.96810521 55.504308
|
||||
2250 0.81650921 2.0077757 0.96781164 55.635717
|
||||
2300 0.80634656 2.066186 0.96777181 56.051088
|
||||
2350 0.80893174 2.0619084 0.96799042 56.548711
|
||||
2400 0.82453783 1.9585503 0.96846727 56.695111
|
||||
2450 0.81517275 2.0752617 0.96921631 56.614046
|
||||
2500 0.80969622 2.1624476 0.9701054 56.574846
|
||||
2550 0.80861922 2.2089505 0.97100787 57.072334
|
||||
2600 0.81468888 2.2293754 0.97192875 56.879416
|
||||
2650 0.82061239 2.2245462 0.97269723 55.442015
|
||||
2700 0.81687473 2.2792015 0.97319852 54.420301
|
||||
2750 0.81416567 2.2982988 0.97340467 54.469427
|
||||
2800 0.81978563 2.2418723 0.97332803 55.965451
|
||||
2850 0.82069759 2.1988948 0.97302752 56.686807
|
||||
2900 0.80631184 2.2684466 0.97261407 56.585682
|
||||
2950 0.81759744 2.1312328 0.97207888 56.812431
|
||||
3000 0.80748056 2.152676 0.97151807 57.178849
|
||||
3050 0.80789237 2.118162 0.97103728 57.433724
|
||||
3100 0.79882523 2.1414744 0.97070338 57.34686
|
||||
3150 0.79803949 2.1359043 0.97052875 57.382544
|
||||
3200 0.79170386 2.1548392 0.97049349 56.465806
|
||||
3250 0.78848813 2.1990144 0.97067557 55.929088
|
||||
3300 0.79820555 2.1304609 0.97101444 55.624487
|
||||
3350 0.79250565 2.1971235 0.97149233 55.933615
|
||||
3400 0.80584844 2.1417239 0.97206083 55.85922
|
||||
3450 0.80685744 2.1640501 0.97266047 55.135963
|
||||
3500 0.80751888 2.1858277 0.97318703 55.407581
|
||||
3550 0.79882754 2.2796452 0.97363149 55.392366
|
||||
3600 0.80219171 2.2715765 0.97392571 55.867887
|
||||
3650 0.79061794 2.3492866 0.97410985 56.0192
|
||||
3700 0.8058483 2.2327904 0.97411924 56.491303
|
||||
3750 0.79460746 2.2941868 0.97397764 55.929912
|
||||
3800 0.80447478 2.2018009 0.97367627 55.663208
|
||||
3850 0.80355335 2.17638 0.97333164 55.637261
|
||||
3900 0.80388417 2.1531434 0.9729647 56.03794
|
||||
3950 0.79557409 2.1853318 0.9726503 56.132348
|
||||
4000 0.79547396 2.1457051 0.97235244 55.552675
|
||||
4050 0.8058384 2.0637678 0.97213346 56.185416
|
||||
4100 0.7976931 2.1028246 0.97208255 56.050347
|
||||
4150 0.79555522 2.115473 0.97216375 56.868136
|
||||
4200 0.79324134 2.1510383 0.97246129 56.462635
|
||||
4250 0.80788167 2.0534887 0.97287821 55.650788
|
||||
4300 0.79389865 2.2019815 0.97337765 55.596846
|
||||
4350 0.79786309 2.1851119 0.97389825 57.000921
|
||||
4400 0.79986518 2.1997541 0.97443778 57.551564
|
||||
4450 0.8063901 2.1893874 0.97493151 57.236138
|
||||
4500 0.80005802 2.250364 0.97533075 57.341358
|
||||
4550 0.79707443 2.2995576 0.97557554 57.338713
|
||||
4600 0.79869949 2.2807889 0.97563277 57.084504
|
||||
4650 0.79694427 2.2673215 0.97544638 57.025663
|
||||
4700 0.79023986 2.2884131 0.97511483 57.131188
|
||||
4750 0.79566823 2.2215519 0.97464304 57.045676
|
||||
4800 0.78936986 2.2268037 0.97410626 57.384178
|
||||
4850 0.79025913 2.1836718 0.973616 57.78438
|
||||
4900 0.80138424 2.0657609 0.9732124 57.888266
|
||||
4950 0.77853735 2.207944 0.97296347 57.312213
|
||||
5000 0.79115984 2.1035893 0.97285578 57.109472
|
||||
Loop time of 9.53489 on 4 procs for 5000 steps with 5120 atoms
|
||||
|
||||
Performance: 181229.223 tau/day, 524.390 timesteps/s
|
||||
99.1% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 6.312 | 6.4238 | 6.5139 | 3.1 | 67.37
|
||||
Neigh | 0.72062 | 0.73538 | 0.74531 | 1.1 | 7.71
|
||||
Comm | 0.52697 | 0.64152 | 0.78688 | 14.1 | 6.73
|
||||
Output | 0.0028393 | 0.0029888 | 0.0033851 | 0.4 | 0.03
|
||||
Modify | 1.6249 | 1.669 | 1.7253 | 2.9 | 17.50
|
||||
Other | | 0.06221 | | | 0.65
|
||||
|
||||
Nlocal: 1280 ave 1289 max 1266 min
|
||||
Histogram: 1 0 0 0 0 1 0 0 0 2
|
||||
Nghost: 3346.25 ave 3379 max 3331 min
|
||||
Histogram: 1 2 0 0 0 0 0 0 0 1
|
||||
Neighs: 80701.8 ave 81534 max 79755 min
|
||||
Histogram: 1 0 1 0 0 0 0 0 1 1
|
||||
|
||||
Total # of neighbors = 322807
|
||||
Ave neighs/atom = 63.0482
|
||||
Neighbor list builds = 248
|
||||
Dangerous builds = 0
|
||||
|
||||
Please see the log.cite file for references relevant to this simulation
|
||||
|
||||
Total wall time: 0:00:09
|
||||
186
examples/USER/misc/rhok/log.22Sep2017.pinning.g++.1
Normal file
186
examples/USER/misc/rhok/log.22Sep2017.pinning.g++.1
Normal file
@ -0,0 +1,186 @@
|
||||
LAMMPS (22 Sep 2017)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
units lj
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
# truncated and shifted LJ potential
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
read_data data.halfhalf
|
||||
orthogonal box = (0 0 0) to (12.8152 12.8152 34)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
5120 atoms
|
||||
reading velocities ...
|
||||
5120 velocities
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
mass 1 1.0
|
||||
|
||||
# simulation parameters
|
||||
neighbor 0.6 bin
|
||||
timestep 0.004
|
||||
run_style verlet
|
||||
|
||||
velocity all create 0.8 1 mom yes rot yes
|
||||
fix ensemble all npt temp 0.8 0.8 4.0 z 2.185 2.185 8.0
|
||||
fix 100 all momentum 100 linear 1 1 1
|
||||
|
||||
# harmonic rho_k bias-field
|
||||
# nx ny nz k a
|
||||
fix bias all rhok 16 0 0 4.0 26.00
|
||||
|
||||
# output U_bias rho_k_RE rho_k_IM |rho_k|
|
||||
thermo_style custom step temp pzz pe lz f_bias f_bias[1] f_bias[2] f_bias[3]
|
||||
thermo 50
|
||||
dump dumpXYZ all xyz 500 traj.xyz
|
||||
|
||||
# NOTE: run reduced for demonstration purposes
|
||||
# run 50000
|
||||
run 5000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.1
|
||||
ghost atom cutoff = 3.1
|
||||
binsize = 1.55, bins = 9 9 22
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.723 | 5.723 | 5.723 Mbytes
|
||||
Step Temp Pzz PotEng Lz f_bias f_bias[1] f_bias[2] f_bias[3]
|
||||
0 0.8 5.1566801 -4.8556711 34 179.52419 35.473155 -0.2832763 35.474286
|
||||
50 1.072533 3.8158392 -5.2704532 34.024206 0.010596224 25.927135 -0.063106738 25.927212
|
||||
100 1.1093231 3.6703116 -5.3380965 34.094814 1.8552612 26.958236 -0.51403326 26.963136
|
||||
150 1.1080721 3.8202601 -5.3568368 34.207473 0.39188605 26.420755 -1.0759575 26.442655
|
||||
200 1.1435287 3.3445987 -5.4365298 34.354119 3.0758718 27.239465 -0.19115251 27.240135
|
||||
250 1.1203046 3.4669456 -5.4293867 34.511473 0.8543814 26.652785 -0.20818214 26.653598
|
||||
300 1.1012709 3.4583154 -5.4281803 34.664509 2.4837156 27.097674 0.9518628 27.114387
|
||||
350 1.0439632 3.8953869 -5.368619 34.810399 0.55385719 26.518391 0.64525272 26.52624
|
||||
400 1.0083878 4.0523864 -5.3418278 34.957669 0.34806057 26.404011 0.83368604 26.417169
|
||||
450 0.9675244 4.310087 -5.3089468 35.114208 0.7921285 26.607512 1.077889 26.629336
|
||||
500 0.94605476 4.1050097 -5.3062273 35.284018 0.87757754 26.639125 1.1140858 26.662411
|
||||
550 0.92662323 3.9299063 -5.3062927 35.458565 1.3746441 26.773494 1.7256603 26.829049
|
||||
600 0.89723165 3.7683555 -5.289725 35.629881 0.46692943 26.372973 2.4135502 26.483182
|
||||
650 0.90612566 3.1098837 -5.3267851 35.788537 0.032662126 25.918784 3.2982102 26.127793
|
||||
700 0.9152508 2.6527976 -5.3597799 35.923343 0.014621588 25.834591 3.6093492 26.085503
|
||||
750 0.90156356 2.3474851 -5.3545938 36.031813 0.75225637 26.307204 4.0247215 26.613293
|
||||
800 0.89748513 1.9825103 -5.3610202 36.113888 0.33402511 26.261326 2.7858039 26.408672
|
||||
850 0.89496343 1.8906342 -5.3673514 36.169424 0.85431557 26.534648 2.5150347 26.653573
|
||||
900 0.89463983 1.5654217 -5.3753283 36.20181 1.5689239 26.764737 2.5474794 26.885699
|
||||
950 0.88663832 1.4399476 -5.3703322 36.209971 0.044436903 25.818418 1.2963356 25.850941
|
||||
1000 0.87407208 1.485718 -5.3572665 36.195386 1.4405611 26.828072 1.0520795 26.848693
|
||||
1050 0.87580489 1.163155 -5.3647269 36.160279 0.15319559 26.234791 1.4845964 26.276763
|
||||
1100 0.86978111 1.3743181 -5.3594907 36.104958 1.1313537 25.19895 1.5711793 25.247885
|
||||
1150 0.86987861 1.3212927 -5.3628503 36.035486 0.039865678 25.841762 0.93898962 25.858816
|
||||
1200 0.87142486 1.3293818 -5.3676854 35.954411 0.16827389 25.70952 -0.14639427 25.709936
|
||||
1250 0.87582265 1.3203803 -5.3764058 35.86575 0.25946652 25.639682 0.082696867 25.639815
|
||||
1300 0.87371627 1.4680294 -5.375151 35.772824 0.17697069 25.701417 0.2397926 25.702535
|
||||
1350 0.88617453 1.5923057 -5.3954912 35.681046 0.00049155526 25.973634 -0.74521794 25.984323
|
||||
1400 0.87809636 1.5821707 -5.3850722 35.594706 0.024050814 26.107395 -0.34393685 26.10966
|
||||
1450 0.87912192 1.7820174 -5.3885842 35.514722 0.20999914 25.667238 -0.66933655 25.675964
|
||||
1500 0.88293618 2.0295275 -5.3963602 35.443445 0.60232374 25.376395 -1.9501461 25.451218
|
||||
1550 0.90012542 1.9476472 -5.4249456 35.382791 0.4488038 26.448928 -1.1452474 26.473711
|
||||
1600 0.89155063 2.2462603 -5.4153432 35.332095 0.039621687 26.138157 -0.36825239 26.140751
|
||||
1650 0.8942624 2.343747 -5.4233433 35.294954 0.0089980332 26.064277 0.38189192 26.067075
|
||||
1700 0.90047841 2.451289 -5.4376312 35.27234 0.86985171 26.646438 0.83408084 26.659489
|
||||
1750 0.87586052 2.6381221 -5.4067182 35.264564 6.346204 27.652722 2.6699692 27.78132
|
||||
1800 0.87392582 2.6338176 -5.4109056 35.270073 0.046414129 26.016188 2.6651053 26.152339
|
||||
1850 0.86540415 2.5434301 -5.4058587 35.285902 0.054615472 26.074279 2.1799787 26.165251
|
||||
1900 0.87043082 2.5776772 -5.4216997 35.309062 0.68978148 26.38648 3.2614091 26.587274
|
||||
1950 0.86281992 2.3107762 -5.4188978 35.338501 0.0072672577 25.736893 3.2375012 25.93972
|
||||
2000 0.85905576 2.2894047 -5.4215995 35.36787 0.095633435 26.072085 2.7685848 26.21867
|
||||
2050 0.85793751 2.2382039 -5.4279351 35.395213 0.13602344 25.598457 2.6881027 25.739209
|
||||
2100 0.85585253 2.0765811 -5.4324511 35.418877 0.0059888115 25.754128 3.1436222 25.945279
|
||||
2150 0.86701057 1.8449875 -5.4562208 35.436124 0.097328618 25.413697 4.3268293 25.7794
|
||||
2200 0.85168154 1.9024923 -5.4395776 35.44246 0.20764576 25.094788 5.4406104 25.677784
|
||||
2250 0.8429719 1.870335 -5.4320586 35.438363 0.34419961 24.998478 5.4475709 25.585151
|
||||
2300 0.84176891 1.7100228 -5.4351472 35.422863 0.76036958 24.697018 5.8629967 25.383409
|
||||
2350 0.84601588 1.8539039 -5.4456629 35.395979 0.38437531 25.647986 6.4163366 26.438392
|
||||
2400 0.84637647 1.6299091 -5.4498948 35.36125 0.074236719 24.995872 7.8269968 26.192661
|
||||
2450 0.85650449 1.6828907 -5.4683101 35.316669 0.3671827 25.280669 7.7040329 26.428476
|
||||
2500 0.84963707 1.7305222 -5.4605394 35.265508 0.1406965 25.236741 7.2780025 26.265232
|
||||
2550 0.84084365 1.8758368 -5.4497083 35.208725 0.33937687 24.544376 7.2334512 25.588067
|
||||
2600 0.85317342 1.7781674 -5.4702734 35.149747 0.60378248 24.046307 8.3370138 25.450554
|
||||
2650 0.85487644 2.0065374 -5.4747643 35.090431 0.22483651 24.937101 8.4669004 26.335288
|
||||
2700 0.84550083 1.9363031 -5.4628401 35.034349 0.43442577 24.250196 7.9943738 25.533939
|
||||
2750 0.85843419 2.0473138 -5.484528 34.980671 0.45959294 24.17438 8.179356 25.520629
|
||||
2800 0.86047607 2.0754522 -5.4899966 34.932466 0.00038123477 24.619856 8.3153434 25.986194
|
||||
2850 0.86375793 2.2751324 -5.4977459 34.892337 0.0016455263 24.927259 7.289789 25.971316
|
||||
2900 0.84438986 2.3790377 -5.4721407 34.863512 1.2372354 25.819445 7.132603 26.786523
|
||||
2950 0.8551438 2.2721926 -5.4925958 34.84473 1.5405388 25.956466 6.976385 26.87765
|
||||
3000 0.83737707 2.4009609 -5.4707188 34.834171 0.28507766 25.643879 6.1778846 26.377543
|
||||
3050 0.84923235 2.4187994 -5.4938573 34.830836 0.036512025 25.139252 7.1457857 26.135115
|
||||
3100 0.83872396 2.3811576 -5.4838787 34.833673 0.246984 24.21358 8.4588719 25.648586
|
||||
3150 0.83957817 2.3901421 -5.4913118 34.84163 0.20477984 24.309852 10.088243 26.319984
|
||||
3200 0.84283033 2.17292 -5.5025459 34.853975 1.3367154 24.581685 10.72011 26.817531
|
||||
3250 0.84002379 2.1247709 -5.5044955 34.866106 0.11434509 24.463842 9.4874246 26.239108
|
||||
3300 0.83311101 2.1492058 -5.5000847 34.875625 0.0053284993 23.815298 10.560222 26.051616
|
||||
3350 0.83216701 1.9587594 -5.5043446 34.881623 0.58985562 23.934253 11.475462 26.543073
|
||||
3400 0.82396039 2.1914951 -5.4971506 34.881199 0.098206955 23.393402 10.82936 25.778407
|
||||
3450 0.83483253 1.9783612 -5.5182844 34.877327 7.6571212e-05 23.675355 10.761012 26.006188
|
||||
3500 0.82712062 1.9718522 -5.5111818 34.869214 0.014836125 23.314122 11.312845 25.913872
|
||||
3550 0.8342927 1.9114357 -5.5259968 34.855179 1.4050442 22.442758 11.377192 25.161834
|
||||
3600 0.82631637 1.9836457 -5.5176244 34.835738 0.084637609 23.413286 10.824194 25.794285
|
||||
3650 0.82425697 1.9218541 -5.5178548 34.811901 0.11000071 22.788707 12.022258 25.765478
|
||||
3700 0.82491437 1.9624493 -5.521738 34.782417 0.034984027 23.011433 12.384217 26.132257
|
||||
3750 0.82758167 2.0856442 -5.5283493 34.748872 0.001362163 23.030662 12.122144 26.026098
|
||||
3800 0.81891108 1.9858824 -5.5177774 34.714618 0.17075993 23.21344 12.345683 26.292199
|
||||
3850 0.83392227 2.1631514 -5.5426333 34.681146 0.82106473 22.510204 11.678329 25.359272
|
||||
3900 0.82230654 2.0017132 -5.5276756 34.650221 0.48735732 23.444809 12.339117 26.493638
|
||||
3950 0.81929288 2.1749936 -5.5256673 34.61976 0.089219805 23.540062 11.527925 26.211211
|
||||
4000 0.83415169 2.0446791 -5.5506187 34.591266 0.15593937 23.742282 11.26508 26.279231
|
||||
4050 0.82362522 2.1998083 -5.5375157 34.563164 0.25405351 23.913834 11.081011 26.356408
|
||||
4100 0.82589505 2.3074345 -5.543718 34.537763 0.080213125 24.03253 10.435108 26.200266
|
||||
4150 0.83855297 2.2424199 -5.5658171 34.517758 0.62913338 23.974257 8.5079223 25.439138
|
||||
4200 0.82522111 2.2622619 -5.5493275 34.502472 1.8756517 25.754617 7.9996898 26.968414
|
||||
4250 0.82083124 2.4135193 -5.5464932 34.4919 1.1217436 25.8944 6.7070444 26.748914
|
||||
4300 0.83059704 2.1375109 -5.5653245 34.487366 0.53623038 26.05979 4.9072346 26.517798
|
||||
4350 0.82755047 2.1159821 -5.5650889 34.484506 0.10017723 25.405936 4.3532342 25.776195
|
||||
4400 0.83192877 2.180851 -5.5759565 34.480909 0.053664012 25.993034 2.9844338 26.163805
|
||||
4450 0.81860572 2.2333381 -5.5602138 34.477183 0.037864077 25.792233 1.9038859 25.862406
|
||||
4500 0.82821762 2.1142023 -5.5788682 34.474784 0.088221344 26.20329 0.59417897 26.210025
|
||||
4550 0.8205154 2.0896984 -5.5715531 34.472405 0.016076192 26.083166 -0.58187024 26.089655
|
||||
4600 0.81294948 2.2274108 -5.5642678 34.469014 0.033774986 25.869616 0.14951307 25.870048
|
||||
4650 0.80890532 2.1556346 -5.5622407 34.465277 0.67402048 25.413229 -0.56341819 25.419474
|
||||
4700 0.82070227 1.9852605 -5.583747 34.460206 0.052623237 26.158394 -0.44673492 26.162209
|
||||
4750 0.81451857 2.1097726 -5.5779782 34.451438 0.12221733 25.733718 -0.9911436 25.752798
|
||||
4800 0.81300453 2.0211325 -5.5790076 34.439504 0.34536082 26.358606 -1.7335167 26.415548
|
||||
4850 0.82035497 1.9489595 -5.5929886 34.424097 0.70899626 26.575865 -1.0191012 26.595397
|
||||
4900 0.8127066 2.1312269 -5.584271 34.405998 0.087959314 26.185217 -1.1329105 26.209713
|
||||
4950 0.81252621 2.1094866 -5.5866296 34.387869 0.79067667 26.564722 -1.8456354 26.628759
|
||||
5000 0.80575936 2.1875995 -5.579054 34.370679 0.031787364 26.027557 -2.2666774 26.12607
|
||||
Loop time of 32.2397 on 1 procs for 5000 steps with 5120 atoms
|
||||
|
||||
Performance: 53598.557 tau/day, 155.088 timesteps/s
|
||||
99.4% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 22.967 | 22.967 | 22.967 | 0.0 | 71.24
|
||||
Neigh | 2.9914 | 2.9914 | 2.9914 | 0.0 | 9.28
|
||||
Comm | 0.37485 | 0.37485 | 0.37485 | 0.0 | 1.16
|
||||
Output | 0.064337 | 0.064337 | 0.064337 | 0.0 | 0.20
|
||||
Modify | 5.7143 | 5.7143 | 5.7143 | 0.0 | 17.72
|
||||
Other | | 0.1281 | | | 0.40
|
||||
|
||||
Nlocal: 5120 ave 5120 max 5120 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 7962 ave 7962 max 7962 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 296101 ave 296101 max 296101 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 296101
|
||||
Ave neighs/atom = 57.8322
|
||||
Neighbor list builds = 283
|
||||
Dangerous builds = 0
|
||||
|
||||
Please see the log.cite file for references relevant to this simulation
|
||||
|
||||
Total wall time: 0:00:32
|
||||
186
examples/USER/misc/rhok/log.22Sep2017.pinning.g++.4
Normal file
186
examples/USER/misc/rhok/log.22Sep2017.pinning.g++.4
Normal file
@ -0,0 +1,186 @@
|
||||
LAMMPS (22 Sep 2017)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
units lj
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
# truncated and shifted LJ potential
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
read_data data.halfhalf
|
||||
orthogonal box = (0 0 0) to (12.8152 12.8152 34)
|
||||
1 by 1 by 4 MPI processor grid
|
||||
reading atoms ...
|
||||
5120 atoms
|
||||
reading velocities ...
|
||||
5120 velocities
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
mass 1 1.0
|
||||
|
||||
# simulation parameters
|
||||
neighbor 0.6 bin
|
||||
timestep 0.004
|
||||
run_style verlet
|
||||
|
||||
velocity all create 0.8 1 mom yes rot yes
|
||||
fix ensemble all npt temp 0.8 0.8 4.0 z 2.185 2.185 8.0
|
||||
fix 100 all momentum 100 linear 1 1 1
|
||||
|
||||
# harmonic rho_k bias-field
|
||||
# nx ny nz k a
|
||||
fix bias all rhok 16 0 0 4.0 26.00
|
||||
|
||||
# output U_bias rho_k_RE rho_k_IM |rho_k|
|
||||
thermo_style custom step temp pzz pe lz f_bias f_bias[1] f_bias[2] f_bias[3]
|
||||
thermo 50
|
||||
dump dumpXYZ all xyz 500 traj.xyz
|
||||
|
||||
# NOTE: run reduced for demonstration purposes
|
||||
# run 50000
|
||||
run 5000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.1
|
||||
ghost atom cutoff = 3.1
|
||||
binsize = 1.55, bins = 9 9 22
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.023 | 4.027 | 4.03 Mbytes
|
||||
Step Temp Pzz PotEng Lz f_bias f_bias[1] f_bias[2] f_bias[3]
|
||||
0 0.8 5.1872229 -4.8361269 34 152.02869 34.711006 -0.72709593 34.71862
|
||||
50 1.0819371 3.9250728 -5.2655842 34.02563 0.51385908 26.505979 0.2187864 26.506882
|
||||
100 1.1182271 3.5397251 -5.3331401 34.100753 2.1059904 27.025883 -0.12127124 27.026156
|
||||
150 1.1121434 3.7845571 -5.3440494 34.213993 1.7206575 26.894862 -1.3261751 26.927539
|
||||
200 1.1446439 3.4114364 -5.4199119 34.358914 2.383615 27.054401 -1.4211151 27.091699
|
||||
250 1.1115073 3.5603047 -5.3988013 34.517397 0.60819391 26.51404 -1.4089688 26.55145
|
||||
300 1.0828478 3.7411116 -5.3842818 34.673948 0.73987465 26.528178 -2.062382 26.608225
|
||||
350 1.0342597 3.9206217 -5.3384367 34.825105 0.99965014 26.657737 -1.6211152 26.706983
|
||||
400 1.0064356 3.9929044 -5.324003 34.97579 0.41927007 26.402623 -1.7087432 26.457859
|
||||
450 0.96799277 4.2764255 -5.2947175 35.133839 0.77739461 26.503753 -2.5217998 26.623456
|
||||
500 0.94691076 4.1007962 -5.2922124 35.301893 0.17015805 26.212252 -2.0421698 26.291683
|
||||
550 0.93675297 3.7404088 -5.3056917 35.474301 0.56247039 26.335926 -3.205722 26.530316
|
||||
600 0.92707577 3.5439822 -5.3176094 35.641282 0.04054693 25.679461 -3.0301039 25.857615
|
||||
650 0.91828226 3.1833648 -5.3278237 35.794766 0.8427054 26.4003 -3.6331211 26.649117
|
||||
700 0.9084826 2.8374306 -5.3327944 35.928138 1.5635222 26.605971 -3.8575939 26.884173
|
||||
750 0.91219559 2.46172 -5.3548299 36.039156 6.3772911 27.350725 -4.8971146 27.785678
|
||||
800 0.90000337 2.2187716 -5.3499181 36.126451 4.9080838 27.085156 -5.1291678 27.566538
|
||||
850 0.9003432 1.8634244 -5.3614648 36.189019 0.0081092188 25.497333 -5.4038153 26.063676
|
||||
900 0.89741573 1.5697398 -5.3660799 36.226074 0.011155479 25.312724 -6.2574069 26.074684
|
||||
950 0.88871454 1.4427205 -5.3604669 36.237407 0.3287078 25.659237 -6.232896 26.405406
|
||||
1000 0.88606353 1.3088636 -5.3626576 36.226015 0.30068168 24.554896 -7.2832017 25.612262
|
||||
1050 0.88527541 1.3194263 -5.3666773 36.19311 0.10646314 24.514921 -7.9419424 25.76928
|
||||
1100 0.87522001 1.2852124 -5.3556811 36.143056 0.13675329 24.865981 -8.446822 26.261489
|
||||
1150 0.8805978 1.246973 -5.3671716 36.0781 0.00043275463 24.187039 -9.4985495 25.98529
|
||||
1200 0.85711495 1.376588 -5.3346243 36.002427 0.47623639 23.691349 -9.4648541 25.512026
|
||||
1250 0.88116805 1.3562001 -5.3731036 35.919289 0.32797055 23.322103 -10.54448 25.595049
|
||||
1300 0.87178482 1.5046564 -5.3610798 35.831278 0.17704849 24.190231 -10.314689 26.29753
|
||||
1350 0.87022621 1.6830825 -5.3603618 35.743318 0.0052854997 23.731157 -10.747465 26.051408
|
||||
1400 0.89019669 1.6144812 -5.3921986 35.659687 1.4152796 22.8393 -10.551347 25.158787
|
||||
1450 0.88852819 1.7587964 -5.3918592 35.580319 0.63560961 23.599033 -12.195 26.563742
|
||||
1500 0.89029085 1.8772498 -5.3966098 35.509232 0.20895386 23.055083 -12.703366 26.323229
|
||||
1550 0.88639722 2.2284824 -5.3933288 35.449043 0.44413965 22.448774 -12.156068 25.528757
|
||||
1600 0.88816451 2.2167704 -5.3994757 35.401661 0.12210235 23.108351 -12.44643 26.247085
|
||||
1650 0.89154791 2.3397824 -5.4086923 35.365815 0.4820208 23.090699 -12.984179 26.490928
|
||||
1700 0.88518032 2.5351236 -5.4041601 35.343757 0.080806002 22.749825 -12.99762 26.201005
|
||||
1750 0.86848721 2.5527491 -5.3851928 35.336433 0.045102165 22.357111 -13.564328 26.15017
|
||||
1800 0.88501061 2.5215825 -5.4169341 35.340849 0.27488483 22.086584 -14.408273 26.370732
|
||||
1850 0.8716061 2.5809558 -5.4045854 35.355038 0.042909785 21.270956 -14.695278 25.853525
|
||||
1900 0.85672517 2.4836326 -5.3902797 35.375469 0.72877764 21.639909 -15.474764 26.603646
|
||||
1950 0.85133731 2.3141629 -5.3902573 35.398523 0.0016908803 21.106617 -15.132733 25.970924
|
||||
2000 0.86152109 2.1562002 -5.4132601 35.419851 0.371016 21.325237 -15.614625 26.430706
|
||||
2050 0.86243551 2.019931 -5.4220349 35.436069 0.017935421 20.4131 -16.255418 26.094698
|
||||
2100 0.87417672 1.8083823 -5.4464117 35.445091 0.18429432 19.75625 -17.365705 26.303558
|
||||
2150 0.85872128 1.7608768 -5.4293103 35.44341 0.91209166 20.149648 -17.480387 26.675312
|
||||
2200 0.86615373 1.8372778 -5.4458315 35.430616 0.10151993 18.559234 -17.885469 25.7747
|
||||
2250 0.85053605 1.7198437 -5.4272104 35.408688 0.96154548 17.200861 -18.562206 25.306622
|
||||
2300 0.85400281 1.7939644 -5.4364682 35.377708 0.12283263 18.759325 -18.358539 26.247823
|
||||
2350 0.85495278 1.5856029 -5.4417321 35.337987 0.20564329 18.967923 -18.248149 26.320658
|
||||
2400 0.84606771 1.7782708 -5.4315646 35.287411 0.10063977 19.185527 -17.878215 26.224321
|
||||
2450 0.85210051 1.8190391 -5.4432116 35.232321 0.69988647 19.268861 -18.325448 26.59156
|
||||
2500 0.85304715 1.7466204 -5.4470889 35.175245 0.0048314937 18.09176 -18.74157 26.04915
|
||||
2550 0.85401123 1.8601945 -5.4509309 35.115748 0.99467901 17.170045 -18.574587 25.294777
|
||||
2600 0.85778606 1.974012 -5.4586742 35.058013 0.0026599702 17.438966 -19.333395 26.036469
|
||||
2650 0.8521239 2.0606329 -5.4526006 35.003616 0.091056354 17.16363 -19.244738 25.786627
|
||||
2700 0.85918482 2.0766792 -5.4658947 34.954171 0.89590606 15.77108 -19.822153 25.330707
|
||||
2750 0.85786577 2.225549 -5.4667773 34.911468 0.26577575 15.769018 -21.128817 26.364538
|
||||
2800 0.86764664 2.2325018 -5.4849414 34.877604 0.47167555 14.950515 -20.675229 25.514369
|
||||
2850 0.85209564 2.3434319 -5.465734 34.852715 2.7350296 13.51553 -20.829996 24.830592
|
||||
2900 0.85757283 2.3512971 -5.4786051 34.836138 0.14816492 14.06033 -21.545946 25.727819
|
||||
2950 0.86098926 2.3480431 -5.4890615 34.826408 0.26401534 13.381395 -22.714827 26.363329
|
||||
3000 0.85413421 2.3243973 -5.4844129 34.823242 0.024244334 12.739486 -22.538687 25.889899
|
||||
3050 0.85015323 2.5479266 -5.4844303 34.825228 0.4463147 12.990582 -21.975063 25.527605
|
||||
3100 0.8530523 2.3643505 -5.495343 34.834883 0.12144265 12.844293 -22.321989 25.753583
|
||||
3150 0.85098478 2.2521299 -5.4990526 34.848419 0.33194916 12.747856 -23.126671 26.4074
|
||||
3200 0.84391449 2.2650057 -5.495222 34.862626 0.031888328 12.788845 -22.782174 26.12627
|
||||
3250 0.84807155 2.1715388 -5.5080873 34.877548 0.082426694 13.316219 -22.09441 25.796989
|
||||
3300 0.83028242 2.242889 -5.4878846 34.89175 1.1334975 14.326678 -22.593363 26.752827
|
||||
3350 0.82924001 2.0324002 -5.4924558 34.903232 0.35473989 14.354166 -22.181868 26.421153
|
||||
3400 0.83032841 2.0003371 -5.4997142 34.908733 0.041677437 14.528378 -21.735998 26.144356
|
||||
3450 0.82908891 1.8683902 -5.5029185 34.907936 0.02365857 15.069507 -21.053887 25.891237
|
||||
3500 0.82842914 1.9165344 -5.5064218 34.898681 0.17663531 15.27043 -20.674834 25.702817
|
||||
3550 0.82735822 1.98221 -5.5088197 34.88272 1.5607134 14.915228 -20.208431 25.116622
|
||||
3600 0.82642915 1.8422766 -5.5110752 34.8611 1.1861112 15.312314 -20.051953 25.229899
|
||||
3650 0.82556781 1.9351408 -5.5130349 34.833406 1.018872 16.152478 -19.454871 25.286252
|
||||
3700 0.82360651 1.9791184 -5.5128431 34.802021 0.14080727 16.907104 -19.401616 25.734663
|
||||
3750 0.83017793 1.9855734 -5.5253254 34.768644 0.15311334 16.969506 -19.331958 25.723311
|
||||
3800 0.82362926 2.1029656 -5.5179624 34.734178 0.10807487 17.892584 -18.542426 25.76754
|
||||
3850 0.82313508 2.0781681 -5.5196175 34.70093 0.13343085 19.072706 -17.28778 25.741707
|
||||
3900 0.83643385 2.0570262 -5.5421224 34.669761 0.00022792038 19.551677 -17.1548 26.010675
|
||||
3950 0.82346174 2.0842322 -5.5252757 34.640849 0.0093759386 20.892792 -15.590263 26.068469
|
||||
4000 0.83485868 2.1196669 -5.5451736 34.612396 0.31198053 21.630258 -15.126984 26.394956
|
||||
4050 0.82729429 2.2033274 -5.5365945 34.585721 0.53752252 21.283533 -14.011497 25.481578
|
||||
4100 0.82040242 2.1757309 -5.5292269 34.562271 0.36031984 22.047609 -12.961927 25.575548
|
||||
4150 0.81932521 2.285666 -5.5307807 34.542102 0.84343149 22.486289 -11.70555 25.350604
|
||||
4200 0.83819319 2.231174 -5.5625532 34.526447 0.47190752 23.311855 -12.57189 26.485751
|
||||
4250 0.82542274 2.1874789 -5.5472057 34.513795 0.70518398 23.411553 -12.614639 26.593795
|
||||
4300 0.81971158 2.241167 -5.5424504 34.503969 0.26707612 23.089805 -12.727793 26.365429
|
||||
4350 0.83255377 2.1295532 -5.5657895 34.496326 0.072548591 23.003138 -12.52181 26.190458
|
||||
4400 0.8128474 2.3327845 -5.5402264 34.490126 0.0013023434 23.020811 -12.029795 25.974482
|
||||
4450 0.82013491 2.3069915 -5.5554953 34.488039 0.041123896 23.632908 -11.178674 26.143394
|
||||
4500 0.81411544 2.2247193 -5.5509183 34.488014 0.54440601 23.010678 -10.938506 25.478269
|
||||
4550 0.82814624 2.1142779 -5.5763482 34.487885 0.1518945 23.696817 -11.351972 26.275585
|
||||
4600 0.82929492 2.090881 -5.5823492 34.486698 0.0045520899 23.538527 -10.929741 25.952292
|
||||
4650 0.81061417 1.9818043 -5.5584018 34.484038 0.012526806 23.993543 -10.219174 26.079142
|
||||
4700 0.81816105 1.9605811 -5.5735005 34.476764 1.2079835 25.151166 -9.1888856 26.777169
|
||||
4750 0.81657042 2.0064313 -5.5744795 34.465784 1.2045017 25.487486 -8.2063886 26.776048
|
||||
4800 0.81789335 2.0838696 -5.5796632 34.451996 0.27642542 24.647157 -7.023095 25.62823
|
||||
4850 0.80649339 1.9892413 -5.5654796 34.436067 0.024697945 25.09823 -6.3492244 25.888874
|
||||
4900 0.81673441 2.0125635 -5.5835037 34.416236 0.0011188576 25.446818 -5.2182483 25.976348
|
||||
4950 0.82250033 1.9770391 -5.5946082 34.394723 0.72696707 26.37002 -3.5122842 26.602896
|
||||
5000 0.80762758 2.075517 -5.5746076 34.371696 0.12796344 26.102184 -2.8094827 26.252946
|
||||
Loop time of 10.3394 on 4 procs for 5000 steps with 5120 atoms
|
||||
|
||||
Performance: 167127.370 tau/day, 483.586 timesteps/s
|
||||
99.0% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 5.029 | 6.0128 | 7.1918 | 35.0 | 58.15
|
||||
Neigh | 0.65673 | 0.75825 | 0.88597 | 10.3 | 7.33
|
||||
Comm | 0.43982 | 1.5284 | 2.4112 | 60.5 | 14.78
|
||||
Output | 0.022835 | 0.023039 | 0.023453 | 0.2 | 0.22
|
||||
Modify | 1.7294 | 1.9472 | 2.5687 | 25.7 | 18.83
|
||||
Other | | 0.06978 | | | 0.67
|
||||
|
||||
Nlocal: 1280 ave 1404 max 1214 min
|
||||
Histogram: 2 0 0 1 0 0 0 0 0 1
|
||||
Nghost: 3521.25 ave 3581 max 3426 min
|
||||
Histogram: 1 0 0 0 0 0 1 1 0 1
|
||||
Neighs: 73872.2 ave 87973 max 64161 min
|
||||
Histogram: 1 1 0 0 1 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 295489
|
||||
Ave neighs/atom = 57.7127
|
||||
Neighbor list builds = 278
|
||||
Dangerous builds = 0
|
||||
|
||||
Please see the log.cite file for references relevant to this simulation
|
||||
|
||||
Total wall time: 0:00:10
|
||||
141
examples/USER/misc/rhok/log.22Sep2017.setup.g++.1
Normal file
141
examples/USER/misc/rhok/log.22Sep2017.setup.g++.1
Normal file
@ -0,0 +1,141 @@
|
||||
LAMMPS (22 Sep 2017)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
units lj
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
# truncated and shifted LJ potential
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
|
||||
# fcc lattice
|
||||
lattice fcc 0.9731
|
||||
Lattice spacing in x,y,z = 1.6019 1.6019 1.6019
|
||||
region my_box block 0 8.0 0 8.0 0 20.0
|
||||
create_box 1 my_box
|
||||
Created orthogonal box = (0 0 0) to (12.8152 12.8152 32.0379)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
region particles block 0 8.0 0 8.0 0 20.0
|
||||
create_atoms 1 region particles
|
||||
Created 5120 atoms
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
mass 1 1.0
|
||||
change_box all z final 0.0 34 remap units box
|
||||
orthogonal box = (0 0 0) to (12.8152 12.8152 34)
|
||||
|
||||
# select particles in one side of the elongated box
|
||||
region left plane 0 0 10 0 0 1
|
||||
group left region left
|
||||
2688 atoms in group left
|
||||
|
||||
velocity left create 6.0 1 mom yes rot yes
|
||||
|
||||
# simulation parameters
|
||||
neighbor 0.6 bin
|
||||
timestep 0.004
|
||||
run_style verlet
|
||||
fix ensemble left nve # Note: only move particle in left-hand side
|
||||
fix langevin left langevin 3.0 0.8 100.0 2017
|
||||
|
||||
# outout
|
||||
thermo_style custom step temp pzz pe lz
|
||||
thermo 100
|
||||
# dump dumpXYZ all xyz 100 traj.xyz
|
||||
|
||||
# run reduced for demonstration purposes
|
||||
# run 10000
|
||||
run 5000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.1
|
||||
ghost atom cutoff = 3.1
|
||||
binsize = 1.55, bins = 9 9 22
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.524 | 4.524 | 4.524 Mbytes
|
||||
Step Temp Pzz PotEng Lz
|
||||
0 3.1494433 -3.4735106 -6.8707307 34
|
||||
100 1.7727555 6.5330255 -4.8035477 34
|
||||
200 1.7462368 7.0070325 -4.7646426 34
|
||||
300 1.7564888 6.6190123 -4.7894637 34
|
||||
400 1.7641186 6.609684 -4.8064772 34
|
||||
500 1.7383511 6.7304936 -4.7708095 34
|
||||
600 1.731708 6.8574656 -4.7612918 34
|
||||
700 1.7332167 6.6530919 -4.7670014 34
|
||||
800 1.7487537 6.5644963 -4.7907458 34
|
||||
900 1.7353648 6.7115188 -4.7772149 34
|
||||
1000 1.728878 6.4175719 -4.7797216 34
|
||||
1100 1.7471488 6.5346083 -4.813376 34
|
||||
1200 1.7188149 6.2502104 -4.7822235 34
|
||||
1300 1.7151194 6.792534 -4.7781701 34
|
||||
1400 1.7406603 6.6639592 -4.8170174 34
|
||||
1500 1.7090537 6.4677579 -4.770701 34
|
||||
1600 1.7014954 6.2853535 -4.7679742 34
|
||||
1700 1.7064354 6.4352857 -4.7812978 34
|
||||
1800 1.7169971 6.5808758 -4.799426 34
|
||||
1900 1.6822712 6.3746758 -4.7522464 34
|
||||
2000 1.7126546 6.534969 -4.8091595 34
|
||||
2100 1.7086108 6.4679932 -4.8146664 34
|
||||
2200 1.6974952 6.3802129 -4.8052505 34
|
||||
2300 1.6868035 6.4009243 -4.7935769 34
|
||||
2400 1.7107125 6.2318869 -4.8358765 34
|
||||
2500 1.660241 6.4891487 -4.7661183 34
|
||||
2600 1.6801816 6.1988356 -4.8024291 34
|
||||
2700 1.6940298 6.1328187 -4.8290053 34
|
||||
2800 1.6755061 6.4150693 -4.8145473 34
|
||||
2900 1.6749928 6.4248792 -4.8213509 34
|
||||
3000 1.6310737 6.6491291 -4.7673027 34
|
||||
3100 1.6559915 6.2726719 -4.8109181 34
|
||||
3200 1.6574579 5.7132029 -4.8189484 34
|
||||
3300 1.6816136 5.7697439 -4.8652811 34
|
||||
3400 1.6489483 6.4463349 -4.8247812 34
|
||||
3500 1.6557974 5.9763333 -4.8383712 34
|
||||
3600 1.6215459 6.2806534 -4.7954657 34
|
||||
3700 1.6484987 6.0671609 -4.8470777 34
|
||||
3800 1.6473922 5.8688108 -4.8555351 34
|
||||
3900 1.6435957 5.930425 -4.8562076 34
|
||||
4000 1.6514434 6.1962122 -4.872998 34
|
||||
4100 1.6138337 6.4808124 -4.8219373 34
|
||||
4200 1.6215239 5.9467966 -4.8412146 34
|
||||
4300 1.6129295 5.9377323 -4.8414596 34
|
||||
4400 1.6020549 6.1104301 -4.8395939 34
|
||||
4500 1.6047738 6.0816222 -4.8538151 34
|
||||
4600 1.6053565 6.183466 -4.8686817 34
|
||||
4700 1.6088152 5.7416542 -4.894114 34
|
||||
4800 1.5954309 5.694319 -4.8840198 34
|
||||
4900 1.5582564 6.1199614 -4.8429998 34
|
||||
5000 1.5786672 5.8813574 -4.8907344 34
|
||||
Loop time of 28.3867 on 1 procs for 5000 steps with 5120 atoms
|
||||
|
||||
Performance: 60873.483 tau/day, 176.139 timesteps/s
|
||||
99.4% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 22.269 | 22.269 | 22.269 | 0.0 | 78.45
|
||||
Neigh | 4.7222 | 4.7222 | 4.7222 | 0.0 | 16.64
|
||||
Comm | 0.40821 | 0.40821 | 0.40821 | 0.0 | 1.44
|
||||
Output | 0.0042329 | 0.0042329 | 0.0042329 | 0.0 | 0.01
|
||||
Modify | 0.88231 | 0.88231 | 0.88231 | 0.0 | 3.11
|
||||
Other | | 0.1005 | | | 0.35
|
||||
|
||||
Nlocal: 5120 ave 5120 max 5120 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 7768 ave 7768 max 7768 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 297167 ave 297167 max 297167 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 297167
|
||||
Ave neighs/atom = 58.0404
|
||||
Neighbor list builds = 474
|
||||
Dangerous builds = 246
|
||||
write_data data.halfhalf
|
||||
Total wall time: 0:00:28
|
||||
141
examples/USER/misc/rhok/log.22Sep2017.setup.g++.4
Normal file
141
examples/USER/misc/rhok/log.22Sep2017.setup.g++.4
Normal file
@ -0,0 +1,141 @@
|
||||
LAMMPS (22 Sep 2017)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
units lj
|
||||
dimension 3
|
||||
boundary p p p
|
||||
atom_style atomic
|
||||
|
||||
# truncated and shifted LJ potential
|
||||
pair_style lj/cut 2.5
|
||||
pair_modify shift yes
|
||||
|
||||
# fcc lattice
|
||||
lattice fcc 0.9731
|
||||
Lattice spacing in x,y,z = 1.6019 1.6019 1.6019
|
||||
region my_box block 0 8.0 0 8.0 0 20.0
|
||||
create_box 1 my_box
|
||||
Created orthogonal box = (0 0 0) to (12.8152 12.8152 32.0379)
|
||||
1 by 1 by 4 MPI processor grid
|
||||
region particles block 0 8.0 0 8.0 0 20.0
|
||||
create_atoms 1 region particles
|
||||
Created 5120 atoms
|
||||
pair_coeff 1 1 1.0 1.0 2.5
|
||||
mass 1 1.0
|
||||
change_box all z final 0.0 34 remap units box
|
||||
orthogonal box = (0 0 0) to (12.8152 12.8152 34)
|
||||
|
||||
# select particles in one side of the elongated box
|
||||
region left plane 0 0 10 0 0 1
|
||||
group left region left
|
||||
2688 atoms in group left
|
||||
|
||||
velocity left create 6.0 1 mom yes rot yes
|
||||
|
||||
# simulation parameters
|
||||
neighbor 0.6 bin
|
||||
timestep 0.004
|
||||
run_style verlet
|
||||
fix ensemble left nve # Note: only move particle in left-hand side
|
||||
fix langevin left langevin 3.0 0.8 100.0 2017
|
||||
|
||||
# outout
|
||||
thermo_style custom step temp pzz pe lz
|
||||
thermo 100
|
||||
# dump dumpXYZ all xyz 100 traj.xyz
|
||||
|
||||
# run reduced for demonstration purposes
|
||||
# run 10000
|
||||
run 5000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 3.1
|
||||
ghost atom cutoff = 3.1
|
||||
binsize = 1.55, bins = 9 9 22
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.23 | 3.23 | 3.23 Mbytes
|
||||
Step Temp Pzz PotEng Lz
|
||||
0 3.1494433 -3.4735106 -6.8707307 34
|
||||
100 1.7914373 6.4805818 -4.8420353 34
|
||||
200 1.740256 6.6108149 -4.7672571 34
|
||||
300 1.7663827 6.5188941 -4.8103672 34
|
||||
400 1.7440644 6.5156543 -4.7769467 34
|
||||
500 1.7471724 6.5208992 -4.7843928 34
|
||||
600 1.7320106 6.6557835 -4.7654637 34
|
||||
700 1.6839043 6.7689759 -4.7045352 34
|
||||
800 1.7216746 6.66436 -4.7601673 34
|
||||
900 1.7342542 6.3242367 -4.7790803 34
|
||||
1000 1.7338566 6.5803438 -4.7854529 34
|
||||
1100 1.7328856 6.3846366 -4.7902625 34
|
||||
1200 1.7546906 6.5048137 -4.8213443 34
|
||||
1300 1.7163891 6.3903221 -4.7665145 34
|
||||
1400 1.7011627 6.5782672 -4.7517875 34
|
||||
1500 1.7105234 6.5811813 -4.7677748 34
|
||||
1600 1.7334403 6.5032837 -4.8067749 34
|
||||
1700 1.7252102 6.5443871 -4.8058994 34
|
||||
1800 1.721958 6.3378188 -4.8150073 34
|
||||
1900 1.6797892 6.6780506 -4.7538618 34
|
||||
2000 1.7001774 6.3578192 -4.7894018 34
|
||||
2100 1.7127784 6.3219105 -4.8161059 34
|
||||
2200 1.696825 6.536793 -4.7946902 34
|
||||
2300 1.6704578 6.7186933 -4.7609628 34
|
||||
2400 1.6772498 6.3432817 -4.7778471 34
|
||||
2500 1.7073862 6.2153226 -4.8299181 34
|
||||
2600 1.6951557 6.4397257 -4.8156787 34
|
||||
2700 1.6845984 6.0123544 -4.8136864 34
|
||||
2800 1.6550565 6.2489392 -4.7829639 34
|
||||
2900 1.6892315 6.158499 -4.8423004 34
|
||||
3000 1.6814436 6.07976 -4.8400696 34
|
||||
3100 1.6387025 6.330166 -4.7878978 34
|
||||
3200 1.6747855 6.0767043 -4.8481995 34
|
||||
3300 1.6508768 6.2749233 -4.8181888 34
|
||||
3400 1.6426364 6.3934935 -4.8223824 34
|
||||
3500 1.6576512 6.0638185 -4.8559078 34
|
||||
3600 1.6444173 6.1376573 -4.8463113 34
|
||||
3700 1.6480039 5.9943705 -4.8601776 34
|
||||
3800 1.6467212 6.0556591 -4.8722719 34
|
||||
3900 1.6271804 6.116738 -4.8547278 34
|
||||
4000 1.6158134 5.9089534 -4.8477829 34
|
||||
4100 1.6388157 5.9890465 -4.8920284 34
|
||||
4200 1.6182368 6.0639887 -4.8724963 34
|
||||
4300 1.647633 5.6333906 -4.9267536 34
|
||||
4400 1.5856411 6.2675475 -4.8471239 34
|
||||
4500 1.5773417 6.1789163 -4.8469057 34
|
||||
4600 1.6181445 5.7988068 -4.922419 34
|
||||
4700 1.5876712 5.7398111 -4.8853849 34
|
||||
4800 1.5708353 6.2204997 -4.8718872 34
|
||||
4900 1.5514708 5.9782256 -4.8523812 34
|
||||
5000 1.553347 5.9286523 -4.86582 34
|
||||
Loop time of 8.10259 on 4 procs for 5000 steps with 5120 atoms
|
||||
|
||||
Performance: 213265.164 tau/day, 617.087 timesteps/s
|
||||
99.2% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 5.2964 | 5.6236 | 5.8982 | 9.0 | 69.40
|
||||
Neigh | 1.0562 | 1.1907 | 1.3257 | 8.7 | 14.70
|
||||
Comm | 0.43963 | 0.98786 | 1.5968 | 42.5 | 12.19
|
||||
Output | 0.0023124 | 0.004741 | 0.0090873 | 4.0 | 0.06
|
||||
Modify | 0.018652 | 0.22213 | 0.39884 | 36.4 | 2.74
|
||||
Other | | 0.07357 | | | 0.91
|
||||
|
||||
Nlocal: 1280 ave 1337 max 1211 min
|
||||
Histogram: 1 0 0 0 0 1 1 0 0 1
|
||||
Nghost: 3416.25 ave 3549 max 3297 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 1 1
|
||||
Neighs: 74269.8 ave 77932 max 69612 min
|
||||
Histogram: 1 0 0 0 0 1 0 1 0 1
|
||||
|
||||
Total # of neighbors = 297079
|
||||
Ave neighs/atom = 58.0232
|
||||
Neighbor list builds = 474
|
||||
Dangerous builds = 247
|
||||
write_data data.halfhalf
|
||||
Total wall time: 0:00:08
|
||||
19
examples/USER/uef/README
Normal file
19
examples/USER/uef/README
Normal file
@ -0,0 +1,19 @@
|
||||
This directory contains two short example scripts for the USER-UEF
|
||||
package.
|
||||
|
||||
|
||||
nvt_uniaxial:
|
||||
A simulation of a WCA fluid under constant volume uniaxial strain
|
||||
with stretching in the z direction, compression in the x and y
|
||||
directions.The xx, yy and zz components of the pressure tensor are
|
||||
written to the log file. The simulation conditions are the same
|
||||
used in the paper by Thomas Hunt [http://arxiv.org/abs/1310.3905]
|
||||
and should yield an zz pressure near 5 and xx/yy pressures near 10.
|
||||
|
||||
npt_biaxial:
|
||||
A simulation of a WCA fluid under stress-controlled biaxial strain
|
||||
with stretching in the x and y directions, compression in the z
|
||||
direction. The zz stress is controlled using the ext keyword in fix
|
||||
npt/uef. The xx yy and zz components of the pressure tensor are
|
||||
written to the log file. The simulations conditions should yield
|
||||
xx/yy pressures near 5 and zz pressure near 10
|
||||
1022
examples/USER/uef/npt_biaxial/data.wca
Normal file
1022
examples/USER/uef/npt_biaxial/data.wca
Normal file
File diff suppressed because it is too large
Load Diff
31
examples/USER/uef/npt_biaxial/in.npt_biaxial
Normal file
31
examples/USER/uef/npt_biaxial/in.npt_biaxial
Normal file
@ -0,0 +1,31 @@
|
||||
# biaxial NPT deformation of WCA fluid
|
||||
|
||||
units lj
|
||||
atom_style atomic
|
||||
|
||||
|
||||
pair_style lj/cut 1.122562
|
||||
read_data data.wca
|
||||
pair_coeff 1 1 1.0 1.0
|
||||
pair_modify shift yes
|
||||
|
||||
neighbor 0.5 bin
|
||||
neigh_modify delay 0
|
||||
|
||||
change_box all triclinic
|
||||
|
||||
# these commads show the different methods that may be used to impose
|
||||
# a constant stress through isotropic or anisotropic coupling
|
||||
fix 1 all npt/uef temp 0.722 0.722 0.5 iso 10 10 5 erate 0.5 0.5 ext z
|
||||
#fix 1 all npt/uef temp 0.722 0.722 0.5 z 10 10 5 erate 0.5 0.5 ext xyz
|
||||
|
||||
fix 2 all momentum 100 linear 1 1 1
|
||||
|
||||
#dump 1 all atom 25 dump.lammpstrj
|
||||
|
||||
#dump 2 all cfg/uef 25 dump.*.cfg mass type xs ys zs
|
||||
|
||||
thermo_style custom step c_1_press[1] c_1_press[2] c_1_press[3]
|
||||
|
||||
thermo 50
|
||||
run 10000
|
||||
284
examples/USER/uef/npt_biaxial/log.22Sep17.npt_biaxial.g++.1
Normal file
284
examples/USER/uef/npt_biaxial/log.22Sep17.npt_biaxial.g++.1
Normal file
@ -0,0 +1,284 @@
|
||||
LAMMPS (22 Sep 2017)
|
||||
# biaxial NPT deformation of WCA fluid
|
||||
|
||||
units lj
|
||||
atom_style atomic
|
||||
|
||||
|
||||
pair_style lj/cut 1.122562
|
||||
read_data data.wca
|
||||
orthogonal box = (0 0 0) to (8.39798 8.39798 8.39798)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
500 atoms
|
||||
reading velocities ...
|
||||
500 velocities
|
||||
pair_coeff 1 1 1.0 1.0
|
||||
pair_modify shift yes
|
||||
|
||||
neighbor 0.5 bin
|
||||
neigh_modify delay 0
|
||||
|
||||
change_box all triclinic
|
||||
triclinic box = (0 0 0) to (8.39798 8.39798 8.39798) with tilt (0 0 0)
|
||||
|
||||
# these commads show the different methods that may be used to impose
|
||||
# a constant stress through isotropic or anisotropic coupling
|
||||
fix 1 all npt/uef temp 0.722 0.722 0.5 iso 10 10 5 erate 0.5 0.5 ext z
|
||||
#fix 1 all npt/uef temp 0.722 0.722 0.5 z 10 10 5 erate 0.5 0.5 ext xyz
|
||||
|
||||
fix 2 all momentum 100 linear 1 1 1
|
||||
|
||||
#dump 1 all atom 25 dump.lammpstrj
|
||||
|
||||
#dump 2 all cfg/uef 25 dump.*.cfg mass type xs ys zs
|
||||
|
||||
thermo_style custom step c_1_press[1] c_1_press[2] c_1_press[3]
|
||||
|
||||
thermo 50
|
||||
run 10000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 1.62256
|
||||
ghost atom cutoff = 1.62256
|
||||
binsize = 0.811281, bins = 11 11 11
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton/tri
|
||||
stencil: half/bin/3d/newton/tri
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 2.742 | 2.742 | 2.742 Mbytes
|
||||
Step c_1_press[1] c_1_press[2] c_1_press[3]
|
||||
0 6.3937851 7.0436438 6.4461087
|
||||
50 7.9020345 7.303289 14.733929
|
||||
100 8.3214325 8.385843 13.166247
|
||||
150 5.7168419 5.6083988 9.7224198
|
||||
200 3.8875348 4.0840705 7.9912973
|
||||
250 4.2933724 4.2410519 7.7200953
|
||||
300 4.5452314 4.2434949 8.6709832
|
||||
350 5.446489 5.6166962 11.300536
|
||||
400 6.0682558 5.7787878 12.106852
|
||||
450 5.3884296 5.5066688 9.9100012
|
||||
500 4.8046418 4.7115986 9.9769201
|
||||
550 4.9043933 4.6240966 9.319336
|
||||
600 4.6843238 4.9571246 9.5325487
|
||||
650 5.1952989 5.195648 9.6187047
|
||||
700 5.4163364 5.2938289 10.136655
|
||||
750 5.6723178 5.0670261 11.415221
|
||||
800 5.9379901 5.6402916 10.815209
|
||||
850 5.0695389 5.3021432 10.742859
|
||||
900 4.6498962 4.7111912 9.8453523
|
||||
950 4.4811641 5.170132 9.421765
|
||||
1000 4.7501483 4.2420772 9.3510803
|
||||
1050 4.5973379 5.2046799 9.8632975
|
||||
1100 4.7879562 4.9051316 9.8658626
|
||||
1150 5.0528771 5.5048545 10.110913
|
||||
1200 4.9926563 5.2482081 9.9610863
|
||||
1250 4.8476232 4.8498859 9.5752989
|
||||
1300 5.2932038 5.0594534 10.869545
|
||||
1350 5.4720421 5.0830442 10.69386
|
||||
1400 4.8175566 4.9863651 10.041898
|
||||
1450 4.6307145 4.5615459 9.231299
|
||||
1500 5.0296259 4.5433558 8.7180513
|
||||
1550 4.8708444 5.1601014 10.256791
|
||||
1600 5.5098593 5.316773 10.224386
|
||||
1650 5.5055907 5.0516814 10.272037
|
||||
1700 4.6965552 5.2436628 9.8272905
|
||||
1750 5.0212307 4.740601 8.9738802
|
||||
1800 4.7756351 5.199734 9.9929449
|
||||
1850 4.7107092 5.177203 10.580427
|
||||
1900 5.0935608 4.5286844 9.3036832
|
||||
1950 4.8035855 4.894359 9.4423987
|
||||
2000 4.5643937 4.7480477 9.4384251
|
||||
2050 4.9314701 4.990414 10.151815
|
||||
2100 5.9828824 5.8188026 12.262691
|
||||
2150 5.5337303 5.4598468 10.136112
|
||||
2200 4.892172 4.8699674 9.1629905
|
||||
2250 4.5680591 4.5740533 9.5633545
|
||||
2300 5.0023535 4.3948659 8.9645774
|
||||
2350 5.2533056 4.9803884 10.255653
|
||||
2400 5.3330196 5.3888322 10.021617
|
||||
2450 5.2095527 4.8765336 10.135381
|
||||
2500 5.221153 5.2974568 10.2493
|
||||
2550 5.385331 5.0801192 10.490479
|
||||
2600 5.3274988 5.0253548 10.147587
|
||||
2650 4.718677 5.2710337 9.7549521
|
||||
2700 4.5811521 4.6083971 8.1923164
|
||||
2750 4.4743752 4.3319737 8.8690805
|
||||
2800 5.0215013 5.2262961 9.8627954
|
||||
2850 6.1005107 5.5994942 11.170661
|
||||
2900 5.9673524 5.362124 10.401699
|
||||
2950 5.5400849 5.7523993 10.292536
|
||||
3000 4.9202636 5.1210431 10.125839
|
||||
3050 4.5286487 5.3586164 9.8634322
|
||||
3100 4.5719961 5.1615414 9.8027972
|
||||
3150 5.4091919 4.8581943 9.96938
|
||||
3200 5.522125 5.3564838 9.7638407
|
||||
3250 4.9019062 5.2514758 9.2993079
|
||||
3300 5.2375918 5.1439012 9.4313575
|
||||
3350 4.750235 4.8692016 10.54193
|
||||
3400 5.5793211 5.4184157 11.021389
|
||||
3450 4.9022614 5.3166498 9.4629659
|
||||
3500 4.6348617 4.4650979 9.0665548
|
||||
3550 4.7922405 4.8961269 10.255446
|
||||
3600 4.8914457 5.1158894 9.4736084
|
||||
3650 5.062771 4.6725475 10.263484
|
||||
3700 5.4842823 5.7793971 10.342915
|
||||
3750 5.3136012 5.063065 10.398307
|
||||
3800 4.9372149 4.9270414 9.5304748
|
||||
3850 5.2144752 5.1716455 9.7575725
|
||||
3900 5.0892665 5.1697057 9.918052
|
||||
3950 5.1124507 5.354702 9.791366
|
||||
4000 5.1255084 5.1143653 10.913101
|
||||
4050 5.1891698 4.9913681 9.6871728
|
||||
4100 4.7663368 4.2435014 8.3815668
|
||||
4150 4.8060033 4.3415868 9.6553386
|
||||
4200 4.8548303 4.8006768 9.5995801
|
||||
4250 5.0976366 5.2683175 10.386444
|
||||
4300 5.8921937 5.5134696 10.788143
|
||||
4350 5.8323871 5.5255869 11.199128
|
||||
4400 5.2464655 5.0005905 10.311055
|
||||
4450 4.9264849 5.2499854 10.26702
|
||||
4500 4.4431895 4.536981 8.7489096
|
||||
4550 4.5180914 4.2080277 8.6525529
|
||||
4600 5.1782188 5.1224059 10.683341
|
||||
4650 5.4156233 4.8714464 10.473939
|
||||
4700 5.3107669 5.224614 10.569391
|
||||
4750 4.9538022 5.2509475 10.288918
|
||||
4800 4.6976945 4.8107142 9.8299772
|
||||
4850 5.1227936 5.0737571 10.440452
|
||||
4900 4.7580514 4.6375995 9.1971008
|
||||
4950 5.0647601 4.6470735 9.583131
|
||||
5000 5.196231 5.7531491 10.409807
|
||||
5050 5.6691323 5.7163652 12.335701
|
||||
5100 5.3603738 5.4887106 10.961712
|
||||
5150 4.455028 4.6494465 9.8096968
|
||||
5200 4.7596912 4.4804896 9.3762885
|
||||
5250 5.3144927 5.0113772 9.553101
|
||||
5300 5.3445266 4.8262035 9.1220802
|
||||
5350 5.1540657 5.5982676 10.765178
|
||||
5400 5.1773418 5.2684381 10.452351
|
||||
5450 4.8946859 5.3283747 9.8015564
|
||||
5500 5.2009608 4.7183522 9.4558009
|
||||
5550 5.4158589 5.5005458 10.539505
|
||||
5600 4.7196831 5.4181991 9.6439249
|
||||
5650 4.8333571 4.8601728 8.9350189
|
||||
5700 5.4395698 4.9730096 10.669681
|
||||
5750 5.2947443 5.6973259 10.020539
|
||||
5800 5.4391993 5.5255143 10.264969
|
||||
5850 4.9921388 5.2643827 10.217028
|
||||
5900 5.0048643 4.7952641 8.9718929
|
||||
5950 5.1843818 4.5987295 9.6858944
|
||||
6000 5.0343993 4.946933 9.7436708
|
||||
6050 4.6202714 5.3502658 10.752915
|
||||
6100 5.6914422 5.3621964 10.281827
|
||||
6150 5.1928763 5.9652686 10.923881
|
||||
6200 5.0030409 5.2013891 10.056308
|
||||
6250 4.9699876 5.2363753 9.9964211
|
||||
6300 4.9129606 4.4558458 9.0419952
|
||||
6350 4.6623958 4.4078264 8.528649
|
||||
6400 4.9811441 5.1183207 10.261751
|
||||
6450 5.3644017 5.5153937 10.401295
|
||||
6500 5.6674981 5.7427566 11.928777
|
||||
6550 5.1622364 5.3212928 10.067198
|
||||
6600 4.5954278 5.1645397 10.16724
|
||||
6650 4.9192712 5.0413326 9.95656
|
||||
6700 4.6179845 4.5656214 9.3798952
|
||||
6750 4.7287495 4.5071148 8.7890116
|
||||
6800 4.8600442 4.8083512 10.245595
|
||||
6850 5.0515531 5.1609272 10.553855
|
||||
6900 5.1159742 5.1359869 10.594699
|
||||
6950 4.8908884 5.0592418 9.5698704
|
||||
7000 4.7654136 4.7530776 8.9439321
|
||||
7050 4.779293 4.7534957 9.7244349
|
||||
7100 5.2265831 5.6869073 10.32717
|
||||
7150 5.4019177 5.15174 10.457567
|
||||
7200 4.9817102 5.0596098 10.337574
|
||||
7250 5.1836654 5.6065238 10.723108
|
||||
7300 4.2916569 4.457143 8.5419099
|
||||
7350 4.3906104 4.5439294 9.0805415
|
||||
7400 4.998572 5.3386063 10.491418
|
||||
7450 5.1109022 5.0506801 10.636116
|
||||
7500 5.0248381 5.019932 10.217023
|
||||
7550 5.0109265 5.1438717 9.9032426
|
||||
7600 4.6628614 4.6204146 8.9459669
|
||||
7650 4.8930717 5.0650009 10.049331
|
||||
7700 4.9373454 5.6265835 10.210644
|
||||
7750 5.5001067 5.3133253 10.667995
|
||||
7800 5.0816102 5.0125753 10.591986
|
||||
7850 4.9638046 5.1969015 9.9728333
|
||||
7900 4.8438207 4.9217213 8.9978809
|
||||
7950 4.7318805 4.6248537 8.6806596
|
||||
8000 5.2808543 5.2892613 10.932535
|
||||
8050 5.9609722 5.87087 10.47602
|
||||
8100 5.2190231 5.6693244 11.244536
|
||||
8150 5.3481127 5.2849903 10.222845
|
||||
8200 4.7833053 4.7404657 9.2034474
|
||||
8250 4.5461994 4.510467 10.294452
|
||||
8300 4.6025175 4.8332817 8.7967546
|
||||
8350 5.0389897 5.6642908 10.243402
|
||||
8400 4.8414338 4.8925143 9.3653631
|
||||
8450 5.5087429 4.7830361 10.831666
|
||||
8500 5.2678146 5.1697789 9.9105782
|
||||
8550 5.1211843 4.9097801 9.4165956
|
||||
8600 5.8239149 5.0821022 10.803261
|
||||
8650 5.3620154 5.5831747 11.16202
|
||||
8700 5.1625813 4.8791404 10.537681
|
||||
8750 4.5622461 5.0157549 10.013227
|
||||
8800 4.4051517 5.0224553 9.6364273
|
||||
8850 4.1711629 4.635617 8.5470244
|
||||
8900 4.7049907 5.2458435 10.100728
|
||||
8950 4.8568883 5.2360772 9.2306469
|
||||
9000 5.0091899 5.2203574 10.718541
|
||||
9050 5.1037824 4.9022451 10.24271
|
||||
9100 5.0789015 4.9331454 9.173614
|
||||
9150 5.3865455 5.3427553 11.40199
|
||||
9200 5.5089482 5.9423232 10.976063
|
||||
9250 5.1353552 5.0650262 10.040607
|
||||
9300 4.6761948 4.9155175 9.6413722
|
||||
9350 4.4780834 4.3934708 8.7049819
|
||||
9400 4.2561799 4.7906324 9.046134
|
||||
9450 5.6162819 5.2881846 9.9040868
|
||||
9500 5.7554547 5.6111262 10.23849
|
||||
9550 5.4230462 5.5656045 10.908006
|
||||
9600 5.5045685 4.9818892 9.8929535
|
||||
9650 5.0541481 5.0183351 9.5226021
|
||||
9700 4.9712829 5.2395398 9.9996693
|
||||
9750 5.0960017 5.4419775 10.914719
|
||||
9800 5.0790688 5.6378474 10.00789
|
||||
9850 4.9661747 5.114502 9.4585052
|
||||
9900 5.0133498 4.7456254 9.4572653
|
||||
9950 5.3318846 4.6643122 10.096292
|
||||
10000 5.2227687 4.8924305 9.5894615
|
||||
Loop time of 4.78247 on 1 procs for 10000 steps with 500 atoms
|
||||
|
||||
Performance: 903298.340 tau/day, 2090.968 timesteps/s
|
||||
99.2% CPU use with 1 MPI tasks x no OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.73894 | 0.73894 | 0.73894 | 0.0 | 15.45
|
||||
Neigh | 2.9092 | 2.9092 | 2.9092 | 0.0 | 60.83
|
||||
Comm | 0.32306 | 0.32306 | 0.32306 | 0.0 | 6.76
|
||||
Output | 0.003392 | 0.003392 | 0.003392 | 0.0 | 0.07
|
||||
Modify | 0.6959 | 0.6959 | 0.6959 | 0.0 | 14.55
|
||||
Other | | 0.112 | | | 2.34
|
||||
|
||||
Nlocal: 500 ave 500 max 500 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 905 ave 905 max 905 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 3340 ave 3340 max 3340 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 3340
|
||||
Ave neighs/atom = 6.68
|
||||
Neighbor list builds = 4580
|
||||
Dangerous builds = 0
|
||||
|
||||
Please see the log.cite file for references relevant to this simulation
|
||||
|
||||
Total wall time: 0:00:04
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user