Merge branch 'develop' into snann_slcsa
8
.github/CODEOWNERS
vendored
@ -61,6 +61,7 @@ src/GPU/pair_vashishta_gpu.* @andeplane
|
||||
src/KOKKOS/pair_vashishta_kokkos.* @andeplane
|
||||
src/MANYBODY/pair_vashishta_table.* @andeplane
|
||||
src/MANYBODY/pair_atm.* @sergeylishchuk
|
||||
src/MANYBODY/pair_nb3b_screened.* @flodesani
|
||||
src/REPLICA/*_grem.* @dstelter92
|
||||
src/EXTRA-COMPUTE/compute_stress_mop*.* @RomainVermorel
|
||||
src/EXTRA-COMPUTE/compute_born_matrix.* @Bibobu @athomps
|
||||
@ -135,6 +136,7 @@ src/timer.* @akohlmey
|
||||
src/utils.* @akohlmey @rbberger
|
||||
src/verlet.* @sjplimp @stanmoore1
|
||||
src/math_eigen_impl.h @jewettaij
|
||||
src/fix_press_langevin.* @Bibobu
|
||||
|
||||
# tools
|
||||
tools/coding_standard/* @akohlmey @rbberger
|
||||
@ -151,12 +153,12 @@ tools/vim/* @hammondkd
|
||||
unittest/* @akohlmey
|
||||
|
||||
# cmake
|
||||
cmake/* @rbberger
|
||||
cmake/* @akohlmey
|
||||
cmake/Modules/LAMMPSInterfacePlugin.cmake @akohlmey
|
||||
cmake/Modules/MPI4WIN.cmake @akohlmey
|
||||
cmake/Modules/OpenCLLoader.cmake @akohlmey
|
||||
cmake/Modules/Packages/COLVARS.cmake @rbberger @giacomofiorin
|
||||
cmake/Modules/Packages/KIM.cmake @rbberger @ellio167
|
||||
cmake/Modules/Packages/COLVARS.cmake @giacomofiorin
|
||||
cmake/Modules/Packages/KIM.cmake @ellio167
|
||||
cmake/presets/*.cmake @akohlmey
|
||||
|
||||
# python
|
||||
|
||||
22
.github/CONTRIBUTING.md
vendored
@ -5,9 +5,9 @@ Thank you for considering to contribute to the LAMMPS software project.
|
||||
The following is a set of guidelines as well as explanations of policies and work flows for contributing to the LAMMPS molecular dynamics software project. These guidelines focus on submitting issues or pull requests on the LAMMPS GitHub project.
|
||||
|
||||
Thus please also have a look at:
|
||||
* [The guide for submitting new features in the LAMMPS manual](https://www.lammps.org/doc/Modify_contribute.html)
|
||||
* [The guide on programming style and requirement in the LAMMPS manual](https://www.lammps.org/doc/Modify_style.html)
|
||||
* [The GitHub tutorial in the LAMMPS manual](http://lammps.sandia.gov/doc/Howto_github.html)
|
||||
* [The guide for submitting new features in the LAMMPS manual](https://docs.lammps.org/Modify_contribute.html)
|
||||
* [The guide on programming style and requirement in the LAMMPS manual](https://docs.lammps.org/Modify_requirements.html)
|
||||
* [The GitHub tutorial in the LAMMPS manual](http://docs.lammps.org/Howto_github.html)
|
||||
|
||||
## Table of Contents
|
||||
|
||||
@ -27,17 +27,17 @@ __
|
||||
|
||||
## I don't want to read this whole thing I just have a question!
|
||||
|
||||
> **Note:** Please do not file an issue to ask a general question about LAMMPS, its features, how to use specific commands, or how perform simulations or analysis in LAMMPS. Instead post your question to either the ['lammps-users' mailing list](https://lammps.sandia.gov/mail.html) or the [LAMMPS Material Science Discourse forum](https://matsci.org/lammps). You do not need to be subscribed to post to the list (but a mailing list subscription avoids having your post delayed until it is approved by a mailing list moderator). Most posts to the mailing list receive a response within less than 24 hours. Before posting to the mailing list, please read the [mailing list guidelines](https://lammps.sandia.gov/guidelines.html). Following those guidelines will help greatly to get a helpful response. Always mention which LAMMPS version you are using. The LAMMPS forum was recently created as part of a larger effort to build a materials science community and have discussions not just about using LAMMPS. Thus the forum may be also used for discussions that would be off-topic for the mailing list. Those will just have to be posted to a more general category.
|
||||
> **Note:** Please do not file an issue to ask a general question about LAMMPS, its features, how to use specific commands, or how perform simulations or analysis in LAMMPS. Instead post your question to the [LAMMPS Material Science Discourse forum](https://matsci.org/lammps). Before posting to the forum, please read the general [guidelines](https://www.lammps.org/guidelines.html) and the forum specific [suggestions](https://matsci.org/t/please-read-this-first-guidelines-and-suggestions-for-posting-lammps-questions/49913). Following those guidelines and suggestions will help greatly to get a helpful response. *Always* mention which LAMMPS version you are using. The MatSci website may be also used for discussions that would be off-topic for the LAMMPS categories. Those will just have to be posted to a different category.
|
||||
|
||||
## How Can I Contribute?
|
||||
|
||||
There are several ways how you can actively contribute to the LAMMPS project: you can discuss compiling and using LAMMPS, and solving LAMMPS related problems with other LAMMPS users on the lammps-users mailing list or the forum, you can report bugs or suggest enhancements by creating issues on GitHub (or posting them to the lammps-users mailing list or posting in the LAMMPS Materials Science Discourse forum), and you can contribute by submitting pull requests on GitHub or e-mail your code
|
||||
to one of the [LAMMPS core developers](https://lammps.sandia.gov/authors.html). As you may see from the aforementioned developer page, the LAMMPS software package includes the efforts of a very large number of contributors beyond the principal authors and maintainers.
|
||||
to one of the [LAMMPS core developers](https://www.lammps.org/authors.html). As you may see from the aforementioned developer page, the LAMMPS software package includes the efforts of a very large number of contributors beyond the principal authors and maintainers.
|
||||
|
||||
### Discussing How To Use LAMMPS
|
||||
|
||||
The LAMMPS mailing list is hosted at SourceForge. The mailing list began in 2005, and now includes tens of thousands of messages in thousands of threads. LAMMPS developers try to respond to posted questions in a timely manner, but there are no guarantees. Please consider that people live in different timezone and may not have time to answer e-mails outside of their work hours.
|
||||
You can post to list by sending your email to lammps-users at lists.sourceforge.net (no subscription required), but before posting, please read the [mailing list guidelines](https://lammps.sandia.gov/guidelines.html) to maximize your chances to receive a helpful response.
|
||||
You can post to list by sending your email to lammps-users at lists.sourceforge.net (no subscription required), but before posting, please read the [mailing list guidelines](https://www.lammps.org/guidelines.html) to maximize your chances to receive a helpful response.
|
||||
|
||||
Anyone can browse/search previous questions/answers in the archives. You do not have to subscribe to the list to post questions, receive answers (to your questions), or browse/search the archives. You **do** need to subscribe to the list if you want emails for **all** the posts (as individual messages or in digest form), or to answer questions yourself. Feel free to sign up and help us out! Answering questions from fellow LAMMPS users is a great way to pay back the community for providing you a useful tool for free, and to pass on the advice you have received yourself to others. It improves your karma and helps you understand your own research better.
|
||||
|
||||
@ -47,7 +47,7 @@ The LAMMPS Materials Science Discourse forum was created recently to facilitate
|
||||
|
||||
### Reporting Bugs
|
||||
|
||||
While developers writing code for LAMMPS are careful to test their code, LAMMPS is such a large and complex software, that it is impossible to test for all combinations of features under all normal and not so normal circumstances. Thus bugs do happen, and if you suspect, that you have encountered one, please try to document it and report it as an [Issue](https://github.com/lammps/lammps/issues) on the LAMMPS GitHub project web page. However, before reporting a bug, you need to check whether this is something that may have already been corrected. The [Latest Features and Bug Fixes in LAMMPS](https://lammps.sandia.gov/bug.html) web page lists all significant changes to LAMMPS over the years. It also tells you what the current latest development version of LAMMPS is, and you should test whether your issue still applies to that version.
|
||||
While developers writing code for LAMMPS are careful to test their code, LAMMPS is such a large and complex software, that it is impossible to test for all combinations of features under all normal and not so normal circumstances. Thus bugs do happen, and if you suspect, that you have encountered one, please try to document it and report it as an [Issue](https://github.com/lammps/lammps/issues) on the LAMMPS GitHub project web page. However, before reporting a bug, you need to check whether this is something that may have already been corrected. The [Latest Features and Bug Fixes in LAMMPS](https://www.lammps.org/bug.html) web page lists all significant changes to LAMMPS over the years. It also tells you what the current latest development version of LAMMPS is, and you should test whether your issue still applies to that version.
|
||||
|
||||
When you click on the green "New Issue" button, you will be provided with a text field, where you can enter your message. That text field with contain a template with several headlines and some descriptions. Keep the headlines that are relevant to your reported potential bug and replace the descriptions with the information as suggested by the descriptions.
|
||||
You can also attach small text files (please add the file name extension `.txt` or it will be rejected), images, or small compressed text files (using gzip, do not use RAR or 7-ZIP or similar tools that are uncommon outside of Windows machines). In many cases, bugs are best illustrated by providing a small input deck (do **not** attach your entire production input, but remove everything that is not required to reproduce the issue, and scale down your system size, that the resulting calculation runs fast and can be run on small desktop quickly).
|
||||
@ -65,9 +65,9 @@ To be able to submit an issue on GitHub, you have to register for an account (fo
|
||||
|
||||
We encourage users to submit new features or modifications for LAMMPS. Instructions, guidelines, requirements,
|
||||
and recommendations are in the following sections of the LAMMPS manual:
|
||||
* [The guide for submitting new features in the LAMMPS manual](https://lammps.sandia.gov/doc/Modify_contribute.html)
|
||||
* [The guide on programming style and requirement in the LAMMPS manual](https://lammps.sandia.gov/doc/Modify_contribute.html)
|
||||
* [The GitHub tutorial in the LAMMPS manual](http://lammps.sandia.gov/doc/Howto_github.html)
|
||||
* [The guide for submitting new features in the LAMMPS manual](https://docs.lammps.org/Modify_contribute.html)
|
||||
* [The guide on programming style and requirement in the LAMMPS manual](https://docs.lammps.org/Modify_requirements.html)
|
||||
* [The GitHub tutorial in the LAMMPS manual](http://docs.lammps.org/Howto_github.html)
|
||||
|
||||
|
||||
## GitHub Workflows
|
||||
@ -85,7 +85,7 @@ For bug reports, the next step is that one of the core LAMMPS developers will se
|
||||
### Pull Requests
|
||||
|
||||
Pull requests are the **only** way that changes get made to the LAMMPS distribution. So also the LAMMPS core developers will submit pull requests for their own changes and discuss them on GitHub. Thus if you submit a pull request it will be treated in a similar fashion. When you submit a pull request you may opt to submit a "Draft" pull request. That means your changes are visible and will be subject to testing, but reviewers will not be (auto-)assigned and comments will take into account that this is not complete. On the other hand, this is a perfect way to ask the LAMMPS developers for comments on non-obvious changes and get feedback and possible suggestions for improvements or recommendations about what to avoid.
|
||||
Immediately after the submission, the LAMMPS continuing integration server at ci.lammps.org will download your submitted branch and perform a number of tests: it will tests whether it compiles cleanly under various conditions, it will also do a check on whether your included documentation translates cleanly and run some unit tests and other checks. Whether these tests are successful or fail will be recorded. If a test fails, please inspect the corresponding output on the CI server and take the necessary steps, if needed, so that the code can compile cleanly again. The test will be re-run each time the pull request is updated with a push to the remote branch on GitHub. If you are unsure about what you need to change, ask a question in the discussion area of the pull request.
|
||||
Immediately after the submission, the LAMMPS continuing integration server at https://ci.lammps.org will download your submitted branch and perform a number of tests: it will tests whether it compiles cleanly under various conditions, it will also do a check on whether your included documentation translates cleanly and run some unit tests and other checks. Whether these tests are successful or fail will be recorded. If a test fails, please inspect the corresponding output on the CI server and take the necessary steps, if needed, so that the code can compile cleanly again. The test will be re-run each time the pull request is updated with a push to the remote branch on GitHub. If you are unsure about what you need to change, ask a question in the discussion area of the pull request.
|
||||
Next a LAMMPS core developer will self-assign and do an overall technical assessment of the submission. If you submitted a draft pull request, this will not happen unless you mark it "ready for review". If you are not yet invited as a LAMMPS collaborator, and your contribution seems significant, you may also receive an invitation for collaboration on the LAMMPS repository. As part of the assessment, the pull request will be categorized with labels. There are two special labels: `needs_work` (indicates that work from the submitter of the pull request is needed) and `work_in_progress` (indicates, that the assigned LAMMPS developer will make changes, if not done by the contributor who made the submit).
|
||||
You may also receive comments and suggestions on the overall submission or specific details and on occasion specific requests for changes as part of the review. If permitted, also additional changes may be pushed into your pull request branch or a pull request may be filed in your LAMMPS fork on GitHub to include those changes.
|
||||
The LAMMPS developer may then decide to assign the pull request to another developer (e.g. when that developer is more knowledgeable about the submitted feature or enhancement or has written the modified code). It may also happen, that additional developers are requested to provide a review and approve the changes. For submissions, that may change the general behavior of LAMMPS, or where a possibility of unwanted side effects exists, additional tests may be requested by the assigned developer.
|
||||
|
||||
6
.github/workflows/coverity.yml
vendored
@ -59,16 +59,13 @@ jobs:
|
||||
-D BUILD_SHARED_LIBS=on \
|
||||
-D LAMMPS_SIZES=SMALLBIG \
|
||||
-D LAMMPS_EXCEPTIONS=off \
|
||||
-D PKG_MESSAGE=on \
|
||||
-D PKG_MPIIO=on \
|
||||
-D PKG_ATC=on \
|
||||
-D PKG_AWPMD=on \
|
||||
-D PKG_BOCS=on \
|
||||
-D PKG_EFF=on \
|
||||
-D PKG_H5MD=on \
|
||||
-D PKG_INTEL=on \
|
||||
-D PKG_LATBOLTZ=on \
|
||||
-D PKG_MANIFOLD=on \
|
||||
-D PKG_MDI=on \
|
||||
-D PKG_MGPT=on \
|
||||
-D PKG_ML-PACE=on \
|
||||
-D PKG_ML-RANN=on \
|
||||
@ -77,7 +74,6 @@ jobs:
|
||||
-D PKG_PTM=on \
|
||||
-D PKG_QTB=on \
|
||||
-D PKG_SMTBQ=on \
|
||||
-D PKG_TALLY=on \
|
||||
../cmake
|
||||
|
||||
- name: Run Coverity Scan
|
||||
|
||||
@ -2,7 +2,6 @@
|
||||
########################################
|
||||
# CMake build system
|
||||
# This file is part of LAMMPS
|
||||
# Created by Christoph Junghans and Richard Berger
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
########################################
|
||||
# set policy to silence warnings about ignoring <PackageName>_ROOT but use it
|
||||
@ -106,7 +105,7 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
|
||||
if(CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL 17.3 OR CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL 17.4)
|
||||
set(CMAKE_TUNE_DEFAULT "-xCOMMON-AVX512")
|
||||
else()
|
||||
set(CMAKE_TUNE_DEFAULT "-xHost -fp-model fast=2 -no-prec-div -qoverride-limits -diag-disable=10441 -diag-disable=2196")
|
||||
set(CMAKE_TUNE_DEFAULT "-xHost -fp-model fast=2 -no-prec-div -qoverride-limits -diag-disable=10441 -diag-disable=11074 -diag-disable=11076 -diag-disable=2196")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
@ -159,17 +158,20 @@ endif()
|
||||
########################################################################
|
||||
# User input options #
|
||||
########################################################################
|
||||
# set path to python interpreter and thus enforcing python version when
|
||||
# in a virtual environment and PYTHON_EXECUTABLE is not set on command line
|
||||
if(DEFINED ENV{VIRTUAL_ENV} AND NOT PYTHON_EXECUTABLE)
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
|
||||
set(PYTHON_EXECUTABLE "$ENV{VIRTUAL_ENV}/Scripts/python.exe")
|
||||
else()
|
||||
set(PYTHON_EXECUTABLE "$ENV{VIRTUAL_ENV}/bin/python")
|
||||
endif()
|
||||
# backward compatibility with CMake before 3.12 and older LAMMPS documentation
|
||||
if (PYTHON_EXECUTABLE)
|
||||
set(Python_EXECUTABLE "${PYTHON_EXECUTABLE}")
|
||||
endif()
|
||||
# set path to python interpreter and thus enforcing python version when
|
||||
# in a virtual environment and Python_EXECUTABLE is not set on command line
|
||||
if(DEFINED ENV{VIRTUAL_ENV} AND NOT Python_EXECUTABLE)
|
||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
|
||||
set(Python_EXECUTABLE "$ENV{VIRTUAL_ENV}/Scripts/python.exe")
|
||||
else()
|
||||
set(Python_EXECUTABLE "$ENV{VIRTUAL_ENV}/bin/python")
|
||||
endif()
|
||||
message(STATUS "Running in virtual environment: $ENV{VIRTUAL_ENV}\n"
|
||||
" Setting Python interpreter to: ${PYTHON_EXECUTABLE}")
|
||||
" Setting Python interpreter to: ${Python_EXECUTABLE}")
|
||||
endif()
|
||||
|
||||
set(LAMMPS_MACHINE "" CACHE STRING "Suffix to append to lmp binary (WON'T enable any features automatically")
|
||||
@ -425,6 +427,18 @@ if(BUILD_OMP)
|
||||
target_link_libraries(lmp PRIVATE OpenMP::OpenMP_CXX)
|
||||
endif()
|
||||
|
||||
# lower C++ standard for fmtlib sources when using Intel classic compiler
|
||||
if((CMAKE_CXX_COMPILER_ID STREQUAL "Intel") AND (CMAKE_CXX_STANDARD GREATER_EQUAL 17)
|
||||
AND (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 2021.10))
|
||||
message(STATUS "Lowering C++ standard for compiling fmtlib sources with Intel Classic compiler")
|
||||
get_filename_component(LMP_UTILS_SRC "${LAMMPS_SOURCE_DIR}/utils.cpp" ABSOLUTE)
|
||||
get_filename_component(LMP_VARIABLE_SRC "${LAMMPS_SOURCE_DIR}/variable.cpp" ABSOLUTE)
|
||||
get_filename_component(FMT_FORMAT_SRC "${LAMMPS_SOURCE_DIR}/fmtlib_format.cpp" ABSOLUTE)
|
||||
get_filename_component(FMT_OS_SRC "${LAMMPS_SOURCE_DIR}/fmtlib_os.cpp" ABSOLUTE)
|
||||
set_source_files_properties("${FMT_FORMAT_SRC}" "${FMT_OS_SRC}" "${LMP_VARIABLE_SRC}" "${LMP_UTILS_SRC}"
|
||||
PROPERTIES COMPILE_OPTIONS "-std=c++14")
|
||||
endif()
|
||||
|
||||
if(PKG_ATC OR PKG_AWPMD OR PKG_ML-QUIP OR PKG_ML-POD OR PKG_ELECTRODE OR BUILD_TOOLS)
|
||||
enable_language(C)
|
||||
if (NOT USE_INTERNAL_LINALG)
|
||||
@ -794,9 +808,6 @@ install(
|
||||
###############################################################################
|
||||
if(BUILD_SHARED_LIBS)
|
||||
# backward compatibility
|
||||
if(PYTHON_EXECUTABLE)
|
||||
set(Python_EXECUTABLE ${PYTHON_EXECUTABLE})
|
||||
endif()
|
||||
find_package(Python COMPONENTS Interpreter)
|
||||
if(BUILD_IS_MULTI_CONFIG)
|
||||
set(MY_BUILD_DIR ${CMAKE_BINARY_DIR}/$<CONFIG>)
|
||||
|
||||
@ -83,12 +83,12 @@ function(check_for_autogen_files source_dir)
|
||||
file(GLOB SRC_AUTOGEN_FILES CONFIGURE_DEPENDS ${source_dir}/style_*.h)
|
||||
file(GLOB SRC_AUTOGEN_PACKAGES CONFIGURE_DEPENDS ${source_dir}/packages_*.h)
|
||||
list(APPEND SRC_AUTOGEN_FILES ${SRC_AUTOGEN_PACKAGES} ${source_dir}/lmpinstalledpkgs.h ${source_dir}/lmpgitversion.h)
|
||||
list(APPEND SRC_AUTOGEN_FILES ${SRC_AUTOGEN_PACKAGES} ${source_dir}/mliap_model_python_couple.h ${source_dir}/mliap_model_python_couple.cpp)
|
||||
list(APPEND SRC_AUTOGEN_FILES ${source_dir}/mliap_model_python_couple.h ${source_dir}/mliap_model_python_couple.cpp)
|
||||
foreach(_SRC ${SRC_AUTOGEN_FILES})
|
||||
get_filename_component(FILENAME "${_SRC}" NAME)
|
||||
if(EXISTS ${source_dir}/${FILENAME})
|
||||
message(FATAL_ERROR "\n########################################################################\n"
|
||||
"Found header file(s) generated by the make-based build system\n"
|
||||
"Found header file ${source_dir}/${FILENAME} generated by the make-based build system\n"
|
||||
"\n"
|
||||
"Please run\n"
|
||||
"make -C ${source_dir} purge\n"
|
||||
|
||||
@ -50,8 +50,8 @@ if(DOWNLOAD_KOKKOS)
|
||||
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_CXX_EXTENSIONS=${CMAKE_CXX_EXTENSIONS}")
|
||||
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}")
|
||||
include(ExternalProject)
|
||||
set(KOKKOS_URL "https://github.com/kokkos/kokkos/archive/4.1.00.tar.gz" CACHE STRING "URL for KOKKOS tarball")
|
||||
set(KOKKOS_MD5 "a5f096bd8ad01b97fdc7a32583b17a33" CACHE STRING "MD5 checksum of KOKKOS tarball")
|
||||
set(KOKKOS_URL "https://github.com/kokkos/kokkos/archive/4.2.00.tar.gz" CACHE STRING "URL for KOKKOS tarball")
|
||||
set(KOKKOS_MD5 "731647b61a4233f568d583702e9cd6d1" CACHE STRING "MD5 checksum of KOKKOS tarball")
|
||||
mark_as_advanced(KOKKOS_URL)
|
||||
mark_as_advanced(KOKKOS_MD5)
|
||||
GetFallbackURL(KOKKOS_URL KOKKOS_FALLBACK)
|
||||
@ -76,7 +76,7 @@ if(DOWNLOAD_KOKKOS)
|
||||
add_dependencies(LAMMPS::KOKKOSCORE kokkos_build)
|
||||
add_dependencies(LAMMPS::KOKKOSCONTAINERS kokkos_build)
|
||||
elseif(EXTERNAL_KOKKOS)
|
||||
find_package(Kokkos 4.1.00 REQUIRED CONFIG)
|
||||
find_package(Kokkos 4.2.00 REQUIRED CONFIG)
|
||||
target_link_libraries(lammps PRIVATE Kokkos::kokkos)
|
||||
else()
|
||||
set(LAMMPS_LIB_KOKKOS_SRC_DIR ${LAMMPS_LIB_SOURCE_DIR}/kokkos)
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
set(PACELIB_URL "https://github.com/ICAMS/lammps-user-pace/archive/refs/tags/v.2023.01.3.fix.tar.gz" CACHE STRING "URL for PACE evaluator library sources")
|
||||
set(PACELIB_URL "https://github.com/ICAMS/lammps-user-pace/archive/refs/tags/v.2023.10.04.tar.gz" CACHE STRING "URL for PACE evaluator library sources")
|
||||
|
||||
set(PACELIB_MD5 "4f0b3b5b14456fe9a73b447de3765caa" CACHE STRING "MD5 checksum of PACE evaluator library tarball")
|
||||
set(PACELIB_MD5 "70ff79f4e59af175e55d24f3243ad1ff" CACHE STRING "MD5 checksum of PACE evaluator library tarball")
|
||||
mark_as_advanced(PACELIB_URL)
|
||||
mark_as_advanced(PACELIB_MD5)
|
||||
GetFallbackURL(PACELIB_URL PACELIB_FALLBACK)
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
|
||||
if(NOT Python_INTERPRETER)
|
||||
# backward compatibility
|
||||
# backward compatibility with CMake before 3.12 and older LAMMPS documentation
|
||||
if(PYTHON_EXECUTABLE)
|
||||
set(Python_EXECUTABLE ${PYTHON_EXECUTABLE})
|
||||
endif()
|
||||
|
||||
@ -21,6 +21,13 @@ file(WRITE qtdeploy.bat "@ECHO OFF\r\nset VSCMD_DEBUG=0\r\nCALL ${VC_INIT} x64\r
|
||||
execute_process(COMMAND cmd.exe /c qtdeploy.bat COMMAND_ECHO STDERR)
|
||||
file(REMOVE qtdeploy.bat)
|
||||
|
||||
# download and uncompress static FFMpeg and gzip binaries
|
||||
file(DOWNLOAD "https://download.lammps.org/thirdparty/ffmpeg-gzip.zip" ffmpeg-gzip.zip)
|
||||
file(WRITE unpackzip.ps1 "Expand-Archive -Path ffmpeg-gzip.zip -DestinationPath LAMMPS_GUI")
|
||||
execute_process(COMMAND powershell -ExecutionPolicy Bypass -File unpackzip.ps1)
|
||||
file(REMOVE unpackzip.ps1)
|
||||
file(REMOVE ffmpeg-gzip.zip)
|
||||
|
||||
# create zip archive
|
||||
file(WRITE makearchive.ps1 "Compress-Archive -Path LAMMPS_GUI -CompressionLevel Optimal -DestinationPath LAMMPS_GUI-Win10-amd64.zip")
|
||||
execute_process(COMMAND powershell -ExecutionPolicy Bypass -File makearchive.ps1)
|
||||
|
||||
@ -6,6 +6,8 @@ set(Kokkos_ENABLE_SERIAL ON CACHE BOOL "" FORCE)
|
||||
set(Kokkos_ENABLE_CUDA ON CACHE BOOL "" FORCE)
|
||||
set(Kokkos_ARCH_PASCAL60 ON CACHE BOOL "" FORCE)
|
||||
set(BUILD_OMP ON CACHE BOOL "" FORCE)
|
||||
get_filename_component(NVCC_WRAPPER_CMD ${CMAKE_CURRENT_SOURCE_DIR}/../lib/kokkos/bin/nvcc_wrapper ABSOLUTE)
|
||||
set(CMAKE_CXX_COMPILER ${NVCC_WRAPPER_CMD} CACHE FILEPATH "" FORCE)
|
||||
|
||||
# hide deprecation warnings temporarily for stable release
|
||||
set(Kokkos_ENABLE_DEPRECATION_WARNINGS OFF CACHE BOOL "" FORCE)
|
||||
|
||||
@ -10,5 +10,3 @@ set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||
set(CMAKE_C_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "" FORCE)
|
||||
|
||||
set(BUILD_MPI FALSE CACHE BOOL "" FORCE)
|
||||
set(BUILD_SHARED_LIBS FALSE CACHE BOOL "" FORCE)
|
||||
set(LAMMPS_EXCEPTIONS TRUE CACHE BOOL "" FORCE)
|
||||
|
||||
@ -63,6 +63,7 @@ help:
|
||||
@echo " anchor_check scan for duplicate anchor labels"
|
||||
@echo " style_check check for complete and consistent style lists"
|
||||
@echo " package_check check for complete and consistent package lists"
|
||||
@echo " role_check check for misformatted role keywords"
|
||||
@echo " spelling spell-check the manual"
|
||||
|
||||
# ------------------------------------------
|
||||
@ -98,6 +99,7 @@ html: xmlgen $(VENV) $(SPHINXCONFIG)/conf.py $(ANCHORCHECK) $(MATHJAX)
|
||||
env LC_ALL=C grep -n '[^ -~]' $(RSTDIR)/*.rst ;\
|
||||
env LC_ALL=C grep -n ' :[a-z]\+`' $(RSTDIR)/*.rst ;\
|
||||
env LC_ALL=C grep -n ' `[^`]\+<[a-z][^`]\+`[^_]' $(RSTDIR)/*.rst ;\
|
||||
env LC_ALL=C grep -n ':\(ref\|doc\):[^`]' $(RSTDIR)/*.rst ;\
|
||||
$(PYTHON) $(BUILDDIR)/utils/check-styles.py -s ../src -d src ;\
|
||||
echo "############################################" ;\
|
||||
deactivate ;\
|
||||
@ -179,6 +181,7 @@ pdf: xmlgen $(VENV) $(SPHINXCONFIG)/conf.py $(ANCHORCHECK)
|
||||
env LC_ALL=C grep -n '[^ -~]' $(RSTDIR)/*.rst ;\
|
||||
env LC_ALL=C grep -n ' :[a-z]\+`' $(RSTDIR)/*.rst ;\
|
||||
env LC_ALL=C grep -n ' `[^`]\+<[a-z][^`]\+`[^_]' $(RSTDIR)/*.rst ;\
|
||||
env LC_ALL=C grep -n ':\(ref\|doc\):[^`]' $(RSTDIR)/*.rst ;\
|
||||
$(PYTHON) utils/check-styles.py -s ../src -d src ;\
|
||||
echo "############################################" ;\
|
||||
deactivate ;\
|
||||
@ -227,6 +230,7 @@ char_check :
|
||||
role_check :
|
||||
@( env LC_ALL=C grep -n ' :[a-z]\+`' $(RSTDIR)/*.rst && exit 1 || : )
|
||||
@( env LC_ALL=C grep -n ' `[^`]\+<[a-z][^`]\+`[^_]' $(RSTDIR)/*.rst && exit 1 || : )
|
||||
@( env LC_ALL=C grep -n ':\(ref\|doc\):[^`]' $(RSTDIR)/*.rst && exit 1 || : )
|
||||
|
||||
link_check : $(VENV) html
|
||||
@(\
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
.TH LAMMPS "1" "2 August 2023" "2023-08-2"
|
||||
.TH LAMMPS "1" "21 November 2023" "2023-11-21"
|
||||
.SH NAME
|
||||
.B LAMMPS
|
||||
\- Molecular Dynamics Simulator. Version 2 August 2023
|
||||
\- Molecular Dynamics Simulator. Version 21 November 2023
|
||||
|
||||
.SH SYNOPSIS
|
||||
.B lmp
|
||||
|
||||
@ -177,13 +177,13 @@ configuration is selected with the *-C* flag:
|
||||
|
||||
ctest -C Debug
|
||||
|
||||
The CMake scripts in LAMMPS have basic support for being compiled using a
|
||||
multi-config build system, but not all of it has been ported. This is in
|
||||
particular applicable to compiling packages that require additional libraries
|
||||
that would be downloaded and compiled by CMake. The "windows" preset file
|
||||
tries to keep track of which packages can be compiled natively with the
|
||||
MSVC compilers out-of-the box. Not all of those external libraries are
|
||||
portable to Windows, either.
|
||||
The CMake scripts in LAMMPS have basic support for being compiled using
|
||||
a multi-config build system, but not all of it has been ported. This is
|
||||
in particular applicable to compiling packages that require additional
|
||||
libraries that would be downloaded and compiled by CMake. The
|
||||
``windows.cmake`` preset file tries to keep track of which packages can
|
||||
be compiled natively with the MSVC compilers out-of-the box. Not all of
|
||||
the external libraries are portable to Windows, either.
|
||||
|
||||
|
||||
Installing CMake
|
||||
|
||||
@ -626,22 +626,22 @@ They must be specified in uppercase.
|
||||
* - HOPPER90
|
||||
- GPU
|
||||
- NVIDIA Hopper generation CC 9.0 GPU
|
||||
* - VEGA900
|
||||
* - AMD_GFX906
|
||||
- GPU
|
||||
- AMD GPU MI25 GFX900
|
||||
* - VEGA906
|
||||
- AMD GPU MI50/MI60
|
||||
* - AMD_GFX908
|
||||
- GPU
|
||||
- AMD GPU MI50/MI60 GFX906
|
||||
* - VEGA908
|
||||
- AMD GPU MI100
|
||||
* - AMD_GFX90A
|
||||
- GPU
|
||||
- AMD GPU MI100 GFX908
|
||||
* - VEGA90A
|
||||
- AMD GPU MI200
|
||||
* - AMD_GFX942
|
||||
- GPU
|
||||
- AMD GPU MI200 GFX90A
|
||||
* - NAVI1030
|
||||
- AMD GPU MI300
|
||||
* - AMD_GFX1030
|
||||
- GPU
|
||||
- AMD GPU V620/W6800
|
||||
* - NAVI1100
|
||||
* - AMD_GFX1100
|
||||
- GPU
|
||||
- AMD GPU RX7900XTX
|
||||
* - INTEL_GEN
|
||||
@ -666,7 +666,7 @@ They must be specified in uppercase.
|
||||
- GPU
|
||||
- Intel GPU Ponte Vecchio
|
||||
|
||||
This list was last updated for version 4.0.1 of the Kokkos library.
|
||||
This list was last updated for version 4.2 of the Kokkos library.
|
||||
|
||||
.. tabs::
|
||||
|
||||
@ -722,9 +722,10 @@ This list was last updated for version 4.0.1 of the Kokkos library.
|
||||
``cmake/presets`` folder, ``kokkos-serial.cmake``,
|
||||
``kokkos-openmp.cmake``, ``kokkos-cuda.cmake``,
|
||||
``kokkos-hip.cmake``, and ``kokkos-sycl.cmake``. They will enable
|
||||
the KOKKOS package and enable some hardware choice. So to compile
|
||||
with CUDA device parallelization (for GPUs with CC 5.0 and up)
|
||||
with some common packages enabled, you can do the following:
|
||||
the KOKKOS package and enable some hardware choices. For GPU
|
||||
support those preset files must be customized to match the
|
||||
hardware used. So to compile with CUDA device parallelization with
|
||||
some common packages enabled, you can do the following:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
@ -1055,12 +1056,12 @@ additional details.
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
-D PYTHON_EXECUTABLE=path # path to Python executable to use
|
||||
-D Python_EXECUTABLE=path # path to Python executable to use
|
||||
|
||||
Without this setting, CMake will guess the default Python version
|
||||
on your system. To use a different Python version, you can either
|
||||
create a virtualenv, activate it and then run cmake. Or you can
|
||||
set the PYTHON_EXECUTABLE variable to specify which Python
|
||||
set the Python_EXECUTABLE variable to specify which Python
|
||||
interpreter should be used. Note note that you will also need to
|
||||
have the development headers installed for this version,
|
||||
e.g. python2-devel.
|
||||
|
||||
@ -182,6 +182,7 @@ make a copy of one of them and modify it to suit your needs.
|
||||
cmake -C ../cmake/presets/all_on.cmake [OPTIONS] ../cmake # enable all packages
|
||||
cmake -C ../cmake/presets/all_off.cmake [OPTIONS] ../cmake # disable all packages
|
||||
mingw64-cmake -C ../cmake/presets/mingw-cross.cmake [OPTIONS] ../cmake # compile with MinGW cross-compilers
|
||||
cmake -C ../cmake/presets/macos-multiarch.cmake [OPTIONS] ../cmake # compile serial multi-arch binaries on macOS
|
||||
|
||||
Presets that have names starting with "windows" are specifically for
|
||||
compiling LAMMPS :doc:`natively on Windows <Build_windows>` and
|
||||
|
||||
@ -69,7 +69,7 @@ OPT.
|
||||
* :doc:`drude/transform/inverse <fix_drude_transform>`
|
||||
* :doc:`dt/reset (k) <fix_dt_reset>`
|
||||
* :doc:`edpd/source <fix_dpd_source>`
|
||||
* :doc:`efield <fix_efield>`
|
||||
* :doc:`efield (k) <fix_efield>`
|
||||
* :doc:`efield/tip4p <fix_efield>`
|
||||
* :doc:`ehex <fix_ehex>`
|
||||
* :doc:`electrode/conp (i) <fix_electrode>`
|
||||
@ -181,6 +181,7 @@ OPT.
|
||||
* :doc:`pour <fix_pour>`
|
||||
* :doc:`precession/spin <fix_precession_spin>`
|
||||
* :doc:`press/berendsen <fix_press_berendsen>`
|
||||
* :doc:`press/langevin <fix_press_langevin>`
|
||||
* :doc:`print <fix_print>`
|
||||
* :doc:`propel/self <fix_propel_self>`
|
||||
* :doc:`property/atom (k) <fix_property_atom>`
|
||||
@ -232,7 +233,7 @@ OPT.
|
||||
* :doc:`spring <fix_spring>`
|
||||
* :doc:`spring/chunk <fix_spring_chunk>`
|
||||
* :doc:`spring/rg <fix_spring_rg>`
|
||||
* :doc:`spring/self <fix_spring_self>`
|
||||
* :doc:`spring/self (k) <fix_spring_self>`
|
||||
* :doc:`srd <fix_srd>`
|
||||
* :doc:`store/force <fix_store_force>`
|
||||
* :doc:`store/state <fix_store_state>`
|
||||
|
||||
@ -220,7 +220,8 @@ OPT.
|
||||
* :doc:`morse/soft <pair_fep_soft>`
|
||||
* :doc:`multi/lucy <pair_multi_lucy>`
|
||||
* :doc:`multi/lucy/rx (k) <pair_multi_lucy_rx>`
|
||||
* :doc:`nb3b/harmonic <pair_nb3b_harmonic>`
|
||||
* :doc:`nb3b/harmonic <pair_nb3b>`
|
||||
* :doc:`nb3b/screened <pair_nb3b>`
|
||||
* :doc:`nm/cut (o) <pair_nm>`
|
||||
* :doc:`nm/cut/coul/cut (o) <pair_nm>`
|
||||
* :doc:`nm/cut/coul/long (o) <pair_nm>`
|
||||
@ -265,7 +266,7 @@ OPT.
|
||||
* :doc:`smd/tri_surface <pair_smd_triangulated_surface>`
|
||||
* :doc:`smd/ulsph <pair_smd_ulsph>`
|
||||
* :doc:`smtbq <pair_smtbq>`
|
||||
* :doc:`snap (k) <pair_snap>`
|
||||
* :doc:`snap (ik) <pair_snap>`
|
||||
* :doc:`soft (go) <pair_soft>`
|
||||
* :doc:`sph/heatconduction <pair_sph_heatconduction>`
|
||||
* :doc:`sph/idealgas <pair_sph_idealgas>`
|
||||
@ -305,5 +306,5 @@ OPT.
|
||||
* :doc:`wf/cut <pair_wf_cut>`
|
||||
* :doc:`ylz <pair_ylz>`
|
||||
* :doc:`yukawa (gko) <pair_yukawa>`
|
||||
* :doc:`yukawa/colloid (go) <pair_yukawa_colloid>`
|
||||
* :doc:`yukawa/colloid (gko) <pair_yukawa_colloid>`
|
||||
* :doc:`zbl (gko) <pair_zbl>`
|
||||
|
||||
@ -88,7 +88,7 @@ The same functionality is available through
|
||||
MPIIO package
|
||||
-------------
|
||||
|
||||
.. deprecated:: TBD
|
||||
.. deprecated:: 21Nov2023
|
||||
|
||||
The MPIIO package has been removed from LAMMPS since it was unmaintained
|
||||
for many years and thus not updated to incorporate required changes that
|
||||
@ -107,7 +107,7 @@ see :doc:`restart <restart>`, :doc:`read_restart <read_restart>`,
|
||||
MSCG package
|
||||
------------
|
||||
|
||||
.. deprecated:: TBD
|
||||
.. deprecated:: 21Nov2023
|
||||
|
||||
The MSCG package has been removed from LAMMPS since it was unmaintained
|
||||
for many years and instead superseded by the `OpenMSCG software
|
||||
|
||||
@ -180,19 +180,11 @@ discarded but by setting the verbose flag (via setting the ``TEST_ARGS``
|
||||
environment variable, ``TEST_ARGS=-v``) it can be printed and used to
|
||||
understand why tests fail unexpectedly.
|
||||
|
||||
Another complexity of these tests stems from the need to capture
|
||||
situations where LAMMPS will stop with an error, i.e. handle so-called
|
||||
"death tests". Here the LAMMPS code will operate differently depending
|
||||
on whether it was configured to throw C++ exceptions on errors or call
|
||||
either ``exit()`` or ``MPI_Abort()``. In the latter case, the test code
|
||||
also needs to detect whether LAMMPS was compiled with the OpenMPI
|
||||
library, as OpenMPI is **only** compatible the death test options of the
|
||||
GoogleTest library when C++ exceptions are enabled; otherwise those
|
||||
"death tests" must be skipped to avoid reporting bogus failures. The
|
||||
specifics of this step are implemented in the ``TEST_FAILURE()``
|
||||
macro. These tests operate by capturing the screen output when executing
|
||||
the failing command and then comparing that with a provided regular
|
||||
expression string pattern. Example:
|
||||
The specifics of so-called "death tests", i.e. conditions where LAMMPS
|
||||
should fail and throw an exception, are implemented in the
|
||||
``TEST_FAILURE()`` macro. These tests operate by capturing the screen
|
||||
output when executing the failing command and then comparing that with a
|
||||
provided regular expression string pattern. Example:
|
||||
|
||||
.. code-block:: c++
|
||||
|
||||
|
||||
@ -3038,14 +3038,6 @@ Procedures Bound to the :f:type:`lammps` Derived Type
|
||||
This function can be used to query if an error inside of LAMMPS
|
||||
has thrown a :ref:`C++ exception <exceptions>`.
|
||||
|
||||
.. note::
|
||||
|
||||
This function will always report "no error" when the LAMMPS library
|
||||
has been compiled without ``-DLAMMPS_EXCEPTIONS``, which turns fatal
|
||||
errors aborting LAMMPS into C++ exceptions. You can use the library
|
||||
function :cpp:func:`lammps_config_has_exceptions` to check if this is
|
||||
the case.
|
||||
|
||||
:to: :cpp:func:`lammps_has_error`
|
||||
:r has_error: ``.TRUE.`` if there is an error.
|
||||
:rtype has_error: logical
|
||||
@ -3068,13 +3060,6 @@ Procedures Bound to the :f:type:`lammps` Derived Type
|
||||
would happen only in a single MPI rank and thus may not be recoverable, as
|
||||
other MPI ranks may be waiting on the failing MPI rank(s) to send messages.
|
||||
|
||||
.. note::
|
||||
|
||||
This function will do nothing when the LAMMPS library has been
|
||||
compiled without ``-DLAMMPS_EXCEPTIONS``, which turns errors aborting
|
||||
LAMMPS into C++ exceptions. You can use the function
|
||||
:f:func:`config_has_exceptions` to check whether this is the case.
|
||||
|
||||
:p character(len=\*) buffer: string buffer to copy the error message into
|
||||
:o integer(c_int) status [optional]: 1 when all ranks had the error,
|
||||
2 on a single-rank error.
|
||||
|
||||
@ -170,9 +170,9 @@ with this body style to compute body/body and body/non-body interactions.
|
||||
The *rounded/polygon* body style represents body particles as a 2d
|
||||
polygon with a variable number of N vertices. This style can only be
|
||||
used for 2d models; see the :doc:`boundary <boundary>` command. See the
|
||||
"pair_style body/rounded/polygon" page for a diagram of two
|
||||
squares with rounded circles at the vertices. Special cases for N = 1
|
||||
(circle) and N = 2 (rod with rounded ends) can also be specified.
|
||||
:doc:`pair_style body/rounded/polygon <pair_body_rounded_polygon>` page for
|
||||
a diagram of two squares with rounded circles at the vertices. Special cases
|
||||
for N = 1 (circle) and N = 2 (rod with rounded ends) can also be specified.
|
||||
|
||||
One use of this body style is for 2d discrete element models, as
|
||||
described in :ref:`Fraige <body-Fraige>`.
|
||||
|
||||
@ -5,48 +5,61 @@ This document describes **LAMMPS GUI version 1.5**.
|
||||
|
||||
-----
|
||||
|
||||
LAMMPS GUI is a simple graphical text editor that is linked to the
|
||||
:ref:`LAMMPS library <lammps_c_api>` and thus can run LAMMPS directly
|
||||
using the contents of the editor's text buffer as input. It can
|
||||
retrieve and display information from LAMMPS while it is running and is
|
||||
adapted in multiple ways specifically for editing LAMMPS input files.
|
||||
LAMMPS GUI is a graphical text editor customized for editing LAMMPS
|
||||
input files that is linked to the :ref:`LAMMPS library <lammps_c_api>`
|
||||
and thus can run LAMMPS directly using the contents of the editor's text
|
||||
buffer as input. It can retrieve and display information from LAMMPS
|
||||
while it is running, display visualizations created with the :doc:`dump
|
||||
image command <dump_image>`, and is adapted specifically for editing
|
||||
LAMMPS input files through text completion and reformatting, and linking
|
||||
to the online LAMMPS documentation for known LAMMPS commands and styles.
|
||||
|
||||
.. note::
|
||||
|
||||
Pre-compiled, ready-to-use LAMMPS GUI executables for Linux (Ubuntu
|
||||
20.04LTS or later and compatible), macOS (version 11 aka Big Sur or
|
||||
later), and Windows (version 10 or later) :ref:`are available
|
||||
<lammps-gui-install>` for download. The executables are linked to
|
||||
a current version of LAMMPS as well. The source code for the
|
||||
LAMMPS GUI is included in the ``tools/lammps-gui`` folder of the
|
||||
LAMMPS distribution and it can be compiled alongside LAMMPS with
|
||||
CMake.
|
||||
<lammps_gui_install>` for download. They may be linked to a
|
||||
development version of LAMMPS in case they need features not yet
|
||||
available in a released version. Serial LAMMPS executables of the
|
||||
same LAMMPS version are included as well. The source code for the
|
||||
LAMMPS GUI is included in the LAMMPS source code and can be found in
|
||||
the ``tools/lammps-gui`` folder. It can be compiled alongside LAMMPS
|
||||
when :doc:`compiling with CMake <Build_cmake>`.
|
||||
|
||||
LAMMPS GUI tries to be similar to what people traditionally would do
|
||||
to run LAMMPS using a command line window: editing inputs with a text
|
||||
editor, run LAMMPS on the input with selected command line flags, and
|
||||
then extract data from the created files and view them. That
|
||||
procedure is quite effective and often required when running LAMMPS on
|
||||
high-performance computing facilities, or for people proficient in
|
||||
using the command line, as that allows them to use tools for the
|
||||
individual steps which they are most comfortable with.
|
||||
LAMMPS GUI tries to provide an experience similar to what people
|
||||
traditionally would do to run LAMMPS using a command line window:
|
||||
|
||||
The main benefit of a GUI application is that many basic tasks can be
|
||||
done directly from the GUI without switching to a text console or
|
||||
requiring external programs, let alone scripts to extract data from
|
||||
the generated output. It also integrates well with graphical desktop
|
||||
environments.
|
||||
- editing inputs with a text editor
|
||||
- run LAMMPS on the input with selected command line flags
|
||||
- and then use or extract data from the created files and visualize it
|
||||
|
||||
That procedure is quite effective for people proficient in using the
|
||||
command line, as that allows them to use tools for the individual steps
|
||||
which they are most comfortable with. It is often required when running
|
||||
LAMMPS on high-performance computing facilities.
|
||||
|
||||
The main benefit of using the LAMMPS GUI application instead is that
|
||||
many basic tasks can be done directly from the GUI without switching to
|
||||
a text console window or using external programs, let alone writing
|
||||
scripts to extract data from the generated output. It also integrates
|
||||
well with graphical desktop environments.
|
||||
|
||||
LAMMPS GUI thus makes it easier for beginners to get started running
|
||||
simple LAMMPS simulations. It is very suitable for tutorials on
|
||||
LAMMPS since you only need to learn how to use a single program. It
|
||||
is also designed to keep the barrier low when you decide to switch to
|
||||
a full featured, standalone programming editor and more sophisticated
|
||||
simple LAMMPS simulations. It is very suitable for tutorials on LAMMPS
|
||||
since you only need to learn how to use a single program for most tasks
|
||||
and thus time can be saved and people can focus on learning LAMMPS. It
|
||||
is also designed to keep the barrier low when you decide to switch to a
|
||||
full featured, standalone programming editor and more sophisticated
|
||||
visualization and analysis tools and run LAMMPS from a command line.
|
||||
|
||||
The following text provides a detailed tour of the features and
|
||||
functionality of the LAMMPS GUI.
|
||||
|
||||
Suggestions for new features and reports of bugs are always welcome.
|
||||
You can use the :doc:`the same channels as for LAMMPS itself
|
||||
<Errors_bugs>` for that purpose.
|
||||
|
||||
-----
|
||||
|
||||
Main window
|
||||
@ -86,9 +99,9 @@ save them.
|
||||
Running LAMMPS
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
From within the LAMMPS GUI main window LAMMPS can be started either
|
||||
from the ``Run`` menu using the ``Run LAMMPS from Editor Buffer``
|
||||
entry, by the hotkey `Ctrl-Enter` (`Command-Enter` on macOS), or by
|
||||
From within the LAMMPS GUI main window LAMMPS can be started either from
|
||||
the ``Run`` menu using the ``Run LAMMPS from Editor Buffer`` entry, by
|
||||
the keyboard shortcut `Ctrl-Enter` (`Command-Enter` on macOS), or by
|
||||
clicking on the green "Run" button in the status bar. All of these
|
||||
operations will cause LAMMPS to process the entire input script, which
|
||||
may contain multiple :doc:`run <run>` or :doc:`minimize <minimize>`
|
||||
@ -147,10 +160,10 @@ More information on those windows and how to adjust their behavior and
|
||||
contents is given below.
|
||||
|
||||
An active LAMMPS run can be stopped cleanly by using either the ``Stop
|
||||
LAMMPS`` entry in the ``Run`` menu, the hotkey `Ctrl-/` (`Command-/`
|
||||
on macOS), or by clicking on the red button in the status bar. This
|
||||
will cause the running LAMMPS process to complete the current timestep
|
||||
(or iteration for energy minimization) and then complete the
|
||||
LAMMPS`` entry in the ``Run`` menu, the keyboard shortcut `Ctrl-/`
|
||||
(`Command-/` on macOS), or by clicking on the red button in the status
|
||||
bar. This will cause the running LAMMPS process to complete the current
|
||||
timestep (or iteration for energy minimization) and then complete the
|
||||
processing of the buffer while skipping all run or minimize commands.
|
||||
This is equivalent to the input script command :doc:`timer timeout 0
|
||||
<timer>` and is implemented by calling the
|
||||
@ -172,17 +185,20 @@ be seen in the command line window, as shown below.
|
||||
LAMMPS GUI captures the screen output as it is generated and updates
|
||||
the log window regularly during a run.
|
||||
|
||||
By default, there will be a new window for each run, so that it is
|
||||
possible to visually compare outputs from different runs. It is also
|
||||
possible to change the behavior of LAMMPS GUI in the preferences dialog
|
||||
to *replace* an existing log window for a new run or to not show the log
|
||||
window by default. It is also possible to show or hide the current log
|
||||
window from the ``View`` menu.
|
||||
By default, the log window will be replaced each time a run is started.
|
||||
The runs are counted and the run number for the current run is displayed
|
||||
in the window title. It is possible to change the behavior of LAMMPS
|
||||
GUI in the preferences dialog to create a *new* log window for every run
|
||||
or to not show the current log window. It is also possible to show or
|
||||
hide the *current* log window from the ``View`` menu.
|
||||
|
||||
The text in the log window is read-only and cannot be modified, but
|
||||
editor commands to select and copy all or parts of the text can be used.
|
||||
The "Select All" and "Copy" functions are also available via a context
|
||||
menu by clicking with the right mouse button.
|
||||
keyboard shortcuts to select and copy all or parts of the text can be
|
||||
used to transfer text to another program. Also, the keyboard shortcut
|
||||
`Ctrl-S` (`Command-S` on macOS) is available to save the log buffer to a
|
||||
file. The "Select All" and "Copy" functions, as well as a "Save Log to
|
||||
File" option are also available from a context menu by clicking with the
|
||||
right mouse button into the log window text area.
|
||||
|
||||
Chart Window
|
||||
------------
|
||||
@ -199,10 +215,16 @@ The drop down menu on the top right allows selection of different
|
||||
properties that are computed and written to thermo output. Only one
|
||||
property can be shown at a time. The plots will be updated with new
|
||||
data as the run progresses, so they can be used to visually monitor the
|
||||
evolution of available properties. From the ``File`` menu on the top
|
||||
left, it is possible to save an image of the currently displayed plot or
|
||||
export the data in either plain text columns (for use by plotting tools
|
||||
like `gnuplot <http://www.gnuplot.info/>`_ or `grace
|
||||
evolution of available properties. The window title will show the
|
||||
current run number that this chart window corresponds to. Same as
|
||||
explained for the log window above, by default, the chart window will
|
||||
be replaced on each new run, but the behavior can be changed in the
|
||||
preferences dialog.
|
||||
|
||||
From the ``File`` menu on the top left, it is possible to save an image
|
||||
of the currently displayed plot or export the data in either plain text
|
||||
columns (for use by plotting tools like `gnuplot
|
||||
<http://www.gnuplot.info/>`_ or `grace
|
||||
<https://plasma-gate.weizmann.ac.il/Grace/>`_), or as CSV data which can
|
||||
be imported for further processing with Microsoft Excel or `pandas
|
||||
<https://pandas.pydata.org/>`_
|
||||
@ -225,19 +247,20 @@ displays the images created by LAMMPS as they are written.
|
||||
:align: center
|
||||
:scale: 50%
|
||||
|
||||
The various buttons at the bottom right of the window allow either
|
||||
single stepping through the sequence of images or playing an animation
|
||||
(as a continuous loop or once from first to last). It is also possible
|
||||
to zoom in or zoom out of the displayed images. The slide show window
|
||||
will be closed when a new file is loaded.
|
||||
The various buttons at the bottom right of the window allow single
|
||||
stepping through the sequence of images or playing an animation (as a
|
||||
continuous loop or once from first to last). It is also possible to
|
||||
zoom in or zoom out of the displayed images, and to export the slide
|
||||
show animation to a movie file, if `ffmpeg <https://ffmpeg.org/>`_ is
|
||||
installed.
|
||||
|
||||
Variable Info
|
||||
-------------
|
||||
|
||||
During a run, it may be of interest to monitor the value of input
|
||||
script variables, for example to monitor the progress of loops. This
|
||||
can be done by enabling the "Variables Window" in the ``View`` menu or
|
||||
by using the `Ctrl-Shift-W` hotkey. This will show info similar to
|
||||
During a run, it may be of interest to monitor the value of input script
|
||||
variables, for example to monitor the progress of loops. This can be
|
||||
done by enabling the "Variables Window" in the ``View`` menu or by using
|
||||
the `Ctrl-Shift-W` keyboard shortcut. This will show info similar to
|
||||
the :doc:`info variables <info>` command in a separate window as shown
|
||||
below.
|
||||
|
||||
@ -250,16 +273,27 @@ during a run. It will show "(none)" if there are no variables
|
||||
defined. Note that it is also possible to *set* :doc:`index style
|
||||
variables <variable>`, that would normally be set via command line
|
||||
flags, via the "Set Variables..." dialog from the ``Run`` menu.
|
||||
LAMMPS GUI will automatically set the variable "gui_run" to the
|
||||
current value of the run counter. That way it would be possible
|
||||
to automatically record a log for each run attempt by using the
|
||||
command
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
log logfile-${gui_run}.txt
|
||||
|
||||
at the beginning of an input file. That would record logs to files
|
||||
``logfile-1.txt``, ``logfile-2.txt``, and so on for successive runs.
|
||||
|
||||
Viewing Snapshot Images
|
||||
-----------------------
|
||||
|
||||
By selecting the ``Create Image`` entry in the ``Run`` menu, or by
|
||||
hitting the `Ctrl-I` (`Command-I` on macOS) hotkey, or by clicking on
|
||||
the "palette" button in the status bar, LAMMPS GUI will send a custom
|
||||
:doc:`write_dump image <dump_image>` command to LAMMPS and read the
|
||||
resulting snapshot image with the current state of the system into an
|
||||
image viewer window. This functionality is not available *during* an
|
||||
hitting the `Ctrl-I` (`Command-I` on macOS) keyboard shortcut, or by
|
||||
clicking on the "palette" button in the status bar, LAMMPS GUI will send
|
||||
a custom :doc:`write_dump image <dump_image>` command to LAMMPS and read
|
||||
the resulting snapshot image with the current state of the system into
|
||||
an image viewer window. This functionality is not available *during* an
|
||||
ongoing run. When LAMMPS is not yet initialized, LAMMPS GUI will try to
|
||||
identify the line with the first run or minimize command and execute all
|
||||
command up to that line from the input buffer and then add a "run 0"
|
||||
@ -306,34 +340,41 @@ contents to a file.
|
||||
Context Specific Word Completion
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
By default, LAMMPS GUI will display a small popup frame with possible
|
||||
completions for LAMMPS input script commands or styles after 2
|
||||
characters of a word have been typed. The word can then be completed
|
||||
through selecting an entry by scrolling down with the cursor keys and
|
||||
selecting with the 'Enter' key or by clicking on the entry with the
|
||||
mouse. The automatic completion popup can be disabled in the
|
||||
``Preferences`` dialog, but the completion can still be requested
|
||||
manually by either hitting the 'Shift-TAB' key or by right-clicking with
|
||||
the mouse and selecting the option from the context menu. Most of the
|
||||
completion information is taken from the LAMMPS instance and thus it
|
||||
will be adjusted to only show options available that have been enabled
|
||||
while compiling LAMMPS, however that excludes accelerated styles and
|
||||
commands, only non-suffix versions are shown.
|
||||
By default, LAMMPS GUI will display a small pop-up frame with possible
|
||||
choices for LAMMPS input script commands or styles after 2 characters of
|
||||
a word have been typed.
|
||||
|
||||
.. image:: JPG/lammps-gui-complete.png
|
||||
:align: center
|
||||
:scale: 75%
|
||||
|
||||
The word can then be completed through selecting an entry by scrolling
|
||||
up and down with the cursor keys and selecting with the 'Enter' key or
|
||||
by clicking on the entry with the mouse. The automatic completion
|
||||
pop-up can be disabled in the ``Preferences`` dialog, but the completion
|
||||
can still be requested manually by either hitting the 'Shift-TAB' key or
|
||||
by right-clicking with the mouse and selecting the option from the
|
||||
context menu. Most of the completion information is taken from the
|
||||
LAMMPS instance and thus it will be adjusted to only show available
|
||||
options that have been enabled while compiling LAMMPS. That, however,
|
||||
excludes accelerated styles and commands; for improved clarity, only the
|
||||
non-suffix version of styles are shown.
|
||||
|
||||
Line Reformatting
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
The editor supports reformatting lines according to the syntax in
|
||||
order to have consistently aligned lines. This primarily means adding
|
||||
space padding to commands, type specifiers, IDs and names. This
|
||||
The editor supports reformatting lines according to the syntax in order
|
||||
to have consistently aligned lines. This primarily means adding
|
||||
whitespace padding to commands, type specifiers, IDs and names. This
|
||||
reformatting is performed by default when hitting the 'Enter' key to
|
||||
start a new line. This feature can be turned off in the
|
||||
start a new line. This feature can be turned on or off in the
|
||||
``Preferences`` dialog, but it can still be manually performed by
|
||||
hitting the 'TAB' key.
|
||||
hitting the 'TAB' key. The amount of padding can also be changed in the
|
||||
``Preferences`` dialog.
|
||||
|
||||
Internally this functionality is achieved by splitting the line into
|
||||
"words" and then putting it back together with padding added where the
|
||||
context can be detected; otherwise a single space is used.
|
||||
context can be detected; otherwise a single space is used between words.
|
||||
|
||||
Context Specific Help
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
@ -343,23 +384,23 @@ Context Specific Help
|
||||
:scale: 50%
|
||||
|
||||
A unique feature of the LAMMPS GUI is the option to look up the
|
||||
documentation for the command in the current line. This can be done
|
||||
by either clicking the right mouse button or by using the `Ctrl-?`
|
||||
hotkey. When clicking the mouse there are additional entries in the
|
||||
context menu that will open the corresponding documentation page in
|
||||
the online LAMMPS documentation. When using the hotkey, the first of
|
||||
documentation for the command in the current line. This can be done by
|
||||
either clicking the right mouse button or by using the `Ctrl-?` keyboard
|
||||
shortcut. When clicking the mouse there are additional entries in the
|
||||
context menu that will open the corresponding documentation page in the
|
||||
online LAMMPS documentation. When using the keyboard, the first of
|
||||
those entries will be chosen directly.
|
||||
|
||||
Menu
|
||||
----
|
||||
|
||||
The menu bar has entries ``File``, ``Edit``, ``Run``, ``View``, and
|
||||
``About``. Instead of using the mouse to click on them, the
|
||||
individual menus can also be activated by hitting the `Alt` key
|
||||
together with the corresponding underlined letter, that is `Alt-F`
|
||||
will activate the ``File`` menu. For the corresponding activated
|
||||
sub-menus, the underlined letter together with the `Alt` key can again
|
||||
be used to select entries instead of using the mouse.
|
||||
``About``. Instead of using the mouse to click on them, the individual
|
||||
menus can also be activated by hitting the `Alt` key together with the
|
||||
corresponding underlined letter, that is `Alt-F` will activate the
|
||||
``File`` menu. For the corresponding activated sub-menus, the key
|
||||
corresponding the underlined letters can again be used to select entries
|
||||
instead of using the mouse.
|
||||
|
||||
File
|
||||
^^^^
|
||||
@ -385,8 +426,8 @@ Edit
|
||||
|
||||
The ``Edit`` menu offers the usual editor functions like ``Undo``,
|
||||
``Redo``, ``Cut``, ``Copy``, ``Paste``. It can also open a
|
||||
``Preferences`` dialog (hotkey `Ctrl-P`) and allows deletion of all
|
||||
stored preferences so they will be reset to default values.
|
||||
``Preferences`` dialog (keyboard shortcut `Ctrl-P`) and allows deletion
|
||||
of all stored preferences so they will be reset to default values.
|
||||
|
||||
Run
|
||||
^^^
|
||||
@ -516,7 +557,7 @@ General Settings:
|
||||
- *Replace image window on new render:* when checked, an existing
|
||||
chart window will be replaced when a new snapshot image is requested,
|
||||
otherwise each command will create a new image window.
|
||||
- *Path to LAMMPS Shared Library File:* this options is only available
|
||||
- *Path to LAMMPS Shared Library File:* this option is only visible
|
||||
when LAMMPS GUI was compiled to load the LAMMPS library at run time
|
||||
instead of being linked to it directly. With the ``Browse..`` button
|
||||
or by changing the text, a different shared library file with a
|
||||
@ -574,26 +615,26 @@ the range between 1 and 32.
|
||||
|
||||
The two settings which follow enable or disable the automatic
|
||||
reformatting when hitting the 'Enter' key and the automatic display of
|
||||
the completion popup window.
|
||||
the completion pop-up window.
|
||||
|
||||
-----------
|
||||
|
||||
Hotkeys
|
||||
-------
|
||||
Keyboard Shortcuts
|
||||
------------------
|
||||
|
||||
Almost all functionality is accessible from the menu or via hotkeys.
|
||||
The following hotkeys are available (On macOS use the Command key
|
||||
instead of Ctrl/Control).
|
||||
Almost all functionality is accessible from the menu of the editor
|
||||
window or through keyboard shortcuts. The following shortcuts are
|
||||
available (On macOS use the Command key instead of Ctrl/Control).
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
:widths: auto
|
||||
|
||||
* - Hotkey
|
||||
* - Shortcut
|
||||
- Function
|
||||
- Hotkey
|
||||
- Shortcut
|
||||
- Function
|
||||
- Hotkey
|
||||
- Shortcut
|
||||
- Function
|
||||
* - Ctrl+N
|
||||
- New File
|
||||
@ -620,7 +661,7 @@ instead of Ctrl/Control).
|
||||
- Ctrl+I
|
||||
- Snapshot Image
|
||||
* - Ctrl+Q
|
||||
- Quit
|
||||
- Quit Application
|
||||
- Ctrl+V
|
||||
- Paste text
|
||||
- Ctrl+L
|
||||
@ -653,3 +694,7 @@ instead of Ctrl/Control).
|
||||
Further editing keybindings `are documented with the Qt documentation
|
||||
<https://doc.qt.io/qt-5/qplaintextedit.html#editing-key-bindings>`_. In
|
||||
case of conflicts the list above takes precedence.
|
||||
|
||||
All other windows only support a subset of keyboard shortcuts listed
|
||||
above. Typically, the shortcuts `Ctrl-/` (Stop Run), `Ctrl-W` (Close
|
||||
Window), and `Ctrl-Q` (Quit Application) are supported.
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
Output from LAMMPS (thermo, dumps, computes, fixes, variables)
|
||||
==============================================================
|
||||
|
||||
There are four basic kinds of LAMMPS output:
|
||||
There are four basic forms of LAMMPS output:
|
||||
|
||||
* :doc:`Thermodynamic output <thermo_style>`, which is a list of
|
||||
quantities printed every few timesteps to the screen and logfile.
|
||||
@ -20,18 +20,17 @@ output files, depending on what :doc:`dump <dump>` and :doc:`fix <fix>`
|
||||
commands you specify.
|
||||
|
||||
As discussed below, LAMMPS gives you a variety of ways to determine
|
||||
what quantities are computed and printed when the thermodynamics,
|
||||
what quantities are calculated and printed when the thermodynamics,
|
||||
dump, or fix commands listed above perform output. Throughout this
|
||||
discussion, note that users can also :doc:`add their own computes and
|
||||
fixes to LAMMPS <Modify>` which can then generate values that can then
|
||||
be output with these commands.
|
||||
fixes to LAMMPS <Modify>` which can generate values that can then be
|
||||
output with these commands.
|
||||
|
||||
The following subsections discuss different LAMMPS commands related
|
||||
to output and the kind of data they operate on and produce:
|
||||
|
||||
* :ref:`Global/per-atom/local/per-grid data <global>`
|
||||
* :ref:`Scalar/vector/array data <scalar>`
|
||||
* :ref:`Per-grid data <grid>`
|
||||
* :ref:`Disambiguation <disambiguation>`
|
||||
* :ref:`Thermodynamic output <thermo>`
|
||||
* :ref:`Dump file output <dump>`
|
||||
@ -48,34 +47,65 @@ to output and the kind of data they operate on and produce:
|
||||
Global/per-atom/local/per-grid data
|
||||
-----------------------------------
|
||||
|
||||
Various output-related commands work with four different styles of
|
||||
Various output-related commands work with four different "styles" of
|
||||
data: global, per-atom, local, and per-grid. A global datum is one or
|
||||
more system-wide values, e.g. the temperature of the system. A
|
||||
per-atom datum is one or more values per atom, e.g. the kinetic energy
|
||||
of each atom. Local datums are calculated by each processor based on
|
||||
the atoms it owns, but there may be zero or more per atom, e.g. a list
|
||||
the atoms it owns, and there may be zero or more per atom, e.g. a list
|
||||
of bond distances.
|
||||
|
||||
A per-grid datum is one or more values per grid cell, for a grid which
|
||||
overlays the simulation domain. The grid cells and the data they
|
||||
store are distributed across processors; each processor owns the grid
|
||||
cells whose center point falls within its subdomain.
|
||||
overlays the simulation domain. Similar to atoms and per-atom data,
|
||||
the grid cells and the data they store are distributed across
|
||||
processors; each processor owns the grid cells whose center points
|
||||
fall within its subdomain.
|
||||
|
||||
.. _scalar:
|
||||
|
||||
Scalar/vector/array data
|
||||
------------------------
|
||||
|
||||
Global, per-atom, and local datums can come in three kinds: a single
|
||||
scalar value, a vector of values, or a 2d array of values. The doc
|
||||
page for a "compute" or "fix" or "variable" that generates data will
|
||||
specify both the style and kind of data it produces, e.g. a per-atom
|
||||
vector.
|
||||
Global, per-atom, local, and per-grid datums can come in three
|
||||
"kinds": a single scalar value, a vector of values, or a 2d array of
|
||||
values. More specifically these are the valid kinds for each style:
|
||||
|
||||
When a quantity is accessed, as in many of the output commands
|
||||
discussed below, it can be referenced via the following bracket
|
||||
notation, where ID in this case is the ID of a compute. The leading
|
||||
"c\_" would be replaced by "f\_" for a fix, or "v\_" for a variable:
|
||||
* global scalar
|
||||
* global vector
|
||||
* global array
|
||||
* per-atom vector
|
||||
* per-atom array
|
||||
* local vector
|
||||
* local array
|
||||
* per-grid vector
|
||||
* per-grid array
|
||||
|
||||
A per-atom vector means a single value per atom; the "vector" is the
|
||||
length of the number of atoms. A per-atom array means multiple values
|
||||
per atom. Similarly a local vector or array means one or multiple
|
||||
values per entity (e.g. per bond in the system). And a per-grid
|
||||
vector or array means one or multiple values per grid cell.
|
||||
|
||||
The doc page for a compute or fix or variable that generates data will
|
||||
specify both the styles and kinds of data it produces, e.g. a per-atom
|
||||
vector. Note that a compute or fix may generate multiple styles and
|
||||
kinds of output. However, for per-atom data only a vector or array is
|
||||
output, never both. Likewise for per-local and per-grid data. An
|
||||
example of a fix which generates multiple styles and kinds of data is
|
||||
the :doc:`fix mdi/qm <fix_mdi_qm>` command. It outputs a global
|
||||
scalar, global vector, and per-atom array for the quantum mechanical
|
||||
energy and virial of the system and forces on each atom.
|
||||
|
||||
By contrast, different variable styles generate only a single kind of
|
||||
data: a global scalar for an equal-style variable, global vector for a
|
||||
vector-style variable, and a per-atom vector for an atom-style
|
||||
variable.
|
||||
|
||||
When data is accessed by another command, as in many of the output
|
||||
commands discussed below, it can be referenced via the following
|
||||
bracket notation, where ID in this case is the ID of a compute. The
|
||||
leading "c\_" would be replaced by "f\_" for a fix, or "v\_" for a
|
||||
variable (and ID would be the name of the variable):
|
||||
|
||||
+-------------+--------------------------------------------+
|
||||
| c_ID | entire scalar, vector, or array |
|
||||
@ -85,40 +115,56 @@ notation, where ID in this case is the ID of a compute. The leading
|
||||
| c_ID[I][J] | one element of array |
|
||||
+-------------+--------------------------------------------+
|
||||
|
||||
In other words, using one bracket reduces the dimension of the data
|
||||
once (vector -> scalar, array -> vector). Using two brackets reduces
|
||||
the dimension twice (array -> scalar). Thus a command that uses
|
||||
scalar values as input can typically also process elements of a vector
|
||||
or array.
|
||||
Note that using one bracket reduces the dimension of the data once
|
||||
(vector -> scalar, array -> vector). Using two brackets reduces the
|
||||
dimension twice (array -> scalar). Thus a command that uses scalar
|
||||
values as input can also conceptually operate on an element of a
|
||||
vector or array.
|
||||
|
||||
.. _grid:
|
||||
|
||||
Per-grid data
|
||||
------------------------
|
||||
|
||||
Per-grid data can come in two kinds: a vector of values (one per grid
|
||||
cekk), or a 2d array of values (multiple values per grid ckk). The
|
||||
doc page for a "compute" or "fix" that generates data will specify
|
||||
names for both the grid(s) and datum(s) it produces, e.g. per-grid
|
||||
vectors or arrays, which can be referenced by other commands. See the
|
||||
:doc:`Howto grid <Howto_grid>` doc page for more details.
|
||||
Per-grid vectors or arrays are accessed similarly, except that the ID
|
||||
for the compute or fix includes a grid name and a data name. This is
|
||||
because a fix or compute can create multiple grids (of different
|
||||
sizes) and multiple sets of data (for each grid). The fix or compute
|
||||
defines names for each grid and for each data set, so that all of them
|
||||
can be accessed by other commands. See the :doc:`Howto grid
|
||||
<Howto_grid>` doc page for more details.
|
||||
|
||||
.. _disambiguation:
|
||||
|
||||
Disambiguation
|
||||
--------------
|
||||
|
||||
Some computes and fixes produce data in multiple styles, e.g. a global
|
||||
scalar and a per-atom vector. Usually the context in which the input
|
||||
script references the data determines which style is meant. Example:
|
||||
if a compute provides both a global scalar and a per-atom vector, the
|
||||
former will be accessed by using ``c_ID`` in an equal-style variable,
|
||||
while the latter will be accessed by using ``c_ID`` in an atom-style
|
||||
variable. Note that atom-style variable formulas can also access
|
||||
global scalars, but in this case it is not possible to do this
|
||||
directly because of the ambiguity. Instead, an equal-style variable
|
||||
can be defined which accesses the global scalar, and that variable can
|
||||
be used in the atom-style variable formula in place of ``c_ID``.
|
||||
When a compute or fix produces data in multiple styles, e.g. global
|
||||
and per-atom, a reference to the data can sometimes be ambiguous.
|
||||
Usually the context in which the input script references the data
|
||||
determines which style is meant.
|
||||
|
||||
For example, if a compute outputs a global vector and a per-atom
|
||||
array, an element of the global vector will be accessed by using
|
||||
``c_ID[I]`` in :doc:`thermodynamic output <thermo_style>`, while a
|
||||
column of the per-atom array will be accessed by using ``c_ID[I]`` in
|
||||
a :doc:`dump custom <dump>` command.
|
||||
|
||||
However, if a :doc:`atom-style variable <variable>` references
|
||||
``c_ID[I]``, then it could be intended to refer to a single element of
|
||||
the global vector or a column of the per-atom array. The doc page for
|
||||
any command that has a potential ambiguity (variables are the most
|
||||
common) will explain how to resolve the ambiguity.
|
||||
|
||||
In this case, an atom-style variables references per-atom data if it
|
||||
exists. If access to an element of a global vector is needed (as in
|
||||
this example), an equal-style variable which references the value can
|
||||
be defined and used in the atom-style variable formula instead.
|
||||
|
||||
Similarly, :doc:`thermodynamic output <thermo_style>` can only
|
||||
reference global data from a compute or fix. But you can indirectly
|
||||
access per-atom data as follows. The reference ``c_ID[245][2]`` for
|
||||
the ID of a :doc:`compute displace/atom <compute_displace_atom>`
|
||||
command, refers to the y-component of displacement for the atom with
|
||||
ID 245. While you cannot use that reference directly in the
|
||||
:doc:`thermo_style <thermo_style>` command, you can use it an
|
||||
equal-style variable formula, and then reference the variable in
|
||||
thermodynamic output.
|
||||
|
||||
.. _thermo:
|
||||
|
||||
@ -389,7 +435,7 @@ output and input data types must match, e.g. global/per-atom/local
|
||||
data and scalar/vector/array data.
|
||||
|
||||
Also note that, as described above, when a command takes a scalar as
|
||||
input, that could be an element of a vector or array. Likewise a
|
||||
input, that could also be an element of a vector or array. Likewise a
|
||||
vector input could be a column of an array.
|
||||
|
||||
+--------------------------------------------------------+----------------------------------------------+----------------------------------------------------+
|
||||
|
||||
@ -133,7 +133,7 @@ to the location in the virtual environment with:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
cmake . -DPYTHON_EXECUTABLE=$(which python)
|
||||
cmake . -DPython_EXECUTABLE=$(which python)
|
||||
|
||||
# install LAMMPS package in virtualenv
|
||||
(testing) make install-python
|
||||
|
||||
@ -119,6 +119,45 @@ for example :doc:`dump yaml <dump>` or :doc:`fix ave/time <fix_ave_time>`
|
||||
Depending on the kind of data being written, organization of the data
|
||||
or the specific syntax used may change, but the principles are very
|
||||
similar and all files should be readable with a suitable YAML parser.
|
||||
A simple example for this is given below:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
import yaml
|
||||
try:
|
||||
from yaml import CSafeLoader as YamlLoader
|
||||
except ImportError:
|
||||
from yaml import SafeLoader as YamlLoader
|
||||
|
||||
timesteps = []
|
||||
with open("dump.yaml", "r") as f:
|
||||
data = yaml.load_all(f, Loader=YamlLoader)
|
||||
|
||||
for d in data:
|
||||
print('Processing timestep %d' % d['timestep'])
|
||||
timesteps.append(d)
|
||||
|
||||
print('Read %d timesteps from yaml dump' % len(timesteps))
|
||||
print('Second timestep: ', timesteps[1]['timestep'])
|
||||
print('Box info: x: ' , timesteps[1]['box'][0], ' y:', timesteps[1]['box'][1], ' z:',timesteps[1]['box'][2])
|
||||
print('First 5 per-atom columns: ', timesteps[1]['keywords'][0:5])
|
||||
print('Corresponding 10th atom data: ', timesteps[1]['data'][9][0:5])
|
||||
|
||||
The corresponding output for a YAML dump command added to the "melt" example is:
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
Processing timestep 0
|
||||
Processing timestep 50
|
||||
Processing timestep 100
|
||||
Processing timestep 150
|
||||
Processing timestep 200
|
||||
Processing timestep 250
|
||||
Read 6 timesteps from yaml dump
|
||||
Second timestep: 50
|
||||
Box info: x: [0, 16.795961913825074] y: [0, 16.795961913825074] z: [0, 16.795961913825074]
|
||||
First 5 per-atom columns: ['id', 'type', 'x', 'y', 'z']
|
||||
Corresponding 10th atom data: [10, 1, 4.43828, 0.968481, 0.108555]
|
||||
|
||||
Processing scalar data with Python
|
||||
----------------------------------
|
||||
|
||||
@ -12,7 +12,8 @@ is created, e.g. by the :doc:`create_box <create_box>` or
|
||||
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
||||
commands. Additionally, LAMMPS defines box size parameters lx,ly,lz
|
||||
where lx = xhi-xlo, and similarly in the y and z dimensions. The 6
|
||||
parameters, as well as lx,ly,lz, can be output via the :doc:`thermo_style custom <thermo_style>` command.
|
||||
parameters, as well as lx,ly,lz, can be output via the
|
||||
:doc:`thermo_style custom <thermo_style>` command.
|
||||
|
||||
LAMMPS also allows simulations to be performed in triclinic
|
||||
(non-orthogonal) simulation boxes shaped as a parallelepiped with
|
||||
|
||||
@ -5,7 +5,7 @@ LAMMPS is designed to be a fast, parallel engine for molecular
|
||||
dynamics (MD) simulations. It provides only a modest amount of
|
||||
functionality for setting up simulations and analyzing their output.
|
||||
|
||||
Specifically, LAMMPS was not conceived and designed for:
|
||||
Originally, LAMMPS was not conceived and designed for:
|
||||
|
||||
* being run through a GUI
|
||||
* building molecular systems, or building molecular topologies
|
||||
@ -14,9 +14,10 @@ Specifically, LAMMPS was not conceived and designed for:
|
||||
* visualize your MD simulation interactively
|
||||
* plot your output data
|
||||
|
||||
Over the years some of these limitations have been reduced or
|
||||
removed, through features added to LAMMPS or external tools
|
||||
that either closely interface with LAMMPS or extend LAMMPS.
|
||||
Over the years many of these limitations have been reduced or
|
||||
removed. In part through features added to LAMMPS and in part
|
||||
through external tools that either closely interface with LAMMPS
|
||||
or extend LAMMPS.
|
||||
|
||||
Here are suggestions on how to perform these tasks:
|
||||
|
||||
@ -24,8 +25,9 @@ Here are suggestions on how to perform these tasks:
|
||||
wraps the library interface is provided. Thus, GUI interfaces can be
|
||||
written in Python or C/C++ that run LAMMPS and visualize or plot its
|
||||
output. Examples of this are provided in the python directory and
|
||||
described on the :doc:`Python <Python_head>` doc page. Also, there
|
||||
are several external wrappers or GUI front ends.
|
||||
described on the :doc:`Python <Python_head>` doc page. As of version
|
||||
2 August 2023 :ref:`a GUI tool <lammps_gui>` is included in LAMMPS.
|
||||
Also, there are several external wrappers or GUI front ends.
|
||||
* **Builder:** Several pre-processing tools are packaged with LAMMPS.
|
||||
Some of them convert input files in formats produced by other MD codes
|
||||
such as CHARMM, AMBER, or Insight into LAMMPS input formats. Some of
|
||||
|
||||
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 105 KiB |
BIN
doc/src/JPG/lammps-gui-complete.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 95 KiB |
|
Before Width: | Height: | Size: 91 KiB After Width: | Height: | Size: 90 KiB |
|
Before Width: | Height: | Size: 119 KiB After Width: | Height: | Size: 130 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 67 KiB |
@ -80,13 +80,15 @@ run LAMMPS in serial mode.
|
||||
:class: note
|
||||
|
||||
If the LAMMPS executable encounters an error condition, it will abort
|
||||
after printing an error message. For a library interface this is
|
||||
usually not desirable. Thus LAMMPS can be compiled to to :ref:`throw
|
||||
a C++ exception <exceptions>` instead. If enabled, the library
|
||||
functions will catch those exceptions and return. The error status
|
||||
:cpp:func:`can be queried <lammps_has_error>` and an :cpp:func:`error
|
||||
message retrieved <lammps_get_last_error_message>`. We thus
|
||||
recommend enabling C++ exceptions when using the library interface,
|
||||
after printing an error message. It does so by catching the
|
||||
exceptions that LAMMPS could throw. For a C library interface this
|
||||
is usually not desirable since the calling code might lack the
|
||||
ability to catch such exceptions. Thus, the library functions will
|
||||
catch those exceptions and return from the affected functions. The
|
||||
error status :cpp:func:`can be queried <lammps_has_error>` and an
|
||||
:cpp:func:`error message retrieved <lammps_get_last_error_message>`.
|
||||
This is, for example used by the :doc:`LAMMPS python module
|
||||
<Python_module>` and then a suitable Python exception is thrown.
|
||||
|
||||
.. admonition:: Using the C library interface as a plugin
|
||||
:class: note
|
||||
|
||||
@ -15,9 +15,7 @@ Python exception handling mechanism.
|
||||
|
||||
try:
|
||||
# LAMMPS will normally terminate itself and the running process if an error
|
||||
# occurs. This would kill the Python interpreter. To avoid this, make sure to
|
||||
# compile with LAMMPS_EXCEPTIONS enabled. This ensures the library API calls
|
||||
# will not terminate the parent process. Instead, the library wrapper will
|
||||
# occurs. This would kill the Python interpreter. The library wrapper will
|
||||
# detect that an error has occured and throw a Python exception
|
||||
|
||||
lmp.command('unknown')
|
||||
|
||||
@ -5,8 +5,7 @@ The LAMMPS Python module enables calling the :ref:`LAMMPS C library API
|
||||
<lammps_c_api>` from Python by dynamically loading functions in the
|
||||
LAMMPS shared library through the Python `ctypes <ctypes_>`_
|
||||
module. Because of the dynamic loading, it is required that LAMMPS is
|
||||
compiled in :ref:`"shared" mode <exe>`. It is also recommended to
|
||||
compile LAMMPS with :ref:`C++ exceptions <exceptions>` enabled.
|
||||
compiled in :ref:`"shared" mode <exe>`.
|
||||
|
||||
Two components are necessary for Python to be able to invoke LAMMPS code:
|
||||
|
||||
|
||||
@ -645,9 +645,14 @@ LAMMPS GUI
|
||||
Overview
|
||||
^^^^^^^^
|
||||
|
||||
LAMMPS GUI is a simple graphical text editor that is linked to the
|
||||
:ref:`LAMMPS C-library interface <lammps_c_api>` and thus can run LAMMPS
|
||||
directly using the contents of the editor's text buffer as input.
|
||||
LAMMPS GUI is a graphical text editor customized for editing LAMMPS
|
||||
input files that is linked to the :ref:`LAMMPS C-library <lammps_c_api>`
|
||||
and thus can run LAMMPS directly using the contents of the editor's text
|
||||
buffer as input. It can retrieve and display information from LAMMPS
|
||||
while it is running, display visualizations created with the :doc:`dump
|
||||
image command <dump_image>`, and is adapted specifically for editing
|
||||
LAMMPS input files through text completion and reformatting, and linking
|
||||
to the online LAMMPS documentation for known LAMMPS commands and styles.
|
||||
|
||||
This is similar to what people traditionally would do to run LAMMPS:
|
||||
using a regular text editor to edit the input and run the necessary
|
||||
@ -656,9 +661,9 @@ terminal window. This similarity is a design goal. While making it easy
|
||||
for beginners to start with LAMMPS, it is also the intention to simplify
|
||||
the transition to workflows like most experienced LAMMPS users do.
|
||||
|
||||
All features have been extensively exposed to hotkeys, so that there is
|
||||
also appeal for experienced LAMMPS users, too, especially for
|
||||
prototyping and testing simulations setups.
|
||||
All features have been extensively exposed to keyboard shortcuts, so
|
||||
that there is also appeal for experienced LAMMPS users for prototyping
|
||||
and testing simulations setups.
|
||||
|
||||
Features
|
||||
^^^^^^^^
|
||||
@ -697,22 +702,26 @@ Prerequisites and portability
|
||||
LAMMPS GUI is programmed in C++ based on the C++11 standard and using
|
||||
the `Qt GUI framework <https://www.qt.io/product/framework>`_.
|
||||
Currently, Qt version 5.12 or later is required; Qt 5.15LTS is
|
||||
recommended; Qt 6.x not (yet) supported. Building LAMMPS with CMake is
|
||||
required. The LAMMPS GUI has been successfully compiled and tested on:
|
||||
recommended; support for Qt version 6.x is under active development and
|
||||
thus far only tested with Qt 6.5LTS on Linux. Building LAMMPS with
|
||||
CMake is required.
|
||||
|
||||
The LAMMPS GUI has been successfully compiled and tested on:
|
||||
|
||||
- Ubuntu Linux 20.04LTS x86_64 using GCC 9, Qt version 5.12
|
||||
- Fedora Linux 38 x86\_64 using GCC 13 and Clang 16, Qt version 5.15LTS
|
||||
- Fedora Linux 38 x86\_64 using GCC 13, Qt version 6.5LTS
|
||||
- Apple macOS 12 (Monterey) and macOS 13 (Ventura) with Xcode on arm64 and x86\_64, Qt version 5.15LTS
|
||||
- Windows 10 and 11 x86_64 with Visual Studio 2022 and Visual C++ 14.36, Qt version 5.15LTS
|
||||
- Windows 10 and 11 x86_64 with MinGW / GCC 10.0 cross-compiler on Fedora 38, Qt version 5.15LTS
|
||||
|
||||
.. _lammps-gui-install:
|
||||
.. _lammps_gui_install:
|
||||
|
||||
|
||||
Pre-compiled executables
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Pre-compiled LAMMPS executables including the GUI are currently
|
||||
Pre-compiled LAMMPS executable packages that include the GUI are currently
|
||||
available from https://download.lammps.org/static or
|
||||
https://github.com/lammps/lammps/releases. You can unpack the archives
|
||||
(or mount the macOS disk image) and run the GUI directly in place. The
|
||||
@ -737,7 +746,10 @@ stored in a location where CMake can find them without additional help.
|
||||
Otherwise, the location of the Qt library installation must be indicated
|
||||
by setting ``-D Qt5_DIR=/path/to/qt5/lib/cmake/Qt5``, which is a path to
|
||||
a folder inside the Qt installation that contains the file
|
||||
``Qt5Config.cmake``.
|
||||
``Qt5Config.cmake``. Similarly, for Qt6 the location of the Qt library
|
||||
installation can be indicated by setting ``-D Qt6_DIR=/path/to/qt6/lib/cmake/Qt6``,
|
||||
if necessary. When both, Qt5 and Qt6 are available, Qt6 will be preferred
|
||||
unless ``-D LAMMPS_GUI_USE_QT5=yes`` is set.
|
||||
|
||||
It should be possible to build the LAMMPS GUI as a standalone
|
||||
compilation (e.g. when LAMMPS has been compiled with traditional make),
|
||||
|
||||
@ -65,6 +65,11 @@ switch. This is described on the :doc:`Build_settings <Build_settings>`
|
||||
doc page. If atom IDs are not used, they must be specified as 0 for
|
||||
all atoms, e.g. in a data or restart file.
|
||||
|
||||
.. note::
|
||||
|
||||
If a :doc:`triclinic simulation box <Howto_triclinic>` is used,
|
||||
atom IDs are required, due to how neighbor lists are built.
|
||||
|
||||
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
|
||||
|
||||
@ -27,58 +27,62 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Define a computation that will be performed on a group of atoms.
|
||||
Quantities calculated by a compute are instantaneous values, meaning
|
||||
they are calculated from information about atoms on the current
|
||||
timestep or iteration, though a compute may internally store some
|
||||
information about a previous state of the system. Defining a compute
|
||||
does not perform a computation. Instead computes are invoked by other
|
||||
LAMMPS commands as needed (e.g., to calculate a temperature needed for
|
||||
a thermostat fix or to generate thermodynamic or dump file output).
|
||||
See the :doc:`Howto output <Howto_output>` page for a summary of
|
||||
various LAMMPS output options, many of which involve computes.
|
||||
Define a diagnostic computation that will be performed on a group of
|
||||
atoms. Quantities calculated by a compute are instantaneous values,
|
||||
meaning they are calculated from information about atoms on the
|
||||
current timestep or iteration, though internally a compute may store
|
||||
some information about a previous state of the system. Defining a
|
||||
compute does not perform the computation. Instead computes are
|
||||
invoked by other LAMMPS commands as needed (e.g., to calculate a
|
||||
temperature needed for a thermostat fix or to generate thermodynamic
|
||||
or dump file output). See the :doc:`Howto output <Howto_output>` page
|
||||
for a summary of various LAMMPS output options, many of which involve
|
||||
computes.
|
||||
|
||||
The ID of a compute can only contain alphanumeric characters and
|
||||
underscores.
|
||||
|
||||
----------
|
||||
|
||||
Computes calculate one or more of four styles of quantities: global,
|
||||
per-atom, local, or per-atom. A global quantity is one or more
|
||||
system-wide values, e.g. the temperature of the system. A per-atom
|
||||
quantity is one or more values per atom, e.g. the kinetic energy of
|
||||
each atom. Per-atom values are set to 0.0 for atoms not in the
|
||||
specified compute group. Local quantities are calculated by each
|
||||
processor based on the atoms it owns, but there may be zero or more
|
||||
per atom, e.g. a list of bond distances. Per-grid quantities are
|
||||
calculated on a regular 2d or 3d grid which overlays a 2d or 3d
|
||||
simulation domain. The grid points and the data they store are
|
||||
distributed across processors; each processor owns the grid points
|
||||
which fall within its subdomain.
|
||||
Computes calculate and store any of four *styles* of quantities:
|
||||
global, per-atom, local, or per-grid.
|
||||
|
||||
Computes that produce per-atom quantities have the word "atom" at the
|
||||
end of their style, e.g. *ke/atom*\ . Computes that produce local
|
||||
quantities have the word "local" at the end of their style,
|
||||
e.g. *bond/local*\ . Computes that produce per-grid quantities have
|
||||
the word "grid" at the end of their style, e.g. *property/grid*\ .
|
||||
Styles with neither "atom" or "local" or "grid" at the end of their
|
||||
style name produce global quantities.
|
||||
A global quantity is one or more system-wide values, e.g. the
|
||||
temperature of the system. A per-atom quantity is one or more values
|
||||
per atom, e.g. the kinetic energy of each atom. Per-atom values are
|
||||
set to 0.0 for atoms not in the specified compute group. Local
|
||||
quantities are calculated by each processor based on the atoms it
|
||||
owns, but there may be zero or more per atom, e.g. a list of bond
|
||||
distances. Per-grid quantities are calculated on a regular 2d or 3d
|
||||
grid which overlays a 2d or 3d simulation domain. The grid points and
|
||||
the data they store are distributed across processors; each processor
|
||||
owns the grid points which fall within its subdomain.
|
||||
|
||||
Note that a single compute typically produces either global or
|
||||
per-atom or local or per-grid values. It does not compute both global
|
||||
and per-atom values. It can produce local values or per-grid values
|
||||
in tandem with global or per-atom quantities. The compute doc page
|
||||
will explain the details.
|
||||
As a general rule of thumb, computes that produce per-atom quantities
|
||||
have the word "atom" at the end of their style, e.g. *ke/atom*\ .
|
||||
Computes that produce local quantities have the word "local" at the
|
||||
end of their style, e.g. *bond/local*\ . Computes that produce
|
||||
per-grid quantities have the word "grid" at the end of their style,
|
||||
e.g. *property/grid*\ . And styles with neither "atom" or "local" or
|
||||
"grid" at the end of their style name produce global quantities.
|
||||
|
||||
Global, per-atom, local, and per-grid quantities come in three kinds:
|
||||
a single scalar value, a vector of values, or a 2d array of values.
|
||||
The doc page for each compute describes the style and kind of values
|
||||
it produces, e.g. a per-atom vector. Some computes produce more than
|
||||
one kind of a single style, e.g. a global scalar and a global vector.
|
||||
Global, per-atom, local, and per-grid quantities can also be of three
|
||||
*kinds*: a single scalar value (global only), a vector of values, or a
|
||||
2d array of values. For per-atom, local, and per-grid quantities, a
|
||||
"vector" means a single value for each atom, each local entity
|
||||
(e.g. bond), or grid cell. Likewise an "array", means multiple values
|
||||
for each atom, each local entity, or each grid cell.
|
||||
|
||||
When a compute quantity is accessed, as in many of the output commands
|
||||
discussed below, it can be referenced via the following bracket
|
||||
notation, where ID is the ID of the compute:
|
||||
Note that a single compute can produce any combination of global,
|
||||
per-atom, local, or per-grid values. Likewise it can produce any
|
||||
combination of scalar, vector, or array output for each style. The
|
||||
exception is that for per-atom, local, and per-grid output, either a
|
||||
vector or array can be produced, but not both. The doc page for each
|
||||
compute explains the values it produces.
|
||||
|
||||
When a compute output is accessed by another input script command it
|
||||
is referenced via the following bracket notation, where ID is the ID
|
||||
of the compute:
|
||||
|
||||
+-------------+--------------------------------------------+
|
||||
| c_ID | entire scalar, vector, or array |
|
||||
@ -89,17 +93,23 @@ notation, where ID is the ID of the compute:
|
||||
+-------------+--------------------------------------------+
|
||||
|
||||
In other words, using one bracket reduces the dimension of the
|
||||
quantity once (vector :math:`\to` scalar, array :math:`\to` vector). Using two
|
||||
brackets reduces the dimension twice (array :math:`\to` scalar). Thus a
|
||||
command that uses scalar compute values as input can also process elements of a
|
||||
vector or array.
|
||||
quantity once (vector :math:`\to` scalar, array :math:`\to` vector).
|
||||
Using two brackets reduces the dimension twice (array :math:`\to`
|
||||
scalar). Thus, for example, a command that uses global scalar compute
|
||||
values as input can also process elements of a vector or array.
|
||||
Depending on the command, this can either be done directly using the
|
||||
syntax in the table, or by first defining a :doc:`variable <variable>`
|
||||
of the appropriate style to store the quantity, then using the
|
||||
variable as an input to the command.
|
||||
|
||||
Note that commands and :doc:`variables <variable>` which use compute
|
||||
quantities typically do not allow for all kinds (e.g., a command may
|
||||
require a vector of values, not a scalar). This means there is no
|
||||
ambiguity about referring to a compute quantity as c_ID even if it
|
||||
produces, for example, both a scalar and vector. The doc pages for
|
||||
various commands explain the details.
|
||||
Note that commands and :doc:`variables <variable>` which take compute
|
||||
outputs as input typically do not allow for all styles and kinds of
|
||||
data (e.g., a command may require global but not per-atom values, or
|
||||
it may require a vector of values, not a scalar). This means there is
|
||||
typically no ambiguity about referring to a compute output as c_ID
|
||||
even if it produces, for example, both a scalar and vector. The doc
|
||||
pages for various commands explain the details, including how any
|
||||
ambiguities are resolved.
|
||||
|
||||
----------
|
||||
|
||||
|
||||
@ -36,7 +36,7 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 21Nov2023
|
||||
|
||||
Define a computation that calculates a local composition vector for each
|
||||
atom. For a central atom with :math:`M` neighbors within the neighbor cutoff sphere,
|
||||
|
||||
@ -128,9 +128,9 @@ Attributes *i_name*, *d_name*, *i2_name*, *d2_name* refer to custom
|
||||
per-atom integer and floating-point vectors or arrays that have been
|
||||
added via the :doc:`fix property/atom <fix_property_atom>` command.
|
||||
When that command is used specific names are given to each attribute
|
||||
which are the "name" portion of these attributes. For arrays *i2_name*
|
||||
and *d2_name*, the column of the array must also be included following
|
||||
the name in brackets (e.g., d2_xyz[2] or i2_mySpin[3]).
|
||||
which are the "name" portion of these attributes. For arrays
|
||||
*i2_name* and *d2_name*, the column of the array must also be included
|
||||
following the name in brackets (e.g., d2_xyz[2] or i2_mySpin[3]).
|
||||
|
||||
The additional quantities only accessible via this command, and not
|
||||
directly via the :doc:`dump custom <dump>` command, are as follows.
|
||||
|
||||
@ -61,7 +61,7 @@ varying fastest, then Y, then Z slowest. For 2d grids (in 2d
|
||||
simulations), the grid IDs range from 1 to Nx*Ny, with X varying
|
||||
fastest and Y slowest.
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 21Nov2023
|
||||
|
||||
The *proc* attribute is the ID of the processor which owns the grid
|
||||
cell. Processor IDs range from 0 to Nprocs - 1, where Nprocs is the
|
||||
|
||||
@ -37,13 +37,16 @@ Syntax
|
||||
v_name = per-atom vector calculated by an atom-style variable with name
|
||||
|
||||
* zero or more keyword/args pairs may be appended
|
||||
* keyword = *replace*
|
||||
* keyword = *replace* or *inputs*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*replace* args = vec1 vec2
|
||||
vec1 = reduced value from this input vector will be replaced
|
||||
vec2 = replace it with vec1[N] where N is index of max/min value from vec2
|
||||
*inputs* arg = peratom or local
|
||||
peratom = all inputs are per-atom quantities (default)
|
||||
local = all input are local quantities
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
@ -60,38 +63,44 @@ Description
|
||||
"""""""""""
|
||||
|
||||
Define a calculation that "reduces" one or more vector inputs into
|
||||
scalar values, one per listed input. The inputs can be per-atom or
|
||||
local quantities; they cannot be global quantities. Atom attributes
|
||||
are per-atom quantities, :doc:`computes <compute>` and :doc:`fixes <fix>`
|
||||
may generate any of the three kinds of quantities, and :doc:`atom-style variables <variable>` generate per-atom quantities. See the
|
||||
:doc:`variable <variable>` command and its special functions which can
|
||||
perform the same operations as the compute reduce command on global
|
||||
vectors.
|
||||
scalar values, one per listed input. For the compute reduce command,
|
||||
the inputs can be either per-atom or local quantities and must all be
|
||||
of the same kind (per-atom or local); see discussion of the optional
|
||||
*inputs* keyword below. The compute reduce/region command can only be
|
||||
used with per-atom inputs.
|
||||
|
||||
Atom attributes are per-atom quantities, :doc:`computes <compute>` and
|
||||
:doc:`fixes <fix>` can generate either per-atom or local quantities,
|
||||
and :doc:`atom-style variables <variable>` generate per-atom
|
||||
quantities. See the :doc:`variable <variable>` command and its
|
||||
special functions which can perform the same reduction operations as
|
||||
the compute reduce command on global vectors.
|
||||
|
||||
The reduction operation is specified by the *mode* setting. The *sum*
|
||||
option adds the values in the vector into a global total. The *min*
|
||||
or *max* options find the minimum or maximum value across all vector
|
||||
values. The *minabs* or *maxabs* options find the minimum or maximum
|
||||
value across all absolute vector values. The *ave* setting adds the
|
||||
vector values into a global total, then divides by the number of values
|
||||
in the vector. The *sumsq* option sums the square of the values in the
|
||||
vector into a global total. The *avesq* setting does the same as *sumsq*,
|
||||
then divides the sum of squares by the number of values. The last two options
|
||||
can be useful for calculating the variance of some quantity (e.g., variance =
|
||||
sumsq :math:`-` ave\ :math:`^2`). The *sumabs* option sums the absolute
|
||||
values in the vector into a global total. The *aveabs* setting does the same
|
||||
as *sumabs*, then divides the sum of absolute values by the number of
|
||||
vector values into a global total, then divides by the number of
|
||||
values in the vector. The *sumsq* option sums the square of the
|
||||
values in the vector into a global total. The *avesq* setting does
|
||||
the same as *sumsq*, then divides the sum of squares by the number of
|
||||
values. The last two options can be useful for calculating the
|
||||
variance of some quantity (e.g., variance = sumsq :math:`-` ave\
|
||||
:math:`^2`). The *sumabs* option sums the absolute values in the
|
||||
vector into a global total. The *aveabs* setting does the same as
|
||||
*sumabs*, then divides the sum of absolute values by the number of
|
||||
values.
|
||||
|
||||
Each listed input is operated on independently. For per-atom inputs,
|
||||
the group specified with this command means only atoms within the
|
||||
group contribute to the result. For per-atom inputs, if the compute
|
||||
reduce/region command is used, the atoms must also currently be within
|
||||
the region. Note that an input that produces per-atom quantities may
|
||||
define its own group which affects the quantities it returns. For
|
||||
example, if a compute is used as an input which generates a per-atom
|
||||
vector, it will generate values of 0.0 for atoms that are not in the
|
||||
group specified for that compute.
|
||||
group contribute to the result. Likewise for per-atom inputs, if the
|
||||
compute reduce/region command is used, the atoms must also currently
|
||||
be within the region. Note that an input that produces per-atom
|
||||
quantities may define its own group which affects the quantities it
|
||||
returns. For example, if a compute is used as an input which
|
||||
generates a per-atom vector, it will generate values of 0.0 for atoms
|
||||
that are not in the group specified for that compute.
|
||||
|
||||
Each listed input can be an atom attribute (position, velocity, force
|
||||
component) or can be the result of a :doc:`compute <compute>` or
|
||||
@ -123,52 +132,54 @@ array with six columns:
|
||||
|
||||
----------
|
||||
|
||||
The atom attribute values (*x*, *y*, *z*, *vx*, *vy*, *vz*, *fx*, *fy*, and
|
||||
*fz*) are self-explanatory. Note that other atom attributes can be used as
|
||||
inputs to this fix by using the
|
||||
:doc:`compute property/atom <compute_property_atom>` command and then specifying
|
||||
an input value from that compute.
|
||||
The atom attribute values (*x*, *y*, *z*, *vx*, *vy*, *vz*, *fx*,
|
||||
*fy*, and *fz*) are self-explanatory. Note that other atom attributes
|
||||
can be used as inputs to this fix by using the :doc:`compute
|
||||
property/atom <compute_property_atom>` command and then specifying an
|
||||
input value from that compute.
|
||||
|
||||
If a value begins with "c\_", a compute ID must follow which has been
|
||||
previously defined in the input script. Computes can generate
|
||||
per-atom or local quantities. See the individual
|
||||
:doc:`compute <compute>` page for details. If no bracketed integer
|
||||
is appended, the vector calculated by the compute is used. If a
|
||||
bracketed integer is appended, the Ith column of the array calculated
|
||||
by the compute is used. Users can also write code for their own
|
||||
compute styles and :doc:`add them to LAMMPS <Modify>`. See the
|
||||
discussion above for how :math:`I` can be specified with a wildcard asterisk
|
||||
to effectively specify multiple values.
|
||||
previously defined in the input script. Valid computes can generate
|
||||
per-atom or local quantities. See the individual :doc:`compute
|
||||
<compute>` page for details. If no bracketed integer is appended, the
|
||||
vector calculated by the compute is used. If a bracketed integer is
|
||||
appended, the Ith column of the array calculated by the compute is
|
||||
used. Users can also write code for their own compute styles and
|
||||
:doc:`add them to LAMMPS <Modify>`. See the discussion above for how
|
||||
:math:`I` can be specified with a wildcard asterisk to effectively
|
||||
specify multiple values.
|
||||
|
||||
If a value begins with "f\_", a fix ID must follow which has been
|
||||
previously defined in the input script. Fixes can generate per-atom
|
||||
or local quantities. See the individual :doc:`fix <fix>` page for
|
||||
details. Note that some fixes only produce their values on certain
|
||||
timesteps, which must be compatible with when compute reduce
|
||||
previously defined in the input script. Valid fixes can generate
|
||||
per-atom or local quantities. See the individual :doc:`fix <fix>`
|
||||
page for details. Note that some fixes only produce their values on
|
||||
certain timesteps, which must be compatible with when compute reduce
|
||||
references the values, else an error results. If no bracketed integer
|
||||
is appended, the vector calculated by the fix is used. If a bracketed
|
||||
integer is appended, the Ith column of the array calculated by the fix
|
||||
is used. Users can also write code for their own fix style and
|
||||
:doc:`add them to LAMMPS <Modify>`. See the discussion above for how
|
||||
:math:`I` can be specified with a wildcard asterisk to effectively specify
|
||||
multiple values.
|
||||
:math:`I` can be specified with a wildcard asterisk to effectively
|
||||
specify multiple values.
|
||||
|
||||
If a value begins with "v\_", a variable name must follow which has
|
||||
been previously defined in the input script. It must be an
|
||||
:doc:`atom-style variable <variable>`. Atom-style variables can
|
||||
reference thermodynamic keywords and various per-atom attributes, or
|
||||
invoke other computes, fixes, or variables when they are evaluated, so
|
||||
this is a very general means of generating per-atom quantities to reduce.
|
||||
this is a very general means of generating per-atom quantities to
|
||||
reduce.
|
||||
|
||||
----------
|
||||
|
||||
If the *replace* keyword is used, two indices *vec1* and *vec2* are
|
||||
specified, where each index ranges from 1 to the number of input values.
|
||||
The replace keyword can only be used if the *mode* is *min* or *max*\ .
|
||||
It works as follows. A min/max is computed as usual on the *vec2*
|
||||
input vector. The index :math:`N` of that value within *vec2* is also stored.
|
||||
Then, instead of performing a min/max on the *vec1* input vector, the
|
||||
stored index is used to select the :math:`N`\ th element of the *vec1* vector.
|
||||
specified, where each index ranges from 1 to the number of input
|
||||
values. The replace keyword can only be used if the *mode* is *min*
|
||||
or *max*\ . It works as follows. A min/max is computed as usual on
|
||||
the *vec2* input vector. The index :math:`N` of that value within
|
||||
*vec2* is also stored. Then, instead of performing a min/max on the
|
||||
*vec1* input vector, the stored index is used to select the :math:`N`\
|
||||
th element of the *vec1* vector.
|
||||
|
||||
Thus, for example, if you wish to use this compute to find the bond
|
||||
with maximum stretch, you can do it as follows:
|
||||
@ -190,6 +201,16 @@ information in this context, the *replace* keywords will extract the
|
||||
atom IDs for the two atoms in the bond of maximum stretch. These atom
|
||||
IDs and the bond stretch will be printed with thermodynamic output.
|
||||
|
||||
.. versionadded:: 21Nov2023
|
||||
|
||||
The *inputs* keyword allows selection of whether all the inputs are
|
||||
per-atom or local quantities. As noted above, all the inputs must be
|
||||
the same kind (per-atom or local). Per-atom is the default setting.
|
||||
If a compute or fix is specified as an input, it must produce per-atom
|
||||
or local data to match this setting. If it produces both, e.g. for
|
||||
the :doc:`compute voronoi/atom <compute_voronoi_atom>` command, then
|
||||
this keyword selects between them.
|
||||
|
||||
----------
|
||||
|
||||
If a single input is specified this compute produces a global scalar
|
||||
@ -197,38 +218,41 @@ value. If multiple inputs are specified, this compute produces a
|
||||
global vector of values, the length of which is equal to the number of
|
||||
inputs specified.
|
||||
|
||||
As discussed below, for the *sum*, *sumabs*, and *sumsq* modes, the value(s)
|
||||
produced by this compute are all "extensive", meaning their value
|
||||
scales linearly with the number of atoms involved. If normalized
|
||||
values are desired, this compute can be accessed by the
|
||||
As discussed below, for the *sum*, *sumabs*, and *sumsq* modes, the
|
||||
value(s) produced by this compute are all "extensive", meaning their
|
||||
value scales linearly with the number of atoms involved. If
|
||||
normalized values are desired, this compute can be accessed by the
|
||||
:doc:`thermo_style custom <thermo_style>` command with
|
||||
:doc:`thermo_modify norm yes <thermo_modify>` set as an option.
|
||||
Or it can be accessed by a
|
||||
:doc:`variable <variable>` that divides by the appropriate atom count.
|
||||
:doc:`thermo_modify norm yes <thermo_modify>` set as an option. Or it
|
||||
can be accessed by a :doc:`variable <variable>` that divides by the
|
||||
appropriate atom count.
|
||||
|
||||
----------
|
||||
|
||||
Output info
|
||||
"""""""""""
|
||||
|
||||
This compute calculates a global scalar if a single input value is specified
|
||||
or a global vector of length :math:`N`, where :math:`N` is the number of
|
||||
inputs, and which can be accessed by indices 1 to :math:`N`. These values can
|
||||
be used by any command that uses global scalar or vector values from a
|
||||
compute as input. See the :doc:`Howto output <Howto_output>` doc page
|
||||
for an overview of LAMMPS output options.
|
||||
This compute calculates a global scalar if a single input value is
|
||||
specified or a global vector of length :math:`N`, where :math:`N` is
|
||||
the number of inputs, and which can be accessed by indices 1 to
|
||||
:math:`N`. These values can be used by any command that uses global
|
||||
scalar or vector values from a compute as input. See the :doc:`Howto
|
||||
output <Howto_output>` doc page for an overview of LAMMPS output
|
||||
options.
|
||||
|
||||
All the scalar or vector values calculated by this compute are
|
||||
"intensive", except when the *sum*, *sumabs*, or *sumsq* modes are used on
|
||||
per-atom or local vectors, in which case the calculated values are
|
||||
"extensive".
|
||||
|
||||
The scalar or vector values will be in whatever :doc:`units <units>` the
|
||||
quantities being reduced are in.
|
||||
The scalar or vector values will be in whatever :doc:`units <units>`
|
||||
the quantities being reduced are in.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
none
|
||||
|
||||
As noted above, the compute reduce/region command can only be used
|
||||
with per-atom inputs.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
@ -238,4 +262,4 @@ Related commands
|
||||
Default
|
||||
"""""""
|
||||
|
||||
none
|
||||
The default value for the *inputs* keyword is peratom.
|
||||
|
||||
@ -13,7 +13,7 @@ Syntax
|
||||
* ID, group-ID are documented in :doc:`compute <compute>` command
|
||||
* voronoi/atom = style name of this compute command
|
||||
* zero or more keyword/value pairs may be appended
|
||||
* keyword = *only_group* or *occupation* or *surface* or *radius* or *edge_histo* or *edge_threshold* or *face_threshold* or *neighbors* or *peratom*
|
||||
* keyword = *only_group* or *occupation* or *surface* or *radius* or *edge_histo* or *edge_threshold* or *face_threshold* or *neighbors*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
@ -31,7 +31,6 @@ Syntax
|
||||
*face_threshold* arg = minarea
|
||||
minarea = minimum area for a face to be counted
|
||||
*neighbors* value = *yes* or *no* = store list of all neighbors or no
|
||||
*peratom* value = *yes* or *no* = per-atom quantities accessible or no
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
@ -53,14 +52,12 @@ atoms in the simulation box. The tessellation is calculated using all
|
||||
atoms in the simulation, but non-zero values are only stored for atoms
|
||||
in the group.
|
||||
|
||||
By default two per-atom quantities are calculated by this compute.
|
||||
The first is the volume of the Voronoi cell around each atom. Any
|
||||
point in an atom's Voronoi cell is closer to that atom than any other.
|
||||
The second is the number of faces of the Voronoi cell. This is
|
||||
equal to the number of nearest neighbors of the central atom,
|
||||
plus any exterior faces (see note below). If the *peratom* keyword
|
||||
is set to "no", the per-atom quantities are still calculated,
|
||||
but they are not accessible.
|
||||
Two per-atom quantities are calculated by this compute. The first is
|
||||
the volume of the Voronoi cell around each atom. Any point in an
|
||||
atom's Voronoi cell is closer to that atom than any other. The second
|
||||
is the number of faces of the Voronoi cell. This is equal to the
|
||||
number of nearest neighbors of the central atom, plus any exterior
|
||||
faces (see note below).
|
||||
|
||||
----------
|
||||
|
||||
@ -97,13 +94,13 @@ present in atom_style sphere for granular models.
|
||||
|
||||
The *edge_histo* keyword activates the compilation of a histogram of
|
||||
number of edges on the faces of the Voronoi cells in the compute
|
||||
group. The argument *maxedge* of the this keyword is the largest number
|
||||
of edges on a single Voronoi cell face expected to occur in the
|
||||
sample. This keyword adds the generation of a global vector with
|
||||
*maxedge*\ +1 entries. The last entry in the vector contains the number of
|
||||
faces with more than *maxedge* edges. Since the polygon with the
|
||||
smallest amount of edges is a triangle, entries 1 and 2 of the vector
|
||||
will always be zero.
|
||||
group. The argument *maxedge* of the this keyword is the largest
|
||||
number of edges on a single Voronoi cell face expected to occur in the
|
||||
sample. This keyword generates output of a global vector by this
|
||||
compute with *maxedge*\ +1 entries. The last entry in the vector
|
||||
contains the number of faces with more than *maxedge* edges. Since the
|
||||
polygon with the smallest amount of edges is a triangle, entries 1 and
|
||||
2 of the vector will always be zero.
|
||||
|
||||
The *edge_threshold* and *face_threshold* keywords allow the
|
||||
suppression of edges below a given minimum length and faces below a
|
||||
@ -127,8 +124,8 @@ to locate vacancies (the coordinates are given by the atom coordinates
|
||||
at the time step when the compute was first invoked), while column two
|
||||
data can be used to identify interstitial atoms.
|
||||
|
||||
If the *neighbors* value is set to yes, then this compute creates a
|
||||
local array with 3 columns. There is one row for each face of each
|
||||
If the *neighbors* value is set to yes, then this compute also creates
|
||||
a local array with 3 columns. There is one row for each face of each
|
||||
Voronoi cell. The 3 columns are the atom ID of the atom that owns the
|
||||
cell, the atom ID of the atom in the neighboring cell (or zero if the
|
||||
face is external), and the area of the face. The array can be
|
||||
@ -143,8 +140,8 @@ containing all the Voronoi neighbors in a system:
|
||||
compute 6 all voronoi/atom neighbors yes
|
||||
dump d2 all local 1 dump.neighbors index c_6[1] c_6[2] c_6[3]
|
||||
|
||||
If the *face_threshold* keyword is used, then only faces
|
||||
with areas greater than the threshold are stored.
|
||||
If the *face_threshold* keyword is used, then only faces with areas
|
||||
greater than the threshold are stored.
|
||||
|
||||
----------
|
||||
|
||||
@ -158,48 +155,52 @@ Voro++ software in the src/VORONOI/README file.
|
||||
|
||||
.. note::
|
||||
|
||||
The calculation of Voronoi volumes is performed by each processor for
|
||||
the atoms it owns, and includes the effect of ghost atoms stored by
|
||||
the processor. This assumes that the Voronoi cells of owned atoms
|
||||
are not affected by atoms beyond the ghost atom cut-off distance.
|
||||
This is usually a good assumption for liquid and solid systems, but
|
||||
may lead to underestimation of Voronoi volumes in low density
|
||||
systems. By default, the set of ghost atoms stored by each processor
|
||||
is determined by the cutoff used for :doc:`pair_style <pair_style>`
|
||||
interactions. The cutoff can be set explicitly via the
|
||||
:doc:`comm_modify cutoff <comm_modify>` command. The Voronoi cells
|
||||
for atoms adjacent to empty regions will extend into those regions up
|
||||
to the communication cutoff in :math:`x`, :math:`y`, or :math:`z`.
|
||||
In that situation, an exterior face is created at the cutoff distance
|
||||
normal to the :math:`x`, :math:`y`, or :math:`z` direction. For
|
||||
triclinic systems, the exterior face is parallel to the corresponding
|
||||
reciprocal lattice vector.
|
||||
The calculation of Voronoi volumes is performed by each processor
|
||||
for the atoms it owns, and includes the effect of ghost atoms
|
||||
stored by the processor. This assumes that the Voronoi cells of
|
||||
owned atoms are not affected by atoms beyond the ghost atom cut-off
|
||||
distance. This is usually a good assumption for liquid and solid
|
||||
systems, but may lead to underestimation of Voronoi volumes in low
|
||||
density systems. By default, the set of ghost atoms stored by each
|
||||
processor is determined by the cutoff used for :doc:`pair_style
|
||||
<pair_style>` interactions. The cutoff can be set explicitly via
|
||||
the :doc:`comm_modify cutoff <comm_modify>` command. The Voronoi
|
||||
cells for atoms adjacent to empty regions will extend into those
|
||||
regions up to the communication cutoff in :math:`x`, :math:`y`, or
|
||||
:math:`z`. In that situation, an exterior face is created at the
|
||||
cutoff distance normal to the :math:`x`, :math:`y`, or :math:`z`
|
||||
direction. For triclinic systems, the exterior face is parallel to
|
||||
the corresponding reciprocal lattice vector.
|
||||
|
||||
.. note::
|
||||
|
||||
The Voro++ package performs its calculation in 3d. This will
|
||||
still work for a 2d LAMMPS simulation, provided all the atoms have the
|
||||
same :math:`z`-coordinate. The Voronoi cell of each atom will be a columnar
|
||||
polyhedron with constant cross-sectional area along the :math:`z`-direction
|
||||
and two exterior faces at the top and bottom of the simulation box. If
|
||||
the atoms do not all have the same :math:`z`-coordinate, then the columnar
|
||||
cells will be accordingly distorted. The cross-sectional area of each
|
||||
Voronoi cell can be obtained by dividing its volume by the :math:`z` extent
|
||||
of the simulation box. Note that you define the :math:`z` extent of the
|
||||
simulation box for 2d simulations when using the
|
||||
:doc:`create_box <create_box>` or :doc:`read_data <read_data>` commands.
|
||||
The Voro++ package performs its calculation in 3d. This will still
|
||||
work for a 2d LAMMPS simulation, provided all the atoms have the
|
||||
same :math:`z`-coordinate. The Voronoi cell of each atom will be a
|
||||
columnar polyhedron with constant cross-sectional area along the
|
||||
:math:`z`-direction and two exterior faces at the top and bottom of
|
||||
the simulation box. If the atoms do not all have the same
|
||||
:math:`z`-coordinate, then the columnar cells will be accordingly
|
||||
distorted. The cross-sectional area of each Voronoi cell can be
|
||||
obtained by dividing its volume by the :math:`z` extent of the
|
||||
simulation box. Note that you define the :math:`z` extent of the
|
||||
simulation box for 2d simulations when using the :doc:`create_box
|
||||
<create_box>` or :doc:`read_data <read_data>` commands.
|
||||
|
||||
Output info
|
||||
"""""""""""
|
||||
|
||||
By default, this compute calculates a per-atom array with two
|
||||
columns. In regular dynamic tessellation mode the first column is the
|
||||
Voronoi volume, the second is the neighbor count, as described above
|
||||
(read above for the output data in case the *occupation* keyword is
|
||||
specified). These values can be accessed by any command that uses
|
||||
per-atom values from a compute as input. See the :doc:`Howto output <Howto_output>` page for an overview of LAMMPS output
|
||||
options. If the *peratom* keyword is set to "no", the per-atom array
|
||||
is still created, but it is not accessible.
|
||||
.. deprecated:: 21Nov2023
|
||||
|
||||
The *peratom* keyword was removed as it is no longer required.
|
||||
|
||||
This compute calculates a per-atom array with two columns. In regular
|
||||
dynamic tessellation mode the first column is the Voronoi volume, the
|
||||
second is the neighbor count, as described above (read above for the
|
||||
output data in case the *occupation* keyword is specified). These
|
||||
values can be accessed by any command that uses per-atom values from a
|
||||
compute as input. See the :doc:`Howto output <Howto_output>` page for
|
||||
an overview of LAMMPS output options.
|
||||
|
||||
If the *edge_histo* keyword is used, then this compute generates a
|
||||
global vector of length *maxedge*\ +1, containing a histogram of the
|
||||
@ -209,17 +210,6 @@ If the *neighbors* value is set to *yes*, then this compute calculates a
|
||||
local array with three columns. There is one row for each face of each
|
||||
Voronoi cell.
|
||||
|
||||
.. note::
|
||||
|
||||
Some LAMMPS commands such as the :doc:`compute reduce <compute_reduce>`
|
||||
command can accept either a per-atom or local quantity. If this compute
|
||||
produces both quantities, the command
|
||||
may access the per-atom quantity, even if you want to access the local
|
||||
quantity. This effect can be eliminated by using the *peratom*
|
||||
keyword to turn off the production of the per-atom quantities. For
|
||||
the default value *yes* both quantities are produced. For the value
|
||||
*no*, only the local array is produced.
|
||||
|
||||
The Voronoi cell volume will be in distance :doc:`units <units>` cubed.
|
||||
The Voronoi face area will be in distance :doc:`units <units>` squared.
|
||||
|
||||
@ -227,7 +217,8 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
This compute is part of the VORONOI package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` page for more info.
|
||||
|
||||
It also requires you have a copy of the Voro++ library built and
|
||||
installed on your system. See instructions on obtaining and
|
||||
@ -241,5 +232,4 @@ Related commands
|
||||
Default
|
||||
"""""""
|
||||
|
||||
*neighbors* no, *peratom* yes
|
||||
|
||||
The default for the neighbors keyword is no.
|
||||
|
||||
@ -613,7 +613,7 @@ when running on large numbers of processors.
|
||||
Note that using the "\*" and "%" characters together can produce a
|
||||
large number of small dump files!
|
||||
|
||||
.. deprecated:: TBD
|
||||
.. deprecated:: 21Nov2023
|
||||
|
||||
The MPIIO package and the the corresponding "/mpiio" dump styles, except
|
||||
for the unrelated "netcdf/mpiio" style were removed from LAMMPS.
|
||||
@ -805,16 +805,16 @@ computes, fixes, or variables when they are evaluated, so this is a very
|
||||
general means of creating quantities to output to a dump file.
|
||||
|
||||
The *i_name*, *d_name*, *i2_name*, *d2_name* attributes refer to
|
||||
per-atom integer and floating-point vectors or arrays that have been
|
||||
added via the :doc:`fix property/atom <fix_property_atom>` command.
|
||||
When that command is used specific names are given to each attribute
|
||||
which are the "name" portion of these keywords. For arrays *i2_name*
|
||||
and *d2_name*, the column of the array must also be included following
|
||||
the name in brackets (e.g., d2_xyz[i], i2_mySpin[i], where :math:`i` is
|
||||
in the range from 1 to :math:`M`, where :math:`M` is the number of
|
||||
columns in the custom array). See the discussion above for how :math:`i`
|
||||
can be specified with a wildcard asterisk to effectively specify
|
||||
multiple values.
|
||||
custom per-atom integer and floating-point vectors or arrays that have
|
||||
been added via the :doc:`fix property/atom <fix_property_atom>`
|
||||
command. When that command is used specific names are given to each
|
||||
attribute which are the "name" portion of these keywords. For arrays
|
||||
*i2_name* and *d2_name*, the column of the array must also be included
|
||||
following the name in brackets (e.g., d2_xyz[i], i2_mySpin[i], where
|
||||
:math:`i` is in the range from 1 to :math:`M`, where :math:`M` is the
|
||||
number of columns in the custom array). See the discussion above for
|
||||
how :math:`i` can be specified with a wildcard asterisk to effectively
|
||||
specify multiple values.
|
||||
|
||||
See the :doc:`Modify <Modify>` page for information on how to add
|
||||
new compute and fix styles to LAMMPS to calculate per-atom quantities
|
||||
|
||||
@ -599,7 +599,7 @@ image will appear. The *sfactor* value must be a value 0.0 <=
|
||||
*sfactor* <= 1.0, where *sfactor* = 1 is a highly reflective surface
|
||||
and *sfactor* = 0 is a rough non-shiny surface.
|
||||
|
||||
.. versionadded:: TBD
|
||||
.. versionadded:: 21Nov2023
|
||||
|
||||
The *fsaa* keyword can be used with the dump image command to improve
|
||||
the image quality by enabling full scene anti-aliasing. Internally the
|
||||
|
||||
@ -77,35 +77,44 @@ for individual fixes for info on which ones can be restarted.
|
||||
|
||||
----------
|
||||
|
||||
Some fixes calculate one or more of four styles of quantities: global,
|
||||
per-atom, local, or per-grid, which can be used by other commands or
|
||||
output as described below. A global quantity is one or more
|
||||
system-wide values, e.g. the energy of a wall interacting with
|
||||
particles. A per-atom quantity is one or more values per atom,
|
||||
e.g. the displacement vector for each atom since time 0. Per-atom
|
||||
values are set to 0.0 for atoms not in the specified fix group. Local
|
||||
quantities are calculated by each processor based on the atoms it
|
||||
owns, but there may be zero or more per atoms. Per-grid quantities
|
||||
are calculated on a regular 2d or 3d grid which overlays a 2d or 3d
|
||||
simulation domain. The grid points and the data they store are
|
||||
distributed across processors; each processor owns the grid points
|
||||
which fall within its subdomain.
|
||||
Some fixes calculate and store any of four *styles* of quantities:
|
||||
global, per-atom, local, or per-grid.
|
||||
|
||||
Note that a single fix typically produces either global or per-atom or
|
||||
local or per-grid values (or none at all). It does not produce both
|
||||
global and per-atom. It can produce local or per-grid values in
|
||||
tandem with global or per-atom values. The fix doc page will explain
|
||||
the details.
|
||||
A global quantity is one or more system-wide values, e.g. the energy
|
||||
of a wall interacting with particles. A per-atom quantity is one or
|
||||
more values per atom, e.g. the original coordinates of each atom at
|
||||
time 0. Per-atom values are set to 0.0 for atoms not in the specified
|
||||
fix group. Local quantities are calculated by each processor based on
|
||||
the atoms it owns, but there may be zero or more per atom, e.g. values
|
||||
for each bond. Per-grid quantities are calculated on a regular 2d or
|
||||
3d grid which overlays a 2d or 3d simulation domain. The grid points
|
||||
and the data they store are distributed across processors; each
|
||||
processor owns the grid points which fall within its subdomain.
|
||||
|
||||
Global, per-atom, local, and per-grid quantities come in three kinds:
|
||||
a single scalar value, a vector of values, or a 2d array of values.
|
||||
The doc page for each fix describes the style and kind of values it
|
||||
produces, e.g. a per-atom vector. Some fixes produce more than one
|
||||
kind of a single style, e.g. a global scalar and a global vector.
|
||||
As a general rule of thumb, fixes that produce per-atom quantities
|
||||
have the word "atom" at the end of their style, e.g. *ave/atom*\ .
|
||||
Fixes that produce local quantities have the word "local" at the end
|
||||
of their style, e.g. *store/local*\ . Fixes that produce per-grid
|
||||
quantities have the word "grid" at the end of their style,
|
||||
e.g. *ave/grid*\ .
|
||||
|
||||
When a fix quantity is accessed, as in many of the output commands
|
||||
discussed below, it can be referenced via the following bracket
|
||||
notation, where ID is the ID of the fix:
|
||||
Global, per-atom, local, and per-grid quantities can also be of three
|
||||
*kinds*: a single scalar value (global only), a vector of values, or a
|
||||
2d array of values. For per-atom, local, and per-grid quantities, a
|
||||
"vector" means a single value for each atom, each local entity
|
||||
(e.g. bond), or grid cell. Likewise an "array", means multiple values
|
||||
for each atom, each local entity, or each grid cell.
|
||||
|
||||
Note that a single fix can produce any combination of global,
|
||||
per-atom, local, or per-grid values. Likewise it can produce any
|
||||
combination of scalar, vector, or array output for each style. The
|
||||
exception is that for per-atom, local, and per-grid output, either a
|
||||
vector or array can be produced, but not both. The doc page for each
|
||||
fix explains the values it produces, if any.
|
||||
|
||||
When a fix output is accessed by another input script command it is
|
||||
referenced via the following bracket notation, where ID is the ID of
|
||||
the fix:
|
||||
|
||||
+-------------+--------------------------------------------+
|
||||
| f_ID | entire scalar, vector, or array |
|
||||
@ -116,19 +125,23 @@ notation, where ID is the ID of the fix:
|
||||
+-------------+--------------------------------------------+
|
||||
|
||||
In other words, using one bracket reduces the dimension of the
|
||||
quantity once (vector :math:`\to` scalar, array :math:`\to` vector). Using two
|
||||
brackets reduces the dimension twice (array :math:`\to` scalar). Thus, a
|
||||
command that uses scalar fix values as input can also process elements of a
|
||||
vector or array.
|
||||
quantity once (vector :math:`\to` scalar, array :math:`\to` vector).
|
||||
Using two brackets reduces the dimension twice (array :math:`\to`
|
||||
scalar). Thus, for example, a command that uses global scalar fix
|
||||
values as input can also process elements of a vector or array.
|
||||
Depending on the command, this can either be done directly using the
|
||||
syntax in the table, or by first defining a :doc:`variable <variable>`
|
||||
of the appropriate style to store the quantity, then using the
|
||||
variable as an input to the command.
|
||||
|
||||
Note that commands and :doc:`variables <variable>` that use fix
|
||||
quantities typically do not allow for all kinds (e.g., a command may
|
||||
require a vector of values, not a scalar), and even if they do, the context
|
||||
in which they are called can be used to resolve which output is being
|
||||
requested. This means there is no
|
||||
ambiguity about referring to a fix quantity as f_ID even if it
|
||||
produces, for example, both a scalar and vector. The doc pages for
|
||||
various commands explain the details.
|
||||
Note that commands and :doc:`variables <variable>` which take fix
|
||||
outputs as input typically do not allow for all styles and kinds of
|
||||
data (e.g., a command may require global but not per-atom values, or
|
||||
it may require a vector of values, not a scalar). This means there is
|
||||
typically no ambiguity about referring to a fix output as c_ID even if
|
||||
it produces, for example, both a scalar and vector. The doc pages for
|
||||
various commands explain the details, including how any ambiguities
|
||||
are resolved.
|
||||
|
||||
----------
|
||||
|
||||
@ -333,6 +346,7 @@ accelerated styles exist.
|
||||
* :doc:`pour <fix_pour>` - pour new atoms/molecules into a granular simulation domain
|
||||
* :doc:`precession/spin <fix_precession_spin>` - apply a precession torque to each magnetic spin
|
||||
* :doc:`press/berendsen <fix_press_berendsen>` - pressure control by Berendsen barostat
|
||||
* :doc:`press/langevin <fix_press_langevin>` - pressure control by Langevin barostat
|
||||
* :doc:`print <fix_print>` - print text and variables during a simulation
|
||||
* :doc:`propel/self <fix_propel_self>` - model self-propelled particles
|
||||
* :doc:`property/atom <fix_property_atom>` - add customized per-atom values
|
||||
|
||||
@ -307,7 +307,9 @@ the :doc:`run <run>` command. This fix is not invoked during
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
none
|
||||
|
||||
The keyword "scale yes" is not supported for scaling per-atom parameters
|
||||
diameter and change. You can use :doc:`fix adapt <fix_adapt>` for those.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -181,6 +181,12 @@ This fix is part of the MC package. It is only enabled if LAMMPS was
|
||||
built with that package. See the :doc:`Build package <Build_package>`
|
||||
doc page for more info.
|
||||
|
||||
This fix cannot be used with systems that do not have per-type masses
|
||||
(e.g. atom style sphere) since the implemented algorithm pre-computes
|
||||
velocity rescaling factors from per-type masses and ignores any per-atom
|
||||
masses, if present. In case both, per-type and per-atom masses are
|
||||
present, a warning is printed.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
|
||||
@ -541,10 +541,10 @@ Restrictions
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`compute <compute>`, :doc:`fix ave/atom <fix_ave_atom>`, `fix
|
||||
:doc:ave/histo <fix_ave_histo>`, :doc:`fix ave/time <fix_ave_time>`,
|
||||
:doc:`variable <variable>`, :doc:`fix ave/correlate
|
||||
:doc:<fix_ave_correlate>`, `fix ave/atogrid <fix_ave_grid>`
|
||||
:doc:`compute <compute>`, :doc:`fix ave/atom <fix_ave_atom>`,
|
||||
:doc:`fix ave/histo <fix_ave_histo>`, :doc:`fix ave/time <fix_ave_time>`,
|
||||
:doc:`variable <variable>`, :doc:`fix ave/correlate <fix_ave_correlate>`,
|
||||
:doc:`fix ave/grid <fix_ave_grid>`
|
||||
|
||||
|
||||
Default
|
||||
|
||||
@ -79,9 +79,10 @@ Description
|
||||
|
||||
Use one or more values as inputs every few timesteps to create a
|
||||
single histogram. The histogram can then be averaged over longer
|
||||
timescales. The resulting histogram can be used by other :doc:`output commands <Howto_output>`, and can also be written to a file. The
|
||||
fix ave/histo/weight command has identical syntax to fix ave/histo,
|
||||
except that exactly two values must be specified. See details below.
|
||||
timescales. The resulting histogram can be used by other :doc:`output
|
||||
commands <Howto_output>`, and can also be written to a file. The fix
|
||||
ave/histo/weight command has identical syntax to fix ave/histo, except
|
||||
that exactly two values must be specified. See details below.
|
||||
|
||||
The group specified with this command is ignored for global and local
|
||||
input values. For per-atom input values, only atoms in the group
|
||||
@ -96,14 +97,18 @@ different ways; see the discussion of the *beyond* keyword below.
|
||||
|
||||
Each input value can be an atom attribute (position, velocity, force
|
||||
component) or can be the result of a :doc:`compute <compute>` or
|
||||
:doc:`fix <fix>` or the evaluation of an equal-style or vector-style or
|
||||
atom-style :doc:`variable <variable>`. The set of input values can be
|
||||
either all global, all per-atom, or all local quantities. Inputs of
|
||||
different kinds (e.g. global and per-atom) cannot be mixed. Atom
|
||||
attributes are per-atom vector values. See the page for
|
||||
individual "compute" and "fix" commands to see what kinds of
|
||||
quantities they generate. See the optional *kind* keyword below for
|
||||
how to force the fix ave/histo command to disambiguate if necessary.
|
||||
:doc:`fix <fix>` or the evaluation of an equal-style or vector-style
|
||||
or atom-style :doc:`variable <variable>`. The set of input values can
|
||||
be either all global, all per-atom, or all local quantities. Inputs
|
||||
of different kinds (e.g. global and per-atom) cannot be mixed. Atom
|
||||
attributes are per-atom vector values. See the page for individual
|
||||
"compute" and "fix" commands to see what kinds of quantities they
|
||||
generate.
|
||||
|
||||
Note that a compute or fix can produce multiple kinds of data (global,
|
||||
per-atom, local). If LAMMPS cannot unambiguously determine which kind
|
||||
of data to use, the optional *kind* keyword discussed below can force
|
||||
the desired disambiguation.
|
||||
|
||||
Note that the output of this command is a single histogram for all
|
||||
input values combined together, not one histogram per input value.
|
||||
@ -258,13 +263,14 @@ keyword is set to *vector*, then all input values must be global or
|
||||
per-atom or local vectors, or columns of global or per-atom or local
|
||||
arrays.
|
||||
|
||||
The *kind* keyword only needs to be set if a compute or fix produces
|
||||
more than one kind of output (global, per-atom, local). If this is
|
||||
not the case, then LAMMPS will determine what kind of input is
|
||||
provided and whether all the input arguments are consistent. If a
|
||||
compute or fix produces more than one kind of output, the *kind*
|
||||
keyword should be used to specify which output will be used. The
|
||||
remaining input arguments must still be consistent.
|
||||
The *kind* keyword only needs to be used if any of the specified input
|
||||
computes or fixes produce more than one kind of output (global,
|
||||
per-atom, local). If not, LAMMPS will determine the kind of data all
|
||||
the inputs produce and verify it is all the same kind. If not, an
|
||||
error will be triggered. If a compute or fix produces more than one
|
||||
kind of output, the *kind* keyword should be used to specify which
|
||||
output will be used. The other input arguments must still be
|
||||
consistent.
|
||||
|
||||
The *beyond* keyword determines how input values that fall outside the
|
||||
*lo* to *hi* bounds are treated. Values such that *lo* :math:`\le` value
|
||||
|
||||
@ -17,12 +17,16 @@ Syntax
|
||||
* M = insert a single atom or molecule every M steps
|
||||
* seed = random # seed (positive integer)
|
||||
* one or more keyword/value pairs may be appended to args
|
||||
* keyword = *region* or *id* or *global* or *local* or *near* or *gaussian* or *attempt* or *rate* or *vx* or *vy* or *vz* or *target* or *mol* or *molfrac* or *rigid* or *shake* or *orient* or *units*
|
||||
* keyword = *region* or *var* or *set* or *id* or *global* or *local* or *near* or *gaussian* or *attempt* or *rate* or *vx* or *vy* or *vz* or *target* or *mol* or *molfrac* or *rigid* or *shake* or *orient* or *units*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*region* value = region-ID
|
||||
region-ID = ID of region to use as insertion volume
|
||||
*var* value = name = variable name to evaluate for test of atom creation
|
||||
*set* values = dim name
|
||||
dim = *x* or *y* or *z*
|
||||
name = name of variable to set with x, y, or z atom position
|
||||
*id* value = *max* or *next*
|
||||
max = atom ID for new atom(s) is max ID of all current atoms plus one
|
||||
next = atom ID for new atom(s) increments by one for every deposition
|
||||
@ -193,17 +197,19 @@ simulation that is "nearby" the chosen x,y position. In this context,
|
||||
particles is less than the *delta* setting.
|
||||
|
||||
Once a trial x,y,z position has been selected, the insertion is only
|
||||
performed if no current atom in the simulation is within a distance R
|
||||
of any atom in the new particle, including the effect of periodic
|
||||
boundary conditions if applicable. R is defined by the *near*
|
||||
keyword. Note that the default value for R is 0.0, which will allow
|
||||
atoms to strongly overlap if you are inserting where other atoms are
|
||||
present. This distance test is performed independently for each atom
|
||||
in an inserted molecule, based on the randomly rotated configuration
|
||||
of the molecule. If this test fails, a new random position within the
|
||||
insertion volume is chosen and another trial is made. Up to Q
|
||||
attempts are made. If the particle is not successfully inserted,
|
||||
LAMMPS prints a warning message.
|
||||
performed if both the *near* and *var* keywords are satisfied (see below).
|
||||
If either the *near* or the *var* keyword is not satisfied, a new random
|
||||
position within the insertion volume is chosen and another trial is made.
|
||||
Up to Q attempts are made. If one or more particle insertions are not
|
||||
successful, LAMMPS prints a warning message.
|
||||
|
||||
The *near* keyword ensures that no current atom in the simulation is within
|
||||
a distance R of any atom in the new particle, including the effect of
|
||||
periodic boundary conditions if applicable. Note that the default value
|
||||
for R is 0.0, which will allow atoms to strongly overlap if you are
|
||||
inserting where other atoms are present. This distance test is performed
|
||||
independently for each atom in an inserted molecule, based on the randomly
|
||||
rotated configuration of the molecule.
|
||||
|
||||
.. note::
|
||||
|
||||
@ -214,6 +220,26 @@ LAMMPS prints a warning message.
|
||||
existing particle. LAMMPS will issue a warning if R is smaller than
|
||||
this value, based on the radii of existing and inserted particles.
|
||||
|
||||
.. versionadded:: 21Nov2023
|
||||
|
||||
The *var* and *set* keywords can be used together to provide a criterion
|
||||
for accepting or rejecting the addition of an individual atom, based on its
|
||||
coordinates. The *name* specified for the *var* keyword is the name of an
|
||||
:doc:`equal-style variable <variable>` that should evaluate to a zero or
|
||||
non-zero value based on one or two or three variables that will store the
|
||||
*x*, *y*, or *z* coordinates of an atom (one variable per coordinate). If
|
||||
used, these other variables must be :doc:`internal-style variables
|
||||
<variable>` defined in the input script; their initial numeric value can be
|
||||
anything. They must be internal-style variables, because this command
|
||||
resets their values directly. The *set* keyword is used to identify the
|
||||
names of these other variables, one variable for the *x*-coordinate of a
|
||||
created atom, one for *y*, and one for *z*. When an atom is created, its
|
||||
:math:`(x,y,z)` coordinates become the values for any *set* variable that
|
||||
is defined. The *var* variable is then evaluated. If the returned value
|
||||
is 0.0, the atom is not created. If it is non-zero, the atom is created.
|
||||
For an example of how to use these keywords, see the
|
||||
:doc:`create_atoms <create_atoms>` command.
|
||||
|
||||
The *rate* option moves the insertion volume in the z direction (3d)
|
||||
or y direction (2d). This enables particles to be inserted from a
|
||||
successively higher height over time. Note that this parameter is
|
||||
@ -289,10 +315,11 @@ operation of the fix continues in an uninterrupted fashion.
|
||||
The fix will try to detect it and stop with an error.
|
||||
|
||||
None of the :doc:`fix_modify <fix_modify>` options are relevant to this
|
||||
fix. No global or per-atom quantities are stored by this fix for
|
||||
access by various :doc:`output commands <Howto_output>`. No parameter
|
||||
of this fix can be used with the *start/stop* keywords of the
|
||||
:doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
fix. This fix computes a global scalar, which can be accessed by various
|
||||
output commands. The scalar is the cumulative number of insertions. The
|
||||
scalar value calculated by this fix is "intensive". No parameter of this
|
||||
fix can be used with the *start/stop* keywords of the :doc:`run <run>`
|
||||
command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
.. index:: fix efield
|
||||
.. index:: fix efield/kk
|
||||
.. index:: fix efield/tip4p
|
||||
|
||||
fix efield command
|
||||
@ -210,6 +211,12 @@ the iteration count during the minimization.
|
||||
system (the quantity being minimized), you MUST enable the
|
||||
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
||||
|
||||
----------
|
||||
|
||||
.. include:: accel_styles.rst
|
||||
|
||||
----------
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
|
||||
@ -31,7 +31,7 @@ Syntax
|
||||
|
||||
.. parsed-literal::
|
||||
*keywords* = *method* or *integrator* or *ensemble* or *fmmode* or *fmass* or *scale* or *temp* or *thermostat* or *tau* or *iso* or *aniso* or *barostat* or *taup* or *fixcom* or *lj*
|
||||
*method* value = *nmpimd*
|
||||
*method* value = *nmpimd* (default) or *pimd*
|
||||
*integrator* value = *obabo* or *baoab*
|
||||
*fmmode* value = *physical* or *normal*
|
||||
*fmass* value = scaling factor on mass
|
||||
@ -137,8 +137,6 @@ normal-mode PIMD. A value of *cmd* is for centroid molecular dynamics
|
||||
the real particle.
|
||||
|
||||
.. note::
|
||||
Fix pimd/langevin only supports *method* value *nmpimd*. This should be enough
|
||||
for most PIMD applications for quantum thermodynamics purpose.
|
||||
|
||||
Motion of the centroid can be effectively uncoupled from the other
|
||||
normal modes by scaling the fictitious masses to achieve a partial
|
||||
@ -151,6 +149,16 @@ normal-mode PIMD. A value of *cmd* is for centroid molecular dynamics
|
||||
only the k > 0 modes are thermostatted, not the centroid degrees of
|
||||
freedom.
|
||||
|
||||
.. versionadded:: 21Nov2023
|
||||
|
||||
Mode *pimd* added to fix pimd/langevin.
|
||||
|
||||
Fix pimd/langevin supports the *method* values *nmpimd* and *pimd*. The default value is *nmpimd*.
|
||||
If *method* is *nmpimd*, the normal mode representation is used to integrate the equations of motion.
|
||||
The exact solution of harmonic oscillator is used to propagate the free ring polymer part of the Hamiltonian.
|
||||
If *method* is *pimd*, the Cartesian representation is used to integrate the equations of motion.
|
||||
The harmonic force is added to the total force of the system, and the numerical integrator is used to propagate the Hamiltonian.
|
||||
|
||||
The keyword *integrator* specifies the Trotter splitting method used by *fix pimd/langevin*.
|
||||
See :ref:`(Liu) <Liu>` for a discussion on the OBABO and BAOAB splitting schemes. Typically
|
||||
either of the two should work fine.
|
||||
@ -207,6 +215,7 @@ The keyword *thermostat* reads *style* and *seed* of thermostat for fix style *p
|
||||
be *PILE_L* (path integral Langevin equation local thermostat, as described in :ref:`Ceriotti <Ceriotti2>`), and *seed* should a positive integer number, which serves as the seed of the pseudo random number generator.
|
||||
|
||||
.. note::
|
||||
|
||||
The fix style *pimd/langevin* uses the stochastic PILE_L thermostat to control temperature. This thermostat works on the normal modes
|
||||
of the ring polymer. The *tau* parameter controls the centroid mode, and the *scale* parameter controls the non-centroid modes.
|
||||
|
||||
@ -269,6 +278,7 @@ related tasks for each of the partitions, e.g.
|
||||
read_restart system_${ibead}.restart2
|
||||
|
||||
.. note::
|
||||
|
||||
Fix *pimd/langevin* dumps the Cartesian coordinates, but dumps the velocities and
|
||||
forces in the normal mode representation. If the Cartesian velocities and forces are
|
||||
needed, it is easy to perform the transformation when doing post-processing.
|
||||
|
||||
@ -245,8 +245,9 @@ produce the same behavior if you adjust the fix pour parameters
|
||||
appropriately.
|
||||
|
||||
None of the :doc:`fix_modify <fix_modify>` options are relevant to this
|
||||
fix. No global or per-atom quantities are stored by this fix for
|
||||
access by various :doc:`output commands <Howto_output>`. No parameter
|
||||
fix. This fix computes a global scalar, which can be accessed by various
|
||||
output commands. The scalar is the cumulative number of insertions. The
|
||||
scalar value calculated by this fix is "intensive". No parameter
|
||||
of this fix can be used with the *start/stop* keywords of the
|
||||
:doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
|
||||
301
doc/src/fix_press_langevin.rst
Normal file
@ -0,0 +1,301 @@
|
||||
.. index:: fix press/langevin
|
||||
|
||||
fix press/langevin command
|
||||
===========================
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
fix ID group-ID press/langevin keyword value ...
|
||||
|
||||
* ID, group-ID are documented in :doc:`fix <fix>` command
|
||||
* press/langevin = style name of this fix command
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
one or more keyword value pairs may be appended
|
||||
keyword = *iso* or *aniso* or *tri* or *x* or *y* or *z* or *xy* or *xz* or *yz* or *couple* or *dilate* or *modulus* or *temp* or *flip*
|
||||
*iso* or *aniso* or *tri* values = Pstart Pstop Pdamp
|
||||
Pstart,Pstop = scalar external pressure at start/end of run (pressure units)
|
||||
Pdamp = pressure damping parameter (time units)
|
||||
*x* or *y* or *z* or *xy* or *xz* or *yz* values = Pstart Pstop Pdamp
|
||||
Pstart,Pstop = external stress tensor component at start/end of run (pressure units)
|
||||
Pdamp = pressure damping parameter
|
||||
*flip* value = *yes* or *no* = allow or disallow box flips when it becomes highly skewed
|
||||
*couple* = *none* or *xyz* or *xy* or *yz* or *xz*
|
||||
*friction* value = Friction coefficient for the barostat (time units)
|
||||
*temp* values = Tstart, Tstop, seed
|
||||
Tstart, Tstop = target temperature used for the barostat at start/end of run
|
||||
seed = seed of the random number generator
|
||||
*dilate* value = *all* or *partial*
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix 1 all press/langevin iso 0.0 0.0 1000.0 temp 300 300 487374
|
||||
fix 2 all press/langevin aniso 0.0 0.0 1000.0 temp 100 300 238 dilate partial
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Adjust the pressure of the system by using a Langevin stochastic barostat
|
||||
:ref:`(Gronbech) <Gronbech>`, which rescales the system volume and
|
||||
(optionally) the atoms coordinates within the simulation box every
|
||||
timestep.
|
||||
|
||||
The Langevin barostat couple each direction *L* with a pseudo-particle that obeys
|
||||
the Langevin equation such as:
|
||||
|
||||
.. math::
|
||||
|
||||
f_P = & \frac{N k_B T_{target}}{V} + \frac{1}{V d}\sum_{i=1}^{N} \vec r_i \cdot \vec f_i - P_{target} \\
|
||||
Q\ddot{L} + \alpha{}\dot{L} = & f_P + \beta(t)\\
|
||||
L^{n+1} = & L^{n} + bdt\dot{L}^{n} \frac{bdt^{2}}{2Q} \\
|
||||
\dot{L}^{n+1} = & \alpha\dot{L}^{n} + \frac{dt}{2Q}\left(a f^{n}_{P} + f^{n+1}_{P}\right) + \frac{b}{Q}\beta^{n+1} \\
|
||||
a = & \frac{1-\frac{\alpha{}dt}{2Q}}{1+\frac{\alpha{}dt}{2Q}} \\
|
||||
b = & \frac{1}{1+\frac{\alpha{}dt}{2Q}} \\
|
||||
\left< \beta(t)\beta(t') \right> = & 2\alpha k_B Tdt
|
||||
|
||||
Where :math:`dt` is the timestep :math:`\dot{L}` and :math:`\ddot{L}` the first
|
||||
and second derivatives of the coupled direction with regard to time,
|
||||
:math:`\alpha` is a friction coefficient, :math:`\beta` is a random gaussian
|
||||
variable and :math:`Q` the effective mass of the coupled pseudoparticle. The
|
||||
two first terms on the right-hand side of the first equation are the virial
|
||||
expression of the canonical pressure. It is to be noted that the temperature
|
||||
used to compute the pressure is not based on the atom velocities but rather on
|
||||
the canonical
|
||||
target temperature directly. This temperature is specified using the *temp*
|
||||
keyword parameter and should be close to the expected target temperature of the
|
||||
system.
|
||||
|
||||
Regardless of what atoms are in the fix group, a global pressure is
|
||||
computed for all atoms. Similarly, when the size of the simulation
|
||||
box is changed, all atoms are re-scaled to new positions, unless the
|
||||
keyword *dilate* is specified with a value of *partial*, in which case
|
||||
only the atoms in the fix group are re-scaled. The latter can be
|
||||
useful for leaving the coordinates of atoms in a solid substrate
|
||||
unchanged and controlling the pressure of a surrounding fluid.
|
||||
|
||||
.. note::
|
||||
|
||||
Unlike the :doc:`fix npt <fix_nh>` or :doc:`fix nph <fix_nh>` commands which
|
||||
perform Nose-Hoover barostatting AND time integration, this fix does NOT
|
||||
perform time integration of the atoms but only of the barostat coupled
|
||||
coordinate. It then only modifies the box size and atom coordinates to
|
||||
effect barostatting. Thus you must use a separate time integration fix,
|
||||
like :doc:`fix nve <fix_nve>` or :doc:`fix nvt <fix_nh>` to actually update
|
||||
the positions and velocities of atoms. This fix can be used in conjunction
|
||||
with thermostatting fixes to control the temperature, such as :doc:`fix nvt
|
||||
<fix_nh>` or :doc:`fix langevin <fix_langevin>` or :doc:`fix temp/berendsen
|
||||
<fix_temp_berendsen>`.
|
||||
|
||||
See the :doc:`Howto barostat <Howto_barostat>` page for a
|
||||
discussion of different ways to perform barostatting.
|
||||
|
||||
----------
|
||||
|
||||
The barostat is specified using one or more of the *iso*, *aniso*, *tri* *x*,
|
||||
*y*, *z*, *xy*, *xz*, *yz*, and *couple* keywords. These keywords give you the
|
||||
ability to specify the 3 diagonal components of an external stress tensor, and
|
||||
to couple various of these components together so that the dimensions they
|
||||
represent are varied together during a constant-pressure simulation.
|
||||
|
||||
The target pressures for each of the 6 diagonal components of the stress tensor
|
||||
can be specified independently via the *x*, *y*, *z*, keywords, which
|
||||
correspond to the 3 simulation box dimensions, and the *xy*, *xz* and *yz*
|
||||
keywords which corresponds to the 3 simulation box tilt factors. For each
|
||||
component, the external pressure or tensor component at each timestep is a
|
||||
ramped value during the run from *Pstart* to *Pstop*\ . If a target pressure is
|
||||
specified for a component, then the corresponding box dimension will change
|
||||
during a simulation. For example, if the *y* keyword is used, the y-box length
|
||||
will change. A box dimension will not change if that component is not
|
||||
specified, although you have the option to change that dimension via the
|
||||
:doc:`fix deform <fix_deform>` command.
|
||||
|
||||
The *Pdamp* parameter can be seen in the same way as a Nose-Hoover parameter as
|
||||
it is used to compute the mass of the fictitious particle. Without friction,
|
||||
the barostat can be compared to a single particle Nose-Hoover barostat and
|
||||
should follow a similar decay in time. The mass of the barostat is
|
||||
linked to *Pdamp* by the relation
|
||||
:math:`Q=(N_{at}+1)\cdot{}k_BT_{target}\cdot{}P_{damp}^2`. Note that *Pdamp*
|
||||
should be expressed in time units.
|
||||
|
||||
.. note::
|
||||
|
||||
As for Berendsen barostat, a Langevin barostat will not work well for
|
||||
arbitrary values of *Pdamp*\ . If *Pdamp* is too small, the pressure and
|
||||
volume can fluctuate wildly; if it is too large, the pressure will take a
|
||||
very long time to equilibrate. A good choice for many models is a *Pdamp*
|
||||
of around 1000 timesteps. However, note that *Pdamp* is specified in time
|
||||
units, and that timesteps are NOT the same as time units for most
|
||||
:doc:`units <units>` settings.
|
||||
|
||||
----------
|
||||
|
||||
The *temp* keyword sets the temperature to use in the equation of motion of the
|
||||
barostat. This value is used to compute the value of the force :math:`f_P` in
|
||||
the equation of motion. It is important to note that this value is not the
|
||||
instantaneous temperature but a target temperature that ramps from *Tstart* to
|
||||
*Tstop*. Also the required argument *seed* sets the seed for the random
|
||||
number generator used in the generation of the random forces.
|
||||
|
||||
----------
|
||||
|
||||
The *couple* keyword allows two or three of the diagonal components of
|
||||
the pressure tensor to be "coupled" together. The value specified
|
||||
with the keyword determines which are coupled. For example, *xz*
|
||||
means the *Pxx* and *Pzz* components of the stress tensor are coupled.
|
||||
*Xyz* means all 3 diagonal components are coupled. Coupling means two
|
||||
things: the instantaneous stress will be computed as an average of the
|
||||
corresponding diagonal components, and the coupled box dimensions will
|
||||
be changed together in lockstep, meaning coupled dimensions will be
|
||||
dilated or contracted by the same percentage every timestep. The
|
||||
*Pstart*, *Pstop*, *Pdamp* parameters for any coupled dimensions must
|
||||
be identical. *Couple xyz* can be used for a 2d simulation; the *z*
|
||||
dimension is simply ignored.
|
||||
|
||||
----------
|
||||
|
||||
The *iso*, *aniso* and *tri* keywords are simply shortcuts that are
|
||||
equivalent to specifying several other keywords together.
|
||||
|
||||
The keyword *iso* means couple all 3 diagonal components together when
|
||||
pressure is computed (hydrostatic pressure), and dilate/contract the
|
||||
dimensions together. Using "iso Pstart Pstop Pdamp" is the same as
|
||||
specifying these 4 keywords:
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
x Pstart Pstop Pdamp
|
||||
y Pstart Pstop Pdamp
|
||||
z Pstart Pstop Pdamp
|
||||
couple xyz
|
||||
|
||||
The keyword *aniso* means *x*, *y*, and *z* dimensions are controlled
|
||||
independently using the *Pxx*, *Pyy*, and *Pzz* components of the
|
||||
stress tensor as the driving forces, and the specified scalar external
|
||||
pressure. Using "aniso Pstart Pstop Pdamp" is the same as specifying
|
||||
these 4 keywords:
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
x Pstart Pstop Pdamp
|
||||
y Pstart Pstop Pdamp
|
||||
z Pstart Pstop Pdamp
|
||||
couple none
|
||||
|
||||
The keyword *tri* is the same as *aniso* but also adds the control on the
|
||||
shear pressure coupled with the tilt factors.
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
x Pstart Pstop Pdamp
|
||||
y Pstart Pstop Pdamp
|
||||
z Pstart Pstop Pdamp
|
||||
xy Pstart Pstop Pdamp
|
||||
xz Pstart Pstop Pdamp
|
||||
yz Pstart Pstop Pdamp
|
||||
couple none
|
||||
|
||||
----------
|
||||
|
||||
The *flip* keyword allows the tilt factors for a triclinic box to
|
||||
exceed half the distance of the parallel box length, as discussed
|
||||
below. If the *flip* value is set to *yes*, the bound is enforced by
|
||||
flipping the box when it is exceeded. If the *flip* value is set to
|
||||
*no*, the tilt will continue to change without flipping. Note that if
|
||||
applied stress induces large deformations (e.g. in a liquid), this
|
||||
means the box shape can tilt dramatically and LAMMPS will run less
|
||||
efficiently, due to the large volume of communication needed to
|
||||
acquire ghost atoms around a processor's irregular-shaped subdomain.
|
||||
For extreme values of tilt, LAMMPS may also lose atoms and generate an
|
||||
error.
|
||||
|
||||
----------
|
||||
|
||||
The *friction* keyword sets the friction parameter :math:`\alpha` in the
|
||||
equations of motion of the barostat. For each barostat direction, the value of
|
||||
:math:`\alpha` depends on both *Pdamp* and *friction*. The value given as a
|
||||
parameter is the Langevin characteristic time
|
||||
:math:`\tau_{L}=\frac{Q}{\alpha}` in time units. The langevin time can be understood as a
|
||||
decorrelation time for the pressure. A long Langevin time value will make the
|
||||
barostat act as an underdamped oscillator while a short value will make it
|
||||
act as an overdamped oscillator. The ideal configuration would be to find
|
||||
the critical parameter of the barostat. Empirically this is observed to
|
||||
occur for :math:`\tau_{L}\approx{}P_{damp}`. For this reason, if the *friction*
|
||||
keyword is not used, the default value *Pdamp* is used for each barostat direction.
|
||||
|
||||
----------
|
||||
|
||||
This fix computes pressure each timestep. To do
|
||||
this, the fix creates its own computes of style "pressure",
|
||||
as if this command had been issued:
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute fix-ID_press group-ID pressure NULL virial
|
||||
|
||||
The kinetic contribution to the pressure is taken as the ensemble value
|
||||
:math:`\frac{Nk_bT}{V}` and computed by the fix itself.
|
||||
|
||||
See the :doc:`compute pressure <compute_pressure>` command for details. Note
|
||||
that the IDs of the new compute is the fix-ID + underscore + "press" and the
|
||||
group for the new computes is the same as the fix group.
|
||||
|
||||
Note that this is NOT the compute used by thermodynamic output (see the
|
||||
:doc:`thermo_style <thermo_style>` command) with ID = *thermo_press*. This
|
||||
means you can change the attributes of this fix's pressure via the
|
||||
:doc:`compute_modify <compute_modify>` command or print this temperature or
|
||||
pressure during thermodynamic output via the :doc:`thermo_style custom
|
||||
<thermo_style>` 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.
|
||||
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *press* option is
|
||||
supported by this fix. You can use it to assign a
|
||||
:doc:`compute <compute>` you have defined to this fix which will be used
|
||||
in its pressure calculations.
|
||||
|
||||
No global or per-atom quantities are stored by this fix for access by
|
||||
various :doc:`output commands <Howto_output>`.
|
||||
|
||||
This fix can ramp its target pressure and temperature over multiple runs, using
|
||||
the *start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
:doc:`run <run>` command for details of how to do this. It is recommended that
|
||||
the ramped temperature is the same as the effective temperature of the
|
||||
thermostatted system. That is, if the system's temperature is ramped by other
|
||||
commands, it is recommended to do the same with this pressure control.
|
||||
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
Any dimension being adjusted by this fix must be periodic.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix press/berendsen <fix_press_berendsen>`,
|
||||
:doc:`fix nve <fix_nve>`, :doc:`fix nph <fix_nh>`, :doc:`fix npt <fix_nh>`, :doc:`fix langevin <fix_langevin>`,
|
||||
:doc:`fix_modify <fix_modify>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
The keyword defaults are *dilate* = all, *flip* = yes, and *friction* = *Pdamp*.
|
||||
|
||||
----------
|
||||
|
||||
.. _Gronbech:
|
||||
|
||||
**(Gronbech)** Gronbech-Jensen, Farago, J Chem Phys, 141, 194108 (2014).
|
||||
@ -843,7 +843,7 @@ stress/atom <compute_stress_atom>` commands. The former can be
|
||||
accessed by :doc:`thermodynamic output <thermo_style>`. The default
|
||||
setting for this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||
|
||||
All of the *rigid* styles (not the *rigid/small* styles) compute a
|
||||
All of the *rigid* styles (but not the *rigid/small* styles) compute a
|
||||
global array of values which can be accessed by various :doc:`output
|
||||
commands <Howto_output>`. Similar information about the bodies
|
||||
defined by the *rigid/small* styles can be accessed via the
|
||||
@ -887,7 +887,8 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
These fixes are all part of the RIGID package. It is only enabled if
|
||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` page for more info.
|
||||
LAMMPS was built with that package. See the :doc:`Build package
|
||||
<Build_package>` page for more info.
|
||||
|
||||
Assigning a temperature via the :doc:`velocity create <velocity>`
|
||||
command to a system with :doc:`rigid bodies <fix_rigid>` may not have
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
.. index:: fix spring/self
|
||||
.. index:: fix spring/self/kk
|
||||
|
||||
fix spring/self command
|
||||
=======================
|
||||
@ -80,6 +81,12 @@ invoked by the :doc:`minimize <minimize>` command.
|
||||
you MUST enable the :doc:`fix_modify <fix_modify>` *energy* option for
|
||||
this fix.
|
||||
|
||||
----------
|
||||
|
||||
.. include:: accel_styles.rst
|
||||
|
||||
----------
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
none
|
||||
|
||||
@ -61,24 +61,30 @@ Description
|
||||
Treat a group of particles as stochastic rotation dynamics (SRD)
|
||||
particles that serve as a background solvent when interacting with big
|
||||
(colloidal) particles in groupbig-ID. The SRD formalism is described
|
||||
in :ref:`(Hecht) <Hecht>`. The key idea behind using SRD particles as a
|
||||
cheap coarse-grained solvent is that SRD particles do not interact
|
||||
with each other, but only with the solute particles, which in LAMMPS
|
||||
can be spheroids, ellipsoids, or line segments, or triangles, or rigid
|
||||
bodies containing multiple spheroids or ellipsoids or line segments
|
||||
or triangles. The collision and rotation properties of the model
|
||||
imbue the SRD particles with fluid-like properties, including an
|
||||
effective viscosity. Thus simulations with large solute particles can
|
||||
be run more quickly, to measure solute properties like diffusivity
|
||||
and viscosity in a background fluid. The usual LAMMPS fixes for such
|
||||
simulations, such as :doc:`fix deform <fix_deform>`, :doc:`fix viscosity <fix_viscosity>`, and :doc:`fix nvt/sllod <fix_nvt_sllod>`,
|
||||
can be used in conjunction with the SRD model.
|
||||
in :ref:`(Hecht) <Hecht>`. The same methodology is also called
|
||||
multi-particle collision dynamics (MPCD) in the literature.
|
||||
|
||||
For more details on how the SRD model is implemented in LAMMPS, :ref:`this paper <Petersen1>` describes the implementation and usage of pure SRD
|
||||
fluids. :ref:`This paper <Lechman>`, which is nearly complete, describes
|
||||
the implementation and usage of mixture systems (solute particles in
|
||||
an SRD fluid). See the examples/srd directory for sample input
|
||||
scripts using SRD particles in both settings.
|
||||
The key idea behind using SRD particles as a cheap coarse-grained
|
||||
solvent is that SRD particles do not interact with each other, but
|
||||
only with the solute particles, which in LAMMPS can be spheroids,
|
||||
ellipsoids, or line segments, or triangles, or rigid bodies containing
|
||||
multiple spheroids or ellipsoids or line segments or triangles. The
|
||||
collision and rotation properties of the model imbue the SRD particles
|
||||
with fluid-like properties, including an effective viscosity. Thus
|
||||
simulations with large solute particles can be run more quickly, to
|
||||
measure solute properties like diffusivity and viscosity in a
|
||||
background fluid. The usual LAMMPS fixes for such simulations, such
|
||||
as :doc:`fix deform <fix_deform>`, :doc:`fix viscosity
|
||||
<fix_viscosity>`, and :doc:`fix nvt/sllod <fix_nvt_sllod>`, can be
|
||||
used in conjunction with the SRD model.
|
||||
|
||||
These 3 papers give more details on how the SRD model is implemented
|
||||
in LAMMPS. :ref:`(Petersen) <Petersen1>` describes pure SRD fluid
|
||||
systems. :ref:`(Bolintineanu1) <Bolintineanu1>` describes models
|
||||
where pure SRD fluids interact with boundary walls.
|
||||
:ref:`(Bolintineanu2) <Bolintineanu2>` describes mixture models where
|
||||
large colloidal particles are solvated by an SRD fluid. See the
|
||||
``examples/srd`` directory for sample input scripts.
|
||||
|
||||
This fix does two things:
|
||||
|
||||
@ -357,28 +363,28 @@ These are the 12 quantities. All are values for the current timestep,
|
||||
except for quantity 5 and the last three, each of which are
|
||||
cumulative quantities since the beginning of the run.
|
||||
|
||||
* (1) # of SRD/big collision checks performed
|
||||
* (2) # of SRDs which had a collision
|
||||
* (3) # of SRD/big collisions (including multiple bounces)
|
||||
* (4) # of SRD particles inside a big particle
|
||||
* (5) # of SRD particles whose velocity was rescaled to be < Vmax
|
||||
* (6) # of bins for collision searching
|
||||
* (7) # of bins for SRD velocity rotation
|
||||
* (8) # of bins in which SRD temperature was computed
|
||||
* (9) SRD temperature
|
||||
* (10) # of SRD particles which have undergone max # of bounces
|
||||
* (11) max # of bounces any SRD particle has had in a single step
|
||||
* (12) # of reneighborings due to SRD particles moving too far
|
||||
(1) # of SRD/big collision checks performed
|
||||
(2) # of SRDs which had a collision
|
||||
(3) # of SRD/big collisions (including multiple bounces)
|
||||
(4) # of SRD particles inside a big particle
|
||||
(5) # of SRD particles whose velocity was rescaled to be < Vmax
|
||||
(6) # of bins for collision searching
|
||||
(7) # of bins for SRD velocity rotation
|
||||
(8) # of bins in which SRD temperature was computed
|
||||
(9) SRD temperature
|
||||
(10) # of SRD particles which have undergone max # of bounces
|
||||
(11) max # of bounces any SRD particle has had in a single step
|
||||
(12) # of reneighborings due to SRD particles moving too far
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
the :doc:`run <run>` command. This fix is not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This command can only be used if LAMMPS was built with the SRD
|
||||
package. See the :doc:`Build package <Build_package>` doc
|
||||
page for more info.
|
||||
This command can only be used if LAMMPS was built with the SRD package.
|
||||
See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
@ -404,6 +410,12 @@ no, and rescale = yes.
|
||||
**(Petersen)** Petersen, Lechman, Plimpton, Grest, in' t Veld, Schunk, J
|
||||
Chem Phys, 132, 174106 (2010).
|
||||
|
||||
.. _Lechman:
|
||||
.. _Bolintineanu1:
|
||||
|
||||
**(Lechman)** Lechman, et al, in preparation (2010).
|
||||
**(Bolintineanu1)**
|
||||
Bolintineanu, Lechman, Plimpton, Grest, Phys Rev E, 86, 066703 (2012).
|
||||
|
||||
.. _Bolintineanu2:
|
||||
|
||||
**(Bolintineanu2)** Bolintineanu, Grest, Lechman, Pierce, Plimpton,
|
||||
Schunk, Comp Particle Mechanics, 1, 321-356 (2014).
|
||||
|
||||
@ -68,8 +68,8 @@ for more info.
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`improper_coeff <improper_coeff>`, `improper_harmonic
|
||||
:doc:<improper_harmonic>`
|
||||
:doc:`improper_coeff <improper_coeff>`,
|
||||
:doc:`improper_harmonic <improper_harmonic>`
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
||||
@ -40,7 +40,7 @@ rounded/polyhedron particles.
|
||||
This pairwise interaction between the rounded polyhedra is described
|
||||
in :ref:`Wang <pair-Wang>`, where a polyhedron does not have sharp corners
|
||||
and edges, but is rounded at its vertices and edges by spheres
|
||||
centered on each vertex with a specified diameter. The edges if the
|
||||
centered on each vertex with a specified diameter. The edges of the
|
||||
polyhedron are defined between pairs of adjacent vertices. Its faces
|
||||
are defined by a loop of edges. The sphere diameter for each polygon
|
||||
is specified in the data file read by the :doc:`read data <read_data>`
|
||||
|
||||
@ -22,12 +22,12 @@ Examples
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
pair_style hybrid/overlay ilp/tmd 16.0 1
|
||||
pair_coeff * * ilp/tmd TMD.ILP Mo S S
|
||||
pair_coeff * * ilp/tmd MoS2.ILP Mo S S
|
||||
|
||||
pair_style hybrid/overlay sw/mod sw/mod ilp/tmd 16.0
|
||||
pair_coeff * * sw/mod 1 tmd.sw.mod Mo S S NULL NULL NULL
|
||||
pair_coeff * * sw/mod 2 tmd.sw.mod NULL NULL NULL Mo S S
|
||||
pair_coeff * * ilp/tmd TMD.ILP Mo S S Mo S S
|
||||
pair_coeff * * ilp/tmd MoS2.ILP Mo S S Mo S S
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
@ -69,7 +69,7 @@ calculating the normals.
|
||||
each atom `i`, its six nearest neighboring atoms belonging to the same
|
||||
sub-layer are chosen to define the normal vector `{\bf n}_i`.
|
||||
|
||||
The parameter file (e.g. TMD.ILP), is intended for use with *metal*
|
||||
The parameter file (e.g. MoS2.ILP), is intended for use with *metal*
|
||||
:doc:`units <units>`, with energies in meV. Two additional parameters,
|
||||
*S*, and *rcut* are included in the parameter file. *S* is designed to
|
||||
facilitate scaling of energies. *rcut* is designed to build the neighbor
|
||||
@ -77,7 +77,7 @@ list for calculating the normals for each atom pair.
|
||||
|
||||
.. note::
|
||||
|
||||
The parameters presented in the parameter file (e.g. TMD.ILP),
|
||||
The parameters presented in the parameter file (e.g. MoS2.ILP),
|
||||
are fitted with taper function by setting the cutoff equal to 16.0
|
||||
Angstrom. Using different cutoff or taper function should be careful.
|
||||
These parameters provide a good description in both short- and long-range
|
||||
@ -133,10 +133,10 @@ if LAMMPS was built with that package. See the :doc:`Build package
|
||||
This pair style requires the newton setting to be *on* for pair
|
||||
interactions.
|
||||
|
||||
The TMD.ILP potential file provided with LAMMPS (see the potentials
|
||||
The MoS2.ILP potential file provided with LAMMPS (see the potentials
|
||||
directory) are parameterized for *metal* units. You can use this
|
||||
potential with any LAMMPS units, but you would need to create your own
|
||||
custom TMD.ILP potential file with coefficients listed in the appropriate
|
||||
custom MoS2.ILP potential file with coefficients listed in the appropriate
|
||||
units, if your simulation does not use *metal* units.
|
||||
|
||||
Related commands
|
||||
|
||||
@ -1,14 +1,20 @@
|
||||
.. index:: pair_style nb3b/harmonic
|
||||
.. index:: pair_style nb3b/screened
|
||||
|
||||
pair_style nb3b/harmonic command
|
||||
================================
|
||||
|
||||
pair_style nb3b/screened command
|
||||
================================
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
pair_style nb3b/harmonic
|
||||
pair_style style
|
||||
|
||||
* style = *nb3b/harmonic* or *nb3b/screened*
|
||||
|
||||
Examples
|
||||
""""""""
|
||||
@ -18,10 +24,14 @@ Examples
|
||||
pair_style nb3b/harmonic
|
||||
pair_coeff * * MgOH.nb3bharmonic Mg O H
|
||||
|
||||
pair_style nb3b/screened
|
||||
pair_coeff * * PO.nb3b.screened P NULL O
|
||||
pair_coeff * * SiOH.nb3b.screened Si O H
|
||||
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
This pair style computes a non-bonded 3-body harmonic potential for the
|
||||
The pair style *nb3b/harmonic* computes a non-bonded 3-body harmonic potential for the
|
||||
energy E of a system of atoms as
|
||||
|
||||
.. math::
|
||||
@ -33,7 +43,17 @@ prefactor. Note that the usual 1/2 factor is included in *K*\ . The form
|
||||
of the potential is identical to that used in angle_style *harmonic*,
|
||||
but in this case, the atoms do not need to be explicitly bonded.
|
||||
|
||||
Only a single pair_coeff command is used with this style which
|
||||
Style *nb3b/screened* adds an additional exponentially decaying factor to
|
||||
the harmonic term, given by
|
||||
|
||||
.. math::
|
||||
|
||||
E = K (\theta - \theta_0)^2 \exp \left(- \frac{r_{ij}}{\rho_{ij}} - \frac{r_{ik}}{\rho_{ik}} \right)
|
||||
|
||||
where :math:`\rho_ij` and :math:`\rho_ik` are the screening factors along
|
||||
the two bonds. Note that the usual 1/2 factor is included in *K*.
|
||||
|
||||
Only a single pair_coeff command is used with these styles which
|
||||
specifies a potential file with parameters for specified elements.
|
||||
These are mapped to LAMMPS atom types by specifying N additional
|
||||
arguments after the filename in the pair_coeff command, where N is the
|
||||
@ -61,8 +81,8 @@ type 4 to the C element in the potential file. If a mapping value is
|
||||
specified as NULL, the mapping is not performed. This can be used
|
||||
when the potential is used as part of the *hybrid* pair style. The
|
||||
NULL values are placeholders for atom types that will be used with
|
||||
other potentials. An example of a pair_coeff command for use with the
|
||||
*hybrid* pair style is:
|
||||
other potentials. Two examples of pair_coeff command for use with the
|
||||
*hybrid* pair style are:
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
@ -43,18 +43,18 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
Style *reaxff* computes the ReaxFF potential of van Duin, Goddard and
|
||||
co-workers. ReaxFF uses distance-dependent bond-order functions to
|
||||
Pair style *reaxff* computes the ReaxFF potential of van Duin, Goddard
|
||||
and co-workers. ReaxFF uses distance-dependent bond-order functions to
|
||||
represent the contributions of chemical bonding to the potential
|
||||
energy. There is more than one version of ReaxFF. The version
|
||||
implemented in LAMMPS uses the functional forms documented in the
|
||||
supplemental information of the following paper:
|
||||
:ref:`(Chenoweth et al., 2008) <Chenoweth_20082>`. The version integrated
|
||||
into LAMMPS matches the version of ReaxFF From Summer 2010. For more
|
||||
technical details about the pair reaxff implementation of ReaxFF, see
|
||||
the :ref:`(Aktulga) <Aktulga>` paper. The *reaxff* style was initially
|
||||
implemented as a stand-alone C code and is now converted to C++ and
|
||||
integrated into LAMMPS as a package.
|
||||
:ref:`(Chenoweth et al., 2008) <Chenoweth_20082>` and matches the
|
||||
version of the reference ReaxFF implementation from Summer 2010. For
|
||||
more technical details about the implementation of ReaxFF in pair style
|
||||
*reaxff*, see the :ref:`(Aktulga) <Aktulga>` paper. The *reaxff* style
|
||||
was initially implemented as a stand-alone C code and is now converted
|
||||
to C++ and integrated into LAMMPS as a package.
|
||||
|
||||
The *reaxff/kk* style is a Kokkos version of the ReaxFF potential that
|
||||
is derived from the *reaxff* style. The Kokkos version can run on GPUs
|
||||
@ -72,8 +72,7 @@ from LAMMPS after the 12 December 2018 version.
|
||||
|
||||
LAMMPS provides several different versions of ffield.reax in its
|
||||
potentials dir, each called potentials/ffield.reax.label. These are
|
||||
documented in potentials/README.reax. The default ffield.reax
|
||||
contains parameterizations for the following elements: C, H, O, N.
|
||||
documented in potentials/README.reax.
|
||||
|
||||
The format of these files is identical to that used originally by van
|
||||
Duin. We have tested the accuracy of *pair_style reaxff* potential
|
||||
@ -110,12 +109,14 @@ control variable. The format of the control file is described below.
|
||||
not agree.
|
||||
|
||||
Examples using *pair_style reaxff* are provided in the examples/reax
|
||||
subdirectory.
|
||||
directory and its subdirectories.
|
||||
|
||||
Use of this pair style requires that a charge be defined for every
|
||||
atom. See the :doc:`atom_style <atom_style>` and
|
||||
:doc:`read_data <read_data>` commands for details on how to specify
|
||||
charges.
|
||||
Use of this pair style requires using an :doc:`atom_style <atom_style>`
|
||||
that includes a per-atom charge property *or* using
|
||||
:doc:`fix property/atom q <fix_property_atom>`. Charges can be set
|
||||
via :doc:`read_data <read_data>` or :doc:`set <set>`. Using an initial
|
||||
charge that is close to the result of charge equilibration will speed
|
||||
up that process.
|
||||
|
||||
The ReaxFF parameter files provided were created using a charge
|
||||
equilibration (QEq) model for handling the electrostatic interactions.
|
||||
|
||||
@ -1,10 +1,11 @@
|
||||
.. index:: pair_style snap
|
||||
.. index:: pair_style snap/intel
|
||||
.. index:: pair_style snap/kk
|
||||
|
||||
pair_style snap command
|
||||
=======================
|
||||
|
||||
Accelerator Variants: *snap/kk*
|
||||
Accelerator Variants: *snap/intel*, *snap/kk*
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
@ -260,6 +261,14 @@ This style is part of the ML-SNAP package. It is only enabled if LAMMPS
|
||||
was built with that package. See the :doc:`Build package
|
||||
<Build_package>` page for more info.
|
||||
|
||||
The *snap/intel* accelerator variant will *only* be available if LAMMPS
|
||||
is built with Intel *compilers* and for CPUs with AVX-512 support.
|
||||
While the INTEL package in general allows multiple floating point
|
||||
precision modes to be selected, *snap/intel* will currently always use
|
||||
full double precision regardless of the precision mode selected.
|
||||
Additionally, the *intel* variant of snap will **NOT** use multiple
|
||||
threads with OpenMP.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
|
||||
@ -297,7 +297,8 @@ accelerated styles exist.
|
||||
* :doc:`morse/soft <pair_morse>` - Morse potential with a soft core
|
||||
* :doc:`multi/lucy <pair_multi_lucy>` - DPD potential with density-dependent force
|
||||
* :doc:`multi/lucy/rx <pair_multi_lucy_rx>` - reactive DPD potential with density-dependent force
|
||||
* :doc:`nb3b/harmonic <pair_nb3b_harmonic>` - non-bonded 3-body harmonic potential
|
||||
* :doc:`nb3b/harmonic <pair_nb3b>` - non-bonded 3-body harmonic potential
|
||||
* :doc:`nb3b/screened <pair_nb3b>` - non-bonded 3-body screened harmonic potential
|
||||
* :doc:`nm/cut <pair_nm>` - N-M potential
|
||||
* :doc:`nm/cut/coul/cut <pair_nm>` - N-M potential with cutoff Coulomb
|
||||
* :doc:`nm/cut/coul/long <pair_nm>` - N-M potential with long-range Coulomb
|
||||
|
||||
@ -1,11 +1,12 @@
|
||||
.. index:: pair_style yukawa/colloid
|
||||
.. index:: pair_style yukawa/colloid/gpu
|
||||
.. index:: pair_style yukawa/colloid/kk
|
||||
.. index:: pair_style yukawa/colloid/omp
|
||||
|
||||
pair_style yukawa/colloid command
|
||||
=================================
|
||||
|
||||
Accelerator Variants: *yukawa/colloid/gpu*, *yukawa/colloid/omp*
|
||||
Accelerator Variants: *yukawa/colloid/gpu*, *yukawa/colloid/kk*, *yukawa/colloid/omp*
|
||||
|
||||
Syntax
|
||||
""""""
|
||||
@ -131,6 +132,12 @@ per-type polydispersity is allowed. This means all particles of the
|
||||
same type must have the same diameter. Each type can have a different
|
||||
diameter.
|
||||
|
||||
----------
|
||||
|
||||
.. include:: accel_styles.rst
|
||||
|
||||
----------
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
|
||||
@ -24,6 +24,7 @@ Syntax
|
||||
c1,c2 = coords of cone axis in other 2 dimensions (distance units)
|
||||
radlo,radhi = cone radii at lo and hi end (distance units)
|
||||
lo,hi = bounds of cone in dim (distance units)
|
||||
c1,c2,radlo,radhi,lo,hi can be a variable (see below)
|
||||
*cylinder* args = dim c1 c2 radius lo hi
|
||||
dim = *x* or *y* or *z* = axis of cylinder
|
||||
c1,c2 = coords of cylinder axis in other 2 dimensions (distance units)
|
||||
@ -206,7 +207,8 @@ equal-style :doc:`variable <variable>`. Likewise, for style *sphere*
|
||||
and *ellipsoid* the x-, y-, and z- coordinates of the center of the
|
||||
sphere/ellipsoid can be specified as an equal-style variable. And for
|
||||
style *cylinder* the two center positions c1 and c2 for the location
|
||||
of the cylinder axes can be specified as a equal-style variable.
|
||||
of the cylinder axes can be specified as a equal-style variable. For style *cone*
|
||||
all properties can be defined via equal-style variables.
|
||||
|
||||
If the value is a variable, it should be specified as v_name, where
|
||||
name is the variable name. In this case, the variable will be
|
||||
|
||||
@ -385,19 +385,20 @@ creates a global vector with 6 values.
|
||||
The *c_ID* and *c_ID[I]* and *c_ID[I][J]* keywords allow global values
|
||||
calculated by a compute to be output. As discussed on the
|
||||
:doc:`compute <compute>` doc page, computes can calculate global,
|
||||
per-atom, or local values. Only global values can be referenced by
|
||||
this command. However, per-atom compute values for an individual atom
|
||||
can be referenced in a :doc:`variable <variable>` and the variable
|
||||
referenced by thermo_style custom, as discussed below. See the
|
||||
discussion above for how the I in *c_ID[I]* can be specified with a
|
||||
wildcard asterisk to effectively specify multiple values from a global
|
||||
compute vector.
|
||||
per-atom, local, and per-grid values. Only global values can be
|
||||
referenced by this command. However, per-atom compute values for an
|
||||
individual atom can be referenced in a :doc:`equal-style variable
|
||||
<variable>` and the variable referenced by thermo_style custom, as
|
||||
discussed below. See the discussion above for how the I in *c_ID[I]*
|
||||
can be specified with a wildcard asterisk to effectively specify
|
||||
multiple values from a global compute vector.
|
||||
|
||||
The ID in the keyword should be replaced by the actual ID of a compute
|
||||
that has been defined elsewhere in the input script. See the
|
||||
:doc:`compute <compute>` command for details. If the compute calculates
|
||||
a global scalar, vector, or array, then the keyword formats with 0, 1,
|
||||
or 2 brackets will reference a scalar value from the compute.
|
||||
:doc:`compute <compute>` command for details. If the compute
|
||||
calculates a global scalar, vector, or array, then the keyword formats
|
||||
with 0, 1, or 2 brackets will reference a scalar value from the
|
||||
compute.
|
||||
|
||||
Note that some computes calculate "intensive" global quantities like
|
||||
temperature; others calculate "extensive" global quantities like
|
||||
@ -410,13 +411,14 @@ norm <thermo_modify>` option being used.
|
||||
|
||||
The *f_ID* and *f_ID[I]* and *f_ID[I][J]* keywords allow global values
|
||||
calculated by a fix to be output. As discussed on the :doc:`fix
|
||||
<fix>` doc page, fixes can calculate global, per-atom, or local
|
||||
values. Only global values can be referenced by this command.
|
||||
However, per-atom fix values can be referenced for an individual atom
|
||||
in a :doc:`variable <variable>` and the variable referenced by
|
||||
thermo_style custom, as discussed below. See the discussion above for
|
||||
how the I in *f_ID[I]* can be specified with a wildcard asterisk to
|
||||
effectively specify multiple values from a global fix vector.
|
||||
<fix>` doc page, fixes can calculate global, per-atom, local, and
|
||||
per-grid values. Only global values can be referenced by this
|
||||
command. However, per-atom fix values can be referenced for an
|
||||
individual atom in a :doc:`equal-style variable <variable>` and the
|
||||
variable referenced by thermo_style custom, as discussed below. See
|
||||
the discussion above for how the I in *f_ID[I]* can be specified with
|
||||
a wildcard asterisk to effectively specify multiple values from a
|
||||
global fix vector.
|
||||
|
||||
The ID in the keyword should be replaced by the actual ID of a fix
|
||||
that has been defined elsewhere in the input script. See the
|
||||
@ -438,14 +440,15 @@ output. The name in the keyword should be replaced by the variable
|
||||
name that has been defined elsewhere in the input script. Only
|
||||
equal-style and vector-style variables can be referenced; the latter
|
||||
requires a bracketed term to specify the Ith element of the vector
|
||||
calculated by the variable. However, an atom-style variable can be
|
||||
referenced for an individual atom by an equal-style variable and that
|
||||
variable referenced. See the :doc:`variable <variable>` command for
|
||||
details. Variables of style *equal* and *vector* and *atom* define a
|
||||
formula which can reference per-atom properties or thermodynamic
|
||||
keywords, or they can invoke other computes, fixes, or variables when
|
||||
evaluated, so this is a very general means of creating thermodynamic
|
||||
output.
|
||||
calculated by the variable. However, an equal-style variable can use
|
||||
an atom-style variable in its formula indexed by the ID of an
|
||||
individual atom. This is a way to output a specific atom's per-atom
|
||||
coordinates or other per-atom properties in thermo output. See the
|
||||
:doc:`variable <variable>` command for details. Note that variables
|
||||
of style *equal* and *vector* and *atom* define a formula which can
|
||||
reference per-atom properties or thermodynamic keywords, or they can
|
||||
invoke other computes, fixes, or variables when evaluated, so this is
|
||||
a very general means of creating thermodynamic output.
|
||||
|
||||
Note that equal-style and vector-style variables are assumed to
|
||||
produce "intensive" global quantities, which are thus printed as-is,
|
||||
|
||||
@ -53,7 +53,7 @@ Syntax
|
||||
x == y, x != y, x < y, x <= y, x > y, x >= y, x && y, x \|\| y, x \|\^ y, !x
|
||||
math functions = sqrt(x), exp(x), ln(x), log(x), abs(x),
|
||||
sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x),
|
||||
random(x,y,z), normal(x,y,z), ceil(x), floor(x), round(x)
|
||||
random(x,y,z), normal(x,y,z), ceil(x), floor(x), round(x), ternary(x,y,z),
|
||||
ramp(x,y), stagger(x,y), logfreq(x,y,z), logfreq2(x,y,z),
|
||||
logfreq3(x,y,z), stride(x,y,z), stride2(x,y,z,a,b,c),
|
||||
vdisplace(x,y), swiggle(x,y,z), cwiggle(x,y,z)
|
||||
@ -71,6 +71,7 @@ Syntax
|
||||
feature functions = is_available(category,feature), is_active(category,feature), is_defined(category,id)
|
||||
atom value = id[i], mass[i], type[i], mol[i], x[i], y[i], z[i], vx[i], vy[i], vz[i], fx[i], fy[i], fz[i], q[i]
|
||||
atom vector = id, mass, type, mol, radius, q, x, y, z, vx, vy, vz, fx, fy, fz
|
||||
custom atom property = i_name, d_name, i_name[i], d_name[i], i2_name[i], d2_name[i], i2_name[i][j], d_name[i][j]
|
||||
compute references = c_ID, c_ID[i], c_ID[i][j], C_ID, C_ID[i]
|
||||
fix references = f_ID, f_ID[i], f_ID[i][j], F_ID, F_ID[i]
|
||||
variable references = v_name, v_name[i]
|
||||
@ -514,48 +515,49 @@ is a valid (though strange) variable formula:
|
||||
Specifically, a formula can contain numbers, constants, thermo
|
||||
keywords, math operators, math functions, group functions, region
|
||||
functions, special functions, feature functions, atom values, atom
|
||||
vectors, compute references, fix references, and references to other
|
||||
vectors, custom atom properties, compute references, fix references, and references to other
|
||||
variables.
|
||||
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Number | 0.2, 100, 1.0e20, -15.4, etc |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Constant | PI, version, on, off, true, false, yes, no |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Thermo keywords | vol, pe, ebond, etc |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Math operators | (), -x, x+y, x-y, x\*y, x/y, x\^y, x%y, x == y, x != y, x < y, x <= y, x > y, x >= y, x && y, x \|\| y, x \|\^ y, !x |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Math functions | sqrt(x), exp(x), ln(x), log(x), abs(x), sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x), random(x,y,z), normal(x,y,z), ceil(x), floor(x), round(x), ramp(x,y), stagger(x,y), logfreq(x,y,z), logfreq2(x,y,z), logfreq3(x,y,z), stride(x,y,z), stride2(x,y,z,a,b,c), vdisplace(x,y), swiggle(x,y,z), cwiggle(x,y,z) |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Math functions | sqrt(x), exp(x), ln(x), log(x), abs(x), sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x), random(x,y,z), normal(x,y,z), ceil(x), floor(x), round(x), ternary(x,y,z), ramp(x,y), stagger(x,y), logfreq(x,y,z), logfreq2(x,y,z), logfreq3(x,y,z), stride(x,y,z), stride2(x,y,z,a,b,c), vdisplace(x,y), swiggle(x,y,z), cwiggle(x,y,z) |
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Group functions | count(ID), mass(ID), charge(ID), xcm(ID,dim), vcm(ID,dim), fcm(ID,dim), bound(ID,dir), gyration(ID), ke(ID), angmom(ID,dim), torque(ID,dim), inertia(ID,dimdim), omega(ID,dim) |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Region functions | count(ID,IDR), mass(ID,IDR), charge(ID,IDR), xcm(ID,dim,IDR), vcm(ID,dim,IDR), fcm(ID,dim,IDR), bound(ID,dir,IDR), gyration(ID,IDR), ke(ID,IDR), angmom(ID,dim,IDR), torque(ID,dim,IDR), inertia(ID,dimdim,IDR), omega(ID,dim,IDR) |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Special functions | sum(x), min(x), max(x), ave(x), trap(x), slope(x), gmask(x), rmask(x), grmask(x,y), next(x), is_file(name), is_os(name), extract_setting(name), label2type(kind,label), is_typelabel(kind,label) |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Feature functions | is_available(category,feature), is_active(category,feature), is_defined(category,id) |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Atom values | id[i], mass[i], type[i], mol[i], x[i], y[i], z[i], vx[i], vy[i], vz[i], fx[i], fy[i], fz[i], q[i] |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Atom vectors | id, mass, type, mol, x, y, z, vx, vy, vz, fx, fy, fz, q |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Custom atom properties | i_name, d_name, i_name[i], d_name[i], i2_name[i], d2_name[i], i2_name[i][j], d_name[i][j] |
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Compute references | c_ID, c_ID[i], c_ID[i][j], C_ID, C_ID[i] |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Fix references | f_ID, f_ID[i], f_ID[i][j], F_ID, F_ID[i] |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
| Other variables | v_name, v_name[i] |
|
||||
+--------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||||
|
||||
Most of the formula elements produce a scalar value. Some produce a
|
||||
global or per-atom vector of values. Global vectors can be produced
|
||||
by computes or fixes or by other vector-style variables. Per-atom
|
||||
vectors are produced by atom vectors, compute references that
|
||||
represent a per-atom vector, fix references that represent a per-atom
|
||||
vector, and variables that are atom-style variables. Math functions
|
||||
that operate on scalar values produce a scalar value; math function
|
||||
that operate on global or per-atom vectors do so element-by-element
|
||||
and produce a global or per-atom vector.
|
||||
vectors are produced by atom vectors, computes or fixes which output a
|
||||
per-atom vector or array, and variables that are atom-style variables.
|
||||
Math functions that operate on scalar values produce a scalar value;
|
||||
math function that operate on global or per-atom vectors do so
|
||||
element-by-element and produce a global or per-atom vector.
|
||||
|
||||
A formula for equal-style variables cannot use any formula element
|
||||
that produces a global or per-atom vector. A formula for a
|
||||
@ -564,12 +566,13 @@ scalar value or a global vector value, but cannot use a formula
|
||||
element that produces a per-atom vector. A formula for an atom-style
|
||||
variable can use formula elements that produce either a scalar value
|
||||
or a per-atom vector, but not one that produces a global vector.
|
||||
|
||||
Atom-style variables are evaluated by other commands that define a
|
||||
:doc:`group <group>` on which they operate, e.g. a :doc:`dump <dump>` or
|
||||
:doc:`compute <compute>` or :doc:`fix <fix>` command. When they invoke
|
||||
the atom-style variable, only atoms in the group are included in the
|
||||
formula evaluation. The variable evaluates to 0.0 for atoms not in
|
||||
the group.
|
||||
:doc:`group <group>` on which they operate, e.g. a :doc:`dump <dump>`
|
||||
or :doc:`compute <compute>` or :doc:`fix <fix>` command. When they
|
||||
invoke the atom-style variable, only atoms in the group are included
|
||||
in the formula evaluation. The variable evaluates to 0.0 for atoms
|
||||
not in the group.
|
||||
|
||||
----------
|
||||
|
||||
@ -703,6 +706,13 @@ library. Ceil() is the smallest integer not less than its argument.
|
||||
Floor() if the largest integer not greater than its argument. Round()
|
||||
is the nearest integer to its argument.
|
||||
|
||||
.. versionadded:: TBD
|
||||
|
||||
The ternary(x,y,z) function is the equivalent of the ternary operator
|
||||
(? and :) in C or C++. It takes 3 arguments. The first argument is a
|
||||
conditional. The result of the function is y if x evaluates to true
|
||||
(non-zero). The result is z if x evaluates to false (zero).
|
||||
|
||||
The ramp(x,y) function uses the current timestep to generate a value
|
||||
linearly interpolated between the specified x,y values over the course
|
||||
of a run, according to this formula:
|
||||
@ -1034,10 +1044,9 @@ to built-in commands. For all of these styles except *command*,
|
||||
appending of active suffixes is also tried before reporting failure.
|
||||
|
||||
The *feature* category checks the availability of the following
|
||||
compile-time enabled features: GZIP support, PNG support, JPEG
|
||||
support, FFMPEG support, and C++ exceptions for error
|
||||
handling. Corresponding names are *gzip*, *png*, *jpeg*, *ffmpeg* and
|
||||
*exceptions*\ .
|
||||
compile-time enabled features: GZIP support, PNG support, JPEG support,
|
||||
FFMPEG support, and C++ exceptions for error handling. Corresponding
|
||||
names are *gzip*, *png*, *jpeg*, *ffmpeg* and *exceptions*\ .
|
||||
|
||||
Example: Only dump in a given format if the compiled binary supports it.
|
||||
|
||||
@ -1138,69 +1147,111 @@ only defined if an :doc:`atom_style <atom_style>` is being used that
|
||||
defines molecule IDs.
|
||||
|
||||
Note that many other atom attributes can be used as inputs to a
|
||||
variable by using the :doc:`compute property/atom <compute_property_atom>` command and then specifying
|
||||
a quantity from that compute.
|
||||
variable by using the :doc:`compute property/atom
|
||||
<compute_property_atom>` command and then referencing that compute.
|
||||
|
||||
----------
|
||||
|
||||
Custom atom properties
|
||||
----------------------
|
||||
|
||||
.. versionadded:: TBD
|
||||
|
||||
Custom atom properties refer to per-atom integer and floating point
|
||||
vectors or arrays that have been added via the :doc:`fix property/atom
|
||||
<fix_property_atom>` command. When that command is used specific
|
||||
names are given to each attribute which are the "name" portion of
|
||||
these references. References beginning with *i* and *d* refer to
|
||||
integer and floating point properties respectively. Per-atom vectors
|
||||
are referenced by *i_name* and *d_name*; per-atom arrays are
|
||||
referenced by *i2_name* and *d2_name*.
|
||||
|
||||
The various allowed references to integer custom atom properties in
|
||||
the variable formulas for equal-, vector-, and atom-style variables
|
||||
are listed in the following table. References to floating point
|
||||
custom atom properties are the same; just replace the leading "i" with
|
||||
"d".
|
||||
|
||||
+--------+---------------+------------------------------------------+
|
||||
| equal | i_name[I] | element of per-atom vector (I = atom ID) |
|
||||
| equal | i2_name[I][J] | element of per-atom array (I = atom ID) |
|
||||
+--------+---------------+------------------------------------------+
|
||||
| vector | i_name[I] | element of per-atom vector (I = atom ID) |
|
||||
| vector | i2_name[I][J] | element of per-atom array (I = atom ID) |
|
||||
+--------+---------------+------------------------------------------+
|
||||
| atom | i_name | per-atom vector |
|
||||
| atom | i2_name[I] | column of per-atom array |
|
||||
+--------+---------------+------------------------------------------+
|
||||
|
||||
The I and J indices in these custom atom property references can be
|
||||
integers or can be a variable name, specified as v_name, where name is
|
||||
the name of the variable. The rules for this syntax are the same as
|
||||
for indices in the "Atom Values and Vectors" discussion above.
|
||||
|
||||
----------
|
||||
|
||||
Compute References
|
||||
------------------
|
||||
|
||||
Compute references access quantities calculated by a
|
||||
:doc:`compute <compute>`. The ID in the reference should be replaced by
|
||||
the ID of a compute defined elsewhere in the input script. As
|
||||
discussed in the page for the :doc:`compute <compute>` command,
|
||||
computes can produce global, per-atom, or local values. Only global
|
||||
and per-atom values can be used in a variable. Computes can also
|
||||
produce a scalar, vector, or array.
|
||||
Compute references access quantities calculated by a :doc:`compute
|
||||
<compute>`. The ID in the reference should be replaced by the ID of a
|
||||
compute defined elsewhere in the input script.
|
||||
|
||||
An equal-style variable can only use scalar values, which means a
|
||||
global scalar, or an element of a global or per-atom vector or array.
|
||||
A vector-style variable can use scalar values or a global vector of
|
||||
values, or a column of a global array of values. Atom-style variables
|
||||
can use global scalar values. They can also use per-atom vector
|
||||
values, or a column of a per-atom array. See the doc pages for
|
||||
individual computes to see what kind of values they produce.
|
||||
As discussed on the page for the :doc:`compute <compute>` command,
|
||||
computes can produce global, per-atom, local, and per-grid values.
|
||||
Only global and per-atom values can be used in a variable. Computes
|
||||
can also produce scalars (global only), vectors, and arrays. See the
|
||||
doc pages for individual computes to see what different kinds of data
|
||||
they produce.
|
||||
|
||||
Examples of different kinds of compute references are as follows.
|
||||
There is typically no ambiguity (see exception below) as to what a
|
||||
reference means, since computes only produce either global or per-atom
|
||||
quantities, never both.
|
||||
An equal-style variable can only use scalar values, either from global
|
||||
or per-atom data. In the case of per-atom data, this would be a value
|
||||
for a specific atom.
|
||||
|
||||
+-------------+-------------------------------------------------------------------------------------------------------+
|
||||
| c_ID | global scalar, or per-atom vector |
|
||||
+-------------+-------------------------------------------------------------------------------------------------------+
|
||||
| c_ID[I] | Ith element of global vector, or atom I's value in per-atom vector, or Ith column from per-atom array |
|
||||
+-------------+-------------------------------------------------------------------------------------------------------+
|
||||
| c_ID[I][J] | I,J element of global array, or atom I's Jth value in per-atom array |
|
||||
+-------------+-------------------------------------------------------------------------------------------------------+
|
||||
A vector-style variable can use scalar values (same as for equal-style
|
||||
variables), or global vectors of values. The latter can also be a
|
||||
column of a global array.
|
||||
|
||||
For I and J indices, integers can be specified or a variable name,
|
||||
specified as v_name, where name is the name of the variable. The
|
||||
rules for this syntax are the same as for the "Atom Values and
|
||||
Vectors" discussion above.
|
||||
Atom-style variables can use scalar values (same as for equal-style
|
||||
variables), or per-atom vectors of values. The latter can also be a
|
||||
column of a per-atom array.
|
||||
|
||||
One source of ambiguity for compute references is when a vector-style
|
||||
variable refers to a compute that produces both a global scalar and a
|
||||
global vector. Consider a compute with ID "foo" that does this,
|
||||
referenced as follows by variable "a", where "myVec" is another
|
||||
vector-style variable:
|
||||
The various allowed compute references in the variable formulas for
|
||||
equal-, vector-, and atom-style variables are listed in the following
|
||||
table:
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
+--------+------------+------------------------------------------+
|
||||
| equal | c_ID | global scalar |
|
||||
| equal | c_ID[I] | element of global vector |
|
||||
| equal | c_ID[I][J] | element of global array |
|
||||
| equal | C_ID[I] | element of per-atom vector (I = atom ID) |
|
||||
| equal | C_ID[I][J] | element of per-atom array (I = atom ID) |
|
||||
+--------+------------+------------------------------------------+
|
||||
| vector | c_ID | global vector |
|
||||
| vector | c_ID[I] | column of global array |
|
||||
+--------+------------+------------------------------------------+
|
||||
| atom | c_ID | per-atom vector |
|
||||
| atom | c_ID[I] | column of per-atom array |
|
||||
+--------+------------+------------------------------------------+
|
||||
|
||||
variable a vector c_foo*v_myVec
|
||||
Note that if an equal-style variable formula wishes to access per-atom
|
||||
data from a compute, it must use capital "C" as the ID prefix and not
|
||||
lower-case "c".
|
||||
|
||||
The reference "c_foo" could refer to either the global scalar or
|
||||
global vector produced by compute "foo". In this case, "c_foo" will
|
||||
always refer to the global scalar, and "C_foo" can be used to
|
||||
reference the global vector. Similarly if the compute produces both a
|
||||
global vector and global array, then "c_foo[I]" will always refer to
|
||||
an element of the global vector, and "C_foo[I]" can be used to
|
||||
reference the Ith column of the global array.
|
||||
Also note that if a vector- or atom-style variable formula needs to
|
||||
access a scalar value from a compute (i.e. the 5 kinds of values in
|
||||
the first 5 lines of the table), it can not do so directly. Instead,
|
||||
it can use a reference to an equal-style variable which stores the
|
||||
scalar value from the compute.
|
||||
|
||||
Note that if a variable containing a compute is evaluated directly in
|
||||
an input script (not during a run), then the values accessed by the
|
||||
compute must be current. See the discussion below about "Variable
|
||||
The I and J indices in these compute references can be integers or can
|
||||
be a variable name, specified as v_name, where name is the name of the
|
||||
variable. The rules for this syntax are the same as for indices in
|
||||
the "Atom Values and Vectors" discussion above.
|
||||
|
||||
If a variable containing a compute is evaluated directly in an input
|
||||
script (not during a run), then the values accessed by the compute
|
||||
should be current. See the discussion below about "Variable
|
||||
Accuracy".
|
||||
|
||||
----------
|
||||
@ -1208,51 +1259,59 @@ Accuracy".
|
||||
Fix References
|
||||
--------------
|
||||
|
||||
Fix references access quantities calculated by a :doc:`fix <compute>`.
|
||||
Fix references access quantities calculated by a :doc:`fix <fix>`.
|
||||
The ID in the reference should be replaced by the ID of a fix defined
|
||||
elsewhere in the input script. As discussed in the page for the
|
||||
:doc:`fix <fix>` command, fixes can produce global, per-atom, or local
|
||||
values. Only global and per-atom values can be used in a variable.
|
||||
Fixes can also produce a scalar, vector, or array. An equal-style
|
||||
variable can only use scalar values, which means a global scalar, or
|
||||
an element of a global or per-atom vector or array. Atom-style
|
||||
variables can use the same scalar values. They can also use per-atom
|
||||
vector values. A vector value can be a per-atom vector itself, or a
|
||||
column of an per-atom array. See the doc pages for individual fixes
|
||||
to see what kind of values they produce.
|
||||
elsewhere in the input script.
|
||||
|
||||
The different kinds of fix references are exactly the same as the
|
||||
compute references listed in the above table, where "c\_" is replaced
|
||||
by "f\_". Again, there is typically no ambiguity (see exception below)
|
||||
as to what a reference means, since fixes only produce either global
|
||||
or per-atom quantities, never both.
|
||||
As discussed on the page for the :doc:`fix <fix>` command, fixes can
|
||||
produce global, per-atom, local, and per-grid values. Only global and
|
||||
per-atom values can be used in a variable. Fixes can also produce
|
||||
scalars (global only), vectors, and arrays. See the doc pages for
|
||||
individual fixes to see what different kinds of data they produce.
|
||||
|
||||
+-------------+-------------------------------------------------------------------------------------------------------+
|
||||
| f_ID | global scalar, or per-atom vector |
|
||||
+-------------+-------------------------------------------------------------------------------------------------------+
|
||||
| f_ID[I] | Ith element of global vector, or atom I's value in per-atom vector, or Ith column from per-atom array |
|
||||
+-------------+-------------------------------------------------------------------------------------------------------+
|
||||
| f_ID[I][J] | I,J element of global array, or atom I's Jth value in per-atom array |
|
||||
+-------------+-------------------------------------------------------------------------------------------------------+
|
||||
An equal-style variable can only use scalar values, either from global
|
||||
or per-atom data. In the case of per-atom data, this would be a value
|
||||
for a specific atom.
|
||||
|
||||
For I and J indices, integers can be specified or a variable name,
|
||||
specified as v_name, where name is the name of the variable. The
|
||||
rules for this syntax are the same as for the "Atom Values and
|
||||
Vectors" discussion above.
|
||||
A vector-style variable can use scalar values (same as for equal-style
|
||||
variables), or global vectors of values. The latter can also be a
|
||||
column of a global array.
|
||||
|
||||
One source of ambiguity for fix references is the same ambiguity
|
||||
discussed for compute references above. Namely when a vector-style
|
||||
variable refers to a fix that produces both a global scalar and a
|
||||
global vector. The solution is the same as for compute references.
|
||||
For a fix with ID "foo", "f_foo" will always refer to the global
|
||||
scalar, and "F_foo" can be used to reference the global vector. And
|
||||
similarly for distinguishing between a fix's global vector versus
|
||||
global array with "f_foo[I]" versus "F_foo[I]".
|
||||
Atom-style variables can use scalar values (same as for equal-style
|
||||
variables), or per-atom vectors of values. The latter can also be a
|
||||
column of a per-atom array.
|
||||
|
||||
Note that if a variable containing a fix is evaluated directly in an
|
||||
input script (not during a run), then the values accessed by the fix
|
||||
should be current. See the discussion below about "Variable
|
||||
Accuracy".
|
||||
The allowed fix references in variable formulas for equal-, vector-,
|
||||
and atom-style variables are listed in the following table:
|
||||
|
||||
+--------+------------+------------------------------------------+
|
||||
| equal | f_ID | global scalar |
|
||||
| equal | f_ID[I] | element of global vector |
|
||||
| equal | f_ID[I][J] | element of global array |
|
||||
| equal | F_ID[I] | element of per-atom vector (I = atom ID) |
|
||||
| equal | F_ID[I][J] | element of per-atom array (I = atom ID) |
|
||||
+--------+------------+------------------------------------------+
|
||||
| vector | f_ID | global vector |
|
||||
| vector | f_ID[I] | column of global array |
|
||||
+--------+------------+------------------------------------------+
|
||||
| atom | f_ID | per-atom vector |
|
||||
| atom | f_ID[I] | column of per-atom array |
|
||||
+--------+------------+------------------------------------------+
|
||||
|
||||
Note that if an equal-style variable formula wishes to access per-atom
|
||||
data from a fix, it must use capital "F" as the ID prefix and not
|
||||
lower-case "f".
|
||||
|
||||
Also note that if a vector- or atom-style variable formula needs to
|
||||
access a scalar value from a fix (i.e. the 5 kinds of values in the
|
||||
first 5 lines of the table), it can not do so directly. Instead, it
|
||||
can use a reference to an equal-style variable which stores the scalar
|
||||
value from the fix.
|
||||
|
||||
The I and J indices in these fix references can be integers or can be
|
||||
a variable name, specified as v_name, where name is the name of the
|
||||
variable. The rules for this syntax are the same as for indices in
|
||||
the "Atom Values and Vectors" discussion above.
|
||||
|
||||
Note that some fixes only generate quantities on certain timesteps.
|
||||
If a variable attempts to access the fix on non-allowed timesteps, an
|
||||
@ -1260,6 +1319,10 @@ error is generated. For example, the :doc:`fix ave/time <fix_ave_time>`
|
||||
command may only generate averaged quantities every 100 steps. See
|
||||
the doc pages for individual fix commands for details.
|
||||
|
||||
If a variable containing a fix is evaluated directly in an input
|
||||
script (not during a run), then the values accessed by the fix should
|
||||
be current. See the discussion below about "Variable Accuracy".
|
||||
|
||||
----------
|
||||
|
||||
Variable References
|
||||
@ -1294,26 +1357,32 @@ including other atom-style or atomfile-style variables. If it uses a
|
||||
vector-style variable, a subscript must be used to access a single
|
||||
value from the vector-style variable.
|
||||
|
||||
Examples of different kinds of variable references are as follows.
|
||||
There is no ambiguity as to what a reference means, since variables
|
||||
produce only a global scalar or global vector or per-atom vector.
|
||||
The allowed variable references in variable formulas for equal-,
|
||||
vector-, and atom-style variables are listed in the following table.
|
||||
Note that there is no ambiguity as to what a reference means, since
|
||||
referenced variables produce only a global scalar or global vector or
|
||||
per-atom vector.
|
||||
|
||||
+------------+----------------------------------------------------------------------+
|
||||
| v_name | global scalar from equal-style variable |
|
||||
+------------+----------------------------------------------------------------------+
|
||||
| v_name | global vector from vector-style variable |
|
||||
+------------+----------------------------------------------------------------------+
|
||||
| v_name | per-atom vector from atom-style or atomfile-style variable |
|
||||
+------------+----------------------------------------------------------------------+
|
||||
| v_name[I] | Ith element of a global vector from vector-style variable |
|
||||
+------------+----------------------------------------------------------------------+
|
||||
| v_name[I] | value of atom with ID = I from atom-style or atomfile-style variable |
|
||||
+------------+----------------------------------------------------------------------+
|
||||
+--------+-----------+-----------------------------------------------------------------------------------+
|
||||
| equal | v_name | global scalar from an equal-style variable |
|
||||
| equal | v_name[I] | element of global vector from a vector-style variable |
|
||||
| equal | v_name[I] | element of per-atom vector (I = atom ID) from an atom- or atomfile-style variable |
|
||||
+--------+-----------+-----------------------------------------------------------------------------------+
|
||||
| vector | v_name | global scalar from an equal-style variable |
|
||||
| vector | v_name | global vector from a vector-style variable |
|
||||
| vector | v_name[I] | element of global vector from a vector-style variable |
|
||||
| vector | v_name[I] | element of per-atom vector (I = atom ID) from an atom- or atomfile-style variable |
|
||||
+--------+-----------+-----------------------------------------------------------------------------------+
|
||||
| atom | v_name | global scalar from an equal-style variable |
|
||||
| atom | v_name | per-atom vector from an atom-style or atomfile-style variable |
|
||||
| atom | v_name[I] | element of global vector from a vector-style variable |
|
||||
| atom | v_name[I] | element of per-atom vector (I = atom ID) from an atom- or atomfile-style variable |
|
||||
+--------+-----------+-----------------------------------------------------------------------------------+
|
||||
|
||||
For the I index, an integer can be specified or a variable name,
|
||||
specified as v_name, where name is the name of the variable. The
|
||||
rules for this syntax are the same as for the "Atom Values and
|
||||
Vectors" discussion above.
|
||||
rules for this syntax are the same as for indices in the "Atom Values
|
||||
and Vectors" discussion above.
|
||||
|
||||
----------
|
||||
|
||||
|
||||
@ -76,12 +76,12 @@ class LAMMPSLexer(RegexLexer):
|
||||
include('conditionals'),
|
||||
include('keywords'),
|
||||
(r'#.*?\n', Comment),
|
||||
('"', String, 'string'),
|
||||
('\'', String, 'single_quote_string'),
|
||||
(r'"', String, 'string'),
|
||||
(r'\'', String, 'single_quote_string'),
|
||||
(r'[0-9]+:[0-9]+(:[0-9]+)?', Number),
|
||||
(r'[0-9]+(\.[0-9]+)?([eE]\-?[0-9]+)?', Number),
|
||||
('\$?\(', Name.Variable, 'expression'),
|
||||
('\$\{', Name.Variable, 'variable'),
|
||||
(r'\$?\(', Name.Variable, 'expression'),
|
||||
(r'\$\{', Name.Variable, 'variable'),
|
||||
(r'[\w_\.\[\]]+', Name),
|
||||
(r'\$[\w_]+', Name.Variable),
|
||||
(r'\s+', Whitespace),
|
||||
@ -97,21 +97,21 @@ class LAMMPSLexer(RegexLexer):
|
||||
]
|
||||
,
|
||||
'variable' : [
|
||||
('[^\}]+', Name.Variable),
|
||||
('\}', Name.Variable, '#pop'),
|
||||
(r'[^\}]+', Name.Variable),
|
||||
(r'\}', Name.Variable, '#pop'),
|
||||
],
|
||||
'string' : [
|
||||
('[^"]+', String),
|
||||
('"', String, '#pop'),
|
||||
(r'[^"]+', String),
|
||||
(r'"', String, '#pop'),
|
||||
],
|
||||
'single_quote_string' : [
|
||||
('[^\']+', String),
|
||||
('\'', String, '#pop'),
|
||||
(r'[^\']+', String),
|
||||
(r'\'', String, '#pop'),
|
||||
],
|
||||
'expression' : [
|
||||
('[^\(\)]+', Name.Variable),
|
||||
('\(', Name.Variable, 'expression'),
|
||||
('\)', Name.Variable, '#pop'),
|
||||
(r'[^\(\)]+', Name.Variable),
|
||||
(r'\(', Name.Variable, 'expression'),
|
||||
(r'\)', Name.Variable, '#pop'),
|
||||
],
|
||||
'modify_cmd' : [
|
||||
(r'[\w_\-\.\[\]]+', Name.Variable.Identifier),
|
||||
|
||||
@ -2892,6 +2892,7 @@ pscrozi
|
||||
pseudocode
|
||||
Pseudocode
|
||||
pseudodynamics
|
||||
pseudoparticle
|
||||
pseudopotential
|
||||
psllod
|
||||
pSp
|
||||
@ -3755,6 +3756,7 @@ uncomment
|
||||
uncommented
|
||||
uncompress
|
||||
uncompute
|
||||
underdamped
|
||||
underprediction
|
||||
undump
|
||||
uniaxial
|
||||
|
||||
@ -0,0 +1,28 @@
|
||||
variable ibead uloop 99 pad
|
||||
|
||||
units metal
|
||||
atom_style atomic
|
||||
atom_modify map yes
|
||||
boundary p p p
|
||||
pair_style lj/cut 9.5251
|
||||
read_data data.metalnpt${ibead}
|
||||
|
||||
pair_coeff * * 0.00965188 3.4
|
||||
pair_modify shift yes
|
||||
|
||||
mass 1 39.948
|
||||
|
||||
timestep 0.001
|
||||
|
||||
velocity all create 0.0 ${ibead}
|
||||
|
||||
fix 1 all pimd/langevin method nmpimd ensemble npt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 iso 1.0 barostat BZP taup 1.0 fixcom no
|
||||
|
||||
thermo_style custom step temp f_1[*] vol press
|
||||
thermo 100
|
||||
thermo_modify norm no
|
||||
|
||||
# dump dcd all custom 100 ${ibead}.dcd id type xu yu zu vx vy vz ix iy iz fx fy fz
|
||||
# dump_modify dcd sort id format line "%d %d %.16f %.16f %.16f %.16f %.16f %.16f %d %d %d %.16f %.16f %.16f"
|
||||
|
||||
run 1000
|
||||
@ -16,7 +16,7 @@ timestep 0.001
|
||||
|
||||
velocity all create 0.0 ${ibead}
|
||||
|
||||
fix 1 all pimd/langevin ensemble npt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 iso 1.0 barostat BZP taup 1.0 fixcom no
|
||||
fix 1 all pimd/langevin method pimd ensemble nvt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 taup 1.0 fixcom no
|
||||
|
||||
thermo_style custom step temp f_1[*] vol press
|
||||
thermo 100
|
||||
@ -1,2 +1,2 @@
|
||||
LAMMPS (28 Mar 2023)
|
||||
LAMMPS (3 Aug 2023)
|
||||
Running on 4 partitions of processors
|
||||
@ -1,5 +1,6 @@
|
||||
LAMMPS (28 Mar 2023)
|
||||
LAMMPS (3 Aug 2023)
|
||||
Processor partition = 0
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
variable ibead uloop 99 pad
|
||||
|
||||
@ -29,10 +30,10 @@ timestep 0.001
|
||||
velocity all create 0.0 ${ibead}
|
||||
velocity all create 0.0 01
|
||||
|
||||
fix 1 all pimd/langevin ensemble npt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 iso 1.0 barostat BZP taup 1.0 fixcom no
|
||||
fix 1 all pimd/langevin method nmpimd ensemble npt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 iso 1.0 barostat BZP taup 1.0 fixcom no
|
||||
|
||||
Initializing PIMD BZP barostat...
|
||||
The barostat mass is W = 2.3401256650800001e+01
|
||||
The barostat mass is W = 2.3401256650800001e+01
|
||||
|
||||
thermo_style custom step temp f_1[*] vol press
|
||||
thermo 100
|
||||
@ -43,14 +44,13 @@ thermo_modify norm no
|
||||
|
||||
run 1000
|
||||
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
||||
|
||||
Initializing PI Langevin equation thermostat...
|
||||
Bead ID | omega | tau | c1 | c2
|
||||
Bead ID | omega | tau | c1 | c2
|
||||
0 0.00000000e+00 1.00000000e+00 9.99500125e-01 3.16148726e-02
|
||||
1 8.37986825e+01 5.96668092e-03 9.19616372e-01 3.92817678e-01
|
||||
2 1.18509233e+02 4.21908054e-03 8.88243614e-01 4.59372705e-01
|
||||
3 8.37986825e+01 5.96668092e-03 9.19616372e-01 3.92817678e-01
|
||||
PILE_L thermostat successfully initialized!
|
||||
PILE_L thermostat successfully initialized!
|
||||
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
@ -66,31 +66,31 @@ Neighbor list info ...
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.121 | 3.121 | 3.121 Mbytes
|
||||
Step Temp f_1[1] f_1[2] f_1[3] f_1[4] f_1[5] f_1[6] f_1[7] f_1[8] f_1[9] f_1[10] f_1[11] f_1[12] f_1[13] f_1[14] f_1[15] Volume Press
|
||||
0 0 0 0 -7.3046601 4.3005229 -21.877018 -8.7249482 2.9571502 -1743.5332 -698.49808 -172.07477 0 0 0.033460054 -0.37064378 4.216227 13402.228 -164.47373
|
||||
100 149.95804 3.8573359 0 -7.7921375 42.886648 -23.396327 -1.980193 2.954003 -1888.0547 -1648.7118 -332.0298 -0.099139345 0.11500091 0.033044702 -0.3701566 42.83112 13235.861 -101.30374
|
||||
200 245.00113 6.3021074 0 -8.2639651 41.690123 -22.521598 -4.273021 2.9600599 -1906.2904 -1609.02 -265.94404 -0.20527926 0.49305948 0.031504957 -0.36829556 41.729191 12619.125 112.22426
|
||||
300 300.57486 7.7316177 0 -8.2986331 43.180131 -21.755813 -7.7032433 2.9714114 -1968.7685 290.49656 251.72564 -0.21935745 0.56300721 0.029467915 -0.36568855 43.236828 11803.2 814.45889
|
||||
400 368.08438 9.4681493 0 -8.4800193 49.109699 -24.824142 2.9744597 2.9794185 -2335.993 1368.7398 570.03286 -0.028366234 0.0094148316 0.028338146 -0.36416383 49.028096 11350.678 1202.0398
|
||||
500 419.32066 10.786088 0 -8.640773 45.427771 -22.825143 16.22356 2.9684828 -2113.91 -272.84753 185.53392 0.091614289 0.098205455 0.028793585 -0.36478567 45.368325 11533.101 952.59748
|
||||
600 385.4127 9.9138817 0 -8.4356035 47.783726 -22.456104 6.837575 2.967236 -2023.8117 -918.27943 -2.4106994 0.093360761 0.10198539 0.029589188 -0.36584873 47.725157 11851.775 676.62913
|
||||
700 360.14242 9.2638601 0 -8.2900275 42.626187 -20.571698 -5.7252564 2.9560528 -1806.9448 -1418.2247 -148.41657 0.075011202 0.065835696 0.030359455 -0.36685105 42.558523 12160.301 456.91446
|
||||
800 346.92167 8.923786 0 -8.0694169 45.160336 -21.885719 -6.7745694 2.9575472 -1894.3641 -1329.3179 -136.42193 0.011114896 0.0014455064 0.030808183 -0.3674233 45.076543 12340.037 454.60123
|
||||
900 364.39442 9.3732334 0 -8.0415668 45.604542 -21.816625 5.586068 2.9578604 -1890.4653 -1271.1107 -111.89061 -0.020285587 0.0048148677 0.030774258 -0.36738033 45.521594 12326.448 499.75868
|
||||
1000 390.77042 10.051697 0 -8.1948009 45.264242 -22.833545 6.9260573 2.960122 -2007.6188 -1179.7125 -70.907567 -0.062733519 0.046047757 0.030329191 -0.36681215 45.191633 12148.179 572.98799
|
||||
Loop time of 0.248186 on 1 procs for 1000 steps with 200 atoms
|
||||
0 0 0 0 -7.3046601 4.3005229 3.3062167 -8.7249482 2.9571502 -1743.5332 -698.49808 -172.07477 0 0 0.033460054 -0.37064378 4.216227 13402.228 -164.47373
|
||||
100 149.95804 3.8573359 0 -7.7921375 42.886648 2.9263894 -1.980193 2.954003 -1888.0547 -1648.7118 -332.0298 -0.099139345 0.11500091 0.033044702 -0.3701566 42.83112 13235.861 -101.30374
|
||||
200 245.00113 6.3021074 0 -8.2639651 41.690123 3.1450717 -4.273021 2.9600599 -1906.2904 -1609.02 -265.94404 -0.20527926 0.49305948 0.031504957 -0.36829556 41.729191 12619.125 112.22426
|
||||
300 300.57486 7.7316177 0 -8.2986331 43.180131 3.336518 -7.7032433 2.9714114 -1968.7685 290.49656 251.72564 -0.21935745 0.56300721 0.029467915 -0.36568855 43.236828 11803.2 814.45889
|
||||
400 368.08438 9.4681493 0 -8.4800193 49.109699 2.5694358 2.9744597 2.9794185 -2335.993 1368.7398 570.03286 -0.028366234 0.0094148316 0.028338146 -0.36416383 49.028096 11350.678 1202.0398
|
||||
500 419.32066 10.786088 0 -8.640773 45.427771 3.0691855 16.22356 2.9684828 -2113.91 -272.84753 185.53392 0.091614289 0.098205455 0.028793585 -0.36478567 45.368325 11533.101 952.59748
|
||||
600 385.4127 9.9138817 0 -8.4356035 47.783726 3.1614452 6.837575 2.967236 -2023.8117 -918.27943 -2.4106994 0.093360761 0.10198539 0.029589188 -0.36584873 47.725157 11851.775 676.62913
|
||||
700 360.14242 9.2638601 0 -8.2900275 42.626187 3.6325468 -5.7252564 2.9560528 -1806.9448 -1418.2247 -148.41657 0.075011202 0.065835696 0.030359455 -0.36685105 42.558523 12160.301 456.91446
|
||||
800 346.92167 8.923786 0 -8.0694169 45.160336 3.3040415 -6.7745694 2.9575472 -1894.3641 -1329.3179 -136.42193 0.011114896 0.0014455064 0.030808183 -0.3674233 45.076543 12340.037 454.60123
|
||||
900 364.39442 9.3732334 0 -8.0415668 45.604542 3.321315 5.586068 2.9578604 -1890.4653 -1271.1107 -111.89061 -0.020285587 0.0048148677 0.030774258 -0.36738033 45.521594 12326.448 499.75868
|
||||
1000 390.77042 10.051697 0 -8.1948009 45.264242 3.0670849 6.9260573 2.960122 -2007.6188 -1179.7125 -70.907567 -0.062733519 0.046047757 0.030329191 -0.36681215 45.191633 12148.179 572.98799
|
||||
Loop time of 0.218442 on 1 procs for 1000 steps with 200 atoms
|
||||
|
||||
Performance: 348.126 ns/day, 0.069 hours/ns, 4029.238 timesteps/s, 805.848 katom-step/s
|
||||
99.6% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
Performance: 395.527 ns/day, 0.061 hours/ns, 4577.865 timesteps/s, 915.573 katom-step/s
|
||||
98.9% 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.14541 | 0.14541 | 0.14541 | 0.0 | 58.59
|
||||
Neigh | 0.00099082 | 0.00099082 | 0.00099082 | 0.0 | 0.40
|
||||
Comm | 0.0039966 | 0.0039966 | 0.0039966 | 0.0 | 1.61
|
||||
Output | 0.00016346 | 0.00016346 | 0.00016346 | 0.0 | 0.07
|
||||
Modify | 0.096205 | 0.096205 | 0.096205 | 0.0 | 38.76
|
||||
Other | | 0.001425 | | | 0.57
|
||||
Pair | 0.11918 | 0.11918 | 0.11918 | 0.0 | 54.56
|
||||
Neigh | 0.0010314 | 0.0010314 | 0.0010314 | 0.0 | 0.47
|
||||
Comm | 0.0046197 | 0.0046197 | 0.0046197 | 0.0 | 2.11
|
||||
Output | 0.0001329 | 0.0001329 | 0.0001329 | 0.0 | 0.06
|
||||
Modify | 0.092616 | 0.092616 | 0.092616 | 0.0 | 42.40
|
||||
Other | | 0.0008616 | | | 0.39
|
||||
|
||||
Nlocal: 200 ave 200 max 200 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
@ -1,5 +1,6 @@
|
||||
LAMMPS (28 Mar 2023)
|
||||
LAMMPS (3 Aug 2023)
|
||||
Processor partition = 1
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
variable ibead uloop 99 pad
|
||||
|
||||
@ -17,7 +18,7 @@ Reading data file ...
|
||||
200 atoms
|
||||
reading velocities ...
|
||||
200 velocities
|
||||
read_data CPU = 0.001 seconds
|
||||
read_data CPU = 0.002 seconds
|
||||
|
||||
pair_coeff * * 0.00965188 3.4
|
||||
pair_modify shift yes
|
||||
@ -29,10 +30,7 @@ timestep 0.001
|
||||
velocity all create 0.0 ${ibead}
|
||||
velocity all create 0.0 02
|
||||
|
||||
fix 1 all pimd/langevin ensemble npt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 iso 1.0 barostat BZP taup 1.0 fixcom no
|
||||
|
||||
Initializing PIMD BZP barostat...
|
||||
The barostat mass is W = 2.3401256650800001e+01
|
||||
fix 1 all pimd/langevin method nmpimd ensemble npt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 iso 1.0 barostat BZP taup 1.0 fixcom no
|
||||
|
||||
thermo_style custom step temp f_1[*] vol press
|
||||
thermo 100
|
||||
@ -43,15 +41,6 @@ thermo_modify norm no
|
||||
|
||||
run 1000
|
||||
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
||||
|
||||
Initializing PI Langevin equation thermostat...
|
||||
Bead ID | omega | tau | c1 | c2
|
||||
0 0.00000000e+00 1.00000000e+00 9.99500125e-01 3.16148726e-02
|
||||
1 8.37986825e+01 5.96668092e-03 9.19616372e-01 3.92817678e-01
|
||||
2 1.18509233e+02 4.21908054e-03 8.88243614e-01 4.59372705e-01
|
||||
3 8.37986825e+01 5.96668092e-03 9.19616372e-01 3.92817678e-01
|
||||
PILE_L thermostat successfully initialized!
|
||||
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
@ -66,31 +55,31 @@ Neighbor list info ...
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.121 | 3.121 | 3.121 Mbytes
|
||||
Step Temp f_1[1] f_1[2] f_1[3] f_1[4] f_1[5] f_1[6] f_1[7] f_1[8] f_1[9] f_1[10] f_1[11] f_1[12] f_1[13] f_1[14] f_1[15] Volume Press
|
||||
0 0 0 11.920908 -7.3063682 4.3005229 -21.877018 -8.7249482 2.9571502 -1743.5332 -698.49808 -172.07477 0 0 0.033460054 -0.37064378 4.216227 13402.228 -167.65544
|
||||
100 483.61933 12.440028 11.405863 -7.7749671 42.886648 -23.396327 -1.980193 2.954003 -1888.0547 -1648.7118 -332.0298 -0.099139345 0.11500091 0.033044702 -0.3701566 42.83112 13235.861 606.14668
|
||||
200 452.03836 11.627678 11.47094 -8.2534927 41.690123 -22.521598 -4.273021 2.9600599 -1906.2904 -1609.02 -265.94404 -0.20527926 0.49305948 0.031504957 -0.36829556 41.729191 12619.125 583.5476
|
||||
300 470.25997 12.096389 11.739306 -8.3750153 43.180131 -21.755813 -7.7032433 2.9714114 -1968.7685 290.49656 251.72564 -0.21935745 0.56300721 0.029467915 -0.36568855 43.236828 11803.2 1152.6851
|
||||
400 459.46597 11.818737 12.502421 -8.5240576 49.109699 -24.824142 2.9744597 2.9794185 -2335.993 1368.7398 570.03286 -0.028366234 0.0094148316 0.028338146 -0.36416383 49.028096 11350.678 1381.0251
|
||||
500 442.73121 11.388273 11.19396 -8.6488583 45.427771 -22.825143 16.22356 2.9684828 -2113.91 -272.84753 185.53392 0.091614289 0.098205455 0.028793585 -0.36478567 45.368325 11533.101 1000.6119
|
||||
600 493.47034 12.693424 11.91335 -8.4625706 47.783726 -22.456104 6.837575 2.967236 -2023.8117 -918.27943 -2.4106994 0.093360761 0.10198539 0.029589188 -0.36584873 47.725157 11851.775 904.52944
|
||||
700 470.04548 12.090871 10.348757 -8.278182 42.626187 -20.571698 -5.7252564 2.9560528 -1806.9448 -1418.2247 -148.41657 0.075011202 0.065835696 0.030359455 -0.36685105 42.558523 12160.301 715.22796
|
||||
800 458.04928 11.782296 11.152029 -8.0926613 45.160336 -21.885719 -6.7745694 2.9575472 -1894.3641 -1329.3179 -136.42193 0.011114896 0.0014455064 0.030808183 -0.3674233 45.076543 12340.037 678.21261
|
||||
900 468.60547 12.05383 10.937315 -8.0319335 45.604542 -21.816625 5.586068 2.9578604 -1890.4653 -1271.1107 -111.89061 -0.020285587 0.0048148677 0.030774258 -0.36738033 45.521594 12326.448 735.24377
|
||||
1000 427.44192 10.99499 11.916587 -8.2229199 45.264242 -22.833545 6.9260573 2.960122 -2007.6188 -1179.7125 -70.907567 -0.062733519 0.046047757 0.030329191 -0.36681215 45.191633 12148.179 637.98311
|
||||
Loop time of 0.248186 on 1 procs for 1000 steps with 200 atoms
|
||||
0 0 0 11.920908 -7.3063682 4.3005229 3.3062167 -8.7249482 2.9571502 -1743.5332 -698.49808 -172.07477 0 0 0.033460054 -0.37064378 4.216227 13402.228 -167.65544
|
||||
100 483.61933 12.440028 11.405863 -7.7749671 42.886648 2.9263894 -1.980193 2.954003 -1888.0547 -1648.7118 -332.0298 -0.099139345 0.11500091 0.033044702 -0.3701566 42.83112 13235.861 606.14668
|
||||
200 452.03836 11.627678 11.47094 -8.2534927 41.690123 3.1450717 -4.273021 2.9600599 -1906.2904 -1609.02 -265.94404 -0.20527926 0.49305948 0.031504957 -0.36829556 41.729191 12619.125 583.5476
|
||||
300 470.25997 12.096389 11.739306 -8.3750153 43.180131 3.336518 -7.7032433 2.9714114 -1968.7685 290.49656 251.72564 -0.21935745 0.56300721 0.029467915 -0.36568855 43.236828 11803.2 1152.6851
|
||||
400 459.46597 11.818737 12.502421 -8.5240576 49.109699 2.5694358 2.9744597 2.9794185 -2335.993 1368.7398 570.03286 -0.028366234 0.0094148316 0.028338146 -0.36416383 49.028096 11350.678 1381.0251
|
||||
500 442.73121 11.388273 11.19396 -8.6488583 45.427771 3.0691855 16.22356 2.9684828 -2113.91 -272.84753 185.53392 0.091614289 0.098205455 0.028793585 -0.36478567 45.368325 11533.101 1000.6119
|
||||
600 493.47034 12.693424 11.91335 -8.4625706 47.783726 3.1614452 6.837575 2.967236 -2023.8117 -918.27943 -2.4106994 0.093360761 0.10198539 0.029589188 -0.36584873 47.725157 11851.775 904.52944
|
||||
700 470.04548 12.090871 10.348757 -8.278182 42.626187 3.6325468 -5.7252564 2.9560528 -1806.9448 -1418.2247 -148.41657 0.075011202 0.065835696 0.030359455 -0.36685105 42.558523 12160.301 715.22796
|
||||
800 458.04928 11.782296 11.152029 -8.0926613 45.160336 3.3040415 -6.7745694 2.9575472 -1894.3641 -1329.3179 -136.42193 0.011114896 0.0014455064 0.030808183 -0.3674233 45.076543 12340.037 678.21261
|
||||
900 468.60547 12.05383 10.937315 -8.0319335 45.604542 3.321315 5.586068 2.9578604 -1890.4653 -1271.1107 -111.89061 -0.020285587 0.0048148677 0.030774258 -0.36738033 45.521594 12326.448 735.24377
|
||||
1000 427.44192 10.99499 11.916587 -8.2229199 45.264242 3.0670849 6.9260573 2.960122 -2007.6188 -1179.7125 -70.907567 -0.062733519 0.046047757 0.030329191 -0.36681215 45.191633 12148.179 637.98311
|
||||
Loop time of 0.218435 on 1 procs for 1000 steps with 200 atoms
|
||||
|
||||
Performance: 348.126 ns/day, 0.069 hours/ns, 4029.238 timesteps/s, 805.848 katom-step/s
|
||||
99.5% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
Performance: 395.541 ns/day, 0.061 hours/ns, 4578.021 timesteps/s, 915.604 katom-step/s
|
||||
99.1% 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.14654 | 0.14654 | 0.14654 | 0.0 | 59.04
|
||||
Neigh | 0.00099986 | 0.00099986 | 0.00099986 | 0.0 | 0.40
|
||||
Comm | 0.0041628 | 0.0041628 | 0.0041628 | 0.0 | 1.68
|
||||
Output | 0.00018019 | 0.00018019 | 0.00018019 | 0.0 | 0.07
|
||||
Modify | 0.094878 | 0.094878 | 0.094878 | 0.0 | 38.23
|
||||
Other | | 0.001424 | | | 0.57
|
||||
Pair | 0.11791 | 0.11791 | 0.11791 | 0.0 | 53.98
|
||||
Neigh | 0.0010247 | 0.0010247 | 0.0010247 | 0.0 | 0.47
|
||||
Comm | 0.0035577 | 0.0035577 | 0.0035577 | 0.0 | 1.63
|
||||
Output | 0.00011003 | 0.00011003 | 0.00011003 | 0.0 | 0.05
|
||||
Modify | 0.09496 | 0.09496 | 0.09496 | 0.0 | 43.47
|
||||
Other | | 0.0008711 | | | 0.40
|
||||
|
||||
Nlocal: 200 ave 200 max 200 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
@ -1,5 +1,6 @@
|
||||
LAMMPS (28 Mar 2023)
|
||||
LAMMPS (3 Aug 2023)
|
||||
Processor partition = 2
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
variable ibead uloop 99 pad
|
||||
|
||||
@ -17,7 +18,7 @@ Reading data file ...
|
||||
200 atoms
|
||||
reading velocities ...
|
||||
200 velocities
|
||||
read_data CPU = 0.001 seconds
|
||||
read_data CPU = 0.002 seconds
|
||||
|
||||
pair_coeff * * 0.00965188 3.4
|
||||
pair_modify shift yes
|
||||
@ -29,10 +30,7 @@ timestep 0.001
|
||||
velocity all create 0.0 ${ibead}
|
||||
velocity all create 0.0 03
|
||||
|
||||
fix 1 all pimd/langevin ensemble npt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 iso 1.0 barostat BZP taup 1.0 fixcom no
|
||||
|
||||
Initializing PIMD BZP barostat...
|
||||
The barostat mass is W = 2.3401256650800001e+01
|
||||
fix 1 all pimd/langevin method nmpimd ensemble npt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 iso 1.0 barostat BZP taup 1.0 fixcom no
|
||||
|
||||
thermo_style custom step temp f_1[*] vol press
|
||||
thermo 100
|
||||
@ -43,15 +41,6 @@ thermo_modify norm no
|
||||
|
||||
run 1000
|
||||
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
||||
|
||||
Initializing PI Langevin equation thermostat...
|
||||
Bead ID | omega | tau | c1 | c2
|
||||
0 0.00000000e+00 1.00000000e+00 9.99500125e-01 3.16148726e-02
|
||||
1 8.37986825e+01 5.96668092e-03 9.19616372e-01 3.92817678e-01
|
||||
2 1.18509233e+02 4.21908054e-03 8.88243614e-01 4.59372705e-01
|
||||
3 8.37986825e+01 5.96668092e-03 9.19616372e-01 3.92817678e-01
|
||||
PILE_L thermostat successfully initialized!
|
||||
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
@ -66,31 +55,31 @@ Neighbor list info ...
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.121 | 3.121 | 3.121 Mbytes
|
||||
Step Temp f_1[1] f_1[2] f_1[3] f_1[4] f_1[5] f_1[6] f_1[7] f_1[8] f_1[9] f_1[10] f_1[11] f_1[12] f_1[13] f_1[14] f_1[15] Volume Press
|
||||
0 0 0 10.862314 -7.320388 4.3005229 -21.877018 -8.7249482 2.9571502 -1743.5332 -698.49808 -172.07477 0 0 0.033460054 -0.37064378 4.216227 13402.228 -175.34503
|
||||
100 455.18121 11.708521 11.48472 -7.8033686 42.886648 -23.396327 -1.980193 2.954003 -1888.0547 -1648.7118 -332.0298 -0.099139345 0.11500091 0.033044702 -0.3701566 42.83112 13235.861 526.41632
|
||||
200 460.81997 11.853566 10.817157 -8.2276485 41.690123 -22.521598 -4.273021 2.9600599 -1906.2904 -1609.02 -265.94404 -0.20527926 0.49305948 0.031504957 -0.36829556 41.729191 12619.125 615.80924
|
||||
300 481.48652 12.385166 10.035423 -8.3866916 43.180131 -21.755813 -7.7032433 2.9714114 -1968.7685 290.49656 251.72564 -0.21935745 0.56300721 0.029467915 -0.36568855 43.236828 11803.2 1169.2917
|
||||
400 487.3584 12.536208 11.766522 -8.3643382 49.109699 -24.824142 2.9744597 2.9794185 -2335.993 1368.7398 570.03286 -0.028366234 0.0094148316 0.028338146 -0.36416383 49.028096 11350.678 1574.1427
|
||||
500 446.36019 11.48162 12.144202 -8.680266 45.427771 -22.825143 16.22356 2.9684828 -2113.91 -272.84753 185.53392 0.091614289 0.098205455 0.028793585 -0.36478567 45.368325 11533.101 979.68395
|
||||
600 500.3783 12.871115 11.075008 -8.47833 47.783726 -22.456104 6.837575 2.967236 -2023.8117 -918.27943 -2.4106994 0.093360761 0.10198539 0.029589188 -0.36584873 47.725157 11851.775 912.39361
|
||||
700 435.40634 11.199857 10.923558 -8.3090105 42.626187 -20.571698 -5.7252564 2.9560528 -1806.9448 -1418.2247 -148.41657 0.075011202 0.065835696 0.030359455 -0.36685105 42.558523 12160.301 617.20857
|
||||
800 446.82793 11.493652 11.599712 -8.0900498 45.160336 -21.885719 -6.7745694 2.9575472 -1894.3641 -1329.3179 -136.42193 0.011114896 0.0014455064 0.030808183 -0.3674233 45.076543 12340.037 652.13243
|
||||
900 448.28506 11.531133 12.130739 -8.0810557 45.604542 -21.816625 5.586068 2.9578604 -1890.4653 -1271.1107 -111.89061 -0.020285587 0.0048148677 0.030774258 -0.36738033 45.521594 12326.448 674.68073
|
||||
1000 440.94913 11.342433 10.765654 -8.1419484 45.264242 -22.833545 6.9260573 2.960122 -2007.6188 -1179.7125 -70.907567 -0.062733519 0.046047757 0.030329191 -0.36681215 45.191633 12148.179 730.67128
|
||||
Loop time of 0.248185 on 1 procs for 1000 steps with 200 atoms
|
||||
0 0 0 10.862314 -7.320388 4.3005229 3.3062167 -8.7249482 2.9571502 -1743.5332 -698.49808 -172.07477 0 0 0.033460054 -0.37064378 4.216227 13402.228 -175.34503
|
||||
100 455.18121 11.708521 11.48472 -7.8033686 42.886648 2.9263894 -1.980193 2.954003 -1888.0547 -1648.7118 -332.0298 -0.099139345 0.11500091 0.033044702 -0.3701566 42.83112 13235.861 526.41632
|
||||
200 460.81997 11.853566 10.817157 -8.2276485 41.690123 3.1450717 -4.273021 2.9600599 -1906.2904 -1609.02 -265.94404 -0.20527926 0.49305948 0.031504957 -0.36829556 41.729191 12619.125 615.80924
|
||||
300 481.48652 12.385166 10.035423 -8.3866916 43.180131 3.336518 -7.7032433 2.9714114 -1968.7685 290.49656 251.72564 -0.21935745 0.56300721 0.029467915 -0.36568855 43.236828 11803.2 1169.2917
|
||||
400 487.3584 12.536208 11.766522 -8.3643382 49.109699 2.5694358 2.9744597 2.9794185 -2335.993 1368.7398 570.03286 -0.028366234 0.0094148316 0.028338146 -0.36416383 49.028096 11350.678 1574.1427
|
||||
500 446.36019 11.48162 12.144202 -8.680266 45.427771 3.0691855 16.22356 2.9684828 -2113.91 -272.84753 185.53392 0.091614289 0.098205455 0.028793585 -0.36478567 45.368325 11533.101 979.68395
|
||||
600 500.3783 12.871115 11.075008 -8.47833 47.783726 3.1614452 6.837575 2.967236 -2023.8117 -918.27943 -2.4106994 0.093360761 0.10198539 0.029589188 -0.36584873 47.725157 11851.775 912.39361
|
||||
700 435.40634 11.199857 10.923558 -8.3090105 42.626187 3.6325468 -5.7252564 2.9560528 -1806.9448 -1418.2247 -148.41657 0.075011202 0.065835696 0.030359455 -0.36685105 42.558523 12160.301 617.20857
|
||||
800 446.82793 11.493652 11.599712 -8.0900498 45.160336 3.3040415 -6.7745694 2.9575472 -1894.3641 -1329.3179 -136.42193 0.011114896 0.0014455064 0.030808183 -0.3674233 45.076543 12340.037 652.13243
|
||||
900 448.28506 11.531133 12.130739 -8.0810557 45.604542 3.321315 5.586068 2.9578604 -1890.4653 -1271.1107 -111.89061 -0.020285587 0.0048148677 0.030774258 -0.36738033 45.521594 12326.448 674.68073
|
||||
1000 440.94913 11.342433 10.765654 -8.1419484 45.264242 3.0670849 6.9260573 2.960122 -2007.6188 -1179.7125 -70.907567 -0.062733519 0.046047757 0.030329191 -0.36681215 45.191633 12148.179 730.67128
|
||||
Loop time of 0.218435 on 1 procs for 1000 steps with 200 atoms
|
||||
|
||||
Performance: 348.128 ns/day, 0.069 hours/ns, 4029.259 timesteps/s, 805.852 katom-step/s
|
||||
97.8% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
Performance: 395.541 ns/day, 0.061 hours/ns, 4578.019 timesteps/s, 915.604 katom-step/s
|
||||
99.1% 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.14702 | 0.14702 | 0.14702 | 0.0 | 59.24
|
||||
Neigh | 0.0010003 | 0.0010003 | 0.0010003 | 0.0 | 0.40
|
||||
Comm | 0.0039821 | 0.0039821 | 0.0039821 | 0.0 | 1.60
|
||||
Output | 0.00023527 | 0.00023527 | 0.00023527 | 0.0 | 0.09
|
||||
Modify | 0.094519 | 0.094519 | 0.094519 | 0.0 | 38.08
|
||||
Other | | 0.001427 | | | 0.58
|
||||
Pair | 0.12079 | 0.12079 | 0.12079 | 0.0 | 55.30
|
||||
Neigh | 0.0010224 | 0.0010224 | 0.0010224 | 0.0 | 0.47
|
||||
Comm | 0.0035478 | 0.0035478 | 0.0035478 | 0.0 | 1.62
|
||||
Output | 0.00010889 | 0.00010889 | 0.00010889 | 0.0 | 0.05
|
||||
Modify | 0.092098 | 0.092098 | 0.092098 | 0.0 | 42.16
|
||||
Other | | 0.0008684 | | | 0.40
|
||||
|
||||
Nlocal: 200 ave 200 max 200 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
@ -1,5 +1,6 @@
|
||||
LAMMPS (28 Mar 2023)
|
||||
LAMMPS (3 Aug 2023)
|
||||
Processor partition = 3
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
variable ibead uloop 99 pad
|
||||
|
||||
@ -29,10 +30,7 @@ timestep 0.001
|
||||
velocity all create 0.0 ${ibead}
|
||||
velocity all create 0.0 04
|
||||
|
||||
fix 1 all pimd/langevin ensemble npt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 iso 1.0 barostat BZP taup 1.0 fixcom no
|
||||
|
||||
Initializing PIMD BZP barostat...
|
||||
The barostat mass is W = 2.3401256650800001e+01
|
||||
fix 1 all pimd/langevin method nmpimd ensemble npt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 iso 1.0 barostat BZP taup 1.0 fixcom no
|
||||
|
||||
thermo_style custom step temp f_1[*] vol press
|
||||
thermo 100
|
||||
@ -43,15 +41,6 @@ thermo_modify norm no
|
||||
|
||||
run 1000
|
||||
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
||||
|
||||
Initializing PI Langevin equation thermostat...
|
||||
Bead ID | omega | tau | c1 | c2
|
||||
0 0.00000000e+00 1.00000000e+00 9.99500125e-01 3.16148726e-02
|
||||
1 8.37986825e+01 5.96668092e-03 9.19616372e-01 3.92817678e-01
|
||||
2 1.18509233e+02 4.21908054e-03 8.88243614e-01 4.59372705e-01
|
||||
3 8.37986825e+01 5.96668092e-03 9.19616372e-01 3.92817678e-01
|
||||
PILE_L thermostat successfully initialized!
|
||||
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
@ -66,31 +55,31 @@ Neighbor list info ...
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.121 | 3.121 | 3.121 Mbytes
|
||||
Step Temp f_1[1] f_1[2] f_1[3] f_1[4] f_1[5] f_1[6] f_1[7] f_1[8] f_1[9] f_1[10] f_1[11] f_1[12] f_1[13] f_1[14] f_1[15] Volume Press
|
||||
0 0 0 10.794425 -7.3457072 4.3005229 -21.877018 -8.7249482 2.9571502 -1743.5332 -698.49808 -172.07477 0 0 0.033460054 -0.37064378 4.216227 13402.228 -191.02389
|
||||
100 426.01705 10.958338 12.206372 -7.8040582 42.886648 -23.396327 -1.980193 2.954003 -1888.0547 -1648.7118 -332.0298 -0.099139345 0.11500091 0.033044702 -0.3701566 42.83112 13235.861 464.39271
|
||||
200 414.52703 10.662783 11.934129 -8.2331312 41.690123 -22.521598 -4.273021 2.9600599 -1906.2904 -1609.02 -265.94404 -0.20527926 0.49305948 0.031504957 -0.36829556 41.729191 12619.125 502.87052
|
||||
300 424.85622 10.928478 11.681713 -8.357621 43.180131 -21.755813 -7.7032433 2.9714114 -1968.7685 290.49656 251.72564 -0.21935745 0.56300721 0.029467915 -0.36568855 43.236828 11803.2 1058.1162
|
||||
400 485.80103 12.496148 12.255827 -8.3658975 49.109699 -24.824142 2.9744597 2.9794185 -2335.993 1368.7398 570.03286 -0.028366234 0.0094148316 0.028338146 -0.36416383 49.028096 11350.678 1570.2486
|
||||
500 462.99006 11.909386 11.187609 -8.6934698 45.427771 -22.825143 16.22356 2.9684828 -2113.91 -272.84753 185.53392 0.091614289 0.098205455 0.028793585 -0.36478567 45.368325 11533.101 1014.2134
|
||||
600 465.24407 11.967366 11.168375 -8.4422887 47.783726 -22.456104 6.837575 2.967236 -2023.8117 -918.27943 -2.4106994 0.093360761 0.10198539 0.029589188 -0.36584873 47.725157 11851.775 864.12413
|
||||
700 426.16111 10.962044 11.000011 -8.2855512 42.626187 -20.571698 -5.7252564 2.9560528 -1806.9448 -1418.2247 -148.41657 0.075011202 0.065835696 0.030359455 -0.36685105 42.558523 12160.301 614.76939
|
||||
800 454.53159 11.691811 10.834606 -8.0654281 45.160336 -21.885719 -6.7745694 2.9575472 -1894.3641 -1329.3179 -136.42193 0.011114896 0.0014455064 0.030808183 -0.3674233 45.076543 12340.037 684.85907
|
||||
900 441.72064 11.362278 10.4492 -8.0786302 45.604542 -21.816625 5.586068 2.9578604 -1890.4653 -1271.1107 -111.89061 -0.020285587 0.0048148677 0.030774258 -0.36738033 45.521594 12326.448 659.68525
|
||||
1000 429.90929 11.058457 11.851933 -8.1578394 45.264242 -22.833545 6.9260573 2.960122 -2007.6188 -1179.7125 -70.907567 -0.062733519 0.046047757 0.030329191 -0.36681215 45.191633 12148.179 698.73278
|
||||
Loop time of 0.248175 on 1 procs for 1000 steps with 200 atoms
|
||||
0 0 0 10.794425 -7.3457072 4.3005229 3.3062167 -8.7249482 2.9571502 -1743.5332 -698.49808 -172.07477 0 0 0.033460054 -0.37064378 4.216227 13402.228 -191.02389
|
||||
100 426.01705 10.958338 12.206372 -7.8040582 42.886648 2.9263894 -1.980193 2.954003 -1888.0547 -1648.7118 -332.0298 -0.099139345 0.11500091 0.033044702 -0.3701566 42.83112 13235.861 464.39271
|
||||
200 414.52703 10.662783 11.934129 -8.2331312 41.690123 3.1450717 -4.273021 2.9600599 -1906.2904 -1609.02 -265.94404 -0.20527926 0.49305948 0.031504957 -0.36829556 41.729191 12619.125 502.87052
|
||||
300 424.85622 10.928478 11.681713 -8.357621 43.180131 3.336518 -7.7032433 2.9714114 -1968.7685 290.49656 251.72564 -0.21935745 0.56300721 0.029467915 -0.36568855 43.236828 11803.2 1058.1162
|
||||
400 485.80103 12.496148 12.255827 -8.3658975 49.109699 2.5694358 2.9744597 2.9794185 -2335.993 1368.7398 570.03286 -0.028366234 0.0094148316 0.028338146 -0.36416383 49.028096 11350.678 1570.2486
|
||||
500 462.99006 11.909386 11.187609 -8.6934698 45.427771 3.0691855 16.22356 2.9684828 -2113.91 -272.84753 185.53392 0.091614289 0.098205455 0.028793585 -0.36478567 45.368325 11533.101 1014.2134
|
||||
600 465.24407 11.967366 11.168375 -8.4422887 47.783726 3.1614452 6.837575 2.967236 -2023.8117 -918.27943 -2.4106994 0.093360761 0.10198539 0.029589188 -0.36584873 47.725157 11851.775 864.12413
|
||||
700 426.16111 10.962044 11.000011 -8.2855512 42.626187 3.6325468 -5.7252564 2.9560528 -1806.9448 -1418.2247 -148.41657 0.075011202 0.065835696 0.030359455 -0.36685105 42.558523 12160.301 614.76939
|
||||
800 454.53159 11.691811 10.834606 -8.0654281 45.160336 3.3040415 -6.7745694 2.9575472 -1894.3641 -1329.3179 -136.42193 0.011114896 0.0014455064 0.030808183 -0.3674233 45.076543 12340.037 684.85907
|
||||
900 441.72064 11.362278 10.4492 -8.0786302 45.604542 3.321315 5.586068 2.9578604 -1890.4653 -1271.1107 -111.89061 -0.020285587 0.0048148677 0.030774258 -0.36738033 45.521594 12326.448 659.68525
|
||||
1000 429.90929 11.058457 11.851933 -8.1578394 45.264242 3.0670849 6.9260573 2.960122 -2007.6188 -1179.7125 -70.907567 -0.062733519 0.046047757 0.030329191 -0.36681215 45.191633 12148.179 698.73278
|
||||
Loop time of 0.218441 on 1 procs for 1000 steps with 200 atoms
|
||||
|
||||
Performance: 348.141 ns/day, 0.069 hours/ns, 4029.409 timesteps/s, 805.882 katom-step/s
|
||||
98.1% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
Performance: 395.530 ns/day, 0.061 hours/ns, 4577.899 timesteps/s, 915.580 katom-step/s
|
||||
99.8% 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.14919 | 0.14919 | 0.14919 | 0.0 | 60.12
|
||||
Neigh | 0.00099112 | 0.00099112 | 0.00099112 | 0.0 | 0.40
|
||||
Comm | 0.0040992 | 0.0040992 | 0.0040992 | 0.0 | 1.65
|
||||
Output | 0.0001723 | 0.0001723 | 0.0001723 | 0.0 | 0.07
|
||||
Modify | 0.092299 | 0.092299 | 0.092299 | 0.0 | 37.19
|
||||
Other | | 0.00142 | | | 0.57
|
||||
Pair | 0.11655 | 0.11655 | 0.11655 | 0.0 | 53.35
|
||||
Neigh | 0.0010236 | 0.0010236 | 0.0010236 | 0.0 | 0.47
|
||||
Comm | 0.0035622 | 0.0035622 | 0.0035622 | 0.0 | 1.63
|
||||
Output | 0.0001071 | 0.0001071 | 0.0001071 | 0.0 | 0.05
|
||||
Modify | 0.096348 | 0.096348 | 0.096348 | 0.0 | 44.11
|
||||
Other | | 0.0008537 | | | 0.39
|
||||
|
||||
Nlocal: 200 ave 200 max 200 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
@ -0,0 +1,2 @@
|
||||
LAMMPS (3 Aug 2023)
|
||||
Running on 4 partitions of processors
|
||||
@ -0,0 +1,103 @@
|
||||
LAMMPS (3 Aug 2023)
|
||||
Processor partition = 0
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
variable ibead uloop 99 pad
|
||||
|
||||
units metal
|
||||
atom_style atomic
|
||||
atom_modify map yes
|
||||
boundary p p p
|
||||
pair_style lj/cut 9.5251
|
||||
read_data data.metalnpt${ibead}
|
||||
read_data data.metalnpt01
|
||||
Reading data file ...
|
||||
orthogonal box = (-11.876697 -11.876697 -11.876697) to (11.876697 11.876697 11.876697)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
200 atoms
|
||||
reading velocities ...
|
||||
200 velocities
|
||||
read_data CPU = 0.001 seconds
|
||||
|
||||
pair_coeff * * 0.00965188 3.4
|
||||
pair_modify shift yes
|
||||
|
||||
mass 1 39.948
|
||||
|
||||
timestep 0.001
|
||||
|
||||
velocity all create 0.0 ${ibead}
|
||||
velocity all create 0.0 01
|
||||
|
||||
fix 1 all pimd/langevin method pimd ensemble nvt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 taup 1.0 fixcom no
|
||||
|
||||
thermo_style custom step temp f_1[*] vol press
|
||||
thermo 100
|
||||
thermo_modify norm no
|
||||
|
||||
# dump dcd all custom 100 ${ibead}.dcd id type xu yu zu vx vy vz ix iy iz fx fy fz
|
||||
# dump_modify dcd sort id format line "%d %d %.16f %.16f %.16f %.16f %.16f %.16f %d %d %d %.16f %.16f %.16f"
|
||||
|
||||
run 1000
|
||||
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
||||
Initializing PI Langevin equation thermostat...
|
||||
Bead ID | omega | tau | c1 | c2
|
||||
0 5.92546167e+01 1.00000000e+00 9.99500125e-01 3.16148726e-02
|
||||
1 5.92546167e+01 1.00000000e+00 9.99500125e-01 3.16148726e-02
|
||||
2 5.92546167e+01 1.00000000e+00 9.99500125e-01 3.16148726e-02
|
||||
3 5.92546167e+01 1.00000000e+00 9.99500125e-01 3.16148726e-02
|
||||
PILE_L thermostat successfully initialized!
|
||||
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 11.5251
|
||||
ghost atom cutoff = 11.5251
|
||||
binsize = 5.76255, bins = 5 5 5
|
||||
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
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.121 | 3.121 | 3.121 Mbytes
|
||||
Step Temp f_1[1] f_1[2] f_1[3] f_1[4] f_1[5] f_1[6] f_1[7] f_1[8] f_1[9] f_1[10] Volume Press
|
||||
0 0 0 8.8893303 -7.3046601 4.3005229 3.3062167 0 0 -1743.5332 0 0 13402.228 -164.47373
|
||||
100 248.24141 6.3854564 4.1458616 -7.7546467 9.6829291 3.3062167 0 0 -1743.5332 0.00061164884 127.22547 13402.228 26.894568
|
||||
200 346.2569 8.9066861 2.6427185 -7.8943744 14.016847 3.3062167 0 0 -1743.5332 0.00088274242 177.45909 13402.228 91.225638
|
||||
300 217.65314 5.5986414 7.0223362 -7.788449 18.162833 3.3062167 0 0 -1743.5332 0.00054181173 111.54876 13402.228 -125.00786
|
||||
400 266.83825 6.8638187 6.2507813 -7.7241546 21.628032 3.3062167 0 0 -1743.5332 0.0007209203 136.75648 13402.228 21.104834
|
||||
500 342.40379 8.8075736 5.1959052 -7.7020799 25.668758 3.3062167 0 0 -1743.5332 0.00087137898 175.48435 13402.228 208.60351
|
||||
600 280.37754 7.2120867 8.0025846 -7.5954127 28.570788 3.3062167 0 0 -1743.5332 0.00072432598 143.69546 13402.228 162.09838
|
||||
700 377.11625 9.700474 6.0049074 -7.5861377 30.034627 3.3062167 0 0 -1743.5332 0.00092377441 193.27472 13402.228 389.35575
|
||||
800 378.36221 9.7325237 6.1704761 -7.6170017 31.447502 3.3062167 0 0 -1743.5332 0.00097254954 193.91329 13402.228 387.71781
|
||||
900 271.99864 6.9965581 9.037081 -7.4781664 32.906719 3.3062167 0 0 -1743.5332 0.00074024142 139.40121 13402.228 266.3664
|
||||
1000 362.4753 9.3238683 8.0266514 -7.4835536 34.914285 3.3062167 0 0 -1743.5332 0.00088800624 185.77114 13402.228 433.67079
|
||||
Loop time of 0.166656 on 1 procs for 1000 steps with 200 atoms
|
||||
|
||||
Performance: 518.435 ns/day, 0.046 hours/ns, 6000.401 timesteps/s, 1.200 Matom-step/s
|
||||
99.5% 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.10478 | 0.10478 | 0.10478 | 0.0 | 62.87
|
||||
Neigh | 0.00096007 | 0.00096007 | 0.00096007 | 0.0 | 0.58
|
||||
Comm | 0.0035065 | 0.0035065 | 0.0035065 | 0.0 | 2.10
|
||||
Output | 0.0001037 | 0.0001037 | 0.0001037 | 0.0 | 0.06
|
||||
Modify | 0.056454 | 0.056454 | 0.056454 | 0.0 | 33.87
|
||||
Other | | 0.0008515 | | | 0.51
|
||||
|
||||
Nlocal: 200 ave 200 max 200 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1360 ave 1360 max 1360 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 9544 ave 9544 max 9544 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 9544
|
||||
Ave neighs/atom = 47.72
|
||||
Neighbor list builds = 4
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
@ -0,0 +1,95 @@
|
||||
LAMMPS (3 Aug 2023)
|
||||
Processor partition = 1
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
variable ibead uloop 99 pad
|
||||
|
||||
units metal
|
||||
atom_style atomic
|
||||
atom_modify map yes
|
||||
boundary p p p
|
||||
pair_style lj/cut 9.5251
|
||||
read_data data.metalnpt${ibead}
|
||||
read_data data.metalnpt02
|
||||
Reading data file ...
|
||||
orthogonal box = (-11.876697 -11.876697 -11.876697) to (11.876697 11.876697 11.876697)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
200 atoms
|
||||
reading velocities ...
|
||||
200 velocities
|
||||
read_data CPU = 0.001 seconds
|
||||
|
||||
pair_coeff * * 0.00965188 3.4
|
||||
pair_modify shift yes
|
||||
|
||||
mass 1 39.948
|
||||
|
||||
timestep 0.001
|
||||
|
||||
velocity all create 0.0 ${ibead}
|
||||
velocity all create 0.0 02
|
||||
|
||||
fix 1 all pimd/langevin method pimd ensemble nvt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 taup 1.0 fixcom no
|
||||
|
||||
thermo_style custom step temp f_1[*] vol press
|
||||
thermo 100
|
||||
thermo_modify norm no
|
||||
|
||||
# dump dcd all custom 100 ${ibead}.dcd id type xu yu zu vx vy vz ix iy iz fx fy fz
|
||||
# dump_modify dcd sort id format line "%d %d %.16f %.16f %.16f %.16f %.16f %.16f %d %d %d %.16f %.16f %.16f"
|
||||
|
||||
run 1000
|
||||
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 11.5251
|
||||
ghost atom cutoff = 11.5251
|
||||
binsize = 5.76255, bins = 5 5 5
|
||||
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
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.121 | 3.121 | 3.121 Mbytes
|
||||
Step Temp f_1[1] f_1[2] f_1[3] f_1[4] f_1[5] f_1[6] f_1[7] f_1[8] f_1[9] f_1[10] Volume Press
|
||||
0 0 0 8.4854554 -7.3063682 4.3005229 3.3062167 0 0 -1743.5332 0 0 13402.228 -167.65544
|
||||
100 231.55472 5.9562285 3.9188988 -7.7552569 9.6829291 3.3062167 0 0 -1743.5332 0.00061164884 127.22547 13402.228 -9.7693407
|
||||
200 366.33366 9.423116 2.3606144 -7.8893287 14.016847 3.3062167 0 0 -1743.5332 0.00088274242 177.45909 13402.228 131.05061
|
||||
300 213.74457 5.4981021 6.4391043 -7.7947526 18.162833 3.3062167 0 0 -1743.5332 0.00054181173 111.54876 13402.228 -136.92734
|
||||
400 273.60832 7.0379636 5.6777233 -7.7709858 21.628032 3.3062167 0 0 -1743.5332 0.0007209203 136.75648 13402.228 -0.14681392
|
||||
500 338.99655 8.7199299 5.4335645 -7.7194465 25.668758 3.3062167 0 0 -1743.5332 0.00087137898 175.48435 13402.228 190.1705
|
||||
600 298.58126 7.6803369 7.2512164 -7.5741948 28.570788 3.3062167 0 0 -1743.5332 0.00072432598 143.69546 13402.228 226.78095
|
||||
700 352.53291 9.0681226 5.4845895 -7.5875298 30.034627 3.3062167 0 0 -1743.5332 0.00092377441 193.27472 13402.228 335.39327
|
||||
800 389.70585 10.024313 5.143907 -7.6218106 31.447502 3.3062167 0 0 -1743.5332 0.00097254954 193.91329 13402.228 409.36108
|
||||
900 285.3019 7.3387547 7.6228894 -7.5140003 32.906719 3.3062167 0 0 -1743.5332 0.00074024142 139.40121 13402.228 266.93105
|
||||
1000 345.35667 8.8835299 6.9652602 -7.5180013 34.914285 3.3062167 0 0 -1743.5332 0.00088800624 185.77114 13402.228 368.83819
|
||||
Loop time of 0.16666 on 1 procs for 1000 steps with 200 atoms
|
||||
|
||||
Performance: 518.420 ns/day, 0.046 hours/ns, 6000.230 timesteps/s, 1.200 Matom-step/s
|
||||
99.8% 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.10798 | 0.10798 | 0.10798 | 0.0 | 64.79
|
||||
Neigh | 0.00097784 | 0.00097784 | 0.00097784 | 0.0 | 0.59
|
||||
Comm | 0.0035304 | 0.0035304 | 0.0035304 | 0.0 | 2.12
|
||||
Output | 8.5625e-05 | 8.5625e-05 | 8.5625e-05 | 0.0 | 0.05
|
||||
Modify | 0.05322 | 0.05322 | 0.05322 | 0.0 | 31.93
|
||||
Other | | 0.0008694 | | | 0.52
|
||||
|
||||
Nlocal: 200 ave 200 max 200 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1360 ave 1360 max 1360 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 9552 ave 9552 max 9552 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 9552
|
||||
Ave neighs/atom = 47.76
|
||||
Neighbor list builds = 4
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
@ -0,0 +1,95 @@
|
||||
LAMMPS (3 Aug 2023)
|
||||
Processor partition = 2
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
variable ibead uloop 99 pad
|
||||
|
||||
units metal
|
||||
atom_style atomic
|
||||
atom_modify map yes
|
||||
boundary p p p
|
||||
pair_style lj/cut 9.5251
|
||||
read_data data.metalnpt${ibead}
|
||||
read_data data.metalnpt03
|
||||
Reading data file ...
|
||||
orthogonal box = (-11.876697 -11.876697 -11.876697) to (11.876697 11.876697 11.876697)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
200 atoms
|
||||
reading velocities ...
|
||||
200 velocities
|
||||
read_data CPU = 0.001 seconds
|
||||
|
||||
pair_coeff * * 0.00965188 3.4
|
||||
pair_modify shift yes
|
||||
|
||||
mass 1 39.948
|
||||
|
||||
timestep 0.001
|
||||
|
||||
velocity all create 0.0 ${ibead}
|
||||
velocity all create 0.0 03
|
||||
|
||||
fix 1 all pimd/langevin method pimd ensemble nvt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 taup 1.0 fixcom no
|
||||
|
||||
thermo_style custom step temp f_1[*] vol press
|
||||
thermo 100
|
||||
thermo_modify norm no
|
||||
|
||||
# dump dcd all custom 100 ${ibead}.dcd id type xu yu zu vx vy vz ix iy iz fx fy fz
|
||||
# dump_modify dcd sort id format line "%d %d %.16f %.16f %.16f %.16f %.16f %.16f %d %d %d %.16f %.16f %.16f"
|
||||
|
||||
run 1000
|
||||
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 11.5251
|
||||
ghost atom cutoff = 11.5251
|
||||
binsize = 5.76255, bins = 5 5 5
|
||||
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
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.121 | 3.121 | 3.121 Mbytes
|
||||
Step Temp f_1[1] f_1[2] f_1[3] f_1[4] f_1[5] f_1[6] f_1[7] f_1[8] f_1[9] f_1[10] Volume Press
|
||||
0 0 0 8.4016332 -7.320388 4.3005229 3.3062167 0 0 -1743.5332 0 0 13402.228 -175.34503
|
||||
100 235.06814 6.0466034 4.1185166 -7.7660023 9.6829291 3.3062167 0 0 -1743.5332 0.00061164884 127.22547 13402.228 -7.6578222
|
||||
200 341.9927 8.7969992 2.7767151 -7.9109058 14.016847 3.3062167 0 0 -1743.5332 0.00088274242 177.45909 13402.228 69.587081
|
||||
300 206.29873 5.3065745 7.3388955 -7.7440046 18.162833 3.3062167 0 0 -1743.5332 0.00054181173 111.54876 13402.228 -118.3143
|
||||
400 305.56268 7.8599181 5.7681208 -7.7110516 21.628032 3.3062167 0 0 -1743.5332 0.0007209203 136.75648 13402.228 107.63706
|
||||
500 313.47536 8.0634543 5.5086382 -7.7030371 25.668758 3.3062167 0 0 -1743.5332 0.00087137898 175.48435 13402.228 145.14899
|
||||
600 258.53638 6.6502715 8.1299001 -7.6530176 28.570788 3.3062167 0 0 -1743.5332 0.00072432598 143.69546 13402.228 92.36234
|
||||
700 357.63679 9.1994085 6.539048 -7.6186515 30.034627 3.3062167 0 0 -1743.5332 0.00092377441 193.27472 13402.228 329.17147
|
||||
800 391.32883 10.066061 5.7809035 -7.6148923 31.447502 3.3062167 0 0 -1743.5332 0.00097254954 193.91329 13402.228 415.13205
|
||||
900 308.61185 7.9383512 8.9544585 -7.4803275 32.906719 3.3062167 0 0 -1743.5332 0.00074024142 139.40121 13402.228 341.46691
|
||||
1000 317.70376 8.1722204 7.3013798 -7.4667312 34.914285 3.3062167 0 0 -1743.5332 0.00088800624 185.77114 13402.228 352.92253
|
||||
Loop time of 0.16666 on 1 procs for 1000 steps with 200 atoms
|
||||
|
||||
Performance: 518.420 ns/day, 0.046 hours/ns, 6000.235 timesteps/s, 1.200 Matom-step/s
|
||||
98.6% 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.10509 | 0.10509 | 0.10509 | 0.0 | 63.06
|
||||
Neigh | 0.00096379 | 0.00096379 | 0.00096379 | 0.0 | 0.58
|
||||
Comm | 0.0035557 | 0.0035557 | 0.0035557 | 0.0 | 2.13
|
||||
Output | 7.8072e-05 | 7.8072e-05 | 7.8072e-05 | 0.0 | 0.05
|
||||
Modify | 0.05611 | 0.05611 | 0.05611 | 0.0 | 33.67
|
||||
Other | | 0.0008601 | | | 0.52
|
||||
|
||||
Nlocal: 200 ave 200 max 200 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1364 ave 1364 max 1364 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 9545 ave 9545 max 9545 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 9545
|
||||
Ave neighs/atom = 47.725
|
||||
Neighbor list builds = 4
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
@ -0,0 +1,95 @@
|
||||
LAMMPS (3 Aug 2023)
|
||||
Processor partition = 3
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
variable ibead uloop 99 pad
|
||||
|
||||
units metal
|
||||
atom_style atomic
|
||||
atom_modify map yes
|
||||
boundary p p p
|
||||
pair_style lj/cut 9.5251
|
||||
read_data data.metalnpt${ibead}
|
||||
read_data data.metalnpt04
|
||||
Reading data file ...
|
||||
orthogonal box = (-11.876697 -11.876697 -11.876697) to (11.876697 11.876697 11.876697)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
reading atoms ...
|
||||
200 atoms
|
||||
reading velocities ...
|
||||
200 velocities
|
||||
read_data CPU = 0.001 seconds
|
||||
|
||||
pair_coeff * * 0.00965188 3.4
|
||||
pair_modify shift yes
|
||||
|
||||
mass 1 39.948
|
||||
|
||||
timestep 0.001
|
||||
|
||||
velocity all create 0.0 ${ibead}
|
||||
velocity all create 0.0 04
|
||||
|
||||
fix 1 all pimd/langevin method pimd ensemble nvt integrator obabo thermostat PILE_L 1234 tau 1.0 temp 113.15 taup 1.0 fixcom no
|
||||
|
||||
thermo_style custom step temp f_1[*] vol press
|
||||
thermo 100
|
||||
thermo_modify norm no
|
||||
|
||||
# dump dcd all custom 100 ${ibead}.dcd id type xu yu zu vx vy vz ix iy iz fx fy fz
|
||||
# dump_modify dcd sort id format line "%d %d %.16f %.16f %.16f %.16f %.16f %.16f %d %d %d %.16f %.16f %.16f"
|
||||
|
||||
run 1000
|
||||
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
||||
Neighbor list info ...
|
||||
update: every = 1 steps, delay = 0 steps, check = yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 11.5251
|
||||
ghost atom cutoff = 11.5251
|
||||
binsize = 5.76255, bins = 5 5 5
|
||||
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
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 3.121 | 3.121 | 3.121 Mbytes
|
||||
Step Temp f_1[1] f_1[2] f_1[3] f_1[4] f_1[5] f_1[6] f_1[7] f_1[8] f_1[9] f_1[10] Volume Press
|
||||
0 0 0 7.8012276 -7.3457072 4.3005229 3.3062167 0 0 -1743.5332 0 0 13402.228 -191.02389
|
||||
100 241.19035 6.2040835 3.9473764 -7.7641902 9.6829291 3.3062167 0 0 -1743.5332 0.00061164884 127.22547 13402.228 3.5720518
|
||||
200 325.21166 8.3653443 2.3529831 -7.9137212 14.016847 3.3062167 0 0 -1743.5332 0.00088274242 177.45909 13402.228 33.184125
|
||||
300 209.19735 5.381135 6.7063061 -7.801056 18.162833 3.3062167 0 0 -1743.5332 0.00054181173 111.54876 13402.228 -154.10632
|
||||
400 280.84513 7.2241142 5.8838331 -7.7320495 21.628032 3.3062167 0 0 -1743.5332 0.0007209203 136.75648 13402.228 45.624285
|
||||
500 367.15726 9.4443014 5.2842629 -7.6643085 25.668758 3.3062167 0 0 -1743.5332 0.00087137898 175.48435 13402.228 283.59979
|
||||
600 294.68254 7.5800508 6.5104311 -7.6234652 28.570788 3.3062167 0 0 -1743.5332 0.00072432598 143.69546 13402.228 183.09906
|
||||
700 356.64514 9.1739005 5.2769462 -7.6204507 30.034627 3.3062167 0 0 -1743.5332 0.00092377441 193.27472 13402.228 334.31754
|
||||
800 360.77353 9.2800941 5.7976264 -7.6946985 31.447502 3.3062167 0 0 -1743.5332 0.00097254954 193.91329 13402.228 299.62001
|
||||
900 291.14241 7.4889889 7.5124196 -7.5102882 32.906719 3.3062167 0 0 -1743.5332 0.00074024142 139.40121 13402.228 277.94834
|
||||
1000 362.48694 9.3241677 6.8711151 -7.4856221 34.914285 3.3062167 0 0 -1743.5332 0.00088800624 185.77114 13402.228 428.98682
|
||||
Loop time of 0.166662 on 1 procs for 1000 steps with 200 atoms
|
||||
|
||||
Performance: 518.414 ns/day, 0.046 hours/ns, 6000.167 timesteps/s, 1.200 Matom-step/s
|
||||
98.5% 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.10817 | 0.10817 | 0.10817 | 0.0 | 64.90
|
||||
Neigh | 0.00096402 | 0.00096402 | 0.00096402 | 0.0 | 0.58
|
||||
Comm | 0.0044991 | 0.0044991 | 0.0044991 | 0.0 | 2.70
|
||||
Output | 8.5449e-05 | 8.5449e-05 | 8.5449e-05 | 0.0 | 0.05
|
||||
Modify | 0.052066 | 0.052066 | 0.052066 | 0.0 | 31.24
|
||||
Other | | 0.00088 | | | 0.53
|
||||
|
||||
Nlocal: 200 ave 200 max 200 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 1368 ave 1368 max 1368 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 9541 ave 9541 max 9541 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 9541
|
||||
Ave neighs/atom = 47.705
|
||||
Neighbor list builds = 4
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
@ -1 +1,3 @@
|
||||
mpirun -np 4 $LMP -in in.lmp -p 4x1 -log log -screen screen
|
||||
mpirun -np 4 $LMP -in in.langevin.metal -p 4x1 -log log.langevin.metal -screen screen
|
||||
mpirun -np 4 $LMP -in in.pimd-langevin.metal -p 4x1 -log log.pimd-langevin.metal -screen screen
|
||||
|
||||
|
||||
@ -50,5 +50,6 @@ fix 10 all balance 50 0.9 rcb
|
||||
|
||||
thermo_style custom step temp epair press f_10[3] f_10
|
||||
thermo 100
|
||||
timestep 0.001
|
||||
|
||||
run 10000
|
||||
|
||||
@ -59,5 +59,6 @@ fix 10 all balance 50 0.9 rcb
|
||||
|
||||
thermo_style custom step temp epair press f_10[3] f_10
|
||||
thermo 100
|
||||
timestep 0.001
|
||||
|
||||
run 10000
|
||||
|
||||
@ -58,5 +58,6 @@ fix 10 all balance 50 0.9 rcb
|
||||
|
||||
thermo_style custom step temp epair press f_10[3] f_10
|
||||
thermo 100
|
||||
timestep 0.001
|
||||
|
||||
run 40000
|
||||
|
||||
@ -1,242 +0,0 @@
|
||||
LAMMPS (27 Nov 2018)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# 2d circle of particles inside a box with LJ walls
|
||||
|
||||
variable b index 0
|
||||
|
||||
variable x index 50
|
||||
variable y index 20
|
||||
variable d index 20
|
||||
variable v index 5
|
||||
variable w index 2
|
||||
|
||||
units lj
|
||||
dimension 2
|
||||
atom_style bond
|
||||
boundary f f p
|
||||
|
||||
lattice hex 0.85
|
||||
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
|
||||
region box block 0 $x 0 $y -0.5 0.5
|
||||
region box block 0 50 0 $y -0.5 0.5
|
||||
region box block 0 50 0 20 -0.5 0.5
|
||||
create_box 1 box bond/types 1 extra/bond/per/atom 6
|
||||
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
|
||||
2 by 1 by 1 MPI processor grid
|
||||
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
|
||||
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
|
||||
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
|
||||
region circle sphere 11 6.7735026918962581988 0.0 10
|
||||
create_atoms 1 region circle
|
||||
Created 361 atoms
|
||||
Time spent = 0.000778913 secs
|
||||
mass 1 1.0
|
||||
|
||||
velocity all create 0.5 87287 loop geom
|
||||
velocity all set $v $w 0 sum yes
|
||||
velocity all set 5 $w 0 sum yes
|
||||
velocity all set 5 2 0 sum yes
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_coeff 1 1 10.0 1.0 2.5
|
||||
|
||||
bond_style harmonic
|
||||
bond_coeff 1 10.0 1.2
|
||||
|
||||
# need to preserve 1-3, 1-4 pairwise interactions during hard collisions
|
||||
|
||||
special_bonds lj/coul 0 1 1
|
||||
0 = max # of 1-2 neighbors
|
||||
1 = max # of special neighbors
|
||||
create_bonds many all all 1 1.0 1.5
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 42 29 1
|
||||
2 neighbor lists, perpetual/occasional/extra = 1 1 0
|
||||
(1) command create_bonds, occasional
|
||||
attributes: full, newton on
|
||||
pair build: full/bin
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
(2) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Added 1014 bonds, new total = 1014
|
||||
6 = max # of 1-2 neighbors
|
||||
6 = max # of special neighbors
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
fix 1 all nve
|
||||
|
||||
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
|
||||
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
|
||||
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
|
||||
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
|
||||
|
||||
comm_style tiled
|
||||
comm_modify cutoff 10.0 # because bonds stretch a long ways
|
||||
fix 10 all balance 50 0.9 rcb
|
||||
|
||||
#compute 1 all property/atom proc
|
||||
#variable p atom (c_1%10)+1
|
||||
#dump 2 all custom 50 tmp.dump id v_p x y z
|
||||
|
||||
#dump 3 all image 50 image.*.jpg v_p type bond atom 0.25 # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
|
||||
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
|
||||
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
|
||||
|
||||
thermo_style custom step temp epair press f_10[3] f_10
|
||||
thermo 100
|
||||
|
||||
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 = 2.8
|
||||
ghost atom cutoff = 10
|
||||
binsize = 1.4, bins = 42 29 1
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.156 | 5.167 | 5.177 Mbytes
|
||||
Step Temp E_pair Press f_10[3] f_10
|
||||
0 25.701528 -2.2032569 3.1039469 2 1.0193906
|
||||
100 27.623422 -6.228166 2.6542136 1.0803324 1.0027701
|
||||
200 33.35302 -15.746749 3.2018248 1.1246537 1.0027701
|
||||
300 39.17734 -24.1557 4.9116986 1.1468144 1.0027701
|
||||
400 41.660701 -27.615203 8.6214678 1.2077562 1.0027701
|
||||
500 37.154935 -24.096954 3.2656298 1.2243767 1.0083102
|
||||
600 35.062196 -21.527799 2.3688444 1.1800554 1.0027701
|
||||
700 36.962955 -22.265373 3.0233424 1.1800554 1.0083102
|
||||
800 38.514356 -24.625735 5.2876402 1.2077562 1.0027701
|
||||
900 37.840168 -24.069158 4.443617 1.2022161 1.0083102
|
||||
1000 36.429396 -23.978878 7.2603394 1.1966759 1.0027701
|
||||
1100 34.75827 -22.743232 6.6304628 1.1745152 1.0083102
|
||||
1200 31.057199 -21.46544 3.7869701 1.1634349 1.0083102
|
||||
1300 33.127345 -22.426161 5.824726 1.0858726 1.0027701
|
||||
1400 31.678654 -21.604473 3.2219261 1.0360111 1.0083102
|
||||
1500 28.345212 -18.030807 0.93335223 1.1191136 1.0027701
|
||||
1600 26.031412 -15.389052 0.82549542 1.1080332 1.0027701
|
||||
1700 25.082832 -13.48625 1.0006592 1.0858726 1.0027701
|
||||
1800 25.673875 -13.965883 0.54607043 1.0692521 1.0027701
|
||||
1900 26.530842 -13.979318 2.0285449 1.1024931 1.0027701
|
||||
2000 25.910771 -14.244515 1.9592232 1.1191136 1.0027701
|
||||
2100 28.505636 -16.220559 1.7154775 1.1191136 1.0027701
|
||||
2200 28.142753 -15.564302 2.9946076 1.1135734 1.0027701
|
||||
2300 26.606225 -13.734442 1.4589278 1.0083102 1.0083102
|
||||
2400 25.664988 -12.389759 1.3450183 1.0360111 1.0027701
|
||||
2500 25.145328 -11.815173 0.48162788 1.0360111 1.0027701
|
||||
2600 26.654868 -13.916929 2.8361012 1.0581717 1.0083102
|
||||
2700 27.3758 -15.495452 4.1206412 1.0360111 1.0027701
|
||||
2800 23.60864 -14.520038 1.8948923 1.0193906 1.0027701
|
||||
2900 20.604557 -12.901121 0.17526991 1.0138504 1.0027701
|
||||
3000 20.852473 -12.756946 -0.44987285 1.0360111 1.0027701
|
||||
3100 21.934986 -12.797691 0.76186765 1.0415512 1.0027701
|
||||
3200 23.293263 -12.368233 0.021937309 1.0526316 1.0027701
|
||||
3300 22.091492 -10.88605 0.013006632 1.0415512 1.0083102
|
||||
3400 23.535429 -10.937804 2.0738989 1.0360111 1.0027701
|
||||
3500 24.503573 -12.202994 1.126785 1.0581717 1.0027701
|
||||
3600 23.54503 -12.745709 0.39022194 1.0858726 1.0027701
|
||||
3700 22.658187 -10.986188 -0.18869692 1.0692521 1.0027701
|
||||
3800 21.282045 -9.7879088 -0.061253454 1.0193906 1.0027701
|
||||
3900 20.571754 -9.1157993 -1.0178917 1.0526316 1.0027701
|
||||
4000 23.779702 -10.230328 1.0778525 1.0581717 1.0083102
|
||||
4100 23.675854 -10.63724 0.59402249 1.0415512 1.0027701
|
||||
4200 24.058963 -11.89505 0.3866378 1.0526316 1.0027701
|
||||
4300 22.683721 -11.358978 1.8269036 1.0470914 1.0083102
|
||||
4400 23.002345 -11.081443 0.4529456 1.0415512 1.0027701
|
||||
4500 21.984542 -10.233276 -0.60718244 1.0415512 1.0083102
|
||||
4600 22.079237 -9.979061 0.53013572 1.0415512 1.0027701
|
||||
4700 22.336961 -10.323583 -0.37512832 1.0249307 1.0027701
|
||||
4800 23.351699 -10.143724 0.95694397 1.0470914 1.0027701
|
||||
4900 23.643954 -10.687354 1.6062522 1.0858726 1.0083102
|
||||
5000 25.158132 -11.532398 1.3083639 1.0914127 1.0027701
|
||||
5100 23.755521 -10.978548 0.60587307 1.0470914 1.0027701
|
||||
5200 21.842692 -10.443216 -0.41185899 1.0637119 1.0027701
|
||||
5300 22.828066 -10.871114 1.1754353 1.0470914 1.0027701
|
||||
5400 24.883977 -12.39165 0.65101173 1.0470914 1.0027701
|
||||
5500 22.908286 -11.419431 1.4712698 1.0637119 1.0027701
|
||||
5600 22.718634 -12.083974 1.5706808 1.0526316 1.0027701
|
||||
5700 23.080763 -11.464882 1.2979578 1.0304709 1.0083102
|
||||
5800 21.877026 -11.483185 0.279772 1.0360111 1.0027701
|
||||
5900 22.526809 -10.868636 0.37121786 1.0637119 1.0083102
|
||||
6000 22.908857 -10.311118 0.58244569 1.0526316 1.0083102
|
||||
6100 22.399847 -10.222706 0.87875674 1.0858726 1.0027701
|
||||
6200 22.623463 -10.035541 -0.25811274 1.0304709 1.0027701
|
||||
6300 21.518006 -10.017552 -0.98187611 1.0470914 1.0083102
|
||||
6400 21.269816 -11.297716 0.20058535 1.0138504 1.0027701
|
||||
6500 23.362834 -11.263306 0.47670072 1.0692521 1.0027701
|
||||
6600 23.705236 -12.358492 -0.63286237 1.0027701 1.0027701
|
||||
6700 22.410623 -10.849516 0.57027834 1.0581717 1.0083102
|
||||
6800 21.661639 -9.3981379 0.38726515 1.0470914 1.0027701
|
||||
6900 21.856521 -8.8451751 0.053822789 1.0304709 1.0027701
|
||||
7000 21.069495 -8.6443387 -0.10412144 1.0193906 1.0027701
|
||||
7100 22.305494 -10.098469 -0.22662961 1.0581717 1.0027701
|
||||
7200 23.52884 -11.055929 -0.099869868 1.0692521 1.0027701
|
||||
7300 24.042008 -11.411758 2.0528788 1.0415512 1.0027701
|
||||
7400 22.870777 -12.408763 0.33346225 1.0249307 1.0027701
|
||||
7500 21.290152 -10.963058 0.26940112 1.0083102 1.0027701
|
||||
7600 21.702686 -10.36214 0.84057004 1.0083102 1.0027701
|
||||
7700 22.478034 -10.832724 -0.70855164 1.0747922 1.0027701
|
||||
7800 22.856853 -11.161008 -0.88354803 1.0083102 1.0083102
|
||||
7900 22.579842 -10.789899 0.40865274 1.0360111 1.0027701
|
||||
8000 24.364281 -12.116023 -0.44788445 1.0249307 1.0083102
|
||||
8100 22.993409 -10.261331 0.44712215 1.0193906 1.0027701
|
||||
8200 23.006207 -10.723372 1.2357091 1.0415512 1.0083102
|
||||
8300 23.292233 -10.041314 2.143692 1.0581717 1.0027701
|
||||
8400 21.658087 -10.089378 -0.25838681 1.0083102 1.0027701
|
||||
8500 23.268456 -10.356603 0.089787317 1.0526316 1.0083102
|
||||
8600 22.572019 -10.32801 0.12320758 1.0526316 1.0027701
|
||||
8700 22.970465 -10.662456 0.57027398 1.0581717 1.0083102
|
||||
8800 23.515552 -10.415842 1.0048598 1.0138504 1.0083102
|
||||
8900 22.733961 -10.343495 0.19917627 1.0360111 1.0083102
|
||||
9000 21.835458 -9.8740971 -1.0653164 1.0193906 1.0027701
|
||||
9100 22.062821 -9.2303832 0.21428267 1.0415512 1.0083102
|
||||
9200 23.020404 -10.321542 -0.48757848 1.0193906 1.0083102
|
||||
9300 22.529362 -9.2916938 0.57056277 1.0415512 1.0027701
|
||||
9400 23.301911 -10.538876 0.80637627 1.0138504 1.0027701
|
||||
9500 21.984286 -9.4754676 -0.19048233 1.0193906 1.0027701
|
||||
9600 23.710224 -10.274983 0.72268146 1.0249307 1.0027701
|
||||
9700 22.317038 -9.3509008 -0.45727658 1.0360111 1.0027701
|
||||
9800 23.41615 -10.026331 -0.45909049 1.0415512 1.0027701
|
||||
9900 22.130299 -11.18528 -0.15359132 1.0747922 1.0027701
|
||||
10000 23.273859 -11.337403 0.4036321 1.0304709 1.0083102
|
||||
Loop time of 1.18289 on 2 procs for 10000 steps with 361 atoms
|
||||
|
||||
Performance: 3652073.393 tau/day, 8453.874 timesteps/s
|
||||
97.0% CPU use with 2 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.25191 | 0.25685 | 0.2618 | 1.0 | 21.71
|
||||
Bond | 0.097655 | 0.098332 | 0.099009 | 0.2 | 8.31
|
||||
Neigh | 0.53258 | 0.53993 | 0.54728 | 1.0 | 45.65
|
||||
Comm | 0.13457 | 0.15372 | 0.17288 | 4.9 | 13.00
|
||||
Output | 0.0013587 | 0.0016007 | 0.0018427 | 0.6 | 0.14
|
||||
Modify | 0.074109 | 0.074314 | 0.074518 | 0.1 | 6.28
|
||||
Other | | 0.05813 | | | 4.91
|
||||
|
||||
Nlocal: 180.5 ave 182 max 179 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 172.5 ave 175 max 170 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Neighs: 1421 ave 1488 max 1354 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 2842
|
||||
Ave neighs/atom = 7.87258
|
||||
Ave special neighs/atom = 5.61773
|
||||
Neighbor list builds = 4884
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:01
|
||||
@ -1,242 +0,0 @@
|
||||
LAMMPS (27 Nov 2018)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# 2d circle of particles inside a box with LJ walls
|
||||
|
||||
variable b index 0
|
||||
|
||||
variable x index 50
|
||||
variable y index 20
|
||||
variable d index 20
|
||||
variable v index 5
|
||||
variable w index 2
|
||||
|
||||
units lj
|
||||
dimension 2
|
||||
atom_style bond
|
||||
boundary f f p
|
||||
|
||||
lattice hex 0.85
|
||||
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
|
||||
region box block 0 $x 0 $y -0.5 0.5
|
||||
region box block 0 50 0 $y -0.5 0.5
|
||||
region box block 0 50 0 20 -0.5 0.5
|
||||
create_box 1 box bond/types 1 extra/bond/per/atom 6
|
||||
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
|
||||
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
|
||||
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
|
||||
region circle sphere 11 6.7735026918962581988 0.0 10
|
||||
create_atoms 1 region circle
|
||||
Created 361 atoms
|
||||
Time spent = 0.00067687 secs
|
||||
mass 1 1.0
|
||||
|
||||
velocity all create 0.5 87287 loop geom
|
||||
velocity all set $v $w 0 sum yes
|
||||
velocity all set 5 $w 0 sum yes
|
||||
velocity all set 5 2 0 sum yes
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_coeff 1 1 10.0 1.0 2.5
|
||||
|
||||
bond_style harmonic
|
||||
bond_coeff 1 10.0 1.2
|
||||
|
||||
# need to preserve 1-3, 1-4 pairwise interactions during hard collisions
|
||||
|
||||
special_bonds lj/coul 0 1 1
|
||||
0 = max # of 1-2 neighbors
|
||||
1 = max # of special neighbors
|
||||
create_bonds many all all 1 1.0 1.5
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 42 29 1
|
||||
2 neighbor lists, perpetual/occasional/extra = 1 1 0
|
||||
(1) command create_bonds, occasional
|
||||
attributes: full, newton on
|
||||
pair build: full/bin
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
(2) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Added 1014 bonds, new total = 1014
|
||||
6 = max # of 1-2 neighbors
|
||||
6 = max # of special neighbors
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
fix 1 all nve
|
||||
|
||||
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
|
||||
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
|
||||
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
|
||||
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
|
||||
|
||||
comm_style tiled
|
||||
comm_modify cutoff 10.0 # because bonds stretch a long ways
|
||||
fix 10 all balance 50 0.9 rcb
|
||||
|
||||
#compute 1 all property/atom proc
|
||||
#variable p atom (c_1%10)+1
|
||||
#dump 2 all custom 50 tmp.dump id v_p x y z
|
||||
|
||||
#dump 3 all image 50 image.*.jpg v_p type bond atom 0.25 # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
|
||||
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
|
||||
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
|
||||
|
||||
thermo_style custom step temp epair press f_10[3] f_10
|
||||
thermo 100
|
||||
|
||||
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 = 2.8
|
||||
ghost atom cutoff = 10
|
||||
binsize = 1.4, bins = 42 29 1
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 5.122 | 5.141 | 5.174 Mbytes
|
||||
Step Temp E_pair Press f_10[3] f_10
|
||||
0 25.701528 -2.2032569 3.1039469 3.2354571 1.0526316
|
||||
100 27.623422 -6.228166 2.6542136 1.2631579 1.0083102
|
||||
200 33.35302 -15.746749 3.2018248 1.2963989 1.0193906
|
||||
300 39.17734 -24.1557 4.9116986 1.2963989 1.0193906
|
||||
400 41.660701 -27.615203 8.6214679 1.3518006 1.0083102
|
||||
500 37.154928 -24.096946 3.2656177 1.3296399 1.0304709
|
||||
600 35.059873 -21.524223 2.3729526 1.3296399 1.0083102
|
||||
700 36.735117 -22.012675 3.266197 1.3296399 1.0083102
|
||||
800 39.218223 -25.076176 4.7162461 1.4182825 1.0193906
|
||||
900 38.003628 -24.598176 3.4651756 1.4958449 1.0083102
|
||||
1000 37.599298 -25.117714 4.6714491 1.2963989 1.0193906
|
||||
1100 35.587211 -24.476201 4.8766816 1.2077562 1.0083102
|
||||
1200 33.05745 -21.457847 4.7304313 1.2188366 1.0193906
|
||||
1300 35.505899 -20.103017 7.0543469 1.1523546 1.0193906
|
||||
1400 32.687958 -18.411286 2.8022421 1.1523546 1.0083102
|
||||
1500 30.681103 -13.979491 1.5780815 1.1523546 1.0083102
|
||||
1600 28.134276 -12.408217 1.4370834 1.2188366 1.0193906
|
||||
1700 29.150676 -12.486223 1.7118526 1.1745152 1.0083102
|
||||
1800 29.456937 -11.386522 2.0484739 1.1966759 1.0193906
|
||||
1900 28.029998 -11.168436 0.38519481 1.1080332 1.0193906
|
||||
2000 29.476997 -12.337678 1.8878345 1.1523546 1.0083102
|
||||
2100 30.113294 -12.201714 2.8003366 1.1634349 1.0193906
|
||||
2200 31.599067 -13.710787 2.5654923 1.2188366 1.0083102
|
||||
2300 31.333799 -12.269386 1.9573739 1.1412742 1.0193906
|
||||
2400 28.587094 -10.98229 2.090581 1.1745152 1.0083102
|
||||
2500 28.012332 -11.416553 2.3293146 1.1855956 1.0083102
|
||||
2600 28.703189 -13.33369 2.7247345 1.1080332 1.0083102
|
||||
2700 26.933934 -13.546384 0.71447362 1.0415512 1.0304709
|
||||
2800 24.556936 -12.231427 0.012081842 1.0526316 1.0193906
|
||||
2900 24.362943 -10.921093 -0.6063159 1.0858726 1.0193906
|
||||
3000 24.583358 -10.025143 0.35975315 1.0637119 1.0083102
|
||||
3100 26.119046 -10.124317 0.75140102 1.0415512 1.0193906
|
||||
3200 27.665317 -11.418452 0.39942176 1.1301939 1.0083102
|
||||
3300 27.771434 -9.9777413 0.94693011 1.1080332 1.0083102
|
||||
3400 25.692188 -9.9016885 2.2582772 1.0415512 1.0083102
|
||||
3500 27.009276 -10.504438 0.98279258 1.1301939 1.0083102
|
||||
3600 26.082843 -9.4359595 -0.030819747 1.1301939 1.0083102
|
||||
3700 23.956851 -8.4601884 -0.45748969 1.0858726 1.0304709
|
||||
3800 24.92141 -8.3315871 -0.19512647 1.0969529 1.0083102
|
||||
3900 26.048044 -9.6299934 0.40522014 1.0858726 1.0083102
|
||||
4000 26.558961 -10.032084 0.56213613 1.1745152 1.0083102
|
||||
4100 26.949686 -10.133598 1.0140825 1.0747922 1.0083102
|
||||
4200 25.868196 -9.3971859 1.2758465 1.0969529 1.0083102
|
||||
4300 24.563369 -9.5992996 0.17389949 1.1191136 1.0193906
|
||||
4400 24.032818 -10.002668 0.10233743 1.0969529 1.0083102
|
||||
4500 25.281577 -9.948799 0.7590423 1.1523546 1.0083102
|
||||
4600 25.010901 -10.195479 -0.24424931 1.0747922 1.0193906
|
||||
4700 25.062368 -9.2973021 1.1755931 1.0858726 1.0193906
|
||||
4800 25.70912 -8.890895 1.0780397 1.1080332 1.0193906
|
||||
4900 26.027757 -10.205469 1.0644859 1.1080332 1.0083102
|
||||
5000 25.845739 -9.8511049 0.49059257 1.1301939 1.0193906
|
||||
5100 25.614064 -9.0396911 0.40825814 1.0526316 1.0304709
|
||||
5200 25.548135 -9.000613 0.81571441 1.1080332 1.0083102
|
||||
5300 26.592601 -9.2385129 1.4983434 1.0637119 1.0193906
|
||||
5400 26.230779 -9.8226036 1.0072462 1.0858726 1.0083102
|
||||
5500 26.809887 -9.9569954 1.4074968 1.0415512 1.0083102
|
||||
5600 25.722206 -10.240487 -0.5216434 1.0747922 1.0193906
|
||||
5700 24.973866 -9.0820997 0.92104357 1.0193906 1.0083102
|
||||
5800 24.257134 -9.5439897 -0.75290789 1.0858726 1.0083102
|
||||
5900 25.524917 -8.9920216 1.2049479 1.1191136 1.0083102
|
||||
6000 24.816532 -9.5865764 -0.66634446 1.0637119 1.0193906
|
||||
6100 27.034385 -9.4017037 1.0769494 1.0969529 1.0083102
|
||||
6200 24.19144 -8.2292864 0.97913204 1.0415512 1.0193906
|
||||
6300 26.112877 -9.1531212 0.77578963 1.0526316 1.0193906
|
||||
6400 25.820541 -9.9662231 -0.092724413 1.0969529 1.0193906
|
||||
6500 26.181404 -9.5875764 -0.30106405 1.1634349 1.0083102
|
||||
6600 27.770851 -8.8366116 0.94545206 1.0304709 1.0193906
|
||||
6700 26.065489 -9.8223382 0.24640067 1.0526316 1.0193906
|
||||
6800 27.468165 -10.160923 2.7263738 1.0747922 1.0304709
|
||||
6900 27.317955 -10.356911 1.131609 1.0526316 1.0304709
|
||||
7000 26.343789 -9.9153453 1.0385354 1.0858726 1.0193906
|
||||
7100 24.366577 -8.9243936 0.37685043 1.0526316 1.0193906
|
||||
7200 25.570042 -8.9195237 0.44206575 1.0637119 1.0193906
|
||||
7300 24.635046 -8.4524117 -0.20581694 1.0193906 1.0193906
|
||||
7400 27.161863 -7.9885934 1.1323072 1.0858726 1.0193906
|
||||
7500 26.8044 -9.5703931 0.69476535 1.0858726 1.0193906
|
||||
7600 27.381006 -10.702178 -0.20230101 1.0526316 1.0083102
|
||||
7700 26.507406 -9.828117 0.50115907 1.0415512 1.0193906
|
||||
7800 25.945271 -8.9912842 0.89121191 1.0747922 1.0083102
|
||||
7900 24.498681 -7.7193231 -0.63874494 1.0858726 1.0083102
|
||||
8000 24.517408 -7.6046107 -0.91642337 1.0415512 1.0083102
|
||||
8100 26.388387 -8.1883906 0.093136981 1.1080332 1.0193906
|
||||
8200 26.261054 -8.7223732 -0.086859057 1.0747922 1.0083102
|
||||
8300 26.287026 -9.2583895 0.79506804 1.0858726 1.0083102
|
||||
8400 24.691375 -9.0701909 -0.40058151 1.0637119 1.0193906
|
||||
8500 25.390612 -7.9499801 0.59874113 1.1412742 1.0193906
|
||||
8600 26.84383 -8.5520984 0.37618599 1.0637119 1.0083102
|
||||
8700 25.685137 -7.688836 0.035978149 1.0415512 1.0193906
|
||||
8800 26.614591 -9.0444146 0.20671465 1.0193906 1.0083102
|
||||
8900 25.782718 -8.2594705 0.54378816 1.0747922 1.0304709
|
||||
9000 26.026886 -8.6777252 0.25418163 1.1191136 1.0083102
|
||||
9100 27.246916 -9.0307861 1.211131 1.0526316 1.0193906
|
||||
9200 27.282948 -9.180029 -0.0056269613 1.0747922 1.0083102
|
||||
9300 27.029692 -8.7791461 0.35971649 1.0304709 1.0083102
|
||||
9400 26.549013 -7.5083174 0.77607249 1.0969529 1.0193906
|
||||
9500 25.533731 -9.2763668 0.28360762 1.0969529 1.0083102
|
||||
9600 27.997538 -9.2766769 1.6968428 1.0637119 1.0083102
|
||||
9700 26.977436 -9.21372 1.8007256 1.0637119 1.0083102
|
||||
9800 25.547091 -9.1024445 -0.29158273 1.0969529 1.0193906
|
||||
9900 26.378841 -8.7645665 1.0385835 1.1080332 1.0083102
|
||||
10000 26.699368 -8.5450739 0.19591452 1.0526316 1.0193906
|
||||
Loop time of 0.916576 on 4 procs for 10000 steps with 361 atoms
|
||||
|
||||
Performance: 4713193.307 tau/day, 10910.170 timesteps/s
|
||||
92.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 | 0.10915 | 0.12374 | 0.14167 | 3.5 | 13.50
|
||||
Bond | 0.047075 | 0.049849 | 0.054161 | 1.2 | 5.44
|
||||
Neigh | 0.31176 | 0.3246 | 0.3384 | 1.7 | 35.41
|
||||
Comm | 0.24271 | 0.26717 | 0.30549 | 4.9 | 29.15
|
||||
Output | 0.0017068 | 0.0021075 | 0.0031145 | 1.3 | 0.23
|
||||
Modify | 0.064639 | 0.065705 | 0.067641 | 0.5 | 7.17
|
||||
Other | | 0.08341 | | | 9.10
|
||||
|
||||
Nlocal: 90.25 ave 92 max 89 min
|
||||
Histogram: 1 0 0 2 0 0 0 0 0 1
|
||||
Nghost: 248.25 ave 264 max 230 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Neighs: 569.5 ave 657 max 519 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 2278
|
||||
Ave neighs/atom = 6.31025
|
||||
Ave special neighs/atom = 5.61773
|
||||
Neighbor list builds = 4964
|
||||
Dangerous builds = 14
|
||||
Total wall time: 0:00:00
|
||||
@ -1,541 +0,0 @@
|
||||
LAMMPS (27 Nov 2018)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# 2d circle of particles inside a box with LJ walls
|
||||
|
||||
variable b index 0
|
||||
|
||||
variable x index 50
|
||||
variable y index 20
|
||||
variable d index 20
|
||||
|
||||
# careful not to slam into wall too hard
|
||||
|
||||
variable v index 0.3
|
||||
variable w index 0.08
|
||||
|
||||
units lj
|
||||
dimension 2
|
||||
atom_style bond
|
||||
boundary f f p
|
||||
|
||||
lattice hex 0.85
|
||||
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
|
||||
region box block 0 $x 0 $y -0.5 0.5
|
||||
region box block 0 50 0 $y -0.5 0.5
|
||||
region box block 0 50 0 20 -0.5 0.5
|
||||
create_box 1 box bond/types 1 extra/bond/per/atom 6
|
||||
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
|
||||
2 by 1 by 1 MPI processor grid
|
||||
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
|
||||
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
|
||||
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
|
||||
region circle sphere 11 6.7735026918962581988 0.0 10
|
||||
create_atoms 1 region circle
|
||||
Created 361 atoms
|
||||
Time spent = 0.000762701 secs
|
||||
mass 1 1.0
|
||||
|
||||
velocity all create 0.5 87287 loop geom
|
||||
velocity all set $v $w 0 sum yes
|
||||
velocity all set 0.3 $w 0 sum yes
|
||||
velocity all set 0.3 0.08 0 sum yes
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_coeff 1 1 10.0 1.0 2.5
|
||||
|
||||
bond_style harmonic
|
||||
bond_coeff 1 10.0 1.2
|
||||
|
||||
create_bonds many all all 1 1.0 1.5
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 42 29 1
|
||||
2 neighbor lists, perpetual/occasional/extra = 1 1 0
|
||||
(1) command create_bonds, occasional
|
||||
attributes: full, newton on
|
||||
pair build: full/bin
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
(2) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Added 1014 bonds, new total = 1014
|
||||
6 = max # of 1-2 neighbors
|
||||
30 = max # of 1-3 neighbors
|
||||
180 = max # of 1-4 neighbors
|
||||
36 = max # of special neighbors
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
fix 1 all nve
|
||||
|
||||
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
|
||||
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
|
||||
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
|
||||
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
|
||||
|
||||
comm_style tiled
|
||||
fix 10 all balance 50 0.9 rcb
|
||||
|
||||
#compute 1 all property/atom proc
|
||||
#variable p atom (c_1%10)+1
|
||||
#dump 2 all custom 50 tmp.dump id v_p x y z
|
||||
|
||||
#dump 3 all image 200 image.*.jpg v_p type bond atom 0.25 # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
|
||||
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
|
||||
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
|
||||
|
||||
thermo_style custom step temp epair press f_10[3] f_10
|
||||
thermo 100
|
||||
|
||||
run 40000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 42 29 1
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.079 | 7.108 | 7.137 Mbytes
|
||||
Step Temp E_pair Press f_10[3] f_10
|
||||
0 0.57437856 0 0.26099453 2 1.0193906
|
||||
100 0.29756515 0 0.10149401 1.0027701 1.0027701
|
||||
200 0.35394813 0 0.075159099 1.0027701 1.0083102
|
||||
300 0.39245849 0 0.033002384 1.0027701 1.0027701
|
||||
400 0.34078347 0 -0.020825841 1.0083102 1.0027701
|
||||
500 0.35201095 0 -0.062637506 1.0027701 1.0027701
|
||||
600 0.34014717 0 -0.11122965 1.0249307 1.0027701
|
||||
700 0.3323524 0 -0.11598015 1.0083102 1.0027701
|
||||
800 0.35116047 0 -0.096162395 1.0138504 1.0027701
|
||||
900 0.35695352 0 -0.01385176 1.0249307 1.0027701
|
||||
1000 0.36986539 0 0.056772858 1.0027701 1.0027701
|
||||
1100 0.34584644 0 0.084941323 1.0138504 1.0027701
|
||||
1200 0.31921435 0 0.10545078 1.0138504 1.0027701
|
||||
1300 0.32952819 0 0.124902 1.0027701 1.0027701
|
||||
1400 0.34497365 0 0.12662081 1.0138504 1.0027701
|
||||
1500 0.33429243 0 0.096230972 1.0193906 1.0027701
|
||||
1600 0.33765387 0 0.025800542 1.0193906 1.0027701
|
||||
1700 0.35134464 0 -0.04422593 1.0083102 1.0027701
|
||||
1800 0.35003859 0 -0.096745576 1.0083102 1.0083102
|
||||
1900 0.33839618 0 -0.095465943 1.0027701 1.0027701
|
||||
2000 0.33732078 0 -0.094652802 1.0027701 1.0027701
|
||||
2100 0.34552238 0 -0.076729261 1.0083102 1.0027701
|
||||
2200 0.34893142 0 -0.036853228 1.0083102 1.0083102
|
||||
2300 0.35379341 0 0.021124847 1.0193906 1.0027701
|
||||
2400 0.34829744 0 0.09230184 1.0027701 1.0027701
|
||||
2500 0.33038141 0 0.1399855 1.0027701 1.0083102
|
||||
2600 0.30983019 0 0.12754742 1.0083102 1.0027701
|
||||
2700 0.32992561 0 0.10485138 1.0193906 1.0027701
|
||||
2800 0.34604747 0 0.066174138 1.0083102 1.0027701
|
||||
2900 0.3444791 0 0.036590652 1.0083102 1.0083102
|
||||
3000 0.34721342 0 -0.023793368 1.0138504 1.0027701
|
||||
3100 0.33404314 0 -0.08374223 1.0083102 1.0027701
|
||||
3200 0.33019355 0 -0.12715599 1.0083102 1.0027701
|
||||
3300 0.33515177 0 -0.12217394 1.0083102 1.0027701
|
||||
3400 0.33628481 0 -0.070877624 1.0083102 1.0027701
|
||||
3500 0.34257038 0 -0.021612062 1.0027701 1.0027701
|
||||
3600 0.32838009 0 0.030131228 1.0027701 1.0027701
|
||||
3700 0.34462142 0 0.074586378 1.0138504 1.0027701
|
||||
3800 0.30891825 0 0.10605673 1.0138504 1.0027701
|
||||
3900 0.33847951 0 0.13956139 1.0027701 1.0027701
|
||||
4000 0.32952079 0 0.12688129 1.0027701 1.0027701
|
||||
4100 0.32646772 0 0.081089042 1.0083102 1.0027701
|
||||
4200 0.35399503 0 0.013422873 1.0027701 1.0027701
|
||||
4300 0.33154914 0 -0.050919508 1.0027701 1.0083102
|
||||
4400 0.34113556 0 -0.083171 1.0249307 1.0027701
|
||||
4500 0.32651708 0 -0.1063133 1.0193906 1.0027701
|
||||
4600 0.34359609 0 -0.1076395 1.0027701 1.0027701
|
||||
4700 0.34973537 0 -0.088231606 1.0138504 1.0027701
|
||||
4800 0.35198515 0 -0.020901044 1.0027701 1.0027701
|
||||
4900 0.35187284 0 0.043645941 1.0193906 1.0027701
|
||||
5000 0.34887336 0 0.095698609 1.0027701 1.0027701
|
||||
5100 0.30308163 0 0.11649328 1.0138504 1.0027701
|
||||
5200 0.32401285 0 0.12072411 1.0083102 1.0083102
|
||||
5300 0.33025072 0 0.10933161 1.0138504 1.0027701
|
||||
5400 0.33288012 0 0.078356448 1.0083102 1.0027701
|
||||
5500 0.35142492 0 0.036958063 1.0027701 1.0027701
|
||||
5600 0.35125368 0 -0.041371343 1.0193906 1.0027701
|
||||
5700 0.34547744 0 -0.096450846 1.0193906 1.0027701
|
||||
5800 0.30939887 0 -0.12356656 1.0027701 1.0083102
|
||||
5900 0.32315628 0 -0.11338676 1.0083102 1.0027701
|
||||
6000 0.34117485 0 -0.066198961 1.0027701 1.0027701
|
||||
6100 0.35298043 0 -0.016172816 1.0138504 1.0027701
|
||||
6200 0.35130653 0 0.027660468 1.0027701 1.0027701
|
||||
6300 0.35398766 0 0.087221238 1.0027701 1.0027701
|
||||
6400 0.30963379 0 0.11990957 1.0138504 1.0027701
|
||||
6500 0.3174541 0 0.14103528 1.0083102 1.0083102
|
||||
6600 0.31989791 0 0.11575506 1.0083102 1.0083102
|
||||
6700 0.33811477 0 0.060747353 1.0083102 1.0083102
|
||||
6800 0.3424043 0 0.010357152 1.0083102 1.0027701
|
||||
6900 0.34804319 0 -0.042621786 1.0083102 1.0027701
|
||||
7000 0.35357865 0 -0.067248959 1.0027701 1.0027701
|
||||
7100 0.33556885 0 -0.10983726 1.0083102 1.0027701
|
||||
7200 0.33531101 0 -0.112179 1.0027701 1.0027701
|
||||
7300 0.35742607 0 -0.078405267 1.0083102 1.0027701
|
||||
7400 0.34577559 0 -0.01985432 1.0027701 1.0083102
|
||||
7500 0.3498641 0 0.052289439 1.0027701 1.0027701
|
||||
7600 0.33773715 0 0.092939035 1.0027701 1.0027701
|
||||
7700 0.33093497 0 0.11924405 1.0083102 1.0027701
|
||||
7800 0.31435814 0 0.12701724 1.0027701 1.0027701
|
||||
7900 0.33132217 0 0.10793075 1.0083102 1.0027701
|
||||
8000 0.33451798 0 0.077993125 1.0027701 1.0027701
|
||||
8100 0.35188371 0 0.019929977 1.0083102 1.0083102
|
||||
8200 0.33645742 0 -0.039302079 1.0027701 1.0027701
|
||||
8300 0.3415632 0 -0.098067982 1.0138504 1.0027701
|
||||
8400 0.30619282 0 -0.12952879 1.0138504 1.0027701
|
||||
8500 0.34446484 0 -0.098084709 1.0027701 1.0027701
|
||||
8600 0.33761673 0 -0.07069818 1.0027701 1.0027701
|
||||
8700 0.34495452 0 -0.022458056 1.0083102 1.0027701
|
||||
8800 0.33502983 0 0.027742411 1.0027701 1.0027701
|
||||
8900 0.35418591 0 0.092390134 1.0083102 1.0083102
|
||||
9000 0.31648387 0 0.12467398 1.0083102 1.0027701
|
||||
9100 0.33994825 0 0.14460327 1.0138504 1.0027701
|
||||
9200 0.33822571 0 0.11273284 1.0027701 1.0027701
|
||||
9300 0.33260773 0 0.060063671 1.0083102 1.0083102
|
||||
9400 0.36140305 0 0.021427642 1.0138504 1.0027701
|
||||
9500 0.34273562 0 -0.034064202 1.0083102 1.0027701
|
||||
9600 0.33867054 0 -0.089076906 1.0138504 1.0027701
|
||||
9700 0.32088235 0 -0.12027075 1.0138504 1.0083102
|
||||
9800 0.3320823 0 -0.11602794 1.0138504 1.0027701
|
||||
9900 0.33916442 0 -0.080281044 1.0083102 1.0027701
|
||||
10000 0.34852268 0 -0.01000914 1.0083102 1.0083102
|
||||
10100 0.32955942 0 0.04258493 1.0027701 1.0083102
|
||||
10200 0.34487898 0 0.086971308 1.0083102 1.0027701
|
||||
10300 0.32325593 0 0.11558149 1.0138504 1.0027701
|
||||
10400 0.30927871 0 0.12239437 1.0027701 1.0027701
|
||||
10500 0.33176799 0 0.12285937 1.0138504 1.0083102
|
||||
10600 0.35120027 0 0.084897432 1.0027701 1.0027701
|
||||
10700 0.33129697 0 0.0053089279 1.0138504 1.0027701
|
||||
10800 0.36028769 0 -0.04280715 1.0083102 1.0027701
|
||||
10900 0.35552287 0 -0.084955999 1.0138504 1.0027701
|
||||
11000 0.3406024 0 -0.096554577 1.0027701 1.0027701
|
||||
11100 0.33041202 0 -0.10703492 1.0138504 1.0027701
|
||||
11200 0.32442686 0 -0.084328121 1.0193906 1.0027701
|
||||
11300 0.35952468 0 -0.020191965 1.0083102 1.0027701
|
||||
11400 0.34610624 0 0.03440148 1.0138504 1.0027701
|
||||
11500 0.3415612 0 0.1041929 1.0027701 1.0027701
|
||||
11600 0.34040042 0 0.13215705 1.0138504 1.0027701
|
||||
11700 0.33555094 0 0.12738686 1.0193906 1.0027701
|
||||
11800 0.3458647 0 0.10963398 1.0027701 1.0083102
|
||||
11900 0.33836678 0 0.067253864 1.0138504 1.0027701
|
||||
12000 0.34853314 0 0.03201448 1.0027701 1.0027701
|
||||
12100 0.34600048 0 -0.034833402 1.0083102 1.0027701
|
||||
12200 0.33145631 0 -0.09865675 1.0083102 1.0027701
|
||||
12300 0.32848884 0 -0.1248489 1.0083102 1.0027701
|
||||
12400 0.3321344 0 -0.11266575 1.0027701 1.0083102
|
||||
12500 0.32622305 0 -0.061634993 1.0083102 1.0083102
|
||||
12600 0.36213537 0 -0.0090593315 1.0138504 1.0027701
|
||||
12700 0.34673866 0 0.036734645 1.0138504 1.0027701
|
||||
12800 0.34606618 0 0.086267678 1.0138504 1.0027701
|
||||
12900 0.34271431 0 0.12415522 1.0027701 1.0027701
|
||||
13000 0.31993287 0 0.13879926 1.0027701 1.0083102
|
||||
13100 0.3422918 0 0.11978905 1.0083102 1.0027701
|
||||
13200 0.33055236 0 0.062620483 1.0083102 1.0027701
|
||||
13300 0.34652207 0 0.0043833459 1.0138504 1.0027701
|
||||
13400 0.33574661 0 -0.04691024 1.0027701 1.0027701
|
||||
13500 0.33940837 0 -0.074241604 1.0027701 1.0083102
|
||||
13600 0.32093414 0 -0.1078027 1.0138504 1.0083102
|
||||
13700 0.34336597 0 -0.10544097 1.0027701 1.0027701
|
||||
13800 0.35806461 0 -0.072531559 1.0027701 1.0027701
|
||||
13900 0.35209713 0 -0.018851408 1.0083102 1.0083102
|
||||
14000 0.35702629 0 0.061046366 1.0027701 1.0027701
|
||||
14100 0.33234093 0 0.094086465 1.0027701 1.0027701
|
||||
14200 0.3459466 0 0.12186656 1.0027701 1.0027701
|
||||
14300 0.3327428 0 0.11396572 1.0027701 1.0027701
|
||||
14400 0.32409443 0 0.10658903 1.0083102 1.0083102
|
||||
14500 0.35022184 0 0.083558031 1.0083102 1.0083102
|
||||
14600 0.34823843 0 0.024605569 1.0083102 1.0083102
|
||||
14700 0.35298973 0 -0.040418888 1.0027701 1.0027701
|
||||
14800 0.33679845 0 -0.10067728 1.0027701 1.0027701
|
||||
14900 0.32790966 0 -0.10925568 1.0083102 1.0027701
|
||||
15000 0.34208495 0 -0.09568004 1.0193906 1.0027701
|
||||
15100 0.33647529 0 -0.055652929 1.0027701 1.0027701
|
||||
15200 0.35328398 0 -0.020236536 1.0083102 1.0027701
|
||||
15300 0.34252669 0 0.026434179 1.0083102 1.0027701
|
||||
15400 0.34409435 0 0.094410599 1.0027701 1.0027701
|
||||
15500 0.32288994 0 0.12034455 1.0083102 1.0027701
|
||||
15600 0.32109689 0 0.13645185 1.0083102 1.0027701
|
||||
15700 0.33681572 0 0.098607746 1.0083102 1.0027701
|
||||
15800 0.33635195 0 0.05570715 1.0083102 1.0083102
|
||||
15900 0.34289757 0 0.013849092 1.0083102 1.0027701
|
||||
16000 0.34225547 0 -0.035597548 1.0193906 1.0027701
|
||||
16100 0.33660991 0 -0.076931881 1.0027701 1.0027701
|
||||
16200 0.32802152 0 -0.12765884 1.0083102 1.0027701
|
||||
16300 0.3469374 0 -0.10785455 1.0083102 1.0083102
|
||||
16400 0.34053641 0 -0.070259853 1.0027701 1.0027701
|
||||
16500 0.34610591 0 -0.014315306 1.0083102 1.0027701
|
||||
16600 0.35109001 0 0.041251169 1.0138504 1.0027701
|
||||
16700 0.34336905 0 0.077996627 1.0193906 1.0027701
|
||||
16800 0.33277414 0 0.11053634 1.0027701 1.0083102
|
||||
16900 0.32183338 0 0.11680626 1.0027701 1.0027701
|
||||
17000 0.34044352 0 0.10806555 1.0138504 1.0027701
|
||||
17100 0.32967873 0 0.067759786 1.0138504 1.0027701
|
||||
17200 0.36172278 0 -0.0048631904 1.0083102 1.0083102
|
||||
17300 0.35619435 0 -0.04215545 1.0027701 1.0027701
|
||||
17400 0.34540936 0 -0.093994174 1.0083102 1.0027701
|
||||
17500 0.33193585 0 -0.098831315 1.0083102 1.0027701
|
||||
17600 0.3544756 0 -0.085660403 1.0083102 1.0083102
|
||||
17700 0.34505209 0 -0.069640515 1.0193906 1.0083102
|
||||
17800 0.36291124 0 -0.0063088133 1.0027701 1.0027701
|
||||
17900 0.34255705 0 0.046794555 1.0027701 1.0027701
|
||||
18000 0.34163238 0 0.11767705 1.0138504 1.0027701
|
||||
18100 0.3466445 0 0.1351712 1.0193906 1.0083102
|
||||
18200 0.33037668 0 0.12703659 1.0027701 1.0027701
|
||||
18300 0.33677404 0 0.10956306 1.0027701 1.0083102
|
||||
18400 0.34978954 0 0.087193072 1.0027701 1.0027701
|
||||
18500 0.33354363 0 0.051095814 1.0138504 1.0027701
|
||||
18600 0.34651729 0 0.0056245561 1.0027701 1.0027701
|
||||
18700 0.32622232 0 -0.047319269 1.0027701 1.0083102
|
||||
18800 0.32978847 0 -0.054929416 1.0138504 1.0027701
|
||||
18900 0.34192451 0 -0.037252471 1.0027701 1.0027701
|
||||
19000 0.34061294 0 -0.001167235 1.0083102 1.0027701
|
||||
19100 0.34194478 0 0.016945224 1.0083102 1.0027701
|
||||
19200 0.33321765 0 0.050665354 1.0193906 1.0027701
|
||||
19300 0.33197783 0 0.080470585 1.0138504 1.0027701
|
||||
19400 0.33284715 0 0.12423599 1.0193906 1.0027701
|
||||
19500 0.33867856 0 0.12689524 1.0027701 1.0027701
|
||||
19600 0.36092786 0 0.11417704 1.0027701 1.0027701
|
||||
19700 0.34270183 0 0.069038291 1.0249307 1.0083102
|
||||
19800 0.34880695 0 0.042483681 1.0083102 1.0083102
|
||||
19900 0.33903644 0 0.034788638 1.0027701 1.0027701
|
||||
20000 0.32590125 0 0.011383785 1.0083102 1.0083102
|
||||
20100 0.30358859 0 0.0030743554 1.0138504 1.0027701
|
||||
20200 0.31830224 0 0.017637826 1.0027701 1.0027701
|
||||
20300 0.34195438 0 0.072811099 1.0193906 1.0083102
|
||||
20400 0.31249563 0 0.10063541 1.0083102 1.0027701
|
||||
20500 0.31544938 0 0.1405794 1.0027701 1.0027701
|
||||
20600 0.30071644 0 0.12763486 1.0027701 1.0027701
|
||||
20700 0.2890265 0 0.1136651 1.0083102 1.0027701
|
||||
20800 0.28962296 0 0.094481978 1.0083102 1.0027701
|
||||
20900 0.29447212 0 0.0967165 1.0138504 1.0083102
|
||||
21000 0.31159961 0 0.067307231 1.0027701 1.0027701
|
||||
21100 0.30490648 0 0.017689358 1.0027701 1.0083102
|
||||
21200 0.30687262 0 -0.016055512 1.0027701 1.0083102
|
||||
21300 0.30083286 0 -0.0014988997 1.0083102 1.0027701
|
||||
21400 0.32070426 0 0.015960302 1.0083102 1.0083102
|
||||
21500 0.31439311 0 0.038170385 1.0083102 1.0083102
|
||||
21600 0.32617832 0 0.043263788 1.0083102 1.0027701
|
||||
21700 0.35151793 0 0.066302727 1.0083102 1.0083102
|
||||
21800 0.35912885 0 0.070099103 1.0027701 1.0027701
|
||||
21900 0.32451958 0 0.068935768 1.0083102 1.0027701
|
||||
22000 0.35219298 0 0.067161227 1.0138504 1.0083102
|
||||
22100 0.34857705 0 0.032731746 1.0138504 1.0027701
|
||||
22200 0.34750227 0 0.0056917695 1.0027701 1.0027701
|
||||
22300 0.34766017 0 -0.0027090483 1.0027701 1.0083102
|
||||
22400 0.33426062 0 -0.023196063 1.0027701 1.0083102
|
||||
22500 0.34174625 0 -0.025019717 1.0083102 1.0027701
|
||||
22600 0.3356145 0 -0.029707418 1.0138504 1.0027701
|
||||
22700 0.3362653 0 -0.035815733 1.0083102 1.0027701
|
||||
22800 0.33973405 0 -0.0024705835 1.0193906 1.0027701
|
||||
22900 0.33813085 0 0.0077527467 1.0027701 1.0027701
|
||||
23000 0.33339981 0 0.028340744 1.0027701 1.0027701
|
||||
23100 0.34079832 0 0.018521302 1.0249307 1.0027701
|
||||
23200 0.33074548 0 0.032378405 1.0138504 1.0083102
|
||||
23300 0.32965664 0 0.035989589 1.0138504 1.0027701
|
||||
23400 0.30927749 0 0.024581106 1.0083102 1.0027701
|
||||
23500 0.32890632 0 0.01092479 1.0138504 1.0083102
|
||||
23600 0.34137438 0 0.0094839745 1.0083102 1.0027701
|
||||
23700 0.34512638 0 -0.012392771 1.0138504 1.0027701
|
||||
23800 0.31781354 0 -0.012908449 1.0027701 1.0027701
|
||||
23900 0.32405513 0 -0.015018071 1.0027701 1.0027701
|
||||
24000 0.33549728 0 -0.012812915 1.0083102 1.0083102
|
||||
24100 0.31368736 0 -0.020818372 1.0027701 1.0027701
|
||||
24200 0.33533836 0 0.0056121057 1.0027701 1.0027701
|
||||
24300 0.32530627 0 0.018183931 1.0249307 1.0027701
|
||||
24400 0.31930662 0 0.027446878 1.0027701 1.0083102
|
||||
24500 0.33540302 0 0.040307455 1.0193906 1.0027701
|
||||
24600 0.34020431 0 0.027403921 1.0027701 1.0027701
|
||||
24700 0.3291814 0 0.01204865 1.0083102 1.0027701
|
||||
24800 0.31552604 0 0.019654111 1.0083102 1.0083102
|
||||
24900 0.34727253 0 0.01670543 1.0027701 1.0027701
|
||||
25000 0.35120105 0 0.0038617562 1.0083102 1.0027701
|
||||
25100 0.32706871 0 -0.021196623 1.0193906 1.0083102
|
||||
25200 0.32915282 0 -0.017146508 1.0083102 1.0027701
|
||||
25300 0.32577518 0 -0.01312495 1.0083102 1.0027701
|
||||
25400 0.33286855 0 0.0014726193 1.0138504 1.0027701
|
||||
25500 0.33002601 0 0.0080974022 1.0083102 1.0027701
|
||||
25600 0.34127655 0 0.014296091 1.0138504 1.0083102
|
||||
25700 0.34048065 0 0.022513032 1.0083102 1.0027701
|
||||
25800 0.33029079 0 0.038733531 1.0138504 1.0027701
|
||||
25900 0.33031324 0 0.026156982 1.0027701 1.0027701
|
||||
26000 0.32967371 0 0.028727383 1.0027701 1.0083102
|
||||
26100 0.33775718 0 0.015607478 1.0027701 1.0083102
|
||||
26200 0.35097144 0 0.012291703 1.0027701 1.0027701
|
||||
26300 0.34303792 0 0.00094823191 1.0027701 1.0083102
|
||||
26400 0.33632665 0 -0.0026904889 1.0027701 1.0083102
|
||||
26500 0.33580127 0 -0.0074168555 1.0138504 1.0083102
|
||||
26600 0.33063188 0 -0.020378601 1.0027701 1.0083102
|
||||
26700 0.33581846 0 -0.00084397268 1.0027701 1.0027701
|
||||
26800 0.32998532 0 0.015932208 1.0083102 1.0083102
|
||||
26900 0.33825444 0 0.010428603 1.0193906 1.0027701
|
||||
27000 0.32081518 0 0.019818223 1.0083102 1.0083102
|
||||
27100 0.31448098 0 0.020093416 1.0027701 1.0027701
|
||||
27200 0.32643684 0 0.021934917 1.0083102 1.0027701
|
||||
27300 0.33289466 0 0.023713072 1.0138504 1.0083102
|
||||
27400 0.32310744 0 0.024110945 1.0193906 1.0027701
|
||||
27500 0.33115619 0 0.0025776713 1.0193906 1.0027701
|
||||
27600 0.33295887 0 -0.010710764 1.0083102 1.0083102
|
||||
27700 0.32968876 0 -0.0064595905 1.0083102 1.0027701
|
||||
27800 0.34064581 0 -0.0086519116 1.0027701 1.0027701
|
||||
27900 0.33559187 0 -0.0055753593 1.0249307 1.0027701
|
||||
28000 0.32300727 0 -0.0004153384 1.0138504 1.0027701
|
||||
28100 0.32147461 0 -0.0058543412 1.0083102 1.0083102
|
||||
28200 0.35532383 0 0.013646951 1.0083102 1.0083102
|
||||
28300 0.31507942 0 0.026532255 1.0083102 1.0027701
|
||||
28400 0.32711006 0 0.033214981 1.0083102 1.0027701
|
||||
28500 0.34472462 0 0.028050837 1.0027701 1.0027701
|
||||
28600 0.33708059 0 0.019115676 1.0027701 1.0027701
|
||||
28700 0.34478087 0 0.023743689 1.0193906 1.0027701
|
||||
28800 0.34546686 0 0.0081772997 1.0083102 1.0027701
|
||||
28900 0.34004886 0 0.017771865 1.0138504 1.0027701
|
||||
29000 0.33604232 0 -0.010505671 1.0027701 1.0027701
|
||||
29100 0.33541374 0 -0.016273261 1.0027701 1.0027701
|
||||
29200 0.34347489 0 -0.010002306 1.0083102 1.0027701
|
||||
29300 0.34083904 0 0.0089701784 1.0083102 1.0027701
|
||||
29400 0.34846892 0 0.020765104 1.0027701 1.0027701
|
||||
29500 0.3416255 0 0.022650856 1.0083102 1.0027701
|
||||
29600 0.33725496 0 0.020693083 1.0027701 1.0027701
|
||||
29700 0.34480638 0 0.024317128 1.0138504 1.0027701
|
||||
29800 0.31459471 0 0.023097895 1.0027701 1.0027701
|
||||
29900 0.33014448 0 0.03114046 1.0138504 1.0027701
|
||||
30000 0.33741498 0 0.015624314 1.0083102 1.0027701
|
||||
30100 0.32598657 0 -0.0018860541 1.0138504 1.0027701
|
||||
30200 0.34855815 0 0.0017983372 1.0027701 1.0027701
|
||||
30300 0.33375921 0 0.0010991235 1.0083102 1.0083102
|
||||
30400 0.35008944 0 -0.0027316177 1.0027701 1.0027701
|
||||
30500 0.33279729 0 -0.0035788551 1.0027701 1.0027701
|
||||
30600 0.33868746 0 -0.0016249482 1.0027701 1.0027701
|
||||
30700 0.33597034 0 -0.0014524001 1.0193906 1.0083102
|
||||
30800 0.3227257 0 0.016353457 1.0193906 1.0027701
|
||||
30900 0.32676516 0 0.027396654 1.0027701 1.0027701
|
||||
31000 0.34083982 0 0.031606413 1.0138504 1.0083102
|
||||
31100 0.32165238 0 0.013583368 1.0027701 1.0027701
|
||||
31200 0.3428492 0 0.020486611 1.0138504 1.0027701
|
||||
31300 0.32372541 0 0.01215566 1.0027701 1.0027701
|
||||
31400 0.32734692 0 0.016229397 1.0083102 1.0027701
|
||||
31500 0.33089262 0 0.0060426618 1.0027701 1.0027701
|
||||
31600 0.34273493 0 -0.013456537 1.0083102 1.0083102
|
||||
31700 0.32723905 0 -0.019243766 1.0027701 1.0027701
|
||||
31800 0.33636488 0 0.0027814902 1.0027701 1.0083102
|
||||
31900 0.32834805 0 0.00706877 1.0083102 1.0027701
|
||||
32000 0.33995148 0 0.0018383309 1.0083102 1.0083102
|
||||
32100 0.33412282 0 0.0076455933 1.0027701 1.0083102
|
||||
32200 0.34334884 0 0.023586129 1.0083102 1.0027701
|
||||
32300 0.32778925 0 0.020564321 1.0193906 1.0083102
|
||||
32400 0.33163443 0 0.038878463 1.0083102 1.0027701
|
||||
32500 0.32290345 0 0.022247461 1.0027701 1.0027701
|
||||
32600 0.34113954 0 0.010966365 1.0138504 1.0027701
|
||||
32700 0.33390633 0 0.0037777555 1.0083102 1.0083102
|
||||
32800 0.34385341 0 0.010556575 1.0138504 1.0083102
|
||||
32900 0.32137047 0 0.00022027143 1.0138504 1.0027701
|
||||
33000 0.32079172 0 -0.017261272 1.0083102 1.0027701
|
||||
33100 0.33570882 0 -0.0051942206 1.0027701 1.0027701
|
||||
33200 0.34320894 0 -0.011515281 1.0138504 1.0027701
|
||||
33300 0.32794746 0 -0.0018153673 1.0027701 1.0027701
|
||||
33400 0.33060982 0 0.027118146 1.0027701 1.0027701
|
||||
33500 0.33641809 0 0.02143035 1.0083102 1.0027701
|
||||
33600 0.33643061 0 0.020833068 1.0083102 1.0027701
|
||||
33700 0.3485949 0 0.030918751 1.0083102 1.0027701
|
||||
33800 0.3283985 0 0.01947613 1.0193906 1.0027701
|
||||
33900 0.31959761 0 0.021128147 1.0027701 1.0027701
|
||||
34000 0.33897984 0 0.015270986 1.0027701 1.0083102
|
||||
34100 0.32392267 0 0.0020130852 1.0083102 1.0027701
|
||||
34200 0.33084514 0 -0.024316708 1.0027701 1.0027701
|
||||
34300 0.3342259 0 -0.0059047764 1.0138504 1.0027701
|
||||
34400 0.33385098 0 0.0063818721 1.0027701 1.0027701
|
||||
34500 0.33255603 0 -0.01023837 1.0027701 1.0083102
|
||||
34600 0.34766173 0 0.0056703013 1.0083102 1.0027701
|
||||
34700 0.339822 0 0.0061648559 1.0083102 1.0027701
|
||||
34800 0.33902329 0 0.030037037 1.0027701 1.0083102
|
||||
34900 0.3216153 0 0.027996689 1.0027701 1.0027701
|
||||
35000 0.32701056 0 0.024778517 1.0083102 1.0027701
|
||||
35100 0.3124942 0 0.011316548 1.0027701 1.0027701
|
||||
35200 0.34486416 0 0.011670127 1.0027701 1.0027701
|
||||
35300 0.33275353 0 0.020491246 1.0027701 1.0027701
|
||||
35400 0.33618763 0 0.014678874 1.0083102 1.0027701
|
||||
35500 0.32352282 0 -0.018568683 1.0027701 1.0027701
|
||||
35600 0.32617903 0 -0.012796912 1.0083102 1.0027701
|
||||
35700 0.32378048 0 -0.021318585 1.0027701 1.0083102
|
||||
35800 0.3371086 0 -0.0023678632 1.0027701 1.0083102
|
||||
35900 0.33818476 0 0.011197742 1.0083102 1.0027701
|
||||
36000 0.35142144 0 0.022520935 1.0083102 1.0027701
|
||||
36100 0.35147297 0 0.020277852 1.0083102 1.0027701
|
||||
36200 0.33489465 0 0.014564878 1.0193906 1.0027701
|
||||
36300 0.33841515 0 0.036439962 1.0027701 1.0027701
|
||||
36400 0.32301096 0 0.019966746 1.0027701 1.0027701
|
||||
36500 0.35612028 0 0.036509556 1.0027701 1.0027701
|
||||
36600 0.33841597 0 -0.0042180605 1.0083102 1.0083102
|
||||
36700 0.34477654 0 -0.0052770853 1.0193906 1.0083102
|
||||
36800 0.33804317 0 -0.013751733 1.0027701 1.0027701
|
||||
36900 0.35003816 0 -0.0021184393 1.0027701 1.0027701
|
||||
37000 0.32965041 0 -0.020900951 1.0083102 1.0027701
|
||||
37100 0.34653095 0 -0.013667977 1.0027701 1.0027701
|
||||
37200 0.35019871 0 -0.0071740923 1.0027701 1.0027701
|
||||
37300 0.34859745 0 0.02006041 1.0138504 1.0027701
|
||||
37400 0.35739859 0 0.020892822 1.0083102 1.0027701
|
||||
37500 0.34128859 0 0.041072111 1.0083102 1.0083102
|
||||
37600 0.33781905 0 0.023376738 1.0083102 1.0083102
|
||||
37700 0.32961874 0 0.030953741 1.0138504 1.0027701
|
||||
37800 0.343987 0 0.029579795 1.0083102 1.0027701
|
||||
37900 0.33610448 0 0.036836828 1.0138504 1.0027701
|
||||
38000 0.32757228 0 0.020902031 1.0027701 1.0027701
|
||||
38100 0.32735808 0 0.019544751 1.0138504 1.0083102
|
||||
38200 0.35646953 0 0.044607528 1.0027701 1.0083102
|
||||
38300 0.32509773 0 0.03610738 1.0138504 1.0027701
|
||||
38400 0.32111741 0 0.034474043 1.0083102 1.0083102
|
||||
38500 0.30590608 0 0.053461212 1.0083102 1.0027701
|
||||
38600 0.32322402 0 0.053453832 1.0138504 1.0083102
|
||||
38700 0.33843057 0 0.076264534 1.0027701 1.0027701
|
||||
38800 0.31350741 0 0.064733869 1.0083102 1.0027701
|
||||
38900 0.31943061 0 0.067836769 1.0083102 1.0027701
|
||||
39000 0.33775583 0 0.0788316 1.0083102 1.0083102
|
||||
39100 0.34256036 0 0.075874935 1.0027701 1.0027701
|
||||
39200 0.33128527 0 0.071610976 1.0193906 1.0027701
|
||||
39300 0.34519653 0 0.046257301 1.0083102 1.0083102
|
||||
39400 0.34351844 0 0.052422917 1.0027701 1.0027701
|
||||
39500 0.35716037 0 0.048916058 1.0083102 1.0027701
|
||||
39600 0.34000737 0 0.016149089 1.0083102 1.0027701
|
||||
39700 0.34587892 0 0.021619621 1.0083102 1.0083102
|
||||
39800 0.34878036 0 0.0092881327 1.0083102 1.0027701
|
||||
39900 0.35225411 0 -0.011341599 1.0083102 1.0027701
|
||||
40000 0.36309266 0 0.0050869295 1.0304709 1.0027701
|
||||
Loop time of 1.30389 on 2 procs for 40000 steps with 361 atoms
|
||||
|
||||
Performance: 13252650.572 tau/day, 30677.432 timesteps/s
|
||||
97.6% CPU use with 2 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.041365 | 0.041785 | 0.042204 | 0.2 | 3.20
|
||||
Bond | 0.35501 | 0.37082 | 0.38664 | 2.6 | 28.44
|
||||
Neigh | 0.30901 | 0.31013 | 0.31125 | 0.2 | 23.78
|
||||
Comm | 0.12939 | 0.15871 | 0.18803 | 7.4 | 12.17
|
||||
Output | 0.00489 | 0.005671 | 0.0064521 | 1.0 | 0.43
|
||||
Modify | 0.28208 | 0.28362 | 0.28516 | 0.3 | 21.75
|
||||
Other | | 0.1332 | | | 10.21
|
||||
|
||||
Nlocal: 180.5 ave 181 max 180 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 52.5 ave 53 max 52 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 2 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Ave special neighs/atom = 31.0249
|
||||
Neighbor list builds = 3079
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:01
|
||||
@ -1,541 +0,0 @@
|
||||
LAMMPS (27 Nov 2018)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# 2d circle of particles inside a box with LJ walls
|
||||
|
||||
variable b index 0
|
||||
|
||||
variable x index 50
|
||||
variable y index 20
|
||||
variable d index 20
|
||||
|
||||
# careful not to slam into wall too hard
|
||||
|
||||
variable v index 0.3
|
||||
variable w index 0.08
|
||||
|
||||
units lj
|
||||
dimension 2
|
||||
atom_style bond
|
||||
boundary f f p
|
||||
|
||||
lattice hex 0.85
|
||||
Lattice spacing in x,y,z = 1.16553 2.01877 1.16553
|
||||
region box block 0 $x 0 $y -0.5 0.5
|
||||
region box block 0 50 0 $y -0.5 0.5
|
||||
region box block 0 50 0 20 -0.5 0.5
|
||||
create_box 1 box bond/types 1 extra/bond/per/atom 6
|
||||
Created orthogonal box = (0 0 -0.582767) to (58.2767 40.3753 0.582767)
|
||||
2 by 2 by 1 MPI processor grid
|
||||
region circle sphere $(v_d/2+1) $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
|
||||
region circle sphere 11 $(v_d/2/sqrt(3.0)+1) 0.0 $(v_d/2)
|
||||
region circle sphere 11 6.7735026918962581988 0.0 $(v_d/2)
|
||||
region circle sphere 11 6.7735026918962581988 0.0 10
|
||||
create_atoms 1 region circle
|
||||
Created 361 atoms
|
||||
Time spent = 0.000665188 secs
|
||||
mass 1 1.0
|
||||
|
||||
velocity all create 0.5 87287 loop geom
|
||||
velocity all set $v $w 0 sum yes
|
||||
velocity all set 0.3 $w 0 sum yes
|
||||
velocity all set 0.3 0.08 0 sum yes
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_coeff 1 1 10.0 1.0 2.5
|
||||
|
||||
bond_style harmonic
|
||||
bond_coeff 1 10.0 1.2
|
||||
|
||||
create_bonds many all all 1 1.0 1.5
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 10 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 42 29 1
|
||||
2 neighbor lists, perpetual/occasional/extra = 1 1 0
|
||||
(1) command create_bonds, occasional
|
||||
attributes: full, newton on
|
||||
pair build: full/bin
|
||||
stencil: full/bin/2d
|
||||
bin: standard
|
||||
(2) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Added 1014 bonds, new total = 1014
|
||||
6 = max # of 1-2 neighbors
|
||||
30 = max # of 1-3 neighbors
|
||||
180 = max # of 1-4 neighbors
|
||||
36 = max # of special neighbors
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
fix 1 all nve
|
||||
|
||||
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi $x 1 1 2.5
|
||||
fix 2 all wall/lj93 xlo 0.0 1 1 2.5 xhi 50 1 1 2.5
|
||||
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi $y 1 1 2.5
|
||||
fix 3 all wall/lj93 ylo 0.0 1 1 2.5 yhi 20 1 1 2.5
|
||||
|
||||
comm_style tiled
|
||||
fix 10 all balance 50 0.9 rcb
|
||||
|
||||
#compute 1 all property/atom proc
|
||||
#variable p atom (c_1%10)+1
|
||||
#dump 2 all custom 50 tmp.dump id v_p x y z
|
||||
|
||||
#dump 3 all image 200 image.*.jpg v_p type bond atom 0.25 # adiam 1.0 view 0 0 zoom 1.8 subbox yes 0.02
|
||||
#variable colors string # "red green blue yellow white # purple pink orange lime gray"
|
||||
#dump_modify 3 pad 5 amap 0 10 sa 1 10 ${colors}
|
||||
|
||||
thermo_style custom step temp epair press f_10[3] f_10
|
||||
thermo 100
|
||||
|
||||
run 40000
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 2.8
|
||||
ghost atom cutoff = 2.8
|
||||
binsize = 1.4, bins = 42 29 1
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/newton
|
||||
stencil: half/bin/2d/newton
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.02 | 7.048 | 7.096 Mbytes
|
||||
Step Temp E_pair Press f_10[3] f_10
|
||||
0 0.57437856 0 0.26099453 3.2354571 1.0526316
|
||||
100 0.29756515 0 0.10149401 1.0193906 1.0083102
|
||||
200 0.35394813 0 0.075159099 1.0304709 1.0193906
|
||||
300 0.39245849 0 0.033002384 1.0083102 1.0193906
|
||||
400 0.34078347 0 -0.020825841 1.0304709 1.0083102
|
||||
500 0.35201095 0 -0.062637506 1.0193906 1.0083102
|
||||
600 0.34014717 0 -0.11122965 1.0415512 1.0083102
|
||||
700 0.3323524 0 -0.11598015 1.0193906 1.0083102
|
||||
800 0.35116047 0 -0.096162395 1.0193906 1.0193906
|
||||
900 0.35695352 0 -0.01385176 1.0526316 1.0193906
|
||||
1000 0.36986539 0 0.056772858 1.0083102 1.0083102
|
||||
1100 0.34584644 0 0.084941323 1.0304709 1.0083102
|
||||
1200 0.31921435 0 0.10545078 1.0415512 1.0083102
|
||||
1300 0.32952819 0 0.124902 1.0083102 1.0193906
|
||||
1400 0.34497365 0 0.12662081 1.0193906 1.0083102
|
||||
1500 0.33429243 0 0.096230972 1.0193906 1.0193906
|
||||
1600 0.33765387 0 0.025800542 1.0304709 1.0083102
|
||||
1700 0.35134464 0 -0.04422593 1.0415512 1.0083102
|
||||
1800 0.35003859 0 -0.096745576 1.0304709 1.0083102
|
||||
1900 0.33839618 0 -0.095465943 1.0193906 1.0083102
|
||||
2000 0.33732078 0 -0.094652802 1.0083102 1.0083102
|
||||
2100 0.34552238 0 -0.076729261 1.0304709 1.0083102
|
||||
2200 0.34893142 0 -0.036853228 1.0304709 1.0083102
|
||||
2300 0.35379341 0 0.021124847 1.0304709 1.0193906
|
||||
2400 0.34829744 0 0.09230184 1.0304709 1.0083102
|
||||
2500 0.33038141 0 0.1399855 1.0193906 1.0193906
|
||||
2600 0.30983019 0 0.12754742 1.0083102 1.0083102
|
||||
2700 0.32992561 0 0.10485138 1.0415512 1.0083102
|
||||
2800 0.34604747 0 0.066174138 1.0083102 1.0083102
|
||||
2900 0.3444791 0 0.036590652 1.0193906 1.0193906
|
||||
3000 0.34721342 0 -0.023793368 1.0193906 1.0193906
|
||||
3100 0.33404314 0 -0.08374223 1.0415512 1.0083102
|
||||
3200 0.33019355 0 -0.12715599 1.0083102 1.0304709
|
||||
3300 0.33515177 0 -0.12217394 1.0193906 1.0083102
|
||||
3400 0.33628481 0 -0.070877624 1.0193906 1.0083102
|
||||
3500 0.34257038 0 -0.021612062 1.0304709 1.0083102
|
||||
3600 0.32838009 0 0.030131228 1.0083102 1.0083102
|
||||
3700 0.34462142 0 0.074586378 1.0526316 1.0193906
|
||||
3800 0.30891825 0 0.10605673 1.0304709 1.0083102
|
||||
3900 0.33847951 0 0.13956139 1.0083102 1.0083102
|
||||
4000 0.32952079 0 0.12688129 1.0193906 1.0304709
|
||||
4100 0.32646772 0 0.081089042 1.0304709 1.0193906
|
||||
4200 0.35399503 0 0.013422873 1.0083102 1.0083102
|
||||
4300 0.33154914 0 -0.050919508 1.0193906 1.0193906
|
||||
4400 0.34113556 0 -0.083171 1.0304709 1.0083102
|
||||
4500 0.32651708 0 -0.1063133 1.0304709 1.0083102
|
||||
4600 0.34359609 0 -0.1076395 1.0083102 1.0083102
|
||||
4700 0.34973537 0 -0.088231606 1.0415512 1.0083102
|
||||
4800 0.35198515 0 -0.020901044 1.0415512 1.0083102
|
||||
4900 0.35187284 0 0.043645941 1.0415512 1.0083102
|
||||
5000 0.34887336 0 0.095698609 1.0193906 1.0083102
|
||||
5100 0.30308163 0 0.11649328 1.0193906 1.0083102
|
||||
5200 0.32401285 0 0.12072411 1.0193906 1.0083102
|
||||
5300 0.33025072 0 0.10933161 1.0193906 1.0083102
|
||||
5400 0.33288012 0 0.078356448 1.0083102 1.0193906
|
||||
5500 0.35142492 0 0.036958063 1.0193906 1.0083102
|
||||
5600 0.35125368 0 -0.041371343 1.0304709 1.0083102
|
||||
5700 0.34547744 0 -0.096450846 1.0637119 1.0083102
|
||||
5800 0.30939887 0 -0.12356656 1.0083102 1.0193906
|
||||
5900 0.32315628 0 -0.11338676 1.0193906 1.0193906
|
||||
6000 0.34117485 0 -0.066198961 1.0193906 1.0083102
|
||||
6100 0.35298043 0 -0.016172816 1.0304709 1.0193906
|
||||
6200 0.35130653 0 0.027660468 1.0415512 1.0083102
|
||||
6300 0.35398766 0 0.087221238 1.0083102 1.0083102
|
||||
6400 0.30963379 0 0.11990957 1.0415512 1.0083102
|
||||
6500 0.3174541 0 0.14103528 1.0193906 1.0193906
|
||||
6600 0.31989791 0 0.11575506 1.0304709 1.0193906
|
||||
6700 0.33811477 0 0.060747353 1.0415512 1.0193906
|
||||
6800 0.3424043 0 0.010357152 1.0193906 1.0083102
|
||||
6900 0.34804319 0 -0.042621786 1.0193906 1.0083102
|
||||
7000 0.35357865 0 -0.067248959 1.0083102 1.0083102
|
||||
7100 0.33556885 0 -0.10983726 1.0193906 1.0083102
|
||||
7200 0.33531101 0 -0.112179 1.0304709 1.0083102
|
||||
7300 0.35742607 0 -0.078405267 1.0304709 1.0193906
|
||||
7400 0.34577559 0 -0.01985432 1.0193906 1.0083102
|
||||
7500 0.3498641 0 0.052289439 1.0526316 1.0083102
|
||||
7600 0.33773715 0 0.092939035 1.0083102 1.0193906
|
||||
7700 0.33093497 0 0.11924405 1.0304709 1.0083102
|
||||
7800 0.31435814 0 0.12701724 1.0083102 1.0304709
|
||||
7900 0.33132217 0 0.10793075 1.0083102 1.0083102
|
||||
8000 0.33451798 0 0.077993125 1.0304709 1.0193906
|
||||
8100 0.35188371 0 0.019929977 1.0193906 1.0083102
|
||||
8200 0.33645742 0 -0.039302079 1.0193906 1.0193906
|
||||
8300 0.3415632 0 -0.098067982 1.0193906 1.0083102
|
||||
8400 0.30619282 0 -0.12952879 1.0304709 1.0193906
|
||||
8500 0.34446484 0 -0.098084709 1.0083102 1.0083102
|
||||
8600 0.33761673 0 -0.07069818 1.0193906 1.0083102
|
||||
8700 0.34495452 0 -0.022458056 1.0193906 1.0083102
|
||||
8800 0.33502983 0 0.027742411 1.0193906 1.0083102
|
||||
8900 0.35418591 0 0.092390134 1.0083102 1.0193906
|
||||
9000 0.31648387 0 0.12467398 1.0193906 1.0083102
|
||||
9100 0.33994825 0 0.14460327 1.0193906 1.0083102
|
||||
9200 0.33822571 0 0.11273284 1.0193906 1.0083102
|
||||
9300 0.33260773 0 0.060063671 1.0083102 1.0193906
|
||||
9400 0.36140305 0 0.021427642 1.0193906 1.0083102
|
||||
9500 0.34273562 0 -0.034064202 1.0193906 1.0083102
|
||||
9600 0.33867054 0 -0.089076906 1.0193906 1.0083102
|
||||
9700 0.32088235 0 -0.12027075 1.0193906 1.0083102
|
||||
9800 0.3320823 0 -0.11602794 1.0415512 1.0083102
|
||||
9900 0.33916442 0 -0.080281044 1.0083102 1.0083102
|
||||
10000 0.34852268 0 -0.01000914 1.0193906 1.0083102
|
||||
10100 0.32955942 0 0.04258493 1.0083102 1.0083102
|
||||
10200 0.34487898 0 0.086971308 1.0304709 1.0083102
|
||||
10300 0.32325593 0 0.11558149 1.0304709 1.0193906
|
||||
10400 0.30927871 0 0.12239437 1.0083102 1.0083102
|
||||
10500 0.33176799 0 0.12285937 1.0193906 1.0083102
|
||||
10600 0.35120027 0 0.084897432 1.0415512 1.0083102
|
||||
10700 0.33129697 0 0.0053089279 1.0193906 1.0193906
|
||||
10800 0.36028769 0 -0.04280715 1.0193906 1.0083102
|
||||
10900 0.35552287 0 -0.084955999 1.0193906 1.0193906
|
||||
11000 0.3406024 0 -0.096554577 1.0083102 1.0083102
|
||||
11100 0.33041202 0 -0.10703492 1.0304709 1.0193906
|
||||
11200 0.32442686 0 -0.084328121 1.0304709 1.0193906
|
||||
11300 0.35952468 0 -0.020191965 1.0304709 1.0083102
|
||||
11400 0.34610624 0 0.03440148 1.0193906 1.0193906
|
||||
11500 0.3415612 0 0.1041929 1.0193906 1.0083102
|
||||
11600 0.34040042 0 0.13215705 1.0304709 1.0083102
|
||||
11700 0.33555094 0 0.12738686 1.0415512 1.0193906
|
||||
11800 0.3458647 0 0.10963398 1.0083102 1.0193906
|
||||
11900 0.33836678 0 0.067253864 1.0193906 1.0193906
|
||||
12000 0.34853314 0 0.03201448 1.0193906 1.0083102
|
||||
12100 0.34600048 0 -0.034833402 1.0304709 1.0193906
|
||||
12200 0.33145631 0 -0.09865675 1.0193906 1.0193906
|
||||
12300 0.32848884 0 -0.1248489 1.0193906 1.0083102
|
||||
12400 0.3321344 0 -0.11266575 1.0083102 1.0083102
|
||||
12500 0.32622305 0 -0.061634993 1.0304709 1.0083102
|
||||
12600 0.36213537 0 -0.0090593315 1.0526316 1.0083102
|
||||
12700 0.34673866 0 0.036734645 1.0193906 1.0083102
|
||||
12800 0.34606618 0 0.086267678 1.0193906 1.0083102
|
||||
12900 0.34271431 0 0.12415522 1.0193906 1.0083102
|
||||
13000 0.31993287 0 0.13879926 1.0193906 1.0193906
|
||||
13100 0.3422918 0 0.11978905 1.0083102 1.0083102
|
||||
13200 0.33055236 0 0.062620483 1.0083102 1.0083102
|
||||
13300 0.34652207 0 0.0043833459 1.0304709 1.0083102
|
||||
13400 0.33574661 0 -0.04691024 1.0304709 1.0083102
|
||||
13500 0.33940837 0 -0.074241604 1.0304709 1.0083102
|
||||
13600 0.32093414 0 -0.1078027 1.0193906 1.0083102
|
||||
13700 0.34336597 0 -0.10544097 1.0193906 1.0083102
|
||||
13800 0.35806461 0 -0.072531559 1.0193906 1.0083102
|
||||
13900 0.35209713 0 -0.018851408 1.0193906 1.0083102
|
||||
14000 0.35702629 0 0.061046366 1.0083102 1.0083102
|
||||
14100 0.33234093 0 0.094086465 1.0083102 1.0083102
|
||||
14200 0.3459466 0 0.12186656 1.0193906 1.0193906
|
||||
14300 0.3327428 0 0.11396572 1.0193906 1.0083102
|
||||
14400 0.32409443 0 0.10658903 1.0193906 1.0193906
|
||||
14500 0.35022184 0 0.083558031 1.0083102 1.0083102
|
||||
14600 0.34823843 0 0.024605569 1.0083102 1.0193906
|
||||
14700 0.35298973 0 -0.040418888 1.0193906 1.0083102
|
||||
14800 0.33679845 0 -0.10067728 1.0193906 1.0083102
|
||||
14900 0.32790966 0 -0.10925568 1.0193906 1.0193906
|
||||
15000 0.34208495 0 -0.09568004 1.0193906 1.0083102
|
||||
15100 0.33647529 0 -0.055652929 1.0083102 1.0083102
|
||||
15200 0.35328398 0 -0.020236536 1.0415512 1.0193906
|
||||
15300 0.34252669 0 0.026434179 1.0304709 1.0083102
|
||||
15400 0.34409435 0 0.094410599 1.0304709 1.0083102
|
||||
15500 0.32288994 0 0.12034455 1.0304709 1.0193906
|
||||
15600 0.32109689 0 0.13645185 1.0193906 1.0083102
|
||||
15700 0.33681572 0 0.098607746 1.0415512 1.0193906
|
||||
15800 0.33635195 0 0.05570715 1.0193906 1.0083102
|
||||
15900 0.34289757 0 0.013849092 1.0304709 1.0083102
|
||||
16000 0.34225547 0 -0.035597548 1.0304709 1.0083102
|
||||
16100 0.33660991 0 -0.076931881 1.0193906 1.0193906
|
||||
16200 0.32802152 0 -0.12765884 1.0083102 1.0193906
|
||||
16300 0.3469374 0 -0.10785455 1.0083102 1.0083102
|
||||
16400 0.34053641 0 -0.070259853 1.0193906 1.0083102
|
||||
16500 0.34610591 0 -0.014315306 1.0193906 1.0193906
|
||||
16600 0.35109001 0 0.041251169 1.0304709 1.0083102
|
||||
16700 0.34336905 0 0.077996627 1.0193906 1.0083102
|
||||
16800 0.33277414 0 0.11053634 1.0083102 1.0083102
|
||||
16900 0.32183338 0 0.11680626 1.0193906 1.0083102
|
||||
17000 0.34044352 0 0.10806555 1.0193906 1.0083102
|
||||
17100 0.32967873 0 0.067759786 1.0193906 1.0193906
|
||||
17200 0.36172278 0 -0.0048631904 1.0304709 1.0083102
|
||||
17300 0.35619435 0 -0.04215545 1.0193906 1.0083102
|
||||
17400 0.34540936 0 -0.093994174 1.0193906 1.0083102
|
||||
17500 0.33193585 0 -0.098831315 1.0083102 1.0193906
|
||||
17600 0.3544756 0 -0.085660403 1.0193906 1.0083102
|
||||
17700 0.34505209 0 -0.069640515 1.0304709 1.0193906
|
||||
17800 0.36291124 0 -0.0063088133 1.0083102 1.0193906
|
||||
17900 0.34255705 0 0.046794555 1.0304709 1.0193906
|
||||
18000 0.34163238 0 0.11767705 1.0193906 1.0193906
|
||||
18100 0.3466445 0 0.1351712 1.0415512 1.0193906
|
||||
18200 0.33037668 0 0.12703659 1.0083102 1.0083102
|
||||
18300 0.33677404 0 0.10956306 1.0083102 1.0304709
|
||||
18400 0.34978954 0 0.087193072 1.0193906 1.0193906
|
||||
18500 0.33354363 0 0.051095814 1.0526316 1.0193906
|
||||
18600 0.34651729 0 0.0056245561 1.0304709 1.0193906
|
||||
18700 0.32622232 0 -0.047319269 1.0083102 1.0193906
|
||||
18800 0.32978847 0 -0.054929416 1.0304709 1.0193906
|
||||
18900 0.34192451 0 -0.037252471 1.0193906 1.0083102
|
||||
19000 0.34061294 0 -0.001167235 1.0083102 1.0083102
|
||||
19100 0.34194478 0 0.016945224 1.0526316 1.0193906
|
||||
19200 0.33321765 0 0.050665354 1.0526316 1.0083102
|
||||
19300 0.33197783 0 0.080470585 1.0193906 1.0083102
|
||||
19400 0.33284715 0 0.12423599 1.0304709 1.0304709
|
||||
19500 0.33867856 0 0.12689524 1.0083102 1.0083102
|
||||
19600 0.36092786 0 0.11417704 1.0193906 1.0083102
|
||||
19700 0.34270183 0 0.069038291 1.0415512 1.0083102
|
||||
19800 0.34880695 0 0.042483681 1.0193906 1.0083102
|
||||
19900 0.33903644 0 0.034788638 1.0083102 1.0193906
|
||||
20000 0.32590125 0 0.011383785 1.0193906 1.0083102
|
||||
20100 0.30358859 0 0.0030743554 1.0526316 1.0193906
|
||||
20200 0.31830224 0 0.017637826 1.0193906 1.0193906
|
||||
20300 0.34195438 0 0.072811099 1.0304709 1.0193906
|
||||
20400 0.31249563 0 0.10063541 1.0415512 1.0083102
|
||||
20500 0.31544938 0 0.1405794 1.0083102 1.0083102
|
||||
20600 0.30071644 0 0.12763486 1.0193906 1.0193906
|
||||
20700 0.2890265 0 0.1136651 1.0083102 1.0083102
|
||||
20800 0.28962296 0 0.094481978 1.0193906 1.0083102
|
||||
20900 0.29447212 0 0.0967165 1.0193906 1.0193906
|
||||
21000 0.31159961 0 0.067307231 1.0083102 1.0083102
|
||||
21100 0.30490648 0 0.017689358 1.0083102 1.0304709
|
||||
21200 0.30687262 0 -0.016055512 1.0193906 1.0193906
|
||||
21300 0.30083286 0 -0.0014988997 1.0193906 1.0083102
|
||||
21400 0.32070426 0 0.015960302 1.0083102 1.0083102
|
||||
21500 0.31439311 0 0.038170385 1.0304709 1.0083102
|
||||
21600 0.32617832 0 0.043263788 1.0083102 1.0083102
|
||||
21700 0.35151793 0 0.066302727 1.0193906 1.0083102
|
||||
21800 0.35912885 0 0.070099103 1.0193906 1.0083102
|
||||
21900 0.32451958 0 0.068935768 1.0304709 1.0193906
|
||||
22000 0.35219298 0 0.067161227 1.0193906 1.0193906
|
||||
22100 0.34857705 0 0.032731746 1.0193906 1.0083102
|
||||
22200 0.34750227 0 0.0056917695 1.0193906 1.0083102
|
||||
22300 0.34766017 0 -0.0027090483 1.0193906 1.0083102
|
||||
22400 0.33426062 0 -0.023196063 1.0304709 1.0083102
|
||||
22500 0.34174625 0 -0.025019717 1.0083102 1.0083102
|
||||
22600 0.3356145 0 -0.029707418 1.0304709 1.0193906
|
||||
22700 0.3362653 0 -0.035815733 1.0193906 1.0193906
|
||||
22800 0.33973405 0 -0.0024705835 1.0193906 1.0083102
|
||||
22900 0.33813085 0 0.0077527467 1.0083102 1.0193906
|
||||
23000 0.33339981 0 0.028340744 1.0193906 1.0083102
|
||||
23100 0.34079832 0 0.018521302 1.0415512 1.0193906
|
||||
23200 0.33074548 0 0.032378405 1.0193906 1.0083102
|
||||
23300 0.32965664 0 0.035989589 1.0193906 1.0083102
|
||||
23400 0.30927749 0 0.024581106 1.0193906 1.0083102
|
||||
23500 0.32890632 0 0.01092479 1.0304709 1.0193906
|
||||
23600 0.34137438 0 0.0094839745 1.0193906 1.0193906
|
||||
23700 0.34512638 0 -0.012392771 1.0304709 1.0193906
|
||||
23800 0.31781354 0 -0.012908449 1.0193906 1.0083102
|
||||
23900 0.32405513 0 -0.015018071 1.0415512 1.0193906
|
||||
24000 0.33549728 0 -0.012812915 1.0193906 1.0193906
|
||||
24100 0.31368736 0 -0.020818372 1.0083102 1.0083102
|
||||
24200 0.33533836 0 0.0056121057 1.0304709 1.0193906
|
||||
24300 0.32530627 0 0.018183931 1.0415512 1.0083102
|
||||
24400 0.31930662 0 0.027446878 1.0083102 1.0193906
|
||||
24500 0.33540302 0 0.040307455 1.0304709 1.0083102
|
||||
24600 0.34020431 0 0.027403921 1.0083102 1.0083102
|
||||
24700 0.3291814 0 0.01204865 1.0193906 1.0083102
|
||||
24800 0.31552604 0 0.019654111 1.0083102 1.0193906
|
||||
24900 0.34727253 0 0.01670543 1.0193906 1.0083102
|
||||
25000 0.35120105 0 0.0038617562 1.0193906 1.0083102
|
||||
25100 0.32706871 0 -0.021196623 1.0415512 1.0193906
|
||||
25200 0.32915282 0 -0.017146508 1.0083102 1.0193906
|
||||
25300 0.32577518 0 -0.01312495 1.0193906 1.0083102
|
||||
25400 0.33286855 0 0.0014726193 1.0415512 1.0193906
|
||||
25500 0.33002601 0 0.0080974022 1.0193906 1.0083102
|
||||
25600 0.34127655 0 0.014296091 1.0526316 1.0083102
|
||||
25700 0.34048065 0 0.022513032 1.0193906 1.0083102
|
||||
25800 0.33029079 0 0.038733531 1.0526316 1.0083102
|
||||
25900 0.33031324 0 0.026156982 1.0083102 1.0193906
|
||||
26000 0.32967371 0 0.028727383 1.0083102 1.0193906
|
||||
26100 0.33775718 0 0.015607478 1.0083102 1.0193906
|
||||
26200 0.35097144 0 0.012291703 1.0083102 1.0083102
|
||||
26300 0.34303792 0 0.00094823191 1.0083102 1.0193906
|
||||
26400 0.33632665 0 -0.0026904889 1.0193906 1.0193906
|
||||
26500 0.33580127 0 -0.0074168555 1.0193906 1.0193906
|
||||
26600 0.33063188 0 -0.020378601 1.0083102 1.0193906
|
||||
26700 0.33581846 0 -0.00084397268 1.0083102 1.0193906
|
||||
26800 0.32998532 0 0.015932208 1.0304709 1.0193906
|
||||
26900 0.33825444 0 0.010428603 1.0304709 1.0083102
|
||||
27000 0.32081518 0 0.019818223 1.0415512 1.0193906
|
||||
27100 0.31448098 0 0.020093416 1.0193906 1.0083102
|
||||
27200 0.32643684 0 0.021934917 1.0193906 1.0083102
|
||||
27300 0.33289466 0 0.023713072 1.0415512 1.0083102
|
||||
27400 0.32310744 0 0.024110945 1.0415512 1.0083102
|
||||
27500 0.33115619 0 0.0025776713 1.0304709 1.0193906
|
||||
27600 0.33295887 0 -0.010710764 1.0193906 1.0193906
|
||||
27700 0.32968876 0 -0.0064595905 1.0193906 1.0193906
|
||||
27800 0.34064581 0 -0.0086519116 1.0193906 1.0083102
|
||||
27900 0.33559187 0 -0.0055753593 1.0526316 1.0083102
|
||||
28000 0.32300727 0 -0.0004153384 1.0304709 1.0083102
|
||||
28100 0.32147461 0 -0.0058543412 1.0083102 1.0083102
|
||||
28200 0.35532383 0 0.013646951 1.0304709 1.0083102
|
||||
28300 0.31507942 0 0.026532255 1.0415512 1.0193906
|
||||
28400 0.32711006 0 0.033214981 1.0193906 1.0083102
|
||||
28500 0.34472462 0 0.028050837 1.0304709 1.0193906
|
||||
28600 0.33708059 0 0.019115676 1.0083102 1.0083102
|
||||
28700 0.34478087 0 0.023743689 1.0304709 1.0083102
|
||||
28800 0.34546686 0 0.0081772997 1.0304709 1.0083102
|
||||
28900 0.34004886 0 0.017771865 1.0415512 1.0193906
|
||||
29000 0.33604232 0 -0.010505671 1.0304709 1.0193906
|
||||
29100 0.33541374 0 -0.016273261 1.0083102 1.0083102
|
||||
29200 0.34347489 0 -0.010002306 1.0083102 1.0083102
|
||||
29300 0.34083904 0 0.0089701784 1.0193906 1.0193906
|
||||
29400 0.34846892 0 0.020765104 1.0083102 1.0083102
|
||||
29500 0.3416255 0 0.022650856 1.0304709 1.0083102
|
||||
29600 0.33725496 0 0.020693083 1.0193906 1.0193906
|
||||
29700 0.34480638 0 0.024317128 1.0304709 1.0083102
|
||||
29800 0.31459471 0 0.023097895 1.0083102 1.0083102
|
||||
29900 0.33014448 0 0.03114046 1.0193906 1.0083102
|
||||
30000 0.33741498 0 0.015624314 1.0083102 1.0193906
|
||||
30100 0.32598657 0 -0.0018860541 1.0415512 1.0193906
|
||||
30200 0.34855815 0 0.0017983372 1.0083102 1.0083102
|
||||
30300 0.33375921 0 0.0010991235 1.0083102 1.0193906
|
||||
30400 0.35008944 0 -0.0027316177 1.0193906 1.0083102
|
||||
30500 0.33279729 0 -0.0035788551 1.0193906 1.0193906
|
||||
30600 0.33868746 0 -0.0016249482 1.0083102 1.0193906
|
||||
30700 0.33597034 0 -0.0014524001 1.0193906 1.0193906
|
||||
30800 0.3227257 0 0.016353457 1.0193906 1.0193906
|
||||
30900 0.32676516 0 0.027396654 1.0193906 1.0083102
|
||||
31000 0.34083982 0 0.031606413 1.0415512 1.0193906
|
||||
31100 0.32165238 0 0.013583368 1.0083102 1.0083102
|
||||
31200 0.3428492 0 0.020486611 1.0304709 1.0083102
|
||||
31300 0.32372541 0 0.01215566 1.0083102 1.0083102
|
||||
31400 0.32734692 0 0.016229397 1.0083102 1.0083102
|
||||
31500 0.33089262 0 0.0060426618 1.0083102 1.0083102
|
||||
31600 0.34273493 0 -0.013456537 1.0083102 1.0193906
|
||||
31700 0.32723905 0 -0.019243766 1.0193906 1.0083102
|
||||
31800 0.33636488 0 0.0027814902 1.0083102 1.0083102
|
||||
31900 0.32834805 0 0.00706877 1.0083102 1.0193906
|
||||
32000 0.33995148 0 0.0018383309 1.0193906 1.0193906
|
||||
32100 0.33412282 0 0.0076455933 1.0083102 1.0083102
|
||||
32200 0.34334884 0 0.023586129 1.0083102 1.0083102
|
||||
32300 0.32778925 0 0.020564321 1.0193906 1.0083102
|
||||
32400 0.33163443 0 0.038878463 1.0193906 1.0083102
|
||||
32500 0.32290345 0 0.022247461 1.0193906 1.0083102
|
||||
32600 0.34113954 0 0.010966365 1.0304709 1.0193906
|
||||
32700 0.33390633 0 0.0037777555 1.0193906 1.0083102
|
||||
32800 0.34385341 0 0.010556575 1.0193906 1.0193906
|
||||
32900 0.32137047 0 0.00022027143 1.0304709 1.0193906
|
||||
33000 0.32079172 0 -0.017261272 1.0193906 1.0083102
|
||||
33100 0.33570882 0 -0.0051942206 1.0083102 1.0083102
|
||||
33200 0.34320894 0 -0.011515281 1.0193906 1.0083102
|
||||
33300 0.32794746 0 -0.0018153673 1.0083102 1.0193906
|
||||
33400 0.33060982 0 0.027118146 1.0193906 1.0083102
|
||||
33500 0.33641809 0 0.02143035 1.0083102 1.0193906
|
||||
33600 0.33643061 0 0.020833068 1.0304709 1.0083102
|
||||
33700 0.3485949 0 0.030918751 1.0193906 1.0083102
|
||||
33800 0.3283985 0 0.01947613 1.0193906 1.0083102
|
||||
33900 0.31959761 0 0.021128147 1.0083102 1.0304709
|
||||
34000 0.33897984 0 0.015270986 1.0193906 1.0083102
|
||||
34100 0.32392267 0 0.0020130852 1.0304709 1.0193906
|
||||
34200 0.33084514 0 -0.024316708 1.0193906 1.0193906
|
||||
34300 0.3342259 0 -0.0059047764 1.0193906 1.0304709
|
||||
34400 0.33385098 0 0.0063818721 1.0193906 1.0083102
|
||||
34500 0.33255603 0 -0.01023837 1.0083102 1.0304709
|
||||
34600 0.34766173 0 0.0056703013 1.0193906 1.0083102
|
||||
34700 0.339822 0 0.0061648559 1.0193906 1.0193906
|
||||
34800 0.33902329 0 0.030037037 1.0415512 1.0193906
|
||||
34900 0.3216153 0 0.027996689 1.0083102 1.0083102
|
||||
35000 0.32701056 0 0.024778517 1.0193906 1.0083102
|
||||
35100 0.3124942 0 0.011316548 1.0304709 1.0193906
|
||||
35200 0.34486416 0 0.011670127 1.0083102 1.0083102
|
||||
35300 0.33275353 0 0.020491246 1.0193906 1.0193906
|
||||
35400 0.33618763 0 0.014678874 1.0083102 1.0083102
|
||||
35500 0.32352282 0 -0.018568683 1.0193906 1.0193906
|
||||
35600 0.32617903 0 -0.012796912 1.0193906 1.0304709
|
||||
35700 0.32378048 0 -0.021318585 1.0193906 1.0193906
|
||||
35800 0.3371086 0 -0.0023678632 1.0193906 1.0193906
|
||||
35900 0.33818476 0 0.011197742 1.0193906 1.0083102
|
||||
36000 0.35142144 0 0.022520935 1.0083102 1.0193906
|
||||
36100 0.35147297 0 0.020277852 1.0193906 1.0083102
|
||||
36200 0.33489465 0 0.014564878 1.0415512 1.0193906
|
||||
36300 0.33841515 0 0.036439962 1.0193906 1.0083102
|
||||
36400 0.32301096 0 0.019966746 1.0304709 1.0083102
|
||||
36500 0.35612028 0 0.036509556 1.0083102 1.0083102
|
||||
36600 0.33841597 0 -0.0042180605 1.0193906 1.0193906
|
||||
36700 0.34477654 0 -0.0052770853 1.0193906 1.0083102
|
||||
36800 0.33804317 0 -0.013751733 1.0083102 1.0083102
|
||||
36900 0.35003816 0 -0.0021184393 1.0083102 1.0083102
|
||||
37000 0.32965041 0 -0.020900951 1.0193906 1.0083102
|
||||
37100 0.34653095 0 -0.013667977 1.0193906 1.0083102
|
||||
37200 0.35019871 0 -0.0071740923 1.0193906 1.0304709
|
||||
37300 0.34859745 0 0.02006041 1.0304709 1.0083102
|
||||
37400 0.35739859 0 0.020892822 1.0304709 1.0083102
|
||||
37500 0.34128859 0 0.041072111 1.0193906 1.0193906
|
||||
37600 0.33781905 0 0.023376738 1.0193906 1.0083102
|
||||
37700 0.32961874 0 0.030953741 1.0193906 1.0083102
|
||||
37800 0.343987 0 0.029579795 1.0083102 1.0083102
|
||||
37900 0.33610448 0 0.036836828 1.0415512 1.0304709
|
||||
38000 0.32757228 0 0.020902031 1.0193906 1.0193906
|
||||
38100 0.32735808 0 0.019544751 1.0193906 1.0083102
|
||||
38200 0.35646953 0 0.044607528 1.0083102 1.0304709
|
||||
38300 0.32509773 0 0.03610738 1.0193906 1.0083102
|
||||
38400 0.32111741 0 0.034474043 1.0193906 1.0193906
|
||||
38500 0.30590608 0 0.053461212 1.0304709 1.0083102
|
||||
38600 0.32322402 0 0.053453832 1.0193906 1.0304709
|
||||
38700 0.33843057 0 0.076264534 1.0083102 1.0193906
|
||||
38800 0.31350741 0 0.064733869 1.0415512 1.0083102
|
||||
38900 0.31943061 0 0.067836769 1.0304709 1.0193906
|
||||
39000 0.33775583 0 0.0788316 1.0193906 1.0193906
|
||||
39100 0.34256036 0 0.075874935 1.0083102 1.0193906
|
||||
39200 0.33128527 0 0.071610976 1.0193906 1.0083102
|
||||
39300 0.34519653 0 0.046257301 1.0193906 1.0083102
|
||||
39400 0.34351844 0 0.052422917 1.0304709 1.0304709
|
||||
39500 0.35716037 0 0.048916058 1.0304709 1.0083102
|
||||
39600 0.34000737 0 0.016149089 1.0304709 1.0083102
|
||||
39700 0.34587892 0 0.021619621 1.0526316 1.0083102
|
||||
39800 0.34878036 0 0.0092881327 1.0083102 1.0193906
|
||||
39900 0.35225411 0 -0.011341599 1.0083102 1.0193906
|
||||
40000 0.36309266 0 0.0050869295 1.0304709 1.0083102
|
||||
Loop time of 1.12306 on 4 procs for 40000 steps with 361 atoms
|
||||
|
||||
Performance: 15386559.518 tau/day, 35617.036 timesteps/s
|
||||
90.9% 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.023094 | 0.023348 | 0.023582 | 0.1 | 2.08
|
||||
Bond | 0.17827 | 0.19268 | 0.21984 | 3.7 | 17.16
|
||||
Neigh | 0.18144 | 0.18231 | 0.18323 | 0.1 | 16.23
|
||||
Comm | 0.23759 | 0.28095 | 0.30794 | 5.0 | 25.02
|
||||
Output | 0.0062952 | 0.013342 | 0.034226 | 10.4 | 1.19
|
||||
Modify | 0.2379 | 0.24327 | 0.25076 | 0.9 | 21.66
|
||||
Other | | 0.1871 | | | 16.66
|
||||
|
||||
Nlocal: 90.25 ave 91 max 89 min
|
||||
Histogram: 1 0 0 0 0 1 0 0 0 2
|
||||
Nghost: 59.25 ave 61 max 56 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 2 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0
|
||||
Ave special neighs/atom = 31.0249
|
||||
Neighbor list builds = 3079
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:01
|
||||
@ -1,227 +0,0 @@
|
||||
LAMMPS (27 Nov 2018)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# 3d Lennard-Jones melt
|
||||
|
||||
units lj
|
||||
atom_style atomic
|
||||
processors * 1 1
|
||||
|
||||
lattice fcc 0.8442
|
||||
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
|
||||
region box block 0 10 0 10 0 10
|
||||
create_box 3 box
|
||||
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
|
||||
2 by 1 by 1 MPI processor grid
|
||||
create_atoms 1 box
|
||||
Created 4000 atoms
|
||||
Time spent = 0.000549078 secs
|
||||
mass * 1.0
|
||||
|
||||
region long block 3 6 0 10 0 10
|
||||
set region long type 2
|
||||
1400 settings made for type
|
||||
|
||||
velocity all create 1.0 87287
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_coeff * * 1.0 1.0 2.5
|
||||
pair_coeff * 2 1.0 1.0 5.0
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify every 2 delay 4 check yes
|
||||
fix p all property/atom d_WEIGHT
|
||||
compute p all property/atom d_WEIGHT
|
||||
fix 0 all balance 50 1.0 shift x 10 1.0 weight time 1.0 weight store WEIGHT
|
||||
variable maximb equal f_0[1]
|
||||
variable iter equal f_0[2]
|
||||
variable prev equal f_0[3]
|
||||
variable final equal f_0
|
||||
|
||||
#fix 3 all print 50 "${iter} ${prev} ${final} ${maximb}"
|
||||
|
||||
fix 1 all nve
|
||||
|
||||
#dump id all atom 50 dump.melt
|
||||
#dump id all custom 50 dump.lammpstrj id type x y z c_p
|
||||
|
||||
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 2 pad 3
|
||||
|
||||
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 3 pad 3
|
||||
|
||||
thermo 50
|
||||
run 500
|
||||
Neighbor list info ...
|
||||
update every 2 steps, delay 4 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 5.3
|
||||
ghost atom cutoff = 5.3
|
||||
binsize = 2.65, bins = 7 7 7
|
||||
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.562 | 4.753 | 4.944 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press Volume
|
||||
0 1 -6.9453205 0 -5.4456955 -5.6812358 4738.2137
|
||||
50 0.49578514 -6.1929216 0 -5.4494298 -1.6668039 4738.2137
|
||||
100 0.53275389 -6.2475932 0 -5.4486622 -1.9063885 4738.2137
|
||||
150 0.53316457 -6.2483202 0 -5.4487733 -1.9476162 4738.2137
|
||||
200 0.536665 -6.2530113 0 -5.448215 -1.933468 4738.2137
|
||||
250 0.55006273 -6.27163 0 -5.4467422 -2.0438847 4738.2137
|
||||
300 0.55111476 -6.2727642 0 -5.4462987 -2.0384873 4738.2137
|
||||
350 0.55211503 -6.274054 0 -5.4460885 -2.0116976 4738.2137
|
||||
400 0.54638463 -6.2661715 0 -5.4467995 -1.992248 4738.2137
|
||||
450 0.55885307 -6.2852263 0 -5.4471563 -2.0669747 4738.2137
|
||||
500 0.54587069 -6.2662849 0 -5.4476836 -2.0078802 4738.2137
|
||||
Loop time of 3.7099 on 2 procs for 500 steps with 4000 atoms
|
||||
|
||||
Performance: 58222.644 tau/day, 134.775 timesteps/s
|
||||
99.2% CPU use with 2 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 2.5145 | 2.5951 | 2.6756 | 5.0 | 69.95
|
||||
Neigh | 0.8388 | 0.88634 | 0.93387 | 5.0 | 23.89
|
||||
Comm | 0.17027 | 0.20258 | 0.23489 | 7.2 | 5.46
|
||||
Output | 0.00029612 | 0.00032723 | 0.00035834 | 0.0 | 0.01
|
||||
Modify | 0.016136 | 0.017057 | 0.017979 | 0.7 | 0.46
|
||||
Other | | 0.008504 | | | 0.23
|
||||
|
||||
Nlocal: 2000 ave 2157 max 1843 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 10465.5 ave 10840 max 10091 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Neighs: 298070 ave 305706 max 290433 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 596139
|
||||
Ave neighs/atom = 149.035
|
||||
Neighbor list builds = 51
|
||||
Dangerous builds = 0
|
||||
run 500
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.944 | 4.947 | 4.951 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press Volume
|
||||
500 0.54587069 -6.2662849 0 -5.4476836 -2.0078802 4738.2137
|
||||
550 0.54137926 -6.2592773 0 -5.4474115 -1.9770236 4738.2137
|
||||
600 0.54022886 -6.2573307 0 -5.44719 -1.9619637 4738.2137
|
||||
650 0.54709009 -6.2678862 0 -5.4474562 -1.9958342 4738.2137
|
||||
700 0.54590044 -6.2656903 0 -5.4470444 -1.9957108 4738.2137
|
||||
750 0.55098488 -6.2724831 0 -5.4462124 -2.0287523 4738.2137
|
||||
800 0.5520987 -6.2739184 0 -5.4459774 -2.0084991 4738.2137
|
||||
850 0.54963958 -6.2702473 0 -5.445994 -1.9740031 4738.2137
|
||||
900 0.54390586 -6.2615476 0 -5.4458927 -1.9400871 4738.2137
|
||||
950 0.54741732 -6.2665755 0 -5.4456548 -1.9466417 4738.2137
|
||||
1000 0.54200867 -6.2591246 0 -5.4463148 -1.8881624 4738.2137
|
||||
Loop time of 3.70634 on 2 procs for 500 steps with 4000 atoms
|
||||
|
||||
Performance: 58278.514 tau/day, 134.904 timesteps/s
|
||||
99.0% CPU use with 2 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 2.5536 | 2.6173 | 2.6811 | 3.9 | 70.62
|
||||
Neigh | 0.82942 | 0.88683 | 0.94424 | 6.1 | 23.93
|
||||
Comm | 0.16927 | 0.17474 | 0.1802 | 1.3 | 4.71
|
||||
Output | 0.00030422 | 0.00033307 | 0.00036192 | 0.0 | 0.01
|
||||
Modify | 0.016714 | 0.017824 | 0.018933 | 0.8 | 0.48
|
||||
Other | | 0.009277 | | | 0.25
|
||||
|
||||
Nlocal: 2000 ave 2136 max 1864 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 10413.5 ave 10877 max 9950 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Neighs: 300836 ave 312313 max 289358 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 601671
|
||||
Ave neighs/atom = 150.418
|
||||
Neighbor list builds = 51
|
||||
Dangerous builds = 0
|
||||
fix 0 all balance 50 1.0 shift x 5 1.0 weight neigh 0.5 weight time 0.66 weight store WEIGHT
|
||||
run 500
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.951 | 5.142 | 5.334 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press Volume
|
||||
1000 0.54200867 -6.2591246 0 -5.4463148 -1.8881624 4738.2137
|
||||
1050 0.54633412 -6.2656384 0 -5.4463421 -1.9012895 4738.2137
|
||||
1100 0.54325667 -6.2612166 0 -5.4465353 -1.8870463 4738.2137
|
||||
1150 0.55057583 -6.2719187 0 -5.4462614 -1.9575881 4738.2137
|
||||
1200 0.53728175 -6.251744 0 -5.4460228 -1.8124097 4738.2137
|
||||
1250 0.54077561 -6.2567544 0 -5.4457938 -1.8418133 4738.2137
|
||||
1300 0.54430333 -6.260995 0 -5.4447442 -1.856351 4738.2137
|
||||
1350 0.55097839 -6.2715909 0 -5.4453299 -1.9014337 4738.2137
|
||||
1400 0.53858139 -6.2526781 0 -5.445008 -1.7965773 4738.2137
|
||||
1450 0.5421844 -6.2574683 0 -5.444395 -1.7901189 4738.2137
|
||||
1500 0.54200617 -6.2571433 0 -5.4443373 -1.8000344 4738.2137
|
||||
Loop time of 4.8272 on 2 procs for 500 steps with 4000 atoms
|
||||
|
||||
Performance: 44746.478 tau/day, 103.580 timesteps/s
|
||||
98.5% CPU use with 2 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 1.9951 | 2.6814 | 3.3676 | 41.9 | 55.55
|
||||
Neigh | 0.82826 | 0.90961 | 0.99095 | 8.5 | 18.84
|
||||
Comm | 0.44043 | 1.2083 | 1.9762 | 69.9 | 25.03
|
||||
Output | 0.00034881 | 0.0003655 | 0.00038218 | 0.0 | 0.01
|
||||
Modify | 0.016762 | 0.01755 | 0.018337 | 0.6 | 0.36
|
||||
Other | | 0.01001 | | | 0.21
|
||||
|
||||
Nlocal: 2000 ave 2564 max 1436 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 10334 ave 10752 max 9916 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Neighs: 302958 ave 499873 max 106044 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 605917
|
||||
Ave neighs/atom = 151.479
|
||||
Neighbor list builds = 51
|
||||
Dangerous builds = 0
|
||||
run 500
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.955 | 5.336 | 5.717 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press Volume
|
||||
1500 0.54200617 -6.2571433 0 -5.4443373 -1.8000344 4738.2137
|
||||
1550 0.53713591 -6.2504068 0 -5.4449044 -1.7647087 4738.2137
|
||||
1600 0.5467956 -6.2646482 0 -5.4446599 -1.8115778 4738.2137
|
||||
1650 0.53806575 -6.2519004 0 -5.4450036 -1.7409135 4738.2137
|
||||
1700 0.5347949 -6.2468958 0 -5.444904 -1.7162322 4738.2137
|
||||
1750 0.53714528 -6.2506529 0 -5.4451365 -1.7340402 4738.2137
|
||||
1800 0.5274989 -6.2358675 0 -5.444817 -1.6874989 4738.2137
|
||||
1850 0.54585906 -6.2629475 0 -5.4443636 -1.7758918 4738.2137
|
||||
1900 0.5301071 -6.2387551 0 -5.4437932 -1.6381903 4738.2137
|
||||
1950 0.54288149 -6.2582818 0 -5.4441632 -1.7367819 4738.2137
|
||||
2000 0.52766162 -6.2348587 0 -5.4435642 -1.5589151 4738.2137
|
||||
Loop time of 4.90351 on 2 procs for 500 steps with 4000 atoms
|
||||
|
||||
Performance: 44050.062 tau/day, 101.968 timesteps/s
|
||||
98.1% CPU use with 2 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 1.9937 | 2.6502 | 3.3067 | 40.3 | 54.05
|
||||
Neigh | 0.81645 | 0.88655 | 0.95664 | 7.4 | 18.08
|
||||
Comm | 0.61197 | 1.3389 | 2.0659 | 62.8 | 27.31
|
||||
Output | 0.00036287 | 0.0003773 | 0.00039172 | 0.0 | 0.01
|
||||
Modify | 0.016585 | 0.017429 | 0.018274 | 0.6 | 0.36
|
||||
Other | | 0.01003 | | | 0.20
|
||||
|
||||
Nlocal: 2000 ave 2564 max 1436 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 10256 ave 10620 max 9892 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Neighs: 303988 ave 502064 max 105911 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 607975
|
||||
Ave neighs/atom = 151.994
|
||||
Neighbor list builds = 51
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:17
|
||||
@ -1,227 +0,0 @@
|
||||
LAMMPS (27 Nov 2018)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# 3d Lennard-Jones melt
|
||||
|
||||
units lj
|
||||
atom_style atomic
|
||||
processors * 1 1
|
||||
|
||||
lattice fcc 0.8442
|
||||
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
|
||||
region box block 0 10 0 10 0 10
|
||||
create_box 3 box
|
||||
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
|
||||
4 by 1 by 1 MPI processor grid
|
||||
create_atoms 1 box
|
||||
Created 4000 atoms
|
||||
Time spent = 0.000421762 secs
|
||||
mass * 1.0
|
||||
|
||||
region long block 3 6 0 10 0 10
|
||||
set region long type 2
|
||||
1400 settings made for type
|
||||
|
||||
velocity all create 1.0 87287
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_coeff * * 1.0 1.0 2.5
|
||||
pair_coeff * 2 1.0 1.0 5.0
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify every 2 delay 4 check yes
|
||||
fix p all property/atom d_WEIGHT
|
||||
compute p all property/atom d_WEIGHT
|
||||
fix 0 all balance 50 1.0 shift x 10 1.0 weight time 1.0 weight store WEIGHT
|
||||
variable maximb equal f_0[1]
|
||||
variable iter equal f_0[2]
|
||||
variable prev equal f_0[3]
|
||||
variable final equal f_0
|
||||
|
||||
#fix 3 all print 50 "${iter} ${prev} ${final} ${maximb}"
|
||||
|
||||
fix 1 all nve
|
||||
|
||||
#dump id all atom 50 dump.melt
|
||||
#dump id all custom 50 dump.lammpstrj id type x y z c_p
|
||||
|
||||
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 2 pad 3
|
||||
|
||||
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 3 pad 3
|
||||
|
||||
thermo 50
|
||||
run 500
|
||||
Neighbor list info ...
|
||||
update every 2 steps, delay 4 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 5.3
|
||||
ghost atom cutoff = 5.3
|
||||
binsize = 2.65, bins = 7 7 7
|
||||
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.691 | 4.072 | 4.454 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press Volume
|
||||
0 1 -6.9453205 0 -5.4456955 -5.6812358 4738.2137
|
||||
50 0.48653399 -6.1788509 0 -5.4492324 -1.6017778 4738.2137
|
||||
100 0.53411175 -6.249885 0 -5.4489177 -1.9317606 4738.2137
|
||||
150 0.53646658 -6.2527206 0 -5.4482219 -1.9689568 4738.2137
|
||||
200 0.54551611 -6.2656326 0 -5.4475631 -2.0042104 4738.2137
|
||||
250 0.54677719 -6.2671162 0 -5.4471555 -2.0015995 4738.2137
|
||||
300 0.5477618 -6.2678071 0 -5.4463698 -1.997842 4738.2137
|
||||
350 0.55600296 -6.2801497 0 -5.4463538 -2.0394056 4738.2137
|
||||
400 0.53241503 -6.2453665 0 -5.4469436 -1.878594 4738.2137
|
||||
450 0.5439158 -6.2623 0 -5.4466302 -1.9744161 4738.2137
|
||||
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015 4738.2137
|
||||
Loop time of 2.69458 on 4 procs for 500 steps with 4000 atoms
|
||||
|
||||
Performance: 80160.913 tau/day, 185.558 timesteps/s
|
||||
94.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 | 1.0903 | 1.4509 | 1.7199 | 22.5 | 53.84
|
||||
Neigh | 0.31688 | 0.47906 | 0.71852 | 24.2 | 17.78
|
||||
Comm | 0.60463 | 0.72402 | 0.84257 | 12.7 | 26.87
|
||||
Output | 0.00035119 | 0.00067121 | 0.0015202 | 0.0 | 0.02
|
||||
Modify | 0.00811 | 0.010936 | 0.014029 | 2.7 | 0.41
|
||||
Other | | 0.02904 | | | 1.08
|
||||
|
||||
Nlocal: 1000 ave 1504 max 634 min
|
||||
Histogram: 2 0 0 0 0 0 1 0 0 1
|
||||
Nghost: 8759.25 ave 9896 max 8021 min
|
||||
Histogram: 2 0 0 0 0 1 0 0 0 1
|
||||
Neighs: 149308 ave 179946 max 116419 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 1 1
|
||||
|
||||
Total # of neighbors = 597231
|
||||
Ave neighs/atom = 149.308
|
||||
Neighbor list builds = 50
|
||||
Dangerous builds = 0
|
||||
run 500
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.097 | 4.288 | 4.475 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press Volume
|
||||
500 0.55526241 -6.2793396 0 -5.4466542 -2.0595015 4738.2137
|
||||
550 0.53879347 -6.2554274 0 -5.4474393 -1.9756834 4738.2137
|
||||
600 0.54275982 -6.2616799 0 -5.4477437 -1.9939993 4738.2137
|
||||
650 0.54526651 -6.265098 0 -5.4474027 -2.0303672 4738.2137
|
||||
700 0.54369381 -6.263201 0 -5.4478642 -1.9921967 4738.2137
|
||||
750 0.54452777 -6.2640839 0 -5.4474964 -1.9658675 4738.2137
|
||||
800 0.55061744 -6.2725556 0 -5.4468359 -2.0100922 4738.2137
|
||||
850 0.55371614 -6.2763992 0 -5.4460326 -2.0065329 4738.2137
|
||||
900 0.54756622 -6.2668303 0 -5.4456863 -1.9796122 4738.2137
|
||||
950 0.54791593 -6.2673161 0 -5.4456477 -1.9598278 4738.2137
|
||||
1000 0.54173198 -6.2586101 0 -5.4462153 -1.9007466 4738.2137
|
||||
Loop time of 2.64502 on 4 procs for 500 steps with 4000 atoms
|
||||
|
||||
Performance: 81662.873 tau/day, 189.034 timesteps/s
|
||||
93.3% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 1.1279 | 1.4127 | 1.6268 | 18.0 | 53.41
|
||||
Neigh | 0.32225 | 0.49572 | 0.76053 | 26.2 | 18.74
|
||||
Comm | 0.64504 | 0.6974 | 0.75498 | 5.7 | 26.37
|
||||
Output | 0.00035477 | 0.00062996 | 0.001343 | 0.0 | 0.02
|
||||
Modify | 0.0077929 | 0.010538 | 0.013856 | 2.6 | 0.40
|
||||
Other | | 0.02803 | | | 1.06
|
||||
|
||||
Nlocal: 1000 ave 1437 max 597 min
|
||||
Histogram: 1 1 0 0 0 0 0 1 0 1
|
||||
Nghost: 8674 ave 9370 max 8013 min
|
||||
Histogram: 1 0 1 0 0 0 0 1 0 1
|
||||
Neighs: 150170 ave 187030 max 102149 min
|
||||
Histogram: 1 0 0 0 0 1 0 1 0 1
|
||||
|
||||
Total # of neighbors = 600678
|
||||
Ave neighs/atom = 150.169
|
||||
Neighbor list builds = 53
|
||||
Dangerous builds = 0
|
||||
fix 0 all balance 50 1.0 shift x 5 1.0 weight neigh 0.5 weight time 0.66 weight store WEIGHT
|
||||
run 500
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.08 | 4.269 | 4.458 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press Volume
|
||||
1000 0.54173198 -6.2586101 0 -5.4462153 -1.9007466 4738.2137
|
||||
1050 0.54629742 -6.2657526 0 -5.4465113 -1.945821 4738.2137
|
||||
1100 0.55427881 -6.2781733 0 -5.446963 -2.0021027 4738.2137
|
||||
1150 0.54730654 -6.267257 0 -5.4465025 -1.9420678 4738.2137
|
||||
1200 0.5388281 -6.2547963 0 -5.4467562 -1.890178 4738.2137
|
||||
1250 0.54848768 -6.2694237 0 -5.4468979 -1.9636797 4738.2137
|
||||
1300 0.54134321 -6.2590728 0 -5.447261 -1.9170271 4738.2137
|
||||
1350 0.53564389 -6.2501521 0 -5.4468871 -1.8642306 4738.2137
|
||||
1400 0.53726924 -6.2518379 0 -5.4461355 -1.8544028 4738.2137
|
||||
1450 0.54525935 -6.2632653 0 -5.4455808 -1.9072158 4738.2137
|
||||
1500 0.54223346 -6.2591057 0 -5.4459588 -1.8866984 4738.2137
|
||||
Loop time of 2.61342 on 4 procs for 500 steps with 4000 atoms
|
||||
|
||||
Performance: 82650.254 tau/day, 191.320 timesteps/s
|
||||
93.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 | 1.222 | 1.4442 | 1.5812 | 12.3 | 55.26
|
||||
Neigh | 0.29672 | 0.48201 | 0.73859 | 27.6 | 18.44
|
||||
Comm | 0.59138 | 0.65738 | 0.70906 | 6.5 | 25.15
|
||||
Output | 0.00036502 | 0.00091559 | 0.0020845 | 0.0 | 0.04
|
||||
Modify | 0.0095406 | 0.012674 | 0.017643 | 2.8 | 0.48
|
||||
Other | | 0.01621 | | | 0.62
|
||||
|
||||
Nlocal: 1000 ave 1446 max 670 min
|
||||
Histogram: 2 0 0 0 0 0 1 0 0 1
|
||||
Nghost: 8641 ave 9376 max 8019 min
|
||||
Histogram: 1 1 0 0 0 0 0 1 0 1
|
||||
Neighs: 150494 ave 184085 max 105390 min
|
||||
Histogram: 1 0 1 0 0 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 601974
|
||||
Ave neighs/atom = 150.494
|
||||
Neighbor list builds = 51
|
||||
Dangerous builds = 0
|
||||
run 500
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.08 | 4.269 | 4.458 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press Volume
|
||||
1500 0.54223346 -6.2591057 0 -5.4459588 -1.8866984 4738.2137
|
||||
1550 0.55327018 -6.2750125 0 -5.4453148 -1.9506585 4738.2137
|
||||
1600 0.5441901 -6.2612622 0 -5.4451811 -1.8559436 4738.2137
|
||||
1650 0.54710046 -6.2661938 0 -5.4457483 -1.8882766 4738.2137
|
||||
1700 0.5366569 -6.2504957 0 -5.4457116 -1.8067998 4738.2137
|
||||
1750 0.5486468 -6.2681121 0 -5.4453476 -1.8662631 4738.2137
|
||||
1800 0.54476176 -6.2615037 0 -5.4445653 -1.8352743 4738.2137
|
||||
1850 0.5414305 -6.2555519 0 -5.4436091 -1.8005747 4738.2137
|
||||
1900 0.53992655 -6.2541344 0 -5.444447 -1.7768718 4738.2137
|
||||
1950 0.54666071 -6.2640943 0 -5.4443082 -1.7947052 4738.2137
|
||||
2000 0.54556196 -6.2625262 0 -5.4443879 -1.8071631 4738.2137
|
||||
Loop time of 2.81593 on 4 procs for 500 steps with 4000 atoms
|
||||
|
||||
Performance: 76706.532 tau/day, 177.561 timesteps/s
|
||||
90.7% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 1.2508 | 1.4839 | 1.6521 | 13.4 | 52.70
|
||||
Neigh | 0.34188 | 0.54016 | 0.82358 | 27.6 | 19.18
|
||||
Comm | 0.70575 | 0.75254 | 0.80167 | 4.6 | 26.72
|
||||
Output | 0.00041604 | 0.001362 | 0.0041099 | 4.3 | 0.05
|
||||
Modify | 0.010564 | 0.013653 | 0.018 | 2.7 | 0.48
|
||||
Other | | 0.02432 | | | 0.86
|
||||
|
||||
Nlocal: 1000 ave 1555 max 569 min
|
||||
Histogram: 2 0 0 0 0 0 0 1 0 1
|
||||
Nghost: 8672.75 ave 9821 max 7993 min
|
||||
Histogram: 2 0 0 0 1 0 0 0 0 1
|
||||
Neighs: 151656 ave 164603 max 133455 min
|
||||
Histogram: 1 0 0 0 0 0 1 1 0 1
|
||||
|
||||
Total # of neighbors = 606625
|
||||
Ave neighs/atom = 151.656
|
||||
Neighbor list builds = 56
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:10
|
||||
@ -1,195 +0,0 @@
|
||||
LAMMPS (27 Nov 2018)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# 3d Lennard-Jones melt
|
||||
|
||||
units lj
|
||||
atom_style atomic
|
||||
processors * 1 1
|
||||
|
||||
variable factor index 1.0
|
||||
|
||||
lattice fcc 0.8442
|
||||
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
|
||||
region box block 0 10 0 10 0 10
|
||||
create_box 3 box
|
||||
Created orthogonal box = (0 0 0) to (16.796 16.796 16.796)
|
||||
2 by 1 by 1 MPI processor grid
|
||||
create_atoms 1 box
|
||||
Created 4000 atoms
|
||||
Time spent = 0.000517368 secs
|
||||
mass * 1.0
|
||||
|
||||
region long block 3 6 0 10 0 10
|
||||
set region long type 2
|
||||
1400 settings made for type
|
||||
|
||||
velocity all create 1.0 87287
|
||||
|
||||
pair_style lj/cut 2.5
|
||||
pair_coeff * * 1.0 1.0 2.5
|
||||
pair_coeff * 2 1.0 1.0 5.0
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify every 2 delay 4 check yes
|
||||
|
||||
group fast type 1
|
||||
2600 atoms in group fast
|
||||
group slow type 2
|
||||
1400 atoms in group slow
|
||||
balance 1.0 shift x 5 1.1 weight time 1.0 # out unweighted.txt
|
||||
Neighbor list info ...
|
||||
update every 2 steps, delay 4 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 5.3
|
||||
ghost atom cutoff = 5.3
|
||||
binsize = 2.65, bins = 7 7 7
|
||||
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
|
||||
rebalancing time: 0.000522375 seconds
|
||||
iteration count = 1
|
||||
time weight factor: 1
|
||||
initial/final max load/proc = 2000 2000
|
||||
initial/final imbalance factor = 1 1
|
||||
x cuts: 0 0.5 1
|
||||
y cuts: 0 1
|
||||
z cuts: 0 1
|
||||
|
||||
fix 1 all nve
|
||||
|
||||
#dump id all atom 50 dump.melt
|
||||
|
||||
#dump 2 all image 25 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 2 pad 3
|
||||
|
||||
#dump 3 all movie 25 movie.mpg type type # axes yes 0.8 0.02 view 60 -30
|
||||
#dump_modify 3 pad 3
|
||||
|
||||
thermo 50
|
||||
run 250
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.297 | 4.488 | 4.678 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 1 -6.9453205 0 -5.4456955 -5.6812358
|
||||
50 0.49578514 -6.1929216 0 -5.4494298 -1.6668039
|
||||
100 0.53275389 -6.2475932 0 -5.4486622 -1.9063885
|
||||
150 0.53316457 -6.2483202 0 -5.4487733 -1.9476162
|
||||
200 0.536665 -6.2530113 0 -5.448215 -1.933468
|
||||
250 0.55006273 -6.27163 0 -5.4467422 -2.0438847
|
||||
Loop time of 1.96356 on 2 procs for 250 steps with 4000 atoms
|
||||
|
||||
Performance: 55002.186 tau/day, 127.320 timesteps/s
|
||||
99.4% CPU use with 2 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 1.0024 | 1.243 | 1.4835 | 21.6 | 63.30
|
||||
Neigh | 0.3963 | 0.41601 | 0.43572 | 3.1 | 21.19
|
||||
Comm | 0.032948 | 0.29324 | 0.55353 | 48.1 | 14.93
|
||||
Output | 0.00013924 | 0.00014722 | 0.00015521 | 0.0 | 0.01
|
||||
Modify | 0.0072696 | 0.0073524 | 0.0074351 | 0.1 | 0.37
|
||||
Other | | 0.003842 | | | 0.20
|
||||
|
||||
Nlocal: 2000 ave 2051 max 1949 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 10443 ave 10506 max 10380 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Neighs: 298332 ave 363449 max 233215 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 596664
|
||||
Ave neighs/atom = 149.166
|
||||
Neighbor list builds = 24
|
||||
Dangerous builds = 0
|
||||
balance 1.0 shift x 5 1.1 weight time 1.0 # out unweighted.txt
|
||||
rebalancing time: 0.000424623 seconds
|
||||
iteration count = 3
|
||||
time weight factor: 1
|
||||
initial/final max load/proc = 1.91926 1.6972
|
||||
initial/final imbalance factor = 1.15689 1.02304
|
||||
x cuts: 0 0.4375 1
|
||||
y cuts: 0 1
|
||||
z cuts: 0 1
|
||||
run 250
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.681 | 4.683 | 4.685 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
250 0.55006273 -6.27163 0 -5.4467422 -2.0438847
|
||||
300 0.55111476 -6.2727642 0 -5.4462987 -2.0384873
|
||||
350 0.55211503 -6.274054 0 -5.4460885 -2.0116976
|
||||
400 0.54638463 -6.2661715 0 -5.4467995 -1.992248
|
||||
450 0.55885307 -6.2852263 0 -5.4471563 -2.0669747
|
||||
500 0.54587069 -6.2662849 0 -5.4476836 -2.0078802
|
||||
Loop time of 1.84751 on 2 procs for 250 steps with 4000 atoms
|
||||
|
||||
Performance: 58457.127 tau/day, 135.317 timesteps/s
|
||||
99.5% CPU use with 2 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 1.1214 | 1.2291 | 1.3368 | 9.7 | 66.53
|
||||
Neigh | 0.37418 | 0.41926 | 0.46434 | 7.0 | 22.69
|
||||
Comm | 0.033842 | 0.18738 | 0.34091 | 35.5 | 10.14
|
||||
Output | 0.00016665 | 0.00018752 | 0.00020838 | 0.0 | 0.01
|
||||
Modify | 0.0062993 | 0.0072798 | 0.0082603 | 1.1 | 0.39
|
||||
Other | | 0.00428 | | | 0.23
|
||||
|
||||
Nlocal: 2000 ave 2284 max 1716 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 10450 ave 10742 max 10158 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Neighs: 298063 ave 326003 max 270123 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 596126
|
||||
Ave neighs/atom = 149.031
|
||||
Neighbor list builds = 25
|
||||
Dangerous builds = 0
|
||||
balance 1.0 shift x 5 1.1 weight time 1.0 # out unweighted.txt
|
||||
rebalancing time: 0.000502825 seconds
|
||||
iteration count = 3
|
||||
time weight factor: 1
|
||||
initial/final max load/proc = 1.80118 1.79434
|
||||
initial/final imbalance factor = 1.0927 1.08854
|
||||
x cuts: 0 0.507812 1
|
||||
y cuts: 0 1
|
||||
z cuts: 0 1
|
||||
run 250
|
||||
Per MPI rank memory allocation (min/avg/max) = 4.681 | 4.683 | 4.686 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
500 0.54587069 -6.2662849 0 -5.4476836 -2.0078802
|
||||
550 0.54137926 -6.2592773 0 -5.4474115 -1.9770236
|
||||
600 0.54022886 -6.2573307 0 -5.44719 -1.9619637
|
||||
650 0.54709009 -6.2678862 0 -5.4474562 -1.9958342
|
||||
700 0.54590044 -6.2656903 0 -5.4470444 -1.9957108
|
||||
750 0.55098488 -6.2724831 0 -5.4462124 -2.0287523
|
||||
Loop time of 2.03694 on 2 procs for 250 steps with 4000 atoms
|
||||
|
||||
Performance: 53020.655 tau/day, 122.733 timesteps/s
|
||||
99.3% CPU use with 2 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.92132 | 1.2301 | 1.5389 | 27.8 | 60.39
|
||||
Neigh | 0.3924 | 0.42313 | 0.45386 | 4.7 | 20.77
|
||||
Comm | 0.032816 | 0.37246 | 0.71211 | 55.7 | 18.29
|
||||
Output | 0.00013733 | 0.00014532 | 0.0001533 | 0.0 | 0.01
|
||||
Modify | 0.0069692 | 0.0072372 | 0.0075052 | 0.3 | 0.36
|
||||
Other | | 0.003856 | | | 0.19
|
||||
|
||||
Nlocal: 2000 ave 2097 max 1903 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Nghost: 10439.5 ave 10561 max 10318 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
Neighs: 299628 ave 378859 max 220397 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 599256
|
||||
Ave neighs/atom = 149.814
|
||||
Neighbor list builds = 25
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:05
|
||||