Merge branch 'master' into charge_regulation2
This commit is contained in:
@ -652,7 +652,7 @@ install(
|
|||||||
if(BUILD_SHARED_LIBS)
|
if(BUILD_SHARED_LIBS)
|
||||||
if(CMAKE_VERSION VERSION_LESS 3.12)
|
if(CMAKE_VERSION VERSION_LESS 3.12)
|
||||||
# adjust so we find Python 3 versions before Python 2 on old systems with old CMake
|
# adjust so we find Python 3 versions before Python 2 on old systems with old CMake
|
||||||
set(Python_ADDITIONAL_VERSIONS 3.8 3.7 3.6 3.5)
|
set(Python_ADDITIONAL_VERSIONS 3.9 3.8 3.7 3.6 3.5)
|
||||||
find_package(PythonInterp) # Deprecated since version 3.12
|
find_package(PythonInterp) # Deprecated since version 3.12
|
||||||
if(PYTHONINTERP_FOUND)
|
if(PYTHONINTERP_FOUND)
|
||||||
set(Python_EXECUTABLE ${PYTHON_EXECUTABLE})
|
set(Python_EXECUTABLE ${PYTHON_EXECUTABLE})
|
||||||
@ -662,10 +662,10 @@ if(BUILD_SHARED_LIBS)
|
|||||||
endif()
|
endif()
|
||||||
if (Python_EXECUTABLE)
|
if (Python_EXECUTABLE)
|
||||||
add_custom_target(
|
add_custom_target(
|
||||||
install-python
|
install-python ${CMAKE_COMMAND} -E remove_directory build
|
||||||
${Python_EXECUTABLE} install.py -v ${LAMMPS_SOURCE_DIR}/version.h
|
COMMAND ${Python_EXECUTABLE} install.py -v ${LAMMPS_SOURCE_DIR}/version.h
|
||||||
-p ${LAMMPS_PYTHON_DIR}/lammps
|
-p ${LAMMPS_PYTHON_DIR}/lammps
|
||||||
-l ${CMAKE_BINARY_DIR}/liblammps${CMAKE_SHARED_LIBRARY_SUFFIX}
|
-l ${CMAKE_BINARY_DIR}/liblammps${LAMMPS_MACHINE}${CMAKE_SHARED_LIBRARY_SUFFIX}
|
||||||
WORKING_DIRECTORY ${LAMMPS_PYTHON_DIR}
|
WORKING_DIRECTORY ${LAMMPS_PYTHON_DIR}
|
||||||
COMMENT "Installing LAMMPS Python module")
|
COMMENT "Installing LAMMPS Python module")
|
||||||
else()
|
else()
|
||||||
|
|||||||
@ -36,6 +36,9 @@ if(GPU_API STREQUAL "CUDA")
|
|||||||
option(CUDPP_OPT "Enable CUDPP_OPT" ON)
|
option(CUDPP_OPT "Enable CUDPP_OPT" ON)
|
||||||
option(CUDA_MPS_SUPPORT "Enable tweaks to support CUDA Multi-process service (MPS)" OFF)
|
option(CUDA_MPS_SUPPORT "Enable tweaks to support CUDA Multi-process service (MPS)" OFF)
|
||||||
if(CUDA_MPS_SUPPORT)
|
if(CUDA_MPS_SUPPORT)
|
||||||
|
if(CUDPP_OPT)
|
||||||
|
message(FATAL_ERROR "Must use -DCUDPP_OPT=OFF with -DGPU_CUDA_MPS_SUPPORT=ON")
|
||||||
|
endif()
|
||||||
set(GPU_CUDA_MPS_FLAGS "-DCUDA_PROXY")
|
set(GPU_CUDA_MPS_FLAGS "-DCUDA_PROXY")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@ -94,9 +97,9 @@ if(GPU_API STREQUAL "CUDA")
|
|||||||
if(CUDA_VERSION VERSION_GREATER_EQUAL "10.0")
|
if(CUDA_VERSION VERSION_GREATER_EQUAL "10.0")
|
||||||
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_75,code=[sm_75,compute_75]")
|
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_75,code=[sm_75,compute_75]")
|
||||||
endif()
|
endif()
|
||||||
# Ampere (GPU Arch 8.0) is supported by CUDA 11 and later
|
# Ampere (GPU Arch 8.0 and 8.6) is supported by CUDA 11 and later
|
||||||
if(CUDA_VERSION VERSION_GREATER_EQUAL "11.0")
|
if(CUDA_VERSION VERSION_GREATER_EQUAL "11.0")
|
||||||
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_80,code=[sm_80,compute_80]")
|
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_80,code=[sm_80,compute_80] -gencode arch=compute_86,code=[sm_86,compute_86]")
|
||||||
endif()
|
endif()
|
||||||
if(CUDA_VERSION VERSION_GREATER_EQUAL "12.0")
|
if(CUDA_VERSION VERSION_GREATER_EQUAL "12.0")
|
||||||
message(WARNING "Unsupported CUDA version. Use at your own risk.")
|
message(WARNING "Unsupported CUDA version. Use at your own risk.")
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
# if PYTHON package is included we may also include Python support in MLIAP
|
# if PYTHON package is included we may also include Python support in MLIAP
|
||||||
set(MLIAP_ENABLE_PYTHON_DEFAULT OFF)
|
set(MLIAP_ENABLE_PYTHON_DEFAULT OFF)
|
||||||
if(PKG_PYTHON)
|
if(PKG_PYTHON)
|
||||||
find_package(Cythonize)
|
find_package(Cythonize QUIET)
|
||||||
if(Cythonize_FOUND)
|
if(Cythonize_FOUND)
|
||||||
set(MLIAP_ENABLE_PYTHON_DEFAULT ON)
|
set(MLIAP_ENABLE_PYTHON_DEFAULT ON)
|
||||||
endif()
|
endif()
|
||||||
@ -14,6 +14,15 @@ if(MLIAP_ENABLE_PYTHON)
|
|||||||
if(NOT PKG_PYTHON)
|
if(NOT PKG_PYTHON)
|
||||||
message(FATAL_ERROR "Must enable PYTHON package for including Python support in MLIAP")
|
message(FATAL_ERROR "Must enable PYTHON package for including Python support in MLIAP")
|
||||||
endif()
|
endif()
|
||||||
|
if(CMAKE_VERSION VERSION_LESS 3.12)
|
||||||
|
if(PYTHONLIBS_VERSION_STRING VERSION_LESS 3.6)
|
||||||
|
message(FATAL_ERROR "Python support in MLIAP requires Python 3.6 or later")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
if(Python_VERSION VERSION_LESS 3.6)
|
||||||
|
message(FATAL_ERROR "Python support in MLIAP requires Python 3.6 or later")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
set(MLIAP_BINARY_DIR ${CMAKE_BINARY_DIR}/cython)
|
set(MLIAP_BINARY_DIR ${CMAKE_BINARY_DIR}/cython)
|
||||||
set(MLIAP_CYTHON_SRC ${LAMMPS_SOURCE_DIR}/MLIAP/mliap_model_python_couple.pyx)
|
set(MLIAP_CYTHON_SRC ${LAMMPS_SOURCE_DIR}/MLIAP/mliap_model_python_couple.pyx)
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
.TH LAMMPS "24 December 2020" "2020-12-24"
|
.TH LAMMPS "10 February 2021" "2021-02-10"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
.B LAMMPS
|
.B LAMMPS
|
||||||
\- Molecular Dynamics Simulator.
|
\- Molecular Dynamics Simulator.
|
||||||
|
|||||||
@ -131,7 +131,7 @@ CMake build
|
|||||||
-D HIP_USE_DEVICE_SORT=value # enables GPU sorting
|
-D HIP_USE_DEVICE_SORT=value # enables GPU sorting
|
||||||
# value = yes (default) or no
|
# value = yes (default) or no
|
||||||
-D CUDPP_OPT=value # optimization setting for GPU_API=cuda
|
-D CUDPP_OPT=value # optimization setting for GPU_API=cuda
|
||||||
# enables CUDA Performance Primitives Optimizations
|
# enables CUDA Performance Primitives Optimizations, must be "no" for CUDA_MPS_SUPPORT=yes
|
||||||
# value = yes (default) or no
|
# value = yes (default) or no
|
||||||
-D CUDA_MPS_SUPPORT=value # enables some tweaks required to run with active nvidia-cuda-mps daemon
|
-D CUDA_MPS_SUPPORT=value # enables some tweaks required to run with active nvidia-cuda-mps daemon
|
||||||
# value = yes or no (default)
|
# value = yes or no (default)
|
||||||
@ -219,11 +219,19 @@ Makefile if desired:
|
|||||||
* ``CUDA_PRECISION`` = precision (double, mixed, single)
|
* ``CUDA_PRECISION`` = precision (double, mixed, single)
|
||||||
* ``EXTRAMAKE`` = which Makefile.lammps.\* file to copy to Makefile.lammps
|
* ``EXTRAMAKE`` = which Makefile.lammps.\* file to copy to Makefile.lammps
|
||||||
|
|
||||||
The file Makefile.linux_multi is set up to include support for multiple
|
The file Makefile.cuda is set up to include support for multiple
|
||||||
GPU architectures as supported by the CUDA toolkit in use. This is done
|
GPU architectures as supported by the CUDA toolkit in use. This is done
|
||||||
through using the "--gencode " flag, which can be used multiple times and
|
through using the "--gencode " flag, which can be used multiple times and
|
||||||
thus support all GPU architectures supported by your CUDA compiler.
|
thus support all GPU architectures supported by your CUDA compiler.
|
||||||
|
|
||||||
|
To include CUDA performance primitives set the Makefile variable
|
||||||
|
``CUDPP_OPT = -DUSE_CUDPP -Icudpp_mini``.
|
||||||
|
|
||||||
|
To support the CUDA multiprocessor server you can set the define
|
||||||
|
``-DCUDA_PROXY``. Please note that in this case you should **not** use
|
||||||
|
the CUDA performance primitives and thus set the variable ``CUDPP_OPT``
|
||||||
|
to empty.
|
||||||
|
|
||||||
If the library build is successful, 3 files should be created:
|
If the library build is successful, 3 files should be created:
|
||||||
``lib/gpu/libgpu.a``\ , ``lib/gpu/nvc_get_devices``\ , and
|
``lib/gpu/libgpu.a``\ , ``lib/gpu/nvc_get_devices``\ , and
|
||||||
``lib/gpu/Makefile.lammps``\ . The latter has settings that enable LAMMPS
|
``lib/gpu/Makefile.lammps``\ . The latter has settings that enable LAMMPS
|
||||||
|
|||||||
@ -1,11 +1,133 @@
|
|||||||
Notes for Developers and Code Maintainers
|
Notes for developers and code maintainers
|
||||||
-----------------------------------------
|
-----------------------------------------
|
||||||
|
|
||||||
This section documents how a few large sections of code with LAMMPS
|
This section documents how some of the code functionality within
|
||||||
work at a conceptual level. Comments on code in source files
|
LAMMPS works at a conceptual level. Comments on code in source files
|
||||||
typically document what a variable stores, what a small section of
|
typically document what a variable stores, what a small section of
|
||||||
code does, or what a function does or its input/outputs. The topics
|
code does, or what a function does and its input/outputs. The topics
|
||||||
on this page are intended to document code at a higher level.
|
on this page are intended to document code functionality at a higher level.
|
||||||
|
|
||||||
|
Fix contributions to instantaneous energy, virial, and cumulative energy
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
Fixes can calculate contributions to the instantaneous energy and/or
|
||||||
|
virial of the system, both in a global and peratom sense. Fixes that
|
||||||
|
perform thermostatting or barostatting can calculate the cumulative
|
||||||
|
energy they add to or subtract from the system, which is accessed by
|
||||||
|
the *ecouple* and *econserve* thermodynamic keywords. This subsection
|
||||||
|
explains how both work and what flags to set in a new fix to enable
|
||||||
|
this functionality.
|
||||||
|
|
||||||
|
Let's start with thermostatting and barostatting fixes. Examples are
|
||||||
|
the :doc:`fix langevin <fix_langevin>` and :doc:`fix npt <fix_nh>`
|
||||||
|
commands. Here is what the fix needs to do:
|
||||||
|
|
||||||
|
* Set the variable *ecouple_flag* = 1 in the constructor. Also set
|
||||||
|
*scalar_flag* = 1, *extscalar* = 1, and *global_freq* to a timestep
|
||||||
|
increment which matches how often the fix is invoked.
|
||||||
|
* Implement a compute_scalar() method that returns the cumulative
|
||||||
|
energy added or subtracted by the fix, e.g. by rescaling the
|
||||||
|
velocity of atoms. The sign convention is that subtracted energy is
|
||||||
|
positive, added energy is negative. This must be the total energy
|
||||||
|
added to the entire system, i.e. an "extensive" quantity, not a
|
||||||
|
per-atom energy. Cumulative means the summed energy since the fix
|
||||||
|
was instantiated, even across multiple runs. This is because the
|
||||||
|
energy is used by the *econserve* thermodynamic keyword to check
|
||||||
|
that the fix is conserving the total energy of the system,
|
||||||
|
i.e. potential energy + kinetic energy + coupling energy = a
|
||||||
|
constant.
|
||||||
|
|
||||||
|
And here is how the code operates:
|
||||||
|
|
||||||
|
* The Modify class makes a list of all fixes that set *ecouple_flag* = 1.
|
||||||
|
* The :doc:`thermo_style custom <thermo_style>` command defines
|
||||||
|
*ecouple* and *econserve* keywords.
|
||||||
|
* These keywords sum the energy contributions from all the
|
||||||
|
*ecouple_flag* = 1 fixes by invoking the energy_couple() method in
|
||||||
|
the Modify class, which calls the compute_scalar() method of each
|
||||||
|
fix in the list.
|
||||||
|
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Next, here is how a fix contributes to the instantaneous energy and
|
||||||
|
virial of the system. First, it sets any or all of these flags to a
|
||||||
|
value of 1 in their constructor:
|
||||||
|
|
||||||
|
* *energy_global_flag* to contribute to global energy, example: :doc:`fix indent <fix_indent>`
|
||||||
|
* *energy_peratom_flag* to contribute to peratom energy, :doc:`fix cmap <fix_cmap>`
|
||||||
|
* *virial_global_flag* to contribute to global virial, example: :doc:`fix wall <fix_wall>`
|
||||||
|
* *virial_peratom_flag* to contribute to peratom virial, example: :doc:`fix wall <fix_wall>`
|
||||||
|
|
||||||
|
The fix must also do the following:
|
||||||
|
|
||||||
|
* For global energy, implement a compute_scalar() method that returns
|
||||||
|
the energy added or subtracted on this timestep. Here the sign
|
||||||
|
convention is that added energy is positive, subtracted energy is
|
||||||
|
negative.
|
||||||
|
* For peratom energy, invoke the ev_init(eflag,vflag) function each
|
||||||
|
time the fix is invoked, which initializes per-atom energy storage.
|
||||||
|
The value of eflag may need to be stored from an earlier call to the
|
||||||
|
fix during the same timestep. See how the :doc:`fix cmap
|
||||||
|
<fix_cmap>` command does this in src/MOLECULE/fix_cmap.cpp. When an
|
||||||
|
energy for one or more atoms is calculated, invoke the ev_tally()
|
||||||
|
function to tally the contribution to each atom. Both the ev_init()
|
||||||
|
and ev_tally() methods are in the parent Fix class.
|
||||||
|
* For global and/or peratom virial, invoke the v_init(vflag) function
|
||||||
|
each time the fix is invoked, which initializes virial storage.
|
||||||
|
When forces on one or more atoms are calculated, invoke the
|
||||||
|
v_tally() function to tally the contribution. Both the v_init() and
|
||||||
|
v_tally() methods are in the parent Fix class. Note that there are
|
||||||
|
several variants of v_tally(); choose the one appropriate to your
|
||||||
|
fix.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
The ev_init() and ev_tally() methods also account for global and
|
||||||
|
peratom virial contributions. Thus you do not need to invoke the
|
||||||
|
v_init() and v_tally() methods, if the fix also calculates peratom
|
||||||
|
energies.
|
||||||
|
|
||||||
|
The fix must also specify whether (by default) to include or exclude
|
||||||
|
these contributions to the global/peratom energy/virial of the system.
|
||||||
|
For the fix to include the contributions, set either of both of these
|
||||||
|
variables in the constructor:
|
||||||
|
|
||||||
|
* *thermo_energy* = 1, for global and peratom energy
|
||||||
|
* *thermo_virial* = 1, for global and peratom virial
|
||||||
|
|
||||||
|
Note that these variables are zeroed in fix.cpp. Thus if you don't
|
||||||
|
set the variables, the contributions will be excluded (by default)
|
||||||
|
|
||||||
|
However, the user has ultimate control over whether to include or
|
||||||
|
exclude the contributions of the fix via the :doc:`fix modify
|
||||||
|
<fix_modify>` command:
|
||||||
|
|
||||||
|
* fix modify *energy yes* to include global and peratom energy contributions
|
||||||
|
* fix modify *virial yes* to include global and peratom virial contributions
|
||||||
|
|
||||||
|
If the fix contributes to any of the global/peratom energy/virial
|
||||||
|
values for the system, it should be explained on the fix doc page,
|
||||||
|
along with the default values for the *energy yes/no* and *virial
|
||||||
|
yes/no* settings of the :doc:`fix modify <fix_modify>` command.
|
||||||
|
|
||||||
|
Finally, these 4 contributions are included in the output of 4
|
||||||
|
computes:
|
||||||
|
|
||||||
|
* global energy in :doc:`compute pe <compute_pe>`
|
||||||
|
* peratom energy in :doc:`compute pe/atom <compute_pe_atom>`
|
||||||
|
* global virial in :doc:`compute pressure <compute_pressure>`
|
||||||
|
* peratom virial in :doc:`compute stress/atom <compute_stress_atom>`
|
||||||
|
|
||||||
|
These computes invoke a method of the Modify class to include
|
||||||
|
contributions from fixes that have the corresponding flags set,
|
||||||
|
e.g. *energy_peratom_flag* and *thermo_energy* for :doc:`compute
|
||||||
|
pe/atom <compute_pe_atom>`.
|
||||||
|
|
||||||
|
Note that each compute has an optional keyword to either include or
|
||||||
|
exclude all contributions from fixes. Also note that :doc:`compute pe
|
||||||
|
<compute_pe>` and :doc:`compute pressure <compute_pressure>` are what
|
||||||
|
is used (by default) by :doc:`thermodynamic output <thermo_style>` to
|
||||||
|
calculate values for its *pe* and *press* keywords.
|
||||||
|
|
||||||
KSpace PPPM FFT grids
|
KSpace PPPM FFT grids
|
||||||
^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|||||||
@ -38,17 +38,18 @@ In addition there are DOIs for individual stable releases. Currently there are:
|
|||||||
Home page
|
Home page
|
||||||
^^^^^^^^^
|
^^^^^^^^^
|
||||||
|
|
||||||
The LAMMPS website at `https://lammps.sandia.gov/ <https://lammps.sandia.gov>`_ is the canonical
|
The LAMMPS website at `https://lammps.sandia.gov/
|
||||||
location for information about LAMMPS and more detailed lists of publications
|
<https://lammps.sandia.gov>`_ is the canonical location for information
|
||||||
using LAMMPS and contributing features.
|
about LAMMPS and its features.
|
||||||
|
|
||||||
Citing contributions
|
Citing contributions
|
||||||
^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
LAMMPS has many features and uses previously published methods and
|
LAMMPS has many features and that use either previously published
|
||||||
algorithms or novel features. It also includes potential parameter
|
methods and algorithms or novel features. It also includes potential
|
||||||
filed for specific models. You can look up relevant publications either
|
parameter filed for specific models. Where available, a reminder about
|
||||||
in the LAMMPS output to the screen, the ``log.cite`` file (which is
|
references for optional features used in a specific run is printed to
|
||||||
populated with references to relevant papers through embedding them into
|
the screen and log file. Style and output location can be selected with
|
||||||
the source code) and in the documentation of the :doc:`corresponding commands
|
the :ref:`-cite command-line switch <cite>`. Additional references are
|
||||||
|
given in the documentation of the :doc:`corresponding commands
|
||||||
<Commands_all>` or in the :doc:`Howto tutorials <Howto>`.
|
<Commands_all>` or in the :doc:`Howto tutorials <Howto>`.
|
||||||
|
|||||||
@ -206,16 +206,22 @@ packages in the src directory for examples. If you are uncertain, please ask.
|
|||||||
algorithm/science behind the feature itself, or its initial usage, or
|
algorithm/science behind the feature itself, or its initial usage, or
|
||||||
its implementation in LAMMPS), you can add the citation to the \*.cpp
|
its implementation in LAMMPS), you can add the citation to the \*.cpp
|
||||||
source file. See src/USER-EFF/atom_vec_electron.cpp for an example.
|
source file. See src/USER-EFF/atom_vec_electron.cpp for an example.
|
||||||
A LaTeX citation is stored in a variable at the top of the file and a
|
A LaTeX citation is stored in a variable at the top of the file and
|
||||||
single line of code that references the variable is added to the
|
a single line of code registering this variable is added to the
|
||||||
constructor of the class. Whenever a user invokes your feature from
|
constructor of the class. If there is additional functionality (which
|
||||||
their input script, this will cause LAMMPS to output the citation to a
|
may have been added later) described in a different publication,
|
||||||
log.cite file and prompt the user to examine the file. Note that you
|
additional citation descriptions may be added for as long as they
|
||||||
should only use this for a paper you or your group authored.
|
are only registered when the corresponding keyword activating this
|
||||||
E.g. adding a cite in the code for a paper by Nose and Hoover if you
|
functionality is used. With these options it is possible to have
|
||||||
write a fix that implements their integrator is not the intended
|
LAMMPS output a specific citation reminder whenever a user invokes
|
||||||
usage. That kind of citation should just be in the doc page you
|
your feature from their input script. Note that you should only use
|
||||||
provide.
|
this for the most relevant paper for a feature and a publication that
|
||||||
|
you or your group authored. E.g. adding a citation in the code for
|
||||||
|
a paper by Nose and Hoover if you write a fix that implements their
|
||||||
|
integrator is not the intended usage. That kind of citation should
|
||||||
|
just be included in the documentation page you provide describing
|
||||||
|
your contribution. If you are not sure what the best option would
|
||||||
|
be, please contact the LAMMPS developers for advice.
|
||||||
|
|
||||||
Finally, as a general rule-of-thumb, the more clear and
|
Finally, as a general rule-of-thumb, the more clear and
|
||||||
self-explanatory you make your documentation and README files, and the
|
self-explanatory you make your documentation and README files, and the
|
||||||
|
|||||||
@ -668,8 +668,8 @@ A general interface for machine-learning interatomic potentials, including PyTor
|
|||||||
|
|
||||||
To use this package, also the :ref:`SNAP package <PKG-SNAP>` package needs
|
To use this package, also the :ref:`SNAP package <PKG-SNAP>` package needs
|
||||||
to be installed. To make the *mliappy* model available, also the
|
to be installed. To make the *mliappy* model available, also the
|
||||||
:ref:`PYTHON package <PKG-PYTHON>` package needs to be installed, the version of
|
:ref:`PYTHON package <PKG-PYTHON>` package needs to be installed, the version
|
||||||
Python must be 3.6 or later, and the `cython <https://cython.org/>`_ software
|
of Python must be 3.6 or later, and the `cython <https://cython.org/>`_ software
|
||||||
must be installed.
|
must be installed.
|
||||||
|
|
||||||
**Author:** Aidan Thompson (Sandia), Nicholas Lubbers (LANL).
|
**Author:** Aidan Thompson (Sandia), Nicholas Lubbers (LANL).
|
||||||
|
|||||||
@ -26,6 +26,23 @@ There are multiple Python interface classes in the :py:mod:`lammps` module:
|
|||||||
|
|
||||||
.. _mpi4py_url: https://mpi4py.readthedocs.io
|
.. _mpi4py_url: https://mpi4py.readthedocs.io
|
||||||
|
|
||||||
|
.. admonition:: Version check
|
||||||
|
:class: note
|
||||||
|
|
||||||
|
The :py:mod:`lammps` module stores the version number of the LAMMPS
|
||||||
|
version it is installed from. When initializing the
|
||||||
|
:py:class:`lammps <lammps.lammps>` class, this version is checked to
|
||||||
|
be the same as the result from :py:func:`lammps.version`, the version
|
||||||
|
of the LAMMPS shared library that the module interfaces to. If the
|
||||||
|
they are not the same an AttributeError exception is raised since a
|
||||||
|
mismatch of versions (e.g. due to incorrect use of the
|
||||||
|
``LD_LIBRARY_PATH`` or ``PYTHONPATH`` environment variables can lead
|
||||||
|
to crashes or data corruption and otherwise incorrect behavior.
|
||||||
|
|
||||||
|
.. automodule:: lammps
|
||||||
|
:members:
|
||||||
|
:noindex:
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
The ``lammps`` class API
|
The ``lammps`` class API
|
||||||
|
|||||||
@ -11,6 +11,7 @@ letter abbreviation can be used:
|
|||||||
* :ref:`-k or -kokkos <run-kokkos>`
|
* :ref:`-k or -kokkos <run-kokkos>`
|
||||||
* :ref:`-l or -log <log>`
|
* :ref:`-l or -log <log>`
|
||||||
* :ref:`-m or -mpicolor <mpicolor>`
|
* :ref:`-m or -mpicolor <mpicolor>`
|
||||||
|
* :ref:`-c or -cite <cite>`
|
||||||
* :ref:`-nc or -nocite <nocite>`
|
* :ref:`-nc or -nocite <nocite>`
|
||||||
* :ref:`-pk or -package <package>`
|
* :ref:`-pk or -package <package>`
|
||||||
* :ref:`-p or -partition <partition>`
|
* :ref:`-p or -partition <partition>`
|
||||||
@ -220,14 +221,31 @@ links with from the lib/message directory. See the
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
.. _cite:
|
||||||
|
|
||||||
|
**-cite style or file name**
|
||||||
|
|
||||||
|
Select how and where to output a reminder about citing contributions
|
||||||
|
to the LAMMPS code that were used during the run. Available styles are
|
||||||
|
"both", "none", "screen", or "log". Any flag will be considered a file
|
||||||
|
name to write the detailed citation info to. Default is the "log" style
|
||||||
|
where there is a short summary in the screen output and detailed citations
|
||||||
|
in BibTeX format in the logfile. The option "both" selects the detailed
|
||||||
|
output for both, "none", the short output for both, and "screen" will
|
||||||
|
write the detailed info to the screen and the short version to the log
|
||||||
|
file. If a dedicated citation info file is requested, the screen and
|
||||||
|
log file output will be in the short format (same as with "none").
|
||||||
|
|
||||||
|
See the :doc:`citation page <Intro_citing>` for more details on
|
||||||
|
how to correctly reference and cite LAMMPS.
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
.. _nocite:
|
.. _nocite:
|
||||||
|
|
||||||
**-nocite**
|
**-nocite**
|
||||||
|
|
||||||
Disable writing the log.cite file which is normally written to list
|
Disable generating a citation reminder (see above) at all.
|
||||||
references for specific cite-able features used during a LAMMPS run.
|
|
||||||
See the `citation page <https://lammps.sandia.gov/cite.html>`_ for more
|
|
||||||
details.
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
|||||||
@ -46,11 +46,12 @@ the compute command was issued. The value of the displacement will be
|
|||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
Initial coordinates are stored in "unwrapped" form, by using the
|
Initial coordinates are stored in "unwrapped" form, by using the
|
||||||
image flags associated with each atom. See the :doc:`dump custom <dump>` command for a discussion of "unwrapped" coordinates.
|
image flags associated with each atom. See the :doc:`dump custom
|
||||||
See the Atoms section of the :doc:`read_data <read_data>` command for a
|
<dump>` command for a discussion of "unwrapped" coordinates. See
|
||||||
discussion of image flags and how they are set for each atom. You can
|
the Atoms section of the :doc:`read_data <read_data>` command for a
|
||||||
reset the image flags (e.g. to 0) before invoking this compute by
|
discussion of image flags and how they are set for each atom. You
|
||||||
using the :doc:`set image <set>` command.
|
can reset the image flags (e.g. to 0) before invoking this compute
|
||||||
|
by using the :doc:`set image <set>` command.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
|
|||||||
@ -122,8 +122,11 @@ Output info
|
|||||||
This compute calculates a global scalar (the pressure) and a global
|
This compute calculates a global scalar (the pressure) and a global
|
||||||
vector of length 6 (pressure tensor), which can be accessed by indices
|
vector of length 6 (pressure tensor), which can be accessed by indices
|
||||||
1-6. These values can be used by any command that uses global scalar
|
1-6. 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
|
or vector values from a compute as input. See the :doc:`Howto output
|
||||||
options.
|
<Howto_output>` doc page for an overview of LAMMPS output options.
|
||||||
|
|
||||||
|
The ordering of values in the symmetric pressure tensor is as follows:
|
||||||
|
pxx, pyy, pzz, pxy, pxz, pyz.
|
||||||
|
|
||||||
The scalar and vector values calculated by this compute are
|
The scalar and vector values calculated by this compute are
|
||||||
"intensive". The scalar and vector values will be in pressure
|
"intensive". The scalar and vector values will be in pressure
|
||||||
|
|||||||
@ -30,7 +30,7 @@ Examples
|
|||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
compute 1 all reduce/chunk/atom mychunk min c_cluster
|
compute 1 all reduce/chunk mychunk min c_cluster
|
||||||
|
|
||||||
Description
|
Description
|
||||||
"""""""""""
|
"""""""""""
|
||||||
|
|||||||
@ -216,6 +216,11 @@ an identical manner to compute *stress/atom*. See the :doc:`Howto
|
|||||||
output <Howto_output>` doc page for an overview of LAMMPS output
|
output <Howto_output>` doc page for an overview of LAMMPS output
|
||||||
options.
|
options.
|
||||||
|
|
||||||
|
The ordering of the 6 columns for *stress/atom* is as follows: xx, yy,
|
||||||
|
zz, xy, xz, yz. The ordering of the 9 columns for
|
||||||
|
*centroid/stress/atom* is as follows: xx, yy, zz, xy, xz, yz, yx, zx,
|
||||||
|
zy.
|
||||||
|
|
||||||
The per-atom array values will be in pressure\*volume :doc:`units
|
The per-atom array values will be in pressure\*volume :doc:`units
|
||||||
<units>` as discussed above.
|
<units>` as discussed above.
|
||||||
|
|
||||||
|
|||||||
@ -125,6 +125,16 @@ cannot appear in the neighbor list, to avoid creation of duplicate
|
|||||||
bonds. The neighbor list for all atom type pairs must also extend to
|
bonds. The neighbor list for all atom type pairs must also extend to
|
||||||
a distance that encompasses the *rmax* for new bonds to create.
|
a distance that encompasses the *rmax* for new bonds to create.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
If you want to create bonds between pairs of 1-3 or 1-4 atoms in
|
||||||
|
the current bond topology, then you need to use :doc:`special_bonds
|
||||||
|
lj 0 1 1 <special_bonds>` to insure those pairs appear in the
|
||||||
|
neighbor list. They will not appear with the default special_bonds
|
||||||
|
settings which are zero for 1-2, 1-3, and 1-4 atoms. 1-3 or 1-4
|
||||||
|
atoms are those which are 2 hops or 3 hops apart in the bond
|
||||||
|
topology.
|
||||||
|
|
||||||
An additional requirement for this style is that your system must be
|
An additional requirement for this style is that your system must be
|
||||||
ready to perform a simulation. This means, for example, that all
|
ready to perform a simulation. This means, for example, that all
|
||||||
:doc:`pair_style <pair_style>` coefficients be set via the
|
:doc:`pair_style <pair_style>` coefficients be set via the
|
||||||
|
|||||||
@ -118,32 +118,38 @@ converge properly.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the potential "energy" inferred by the added force to the
|
this fix to add the potential energy inferred by the added force to
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. This is a fictitious quantity but is
|
the global potential energy of the system as part of
|
||||||
needed so that the :doc:`minimize <minimize>` command can include the
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
forces added by this fix in a consistent manner. I.e. there is a
|
this fix is :doc:`fix_modify energy no <fix_modify>`. Note that this
|
||||||
decrease in potential energy when atoms move in the direction of the
|
energy is a fictitious quantity but is needed so that the
|
||||||
added force.
|
:doc:`minimize <minimize>` command can include the forces added by
|
||||||
|
this fix in a consistent manner. I.e. there is a decrease in
|
||||||
|
potential energy when atoms move in the direction of the added force.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
fix to add the contribution due to the added forces on atoms to the
|
this fix to add the contribution due to the added forces on atoms to
|
||||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
both the global pressure and per-atom stress of the system via the
|
||||||
The default is *virial no*
|
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||||
|
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 no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||||
integrator the fix is adding its forces. Default is the outermost
|
<run_style>` integrator the fix is adding its forces. Default is the
|
||||||
level.
|
outermost level.
|
||||||
|
|
||||||
This fix computes a global scalar and a global 3-vector of forces,
|
This fix computes a global scalar and a global 3-vector of forces,
|
||||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
which can be accessed by various :doc:`output commands
|
||||||
The scalar is the potential energy discussed above. The vector is the
|
<Howto_output>`. The scalar is the potential energy discussed above.
|
||||||
total force on the group of atoms before the forces on individual
|
The vector is the total force on the group of atoms before the forces
|
||||||
atoms are changed by the fix. The scalar and vector values calculated
|
on individual atoms are changed by the fix. The scalar and vector
|
||||||
by this fix are "extensive".
|
values calculated by this fix are "extensive".
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
No parameter of this fix can be used with the *start/stop* keywords of
|
||||||
the :doc:`run <run>` command.
|
the :doc:`run <run>` command.
|
||||||
|
|||||||
@ -55,13 +55,15 @@ Restart, fix_modify, output, run start/stop, minimize info
|
|||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the potential "energy" inferred by the added forces to the
|
this fix to add the potential "energy" inferred by the added torques
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. This is a fictitious quantity but is
|
to the global potential energy of the system as part of
|
||||||
needed so that the :doc:`minimize <minimize>` command can include the
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
forces added by this fix in a consistent manner. I.e. there is a
|
this fix is :doc:`fix_modify energy no <fix_modify>`. Note that this
|
||||||
decrease in potential energy when atoms move in the direction of the
|
is a fictitious quantity but is needed so that the :doc:`minimize
|
||||||
added forces.
|
<minimize>` command can include the forces added by this fix in a
|
||||||
|
consistent manner. I.e. there is a decrease in potential energy when
|
||||||
|
atoms move in the direction of the added forces.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
||||||
this fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
this fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||||
@ -78,16 +80,28 @@ No parameter of this fix can be used with the *start/stop* keywords of
|
|||||||
the :doc:`run <run>` command.
|
the :doc:`run <run>` command.
|
||||||
|
|
||||||
The forces due to this fix are imposed during an energy minimization,
|
The forces due to this fix are imposed during an energy minimization,
|
||||||
invoked by the :doc:`minimize <minimize>` command. You should not
|
invoked by the :doc:`minimize <minimize>` command.
|
||||||
specify force components with a variable that has time-dependence for
|
|
||||||
use with a minimizer, since the minimizer increments the timestep as
|
.. note::
|
||||||
the iteration count during the minimization.
|
|
||||||
|
If you want the fictitious potential energy associated with the
|
||||||
|
added forces to be included in the total potential energy of the
|
||||||
|
system (the quantity being minimized), you MUST enable the
|
||||||
|
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
You should not specify force components with a variable that has
|
||||||
|
time-dependence for use with a minimizer, since the minimizer
|
||||||
|
increments the timestep as the iteration count during the
|
||||||
|
minimization.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the USER-MISC package. It is only enabled if
|
This fix is part of the USER-MISC package. It is only enabled if
|
||||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
""""""""""""""""
|
""""""""""""""""
|
||||||
|
|||||||
@ -122,10 +122,22 @@ Restart, fix_modify, output, run start/stop, minimize info
|
|||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files
|
No information about this fix is written to :doc:`binary restart files
|
||||||
<restart>`. The :doc:`fix_modify <fix_modify>` options relevant to this
|
<restart>`.
|
||||||
fix are listed below. No global scalar or vector or per-atom quantities
|
|
||||||
are stored by this fix for access by various :doc:`output commands
|
The :doc:`fix_modify <fix_modify>` *energy* option is not supported by
|
||||||
<Howto_output>`. No parameter of this fix can be used with the
|
this fix, but this fix does add the kinetic energy imparted to atoms
|
||||||
|
by the momentum coupling mode of the AtC package to the global
|
||||||
|
potential energy of the system as part of :doc:`thermodynamic output
|
||||||
|
<thermo_style>`.
|
||||||
|
|
||||||
|
Additional :doc:`fix_modify <fix_modify>` options relevant to this
|
||||||
|
fix are listed below.
|
||||||
|
|
||||||
|
This fix computes a global scalar which can be accessed by various
|
||||||
|
:doc:`output commands <Howto_output>`. The scalar is the energy
|
||||||
|
discussed in the previous paragraph. The scalar value is "extensive".
|
||||||
|
|
||||||
|
No parameter of this fix can be used with the
|
||||||
*start/stop* keywords of the :doc:`run <run>` command. This fix is not
|
*start/stop* keywords of the :doc:`run <run>` command. This fix is not
|
||||||
invoked during :doc:`energy minimization <minimize>`.
|
invoked during :doc:`energy minimization <minimize>`.
|
||||||
|
|
||||||
@ -145,10 +157,10 @@ one, e.g. nve, nvt, etc. In addition, currently:
|
|||||||
Related commands
|
Related commands
|
||||||
""""""""""""""""
|
""""""""""""""""
|
||||||
|
|
||||||
After specifying this fix in your input script, several other
|
After specifying this fix in your input script, several
|
||||||
:doc:`fix_modify <fix_modify>` commands are used to setup the problem,
|
:doc:`fix_modify AtC <fix_modify>` commands are used to setup the
|
||||||
e.g. define the finite element mesh and prescribe initial and boundary
|
problem, e.g. define the finite element mesh and prescribe initial and
|
||||||
conditions.
|
boundary conditions. Each of these options has its own doc page.
|
||||||
|
|
||||||
*fix_modify* commands for setup:
|
*fix_modify* commands for setup:
|
||||||
|
|
||||||
@ -240,7 +252,8 @@ miscellaneous *fix_modify* commands:
|
|||||||
* :doc:`fix_modify AtC remove_species <atc_remove_species>`
|
* :doc:`fix_modify AtC remove_species <atc_remove_species>`
|
||||||
* :doc:`fix_modify AtC remove_molecule <atc_remove_molecule>`
|
* :doc:`fix_modify AtC remove_molecule <atc_remove_molecule>`
|
||||||
|
|
||||||
Note: a set of example input files with the attendant material files are included in the ``examples/USER/atc`` folders.
|
Note: a set of example input files with the attendant material files
|
||||||
|
are included in the ``examples/USER/atc`` folders.
|
||||||
|
|
||||||
Default
|
Default
|
||||||
"""""""
|
"""""""
|
||||||
@ -252,30 +265,52 @@ For detailed exposition of the theory and algorithms please see:
|
|||||||
|
|
||||||
.. _Wagner:
|
.. _Wagner:
|
||||||
|
|
||||||
**(Wagner)** Wagner, GJ; Jones, RE; Templeton, JA; Parks, MA, "An atomistic-to-continuum coupling method for heat transfer in solids." Special Issue of Computer Methods and Applied Mechanics (2008) 197:3351.
|
**(Wagner)** Wagner, GJ; Jones, RE; Templeton, JA; Parks, MA, "An
|
||||||
|
atomistic-to-continuum coupling method for heat transfer in solids."
|
||||||
|
Special Issue of Computer Methods and Applied Mechanics (2008)
|
||||||
|
197:3351.
|
||||||
|
|
||||||
.. _Zimmeman2004:
|
.. _Zimmeman2004:
|
||||||
|
|
||||||
**(Zimmerman2004)** Zimmerman, JA; Webb, EB; Hoyt, JJ;. Jones, RE; Klein, PA; Bammann, DJ, "Calculation of stress in atomistic simulation." Special Issue of Modelling and Simulation in Materials Science and Engineering (2004), 12:S319.
|
**(Zimmerman2004)** Zimmerman, JA; Webb, EB; Hoyt, JJ;. Jones, RE;
|
||||||
|
Klein, PA; Bammann, DJ, "Calculation of stress in atomistic
|
||||||
|
simulation." Special Issue of Modelling and Simulation in Materials
|
||||||
|
Science and Engineering (2004), 12:S319.
|
||||||
|
|
||||||
.. _Zimmerman2010:
|
.. _Zimmerman2010:
|
||||||
|
|
||||||
**(Zimmerman2010)** Zimmerman, JA; Jones, RE; Templeton, JA, "A material frame approach for evaluating continuum variables in atomistic simulations." Journal of Computational Physics (2010), 229:2364.
|
**(Zimmerman2010)** Zimmerman, JA; Jones, RE; Templeton, JA, "A
|
||||||
|
material frame approach for evaluating continuum variables in
|
||||||
|
atomistic simulations." Journal of Computational Physics (2010),
|
||||||
|
229:2364.
|
||||||
|
|
||||||
.. _Templeton2010:
|
.. _Templeton2010:
|
||||||
|
|
||||||
**(Templeton2010)** Templeton, JA; Jones, RE; Wagner, GJ, "Application of a field-based method to spatially varying thermal transport problems in molecular dynamics." Modelling and Simulation in Materials Science and Engineering (2010), 18:085007.
|
**(Templeton2010)** Templeton, JA; Jones, RE; Wagner, GJ, "Application
|
||||||
|
of a field-based method to spatially varying thermal transport
|
||||||
|
problems in molecular dynamics." Modelling and Simulation in
|
||||||
|
Materials Science and Engineering (2010), 18:085007.
|
||||||
|
|
||||||
.. _Jones:
|
.. _Jones:
|
||||||
|
|
||||||
**(Jones)** Jones, RE; Templeton, JA; Wagner, GJ; Olmsted, D; Modine, JA, "Electron transport enhanced molecular dynamics for metals and semi-metals." International Journal for Numerical Methods in Engineering (2010), 83:940.
|
**(Jones)** Jones, RE; Templeton, JA; Wagner, GJ; Olmsted, D; Modine,
|
||||||
|
JA, "Electron transport enhanced molecular dynamics for metals and
|
||||||
|
semi-metals." International Journal for Numerical Methods in
|
||||||
|
Engineering (2010), 83:940.
|
||||||
|
|
||||||
.. _Templeton2011:
|
.. _Templeton2011:
|
||||||
|
|
||||||
**(Templeton2011)** Templeton, JA; Jones, RE; Lee, JW; Zimmerman, JA; Wong, BM, "A long-range electric field solver for molecular dynamics based on atomistic-to-continuum modeling." Journal of Chemical Theory and Computation (2011), 7:1736.
|
**(Templeton2011)** Templeton, JA; Jones, RE; Lee, JW; Zimmerman, JA;
|
||||||
|
Wong, BM, "A long-range electric field solver for molecular dynamics
|
||||||
|
based on atomistic-to-continuum modeling." Journal of Chemical Theory
|
||||||
|
and Computation (2011), 7:1736.
|
||||||
|
|
||||||
.. _Mandadapu:
|
.. _Mandadapu:
|
||||||
|
|
||||||
**(Mandadapu)** Mandadapu, KK; Templeton, JA; Lee, JW, "Polarization as a field variable from molecular dynamics simulations." Journal of Chemical Physics (2013), 139:054115.
|
**(Mandadapu)** Mandadapu, KK; Templeton, JA; Lee, JW, "Polarization
|
||||||
|
as a field variable from molecular dynamics simulations." Journal of
|
||||||
|
Chemical Physics (2013), 139:054115.
|
||||||
|
|
||||||
Please refer to the standard finite element (FE) texts, e.g. T.J.R Hughes " The finite element method ", Dover 2003, for the basics of FE simulation.
|
Please refer to the standard finite element (FE) texts, e.g. T.J.R
|
||||||
|
Hughes " The finite element method ", Dover 2003, for the basics of FE
|
||||||
|
simulation.
|
||||||
|
|||||||
@ -75,6 +75,39 @@ Note that *V_avg* and *Coeff_i* should all be in the proper units, e.g. if you
|
|||||||
are using *units real*\ , *V_avg* should be in cubic angstroms, and the
|
are using *units real*\ , *V_avg* should be in cubic angstroms, and the
|
||||||
coefficients should all be in atmospheres \* cubic angstroms.
|
coefficients should all be in atmospheres \* cubic angstroms.
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
This fix writes the cumulative global energy change to :doc:`binary
|
||||||
|
restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||||
|
command for info on how to re-specify a fix in an input script that
|
||||||
|
reads a restart file, so that the fix continues in an uninterrupted
|
||||||
|
fashion.
|
||||||
|
|
||||||
|
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||||
|
fix. You can use it to assign a temperature :doc:`compute <compute>`
|
||||||
|
you have defined to this fix which will be used in its thermostatting
|
||||||
|
procedure, as described above. For consistency, the group used by
|
||||||
|
this fix and by the compute should be the same.
|
||||||
|
|
||||||
|
The cumulative energy change in the system imposed by this fix is
|
||||||
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
|
This fix computes a global scalar which can be accessed by various
|
||||||
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
|
cumulative energy change due to this fix described in the previous
|
||||||
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
|
This fix can ramp its target 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.
|
||||||
|
|
||||||
|
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
|
|||||||
@ -41,7 +41,7 @@ Syntax
|
|||||||
* template-ID(post-reacted) = ID of a molecule template containing post-reaction topology
|
* template-ID(post-reacted) = ID of a molecule template containing post-reaction topology
|
||||||
* map_file = name of file specifying corresponding atom-IDs in the pre- and post-reacted templates
|
* map_file = name of file specifying corresponding atom-IDs in the pre- and post-reacted templates
|
||||||
* zero or more individual keyword/value pairs may be appended to each react argument
|
* zero or more individual keyword/value pairs may be appended to each react argument
|
||||||
* individual_keyword = *prob* or *max_rxn* or *stabilize_steps* or *custom_charges*
|
* individual_keyword = *prob* or *max_rxn* or *stabilize_steps* or *custom_charges* or *molecule* or *modify_create*
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
@ -59,6 +59,12 @@ Syntax
|
|||||||
off = allow both inter- and intramolecular reactions (default)
|
off = allow both inter- and intramolecular reactions (default)
|
||||||
inter = search for reactions between molecules with different IDs
|
inter = search for reactions between molecules with different IDs
|
||||||
intra = search for reactions within the same molecule
|
intra = search for reactions within the same molecule
|
||||||
|
*modify_create* keyword values
|
||||||
|
*fit* value = *all* or *fragmentID*
|
||||||
|
all = use all eligible atoms for create-atoms fit (default)
|
||||||
|
fragmentID = ID of molecule fragment used for create-atoms fit
|
||||||
|
*overlap* value = R
|
||||||
|
R = only insert atom/molecule if further than R from existing particles (distance units)
|
||||||
|
|
||||||
Examples
|
Examples
|
||||||
""""""""
|
""""""""
|
||||||
@ -89,7 +95,9 @@ documentation. Topology changes are defined in pre- and post-reaction
|
|||||||
molecule templates and can include creation and deletion of bonds,
|
molecule templates and can include creation and deletion of bonds,
|
||||||
angles, dihedrals, impropers, bond types, angle types, dihedral types,
|
angles, dihedrals, impropers, bond types, angle types, dihedral types,
|
||||||
atom types, or atomic charges. In addition, reaction by-products or
|
atom types, or atomic charges. In addition, reaction by-products or
|
||||||
other molecules can be identified and deleted.
|
other molecules can be identified and deleted. Finally, atoms can be
|
||||||
|
created and inserted at specific positions relative to the reaction
|
||||||
|
site.
|
||||||
|
|
||||||
Fix bond/react does not use quantum mechanical (eg. fix qmmm) or
|
Fix bond/react does not use quantum mechanical (eg. fix qmmm) or
|
||||||
pairwise bond-order potential (eg. Tersoff or AIREBO) methods to
|
pairwise bond-order potential (eg. Tersoff or AIREBO) methods to
|
||||||
@ -262,14 +270,14 @@ command page.
|
|||||||
|
|
||||||
The post-reacted molecule template contains a sample of the reaction
|
The post-reacted molecule template contains a sample of the reaction
|
||||||
site and its surrounding topology after the reaction has occurred. It
|
site and its surrounding topology after the reaction has occurred. It
|
||||||
must contain the same number of atoms as the pre-reacted template. A
|
must contain the same number of atoms as the pre-reacted template
|
||||||
one-to-one correspondence between the atom IDs in the pre- and
|
(unless there are created atoms). A one-to-one correspondence between
|
||||||
post-reacted templates is specified in the map file as described
|
the atom IDs in the pre- and post-reacted templates is specified in
|
||||||
below. Note that during a reaction, an atom, bond, etc. type may
|
the map file as described below. Note that during a reaction, an atom,
|
||||||
change to one that was previously not present in the simulation. These
|
bond, etc. type may change to one that was previously not present in
|
||||||
new types must also be defined during the setup of a given simulation.
|
the simulation. These new types must also be defined during the setup
|
||||||
A discussion of correctly handling this is also provided on the
|
of a given simulation. A discussion of correctly handling this is also
|
||||||
:doc:`molecule <molecule>` command page.
|
provided on the :doc:`molecule <molecule>` command page.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
@ -283,7 +291,7 @@ A discussion of correctly handling this is also provided on the
|
|||||||
The map file is a text document with the following format:
|
The map file is a text document with the following format:
|
||||||
|
|
||||||
A map file has a header and a body. The header of map file the
|
A map file has a header and a body. The header of map file the
|
||||||
contains one mandatory keyword and four optional keywords. The
|
contains one mandatory keyword and five optional keywords. The
|
||||||
mandatory keyword is 'equivalences':
|
mandatory keyword is 'equivalences':
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
@ -296,11 +304,12 @@ The optional keywords are 'edgeIDs', 'deleteIDs', 'chiralIDs' and
|
|||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
N *edgeIDs* = # of edge atoms N in the pre-reacted molecule template
|
N *edgeIDs* = # of edge atoms N in the pre-reacted molecule template
|
||||||
N *deleteIDs* = # of atoms N that are specified for deletion
|
N *deleteIDs* = # of atoms N that are deleted
|
||||||
N *chiralIDs* = # of specified chiral centers N
|
N *createIDs* = # of atoms N that are created
|
||||||
N *constraints* = # of specified reaction constraints N
|
N *chiralIDs* = # of chiral centers N
|
||||||
|
N *constraints* = # of reaction constraints N
|
||||||
|
|
||||||
The body of the map file contains two mandatory sections and four
|
The body of the map file contains two mandatory sections and five
|
||||||
optional sections. The first mandatory section begins with the keyword
|
optional sections. The first mandatory section begins with the keyword
|
||||||
'InitiatorIDs' and lists the two atom IDs of the initiator atom pair
|
'InitiatorIDs' and lists the two atom IDs of the initiator atom pair
|
||||||
in the pre-reacted molecule template. The second mandatory section
|
in the pre-reacted molecule template. The second mandatory section
|
||||||
@ -313,8 +322,10 @@ the keyword 'EdgeIDs' and lists the atom IDs of edge atoms in the
|
|||||||
pre-reacted molecule template. The second optional section begins with
|
pre-reacted molecule template. The second optional section begins with
|
||||||
the keyword 'DeleteIDs' and lists the atom IDs of pre-reaction
|
the keyword 'DeleteIDs' and lists the atom IDs of pre-reaction
|
||||||
template atoms to delete. The third optional section begins with the
|
template atoms to delete. The third optional section begins with the
|
||||||
|
keyword 'CreateIDs' and lists the atom IDs of the post-reaction
|
||||||
|
template atoms to create. The fourth optional section begins with the
|
||||||
keyword 'ChiralIDs' lists the atom IDs of chiral atoms whose
|
keyword 'ChiralIDs' lists the atom IDs of chiral atoms whose
|
||||||
handedness should be enforced. The fourth optional section begins with
|
handedness should be enforced. The fifth optional section begins with
|
||||||
the keyword 'Constraints' and lists additional criteria that must be
|
the keyword 'Constraints' and lists additional criteria that must be
|
||||||
satisfied in order for the reaction to occur. Currently, there are
|
satisfied in order for the reaction to occur. Currently, there are
|
||||||
five types of constraints available, as discussed below: 'distance',
|
five types of constraints available, as discussed below: 'distance',
|
||||||
@ -353,6 +364,38 @@ A sample map file is given below:
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
A user-specified set of atoms can be deleted by listing their
|
||||||
|
pre-reaction template IDs in the DeleteIDs section. A deleted atom
|
||||||
|
must still be included in the post-reaction molecule template, in
|
||||||
|
which it cannot be bonded to an atom that is not deleted. In addition
|
||||||
|
to deleting unwanted reaction by-products, this feature can be used to
|
||||||
|
remove specific topologies, such as small rings, that may be otherwise
|
||||||
|
indistinguishable.
|
||||||
|
|
||||||
|
Atoms can be created by listing their post-reaction template IDs in
|
||||||
|
the CreateIDs section. A created atom should not be included in the
|
||||||
|
pre-reaction template. The inserted positions of created atoms are
|
||||||
|
determined by the coordinates of the post-reaction template, after
|
||||||
|
optimal translation and rotation of the post-reaction template to the
|
||||||
|
reaction site (using a fit with atoms that are neither created nor
|
||||||
|
deleted). The *modify_create* keyword can be used to modify the
|
||||||
|
default behavior when creating atoms. The *modify_create* keyword has
|
||||||
|
two sub-keywords, *fit* and *overlap*. One or more of the sub-keywords
|
||||||
|
may be used after the *modify_create* keyword. The *fit* sub-keyword
|
||||||
|
can be used to specify which post-reaction atoms are used for the
|
||||||
|
optimal translation and rotation of the post-reaction template. The
|
||||||
|
*fragmentID* value of the *fit* sub-keyword must be the name of a
|
||||||
|
molecule fragment defined in the post-reaction :doc:`molecule
|
||||||
|
<molecule>` template, and only atoms in this fragment are used for the
|
||||||
|
fit. Atoms are created only if no current atom in the simulation is
|
||||||
|
within a distance R of any created atom, including the effect of
|
||||||
|
periodic boundary conditions if applicable. R is defined by the
|
||||||
|
*overlap* sub-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. The velocity of each created atom is initialized in
|
||||||
|
a random direction with a magnitude calculated from the instantaneous
|
||||||
|
temperature of the reaction site.
|
||||||
|
|
||||||
The handedness of atoms that are chiral centers can be enforced by
|
The handedness of atoms that are chiral centers can be enforced by
|
||||||
listing their IDs in the ChiralIDs section. A chiral atom must be
|
listing their IDs in the ChiralIDs section. A chiral atom must be
|
||||||
bonded to four atoms with mutually different atom types. This feature
|
bonded to four atoms with mutually different atom types. This feature
|
||||||
@ -528,15 +571,6 @@ the same molecule ID are considered for the reaction.
|
|||||||
|
|
||||||
A few other considerations:
|
A few other considerations:
|
||||||
|
|
||||||
Many reactions result in one or more atoms that are considered
|
|
||||||
unwanted by-products. Therefore, bond/react provides the option to
|
|
||||||
delete a user-specified set of atoms. These pre-reaction atoms are
|
|
||||||
identified in the map file. A deleted atom must still be included in
|
|
||||||
the post-reaction molecule template, in which it cannot be bonded to
|
|
||||||
an atom that is not deleted. In addition to deleting unwanted reaction
|
|
||||||
by-products, this feature can be used to remove specific topologies,
|
|
||||||
such as small rings, that may be otherwise indistinguishable.
|
|
||||||
|
|
||||||
Optionally, you can enforce additional behaviors on reacting atoms.
|
Optionally, you can enforce additional behaviors on reacting atoms.
|
||||||
For example, it may be beneficial to force reacting atoms to remain at
|
For example, it may be beneficial to force reacting atoms to remain at
|
||||||
a certain temperature. For this, you can use the internally-created
|
a certain temperature. For this, you can use the internally-created
|
||||||
@ -610,14 +644,14 @@ Default
|
|||||||
"""""""
|
"""""""
|
||||||
|
|
||||||
The option defaults are stabilization = no, prob = 1.0, stabilize_steps = 60,
|
The option defaults are stabilization = no, prob = 1.0, stabilize_steps = 60,
|
||||||
reset_mol_ids = yes, custom_charges = no, molecule = off
|
reset_mol_ids = yes, custom_charges = no, molecule = off, modify_create = no
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
.. _Gissinger:
|
.. _Gissinger:
|
||||||
|
|
||||||
**(Gissinger)** Gissinger, Jensen and Wise, Polymer, 128, 211-217 (2017).
|
**(Gissinger2017)** Gissinger, Jensen and Wise, Polymer, 128, 211-217 (2017).
|
||||||
|
|
||||||
.. _Gissinger2020:
|
.. _Gissinger2020:
|
||||||
|
|
||||||
**(Gissinger)** Gissinger, Jensen and Wise, Macromolecules, 53, 22, 9953-9961 (2020).
|
**(Gissinger2020)** Gissinger, Jensen and Wise, Macromolecules, 53, 22, 9953-9961 (2020).
|
||||||
|
|||||||
@ -47,14 +47,15 @@ for running *ab initio* MD with quantum forces.
|
|||||||
The group associated with this fix is ignored.
|
The group associated with this fix is ignored.
|
||||||
|
|
||||||
The protocol and :doc:`units <units>` for message format and content
|
The protocol and :doc:`units <units>` for message format and content
|
||||||
that LAMMPS exchanges with the server code is defined on the :doc:`server md <server_md>` doc page.
|
that LAMMPS exchanges with the server code is defined on the
|
||||||
|
:doc:`server md <server_md>` doc page.
|
||||||
|
|
||||||
Note that when using LAMMPS as an MD client, your LAMMPS input script
|
Note that when using LAMMPS as an MD client, your LAMMPS input script
|
||||||
should not normally contain force field commands, like a
|
should not normally contain force field commands, like a
|
||||||
:doc:`pair_style <pair_style>`, :doc:`bond_style <bond_style>`, or
|
:doc:`pair_style <pair_style>`, :doc:`bond_style <bond_style>`, or
|
||||||
:doc:`kspace_style <kspace_style>` command. However it is possible for
|
:doc:`kspace_style <kspace_style>` command. However it is possible
|
||||||
a server code to only compute a portion of the full force-field, while
|
for a server code to only compute a portion of the full force-field,
|
||||||
LAMMPS computes the remaining part. Your LAMMPS script can also
|
while LAMMPS computes the remaining part. Your LAMMPS script can also
|
||||||
specify boundary conditions or force constraints in the usual way,
|
specify boundary conditions or force constraints in the usual way,
|
||||||
which will be added to the per-atom forces returned by the server
|
which will be added to the per-atom forces returned by the server
|
||||||
code.
|
code.
|
||||||
@ -69,16 +70,21 @@ LAMMPS and another code in tandem to perform a coupled simulation.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the potential energy computed by the server application to
|
this fix to add the potential energy set by the server application to
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
the global potential energy of the system as part of
|
||||||
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
|
this fix is :doc:`fix_modify energy yes <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
fix to add the server application's contribution to the system's
|
this fix to add the contribution computed by the server application to
|
||||||
virial as part of :doc:`thermodynamic output <thermo_style>`. The
|
the global pressure of the system via the :doc:`compute pressure
|
||||||
default is *virial yes*
|
<compute_pressure>` command. This can be accessed by
|
||||||
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
|
this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||||
@ -86,13 +92,16 @@ energy discussed above. The scalar value calculated by this fix is
|
|||||||
"extensive".
|
"extensive".
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
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
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the MESSAGE package. It is only enabled if LAMMPS
|
This fix is part of the MESSAGE package. It is only enabled if LAMMPS
|
||||||
was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
A script that uses this command must also use the
|
A script that uses this command must also use the
|
||||||
:doc:`message <message>` command to setup and shut down the messaging
|
:doc:`message <message>` command to setup and shut down the messaging
|
||||||
|
|||||||
@ -29,11 +29,12 @@ Description
|
|||||||
This command enables CMAP cross-terms to be added to simulations which
|
This command enables CMAP cross-terms to be added to simulations which
|
||||||
use the CHARMM force field. These are relevant for any CHARMM model
|
use the CHARMM force field. These are relevant for any CHARMM model
|
||||||
of a peptide or protein sequences that is 3 or more amino-acid
|
of a peptide or protein sequences that is 3 or more amino-acid
|
||||||
residues long; see :ref:`(Buck) <Buck>` and :ref:`(Brooks) <Brooks2>` for details,
|
residues long; see :ref:`(Buck) <Buck>` and :ref:`(Brooks) <Brooks2>`
|
||||||
including the analytic energy expressions for CMAP interactions. The
|
for details, including the analytic energy expressions for CMAP
|
||||||
CMAP cross-terms add additional potential energy contributions to pairs
|
interactions. The CMAP cross-terms add additional potential energy
|
||||||
of overlapping phi-psi dihedrals of amino-acids, which are important
|
contributions to pairs of overlapping phi-psi dihedrals of
|
||||||
to properly represent their conformational behavior.
|
amino-acids, which are important to properly represent their
|
||||||
|
conformational behavior.
|
||||||
|
|
||||||
The examples/cmap directory has a sample input script and data file
|
The examples/cmap directory has a sample input script and data file
|
||||||
for a small peptide, that illustrates use of the fix cmap command.
|
for a small peptide, that illustrates use of the fix cmap command.
|
||||||
@ -93,19 +94,27 @@ the note below about how to include the CMAP energy when performing an
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the list of CMAP cross-terms to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>` command
|
This fix writes the list of CMAP cross-terms to :doc:`binary restart
|
||||||
|
files <restart>`. See the :doc:`read_restart <read_restart>` command
|
||||||
for info on how to re-specify a fix in an input script that reads a
|
for info on how to re-specify a fix in an input script that reads a
|
||||||
restart file, so that the operation of the fix continues in an
|
restart file, so that the operation of the fix continues in an
|
||||||
uninterrupted fashion.
|
uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the potential "energy" of the CMAP interactions system's
|
this fix to add the potential energy of the CMAP interactions to both
|
||||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
the global potential energy and peratom potential energies of the
|
||||||
|
system as part of :doc:`thermodynamic output <thermo_style>` or
|
||||||
|
output by the :doc:`compute pe/atom <compute_pe_atom>` command. The
|
||||||
|
default setting for this fix is :doc:`fix_modify energy yes
|
||||||
|
<fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
fix to add the contribution due to the interaction between atoms to
|
this fix to add the contribution due to the CMAP interactions to both
|
||||||
the system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
the global pressure and per-atom stress of the system via the
|
||||||
The default is *virial yes*
|
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||||
|
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>`.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||||
@ -121,8 +130,8 @@ invoked by the :doc:`minimize <minimize>` command.
|
|||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
If you want the potential energy associated with the CMAP terms
|
If you want the potential energy associated with the CMAP terms
|
||||||
forces to be included in the total potential energy of the system (the
|
forces to be included in the total potential energy of the system
|
||||||
quantity being minimized), you MUST enable the
|
(the quantity being minimized), you MUST not disable the
|
||||||
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
|
|||||||
@ -35,12 +35,12 @@ Examples
|
|||||||
Description
|
Description
|
||||||
"""""""""""
|
"""""""""""
|
||||||
|
|
||||||
This fix interfaces LAMMPS to the collective variables "Colvars"
|
This fix interfaces LAMMPS to the collective variables (Colvars)
|
||||||
library, which allows to calculate potentials of mean force
|
library, which allows to calculate potentials of mean force (PMFs) for
|
||||||
(PMFs) for any set of colvars, using different sampling methods:
|
any set of colvars, using different sampling methods: currently
|
||||||
currently implemented are the Adaptive Biasing Force (ABF) method,
|
implemented are the Adaptive Biasing Force (ABF) method, metadynamics,
|
||||||
metadynamics, Steered Molecular Dynamics (SMD) and Umbrella Sampling
|
Steered Molecular Dynamics (SMD) and Umbrella Sampling (US) via a
|
||||||
(US) via a flexible harmonic restraint bias.
|
flexible harmonic restraint bias.
|
||||||
|
|
||||||
This documentation describes only the fix colvars command itself and
|
This documentation describes only the fix colvars command itself and
|
||||||
LAMMPS specific parts of the code. The full documentation of the
|
LAMMPS specific parts of the code. The full documentation of the
|
||||||
@ -98,9 +98,11 @@ This fix writes the current status of the colvars module into
|
|||||||
mode status file that is written by the colvars module itself and the
|
mode status file that is written by the colvars module itself and the
|
||||||
kind of information in both files is identical.
|
kind of information in both files is identical.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the energy change from the biasing force added by the fix
|
this fix to add the energy change from the biasing force added by
|
||||||
to the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
Colvars to the global potential energy of the system as part of
|
||||||
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
|
this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||||
|
|
||||||
The *fix_modify configfile <config file>* option allows to add settings
|
The *fix_modify configfile <config file>* option allows to add settings
|
||||||
from an additional config file to the colvars module. This option can
|
from an additional config file to the colvars module. This option can
|
||||||
@ -113,15 +115,16 @@ in a pair of double quotes ("), or can span multiple lines when bracketed
|
|||||||
by a pair of triple double quotes (""", like python embedded documentation).
|
by a pair of triple double quotes (""", like python embedded documentation).
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
:doc:`output commands <Howto_output>`. The scalar is the Colvars
|
||||||
energy change due to this fix. The scalar value calculated by this
|
energy mentioned above. The scalar value calculated by this fix is
|
||||||
fix is "extensive".
|
"extensive".
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the USER-COLVARS package. It is only enabled if
|
This fix is part of the USER-COLVARS package. It is only enabled if
|
||||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
There can only be one colvars fix active at a time. Since the interface
|
There can only be one colvars fix active at a time. Since the interface
|
||||||
communicates only the minimum amount of information and colvars module
|
communicates only the minimum amount of information and colvars module
|
||||||
|
|||||||
@ -100,9 +100,9 @@ minimize the orientation of dipoles in an applied electric field.
|
|||||||
|
|
||||||
The *energy* keyword specifies the name of an atom-style
|
The *energy* keyword specifies the name of an atom-style
|
||||||
:doc:`variable <variable>` which is used to compute the energy of each
|
:doc:`variable <variable>` which is used to compute the energy of each
|
||||||
atom as function of its position. Like variables used for *ex*\ , *ey*\ ,
|
atom as function of its position. Like variables used for *ex*\ ,
|
||||||
*ez*\ , the energy variable is specified as v_name, where name is the
|
*ey*\ , *ez*\ , the energy variable is specified as v_name, where name
|
||||||
variable name.
|
is the variable name.
|
||||||
|
|
||||||
Note that when the *energy* keyword is used during an energy
|
Note that when the *energy* keyword is used during an energy
|
||||||
minimization, you must insure that the formula defined for the
|
minimization, you must insure that the formula defined for the
|
||||||
@ -117,31 +117,38 @@ minimization will not converge properly.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the potential "energy" inferred by the added force due to
|
this fix to add the potential energy inferred by the added force due
|
||||||
the electric field to the system's potential energy as part of
|
to the electric field to the global potential energy of the system as
|
||||||
:doc:`thermodynamic output <thermo_style>`. This is a fictitious
|
part of :doc:`thermodynamic output <thermo_style>`. The default
|
||||||
quantity but is needed so that the :doc:`minimize <minimize>` command
|
setting for this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||||
can include the forces added by this fix in a consistent manner.
|
Note that this energy is a fictitious quantity but is needed so that
|
||||||
I.e. there is a decrease in potential energy when atoms move in the
|
the :doc:`minimize <minimize>` command can include the forces added by
|
||||||
direction of the added force due to the electric field.
|
this fix in a consistent manner. I.e. there is a decrease in
|
||||||
|
potential energy when atoms move in the direction of the added force
|
||||||
|
due to the electric field.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
fix to add the contribution due to the added forces on atoms to the
|
this fix to add the contribution due to the added forces on atoms to
|
||||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
both the global pressure and per-atom stress of the system via the
|
||||||
The default is *virial no*
|
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||||
|
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 no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||||
integrator the fix adding its forces. Default is the outermost level.
|
<run_style>` integrator the fix adding its forces. Default is the
|
||||||
|
outermost level.
|
||||||
|
|
||||||
This fix computes a global scalar and a global 3-vector of forces,
|
This fix computes a global scalar and a global 3-vector of forces,
|
||||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
which can be accessed by various :doc:`output commands
|
||||||
The scalar is the potential energy discussed above. The vector is the
|
<Howto_output>`. The scalar is the potential energy discussed above.
|
||||||
total force added to the group of atoms. The scalar and vector values
|
The vector is the total force added to the group of atoms. The scalar
|
||||||
calculated by this fix are "extensive".
|
and vector values calculated by this fix are "extensive".
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
No parameter of this fix can be used with the *start/stop* keywords of
|
||||||
the :doc:`run <run>` command.
|
the :doc:`run <run>` command.
|
||||||
|
|||||||
@ -84,7 +84,8 @@ code `Quest <quest_>`_.
|
|||||||
|
|
||||||
If mode is *pf/array* then the fix simply stores force values in an
|
If mode is *pf/array* then the fix simply stores force values in an
|
||||||
array. The fix adds these forces to each atom in the group, once
|
array. The fix adds these forces to each atom in the group, once
|
||||||
every *Napply* steps, similar to the way the :doc:`fix addforce <fix_addforce>` command works.
|
every *Napply* steps, similar to the way the :doc:`fix addforce
|
||||||
|
<fix_addforce>` command works.
|
||||||
|
|
||||||
The name of the public force array provided by the FixExternal
|
The name of the public force array provided by the FixExternal
|
||||||
class is
|
class is
|
||||||
@ -150,19 +151,27 @@ of properties that the caller code may want to communicate to LAMMPS
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the potential "energy" set by the external driver to the
|
this fix to add the potential energy set by the external driver to
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. This is a fictitious quantity but is
|
both the global potential energy and peratom potential energies of the
|
||||||
needed so that the :doc:`minimize <minimize>` command can include the
|
system as part of :doc:`thermodynamic output <thermo_style>` or output
|
||||||
forces added by this fix in a consistent manner. I.e. there is a
|
by the :doc:`compute pe/atom <compute_pe_atom>` command. The default
|
||||||
decrease in potential energy when atoms move in the direction of the
|
setting for this fix is :doc:`fix_modify energy yes <fix_modify>`.
|
||||||
added force.
|
Note that this energy may be a fictitious quantity but it is needed so
|
||||||
|
that the :doc:`minimize <minimize>` command can include the forces
|
||||||
|
added by this fix in a consistent manner. I.e. there is a decrease in
|
||||||
|
potential energy when atoms move in the direction of the added force.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
fix to add the contribution due to the interactions computed by the
|
this fix to add the contribution computed by the external program to
|
||||||
external program to the system's virial as part of :doc:`thermodynamic output <thermo_style>`. The default is *virial yes*
|
both the global pressure and per-atom stress of the system via the
|
||||||
|
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||||
|
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>`.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||||
@ -178,7 +187,7 @@ invoked by the :doc:`minimize <minimize>` command.
|
|||||||
|
|
||||||
If you want the fictitious potential energy associated with the
|
If you want the fictitious potential energy associated with the
|
||||||
added forces to be included in the total potential energy of the
|
added forces to be included in the total potential energy of the
|
||||||
system (the quantity being minimized), you MUST enable the
|
system (the quantity being minimized), you MUST not disable the
|
||||||
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
|
|||||||
@ -76,28 +76,31 @@ Restart, fix_modify, output, run start/stop, minimize info
|
|||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
The instantaneous values of the extended variables are written to
|
The instantaneous values of the extended variables are written to
|
||||||
:doc:`binary restart files <restart>`. Because the state of the random
|
:doc:`binary restart files <restart>`. Because the state of the
|
||||||
number generator is not saved in restart files, this means you cannot
|
random number generator is not saved in restart files, this means you
|
||||||
do "exact" restarts with this fix, where the simulation continues on
|
cannot do "exact" restarts with this fix, where the simulation
|
||||||
the same as if no restart had taken place. However, in a statistical
|
continues on the same as if no restart had taken place. However, in a
|
||||||
sense, a restarted simulation should produce the same behavior.
|
statistical sense, a restarted simulation should produce the same
|
||||||
Note however that you should use a different seed each time you
|
behavior. Note however that you should use a different seed each time
|
||||||
restart, otherwise the same sequence of random numbers will be used
|
you restart, otherwise the same sequence of random numbers will be
|
||||||
each time, which might lead to stochastic synchronization and
|
used each time, which might lead to stochastic synchronization and
|
||||||
subtle artifacts in the sampling.
|
subtle artifacts in the sampling.
|
||||||
|
|
||||||
|
The cumulative energy change in the system imposed by this fix is
|
||||||
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
|
This fix computes a global scalar which can be accessed by various
|
||||||
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
|
cumulative energy change due to this fix described in the previous
|
||||||
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
This fix can ramp its target temperature over multiple runs, using the
|
This fix can ramp its target temperature over multiple runs, using the
|
||||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||||
:doc:`run <run>` command for details of how to do this.
|
:doc:`run <run>` command for details of how to do this.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||||
fix to add the energy change induced by Langevin thermostatting to the
|
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
|
||||||
energy change due to this fix. The scalar value calculated by this
|
|
||||||
fix is "extensive".
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -55,17 +55,22 @@ momentum.
|
|||||||
GD applies an external fluctuating gravitational field that acts as a
|
GD applies an external fluctuating gravitational field that acts as a
|
||||||
driving force to keep the system away from equilibrium. To maintain
|
driving force to keep the system away from equilibrium. To maintain
|
||||||
steady state, a profile-unbiased thermostat must be implemented to
|
steady state, a profile-unbiased thermostat must be implemented to
|
||||||
dissipate the heat that is added by the driving force. :doc:`Compute temp/profile <compute_temp_profile>` can be used to implement a
|
dissipate the heat that is added by the driving force. :doc:`Compute
|
||||||
|
temp/profile <compute_temp_profile>` can be used to implement a
|
||||||
profile-unbiased thermostat.
|
profile-unbiased thermostat.
|
||||||
|
|
||||||
A common use of this fix is to compute a pressure drop across a pipe,
|
A common use of this fix is to compute a pressure drop across a pipe,
|
||||||
pore, or membrane. The pressure profile can be computed in LAMMPS with
|
pore, or membrane. The pressure profile can be computed in LAMMPS with
|
||||||
:doc:`compute stress/atom <compute_stress_atom>` and :doc:`fix ave/chunk <fix_ave_chunk>`, or with the hardy method in :doc:`fix atc <fix_atc>`. Note that the simple :doc:`compute stress/atom <compute_stress_atom>` method is only accurate away
|
:doc:`compute stress/atom <compute_stress_atom>` and :doc:`fix
|
||||||
from inhomogeneities in the fluid, such as fixed wall atoms. Further,
|
ave/chunk <fix_ave_chunk>`, or with the hardy method in :doc:`fix atc
|
||||||
the computed pressure profile must be corrected for the acceleration
|
<fix_atc>`. Note that the simple :doc:`compute stress/atom
|
||||||
|
<compute_stress_atom>` method is only accurate away from
|
||||||
|
inhomogeneities in the fluid, such as fixed wall atoms. Further, the
|
||||||
|
computed pressure profile must be corrected for the acceleration
|
||||||
applied by GD before computing a pressure drop or comparing it to
|
applied by GD before computing a pressure drop or comparing it to
|
||||||
other methods, such as the pump method :ref:`(Zhu) <Zhu>`. The pressure
|
other methods, such as the pump method :ref:`(Zhu) <Zhu>`. The
|
||||||
correction is discussed and described in :ref:`(Strong) <Strong>`.
|
pressure correction is discussed and described in :ref:`(Strong)
|
||||||
|
<Strong>`.
|
||||||
|
|
||||||
For a complete example including the considerations discussed
|
For a complete example including the considerations discussed
|
||||||
above, see the examples/USER/flow_gauss directory.
|
above, see the examples/USER/flow_gauss directory.
|
||||||
@ -102,14 +107,15 @@ computed by the fix will return zero.
|
|||||||
of wall atoms fixed, such as :doc:`fix spring/self <fix_spring_self>`.
|
of wall atoms fixed, such as :doc:`fix spring/self <fix_spring_self>`.
|
||||||
|
|
||||||
If this fix is used in a simulation with the :doc:`rRESPA <run_style>`
|
If this fix is used in a simulation with the :doc:`rRESPA <run_style>`
|
||||||
integrator, the applied acceleration must be computed and applied at the same
|
integrator, the applied acceleration must be computed and applied at
|
||||||
rRESPA level as the interactions between the flowing fluid and the obstacle.
|
the same rRESPA level as the interactions between the flowing fluid
|
||||||
The rRESPA level at which the acceleration is applied can be changed using
|
and the obstacle. The rRESPA level at which the acceleration is
|
||||||
the :doc:`fix_modify <fix_modify>` *respa* option discussed below. If the
|
applied can be changed using the :doc:`fix_modify <fix_modify>`
|
||||||
flowing fluid and the obstacle interact through multiple interactions that are
|
*respa* option discussed below. If the flowing fluid and the obstacle
|
||||||
computed at different rRESPA levels, then there must be a separate flow/gauss
|
interact through multiple interactions that are computed at different
|
||||||
fix for each level. For example, if the flowing fluid and obstacle interact
|
rRESPA levels, then there must be a separate flow/gauss fix for each
|
||||||
through pairwise and long-range Coulomb interactions, which are computed at
|
level. For example, if the flowing fluid and obstacle interact through
|
||||||
|
pairwise and long-range Coulomb interactions, which are computed at
|
||||||
rRESPA levels 3 and 4, respectively, then there must be two separate
|
rRESPA levels 3 and 4, respectively, then there must be two separate
|
||||||
flow/gauss fixes, one that specifies *fix_modify respa 3* and one with
|
flow/gauss fixes, one that specifies *fix_modify respa 3* and one with
|
||||||
*fix_modify respa 4*.
|
*fix_modify respa 4*.
|
||||||
@ -119,38 +125,49 @@ flow/gauss fixes, one that specifies *fix_modify respa 3* and one with
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix is part of the USER-MISC package. It is only enabled if
|
No information about this fix is written to :doc:`binary restart files
|
||||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
<restart>`.
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
|
this fix to add the potential energy added by the fix to the global
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
potential energy of the system as part of :doc:`thermodynamic output
|
||||||
fix to subtract the work done from the
|
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
energy no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
fix. This allows the user to set at which level of the :doc:`rRESPA <run_style>`
|
fix. This allows the user to set at which level of the :doc:`rRESPA
|
||||||
integrator the fix computes and adds the external acceleration. Default is the
|
<run_style>` integrator the fix computes and adds the external
|
||||||
outermost level.
|
acceleration. Default is the outermost level.
|
||||||
|
|
||||||
This fix computes a global scalar and a global 3-vector of forces,
|
This fix computes a global scalar and a global 3-vector of forces,
|
||||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
which can be accessed by various :doc:`output commands
|
||||||
The scalar is the negative of the work done on the system, see above
|
<Howto_output>`. The scalar is the negative of the work done on the
|
||||||
discussion. The vector is the total force that this fix applied to
|
system, see the discussion above. It is only calculated if the
|
||||||
the group of atoms on the current timestep. The scalar and vector
|
*energy* keyword is enabled or :doc:`fix_modify energy yes
|
||||||
values calculated by this fix are "extensive".
|
<fix_modify>` is set.
|
||||||
|
|
||||||
|
The vector is the total force that this fix applied to the group of
|
||||||
|
atoms on the current timestep. The scalar and vector values
|
||||||
|
calculated by this fix are "extensive".
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
No parameter of this fix can be used with the *start/stop* keywords of
|
||||||
the :doc:`run <run>` command.
|
the :doc:`run <run>` command.
|
||||||
|
|
||||||
|
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
none
|
|
||||||
|
This fix is part of the USER-MISC package. It is only enabled if
|
||||||
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
""""""""""""""""
|
""""""""""""""""
|
||||||
|
|
||||||
:doc:`fix addforce <fix_addforce>`, :doc:`compute temp/profile <compute_temp_profile>`, :doc:`velocity <velocity>`
|
:doc:`fix addforce <fix_addforce>`,
|
||||||
|
:doc:`compute temp/profile <compute_temp_profile>`,
|
||||||
|
:doc:`velocity <velocity>`
|
||||||
|
|
||||||
Default
|
Default
|
||||||
"""""""
|
"""""""
|
||||||
|
|||||||
@ -398,12 +398,13 @@ adds all inserted atoms of the specified type to the
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the state of the fix to :doc:`binary restart files <restart>`. This includes information about the random
|
This fix writes the state of the fix to :doc:`binary restart files
|
||||||
number generator seed, the next timestep for MC exchanges, the number
|
<restart>`. This includes information about the random number
|
||||||
of MC step attempts and successes etc. See
|
generator seed, the next timestep for MC exchanges, the number of MC
|
||||||
the :doc:`read_restart <read_restart>` command for info on how to
|
step attempts and successes etc. See the :doc:`read_restart
|
||||||
re-specify a fix in an input script that reads a restart file, so that
|
<read_restart>` command for info on how to re-specify a fix in an
|
||||||
the operation of the fix continues in an uninterrupted fashion.
|
input script that reads a restart file, so that the operation of the
|
||||||
|
fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
@ -411,8 +412,8 @@ the operation of the fix continues in an uninterrupted fashion.
|
|||||||
after reading the restart with :doc:`reset_timestep <reset_timestep>`.
|
after reading the restart with :doc:`reset_timestep <reset_timestep>`.
|
||||||
The fix will try to detect it and stop with an error.
|
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
|
None of the :doc:`fix_modify <fix_modify>` options are relevant to
|
||||||
fix.
|
this fix.
|
||||||
|
|
||||||
This fix computes a global vector of length 8, which can be accessed
|
This fix computes a global vector of length 8, which can be accessed
|
||||||
by various :doc:`output commands <Howto_output>`. The vector values are
|
by various :doc:`output commands <Howto_output>`. The vector values are
|
||||||
@ -430,7 +431,8 @@ the following global cumulative quantities:
|
|||||||
The vector values calculated by this fix are "extensive".
|
The vector values calculated by this fix are "extensive".
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
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
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -103,28 +103,31 @@ Restart, fix_modify, output, run start/stop, minimize info
|
|||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
The instantaneous values of the extended variables are written to
|
The instantaneous values of the extended variables are written to
|
||||||
:doc:`binary restart files <restart>`. Because the state of the random
|
:doc:`binary restart files <restart>`. Because the state of the
|
||||||
number generator is not saved in restart files, this means you cannot
|
random number generator is not saved in restart files, this means you
|
||||||
do "exact" restarts with this fix, where the simulation continues on
|
cannot do "exact" restarts with this fix, where the simulation
|
||||||
the same as if no restart had taken place. However, in a statistical
|
continues on the same as if no restart had taken place. However, in a
|
||||||
sense, a restarted simulation should produce the same behavior.
|
statistical sense, a restarted simulation should produce the same
|
||||||
Note however that you should use a different seed each time you
|
behavior. Note however that you should use a different seed each time
|
||||||
restart, otherwise the same sequence of random numbers will be used
|
you restart, otherwise the same sequence of random numbers will be
|
||||||
each time, which might lead to stochastic synchronization and
|
used each time, which might lead to stochastic synchronization and
|
||||||
subtle artifacts in the sampling.
|
subtle artifacts in the sampling.
|
||||||
|
|
||||||
|
The cumulative energy change in the system imposed by this fix is
|
||||||
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
|
This fix computes a global scalar which can be accessed by various
|
||||||
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
|
cumulative energy change due to this fix described in the previous
|
||||||
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
This fix can ramp its target temperature over multiple runs, using the
|
This fix can ramp its target temperature over multiple runs, using the
|
||||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||||
:doc:`run <run>` command for details of how to do this.
|
:doc:`run <run>` command for details of how to do this.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||||
fix to add the energy change induced by Langevin thermostatting to the
|
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
|
||||||
energy change due to this fix. The scalar value calculated by this
|
|
||||||
fix is "extensive".
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -103,23 +103,27 @@ Restart, fix_modify, output, run start/stop, minimize info
|
|||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the gravitational potential energy of the system to the
|
this fix to add the gravitational potential energy of the system to
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
the global potential energy of the system as part of
|
||||||
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
|
this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||||
integrator the fix is adding its forces. Default is the outermost level.
|
<run_style>` integrator the fix is adding its forces. Default is the
|
||||||
|
outermost level.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. This scalar is the gravitational
|
:doc:`output commands <Howto_output>`. This scalar is the
|
||||||
potential energy of the particles in the defined field, namely mass \*
|
gravitational potential energy of the particles in the defined field,
|
||||||
(g dot x) for each particles, where x and mass are the particles
|
namely mass \* (g dot x) for each particles, where x and mass are the
|
||||||
position and mass, and g is the gravitational field. The scalar value
|
particles position and mass, and g is the gravitational field. The
|
||||||
calculated by this fix is "extensive".
|
scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
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
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -200,16 +200,20 @@ algorithm.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the energy of the bias potential to the system's
|
this fix to add the energy of the bias potential to the global
|
||||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
potential energy of the system as part of :doc:`thermodynamic output
|
||||||
|
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||||
|
energy no <fix_modify>`.
|
||||||
|
|
||||||
This fix computes a global scalar and global vector of length 12, which
|
This fix computes a global scalar and global vector of length 12,
|
||||||
can be accessed by various :doc:`output commands <Howto_output>`. The
|
which can be accessed by various :doc:`output commands
|
||||||
scalar is the magnitude of the bias potential (energy units) applied on
|
<Howto_output>`. The scalar is the magnitude of the bias potential
|
||||||
the current timestep. The vector stores the following quantities:
|
(energy units) applied on the current timestep. The vector stores the
|
||||||
|
following quantities:
|
||||||
|
|
||||||
* 1 = boost factor on this step (unitless)
|
* 1 = boost factor on this step (unitless)
|
||||||
* 2 = max strain :math:`E_{ij}` of any bond on this step (absolute value, unitless)
|
* 2 = max strain :math:`E_{ij}` of any bond on this step (absolute value, unitless)
|
||||||
@ -253,7 +257,8 @@ The scalar and vector values calculated by this fix are all
|
|||||||
"intensive".
|
"intensive".
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
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
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -370,15 +370,17 @@ Restart, fix_modify, output, run start/stop, minimize info
|
|||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the energy of the bias potential to the system's potential
|
this fix to add the energy of the bias potential to the global
|
||||||
energy as part of :doc:`thermodynamic output <thermo_style>`.
|
potential energy of the system as part of :doc:`thermodynamic output
|
||||||
|
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||||
|
energy no <fix_modify>`.
|
||||||
|
|
||||||
This fix computes a global scalar and global vector of length 28,
|
This fix computes a global scalar and global vector of length 28,
|
||||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
which can be accessed by various :doc:`output commands
|
||||||
The scalar is the magnitude of the bias potential (energy units)
|
<Howto_output>`. The scalar is the magnitude of the bias potential
|
||||||
applied on the current timestep, summed over all biased bonds. The
|
(energy units) applied on the current timestep, summed over all biased
|
||||||
vector stores the following quantities:
|
bonds. The vector stores the following quantities:
|
||||||
|
|
||||||
* 1 = average boost for all bonds on this step (unitless)
|
* 1 = average boost for all bonds on this step (unitless)
|
||||||
* 2 = # of biased bonds on this step
|
* 2 = # of biased bonds on this step
|
||||||
@ -510,8 +512,8 @@ Value 27 computes the average boost for biased bonds only on this step.
|
|||||||
Value 28 is the count of bonds with an absolute value of strain >= q
|
Value 28 is the count of bonds with an absolute value of strain >= q
|
||||||
on this step.
|
on this step.
|
||||||
|
|
||||||
The scalar and vector values calculated by this fix are all
|
The scalar value is an "extensive" quantity since it grows with the
|
||||||
"intensive".
|
system size; the vector values are all "intensive".
|
||||||
|
|
||||||
This fix also computes a local vector of length the number of bonds
|
This fix also computes a local vector of length the number of bonds
|
||||||
currently in the system. The value for each bond is its :math:`C_{ij}`
|
currently in the system. The value for each bond is its :math:`C_{ij}`
|
||||||
@ -524,7 +526,8 @@ close to 1.0, which indicates a good choice of :math:`V^{max}`.
|
|||||||
The local values calculated by this fix are unitless.
|
The local values calculated by this fix are unitless.
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
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
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -179,20 +179,25 @@ contains *xlat*\ , *ylat*\ , *zlat* keywords of the
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the energy of interaction between atoms and the indenter to
|
this fix to add the energy of interaction between atoms and the
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. The energy of each particle interacting
|
indenter to the global potential energy of the system as part of
|
||||||
with the indenter is K/3 (r - R)\^3.
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
|
this fix is :doc:`fix_modify energy no <fix_modify>`. The energy of
|
||||||
|
each particle interacting with the indenter is K/3 (r - R)\^3.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||||
integrator the fix is adding its forces. Default is the outermost level.
|
<run_style>` integrator the fix is adding its forces. Default is the
|
||||||
|
outermost level.
|
||||||
|
|
||||||
This fix computes a global scalar energy and a global 3-vector of
|
This fix computes a global scalar energy and a global 3-vector of
|
||||||
forces (on the indenter), which can be accessed by various :doc:`output commands <Howto_output>`. The scalar and vector values calculated
|
forces (on the indenter), which can be accessed by various
|
||||||
by this fix are "extensive".
|
:doc:`output commands <Howto_output>`. The scalar and vector values
|
||||||
|
calculated by this fix are "extensive".
|
||||||
|
|
||||||
The forces due to this fix are imposed during an energy minimization,
|
The forces due to this fix are imposed during an energy minimization,
|
||||||
invoked by the :doc:`minimize <minimize>` command. Note that if you
|
invoked by the :doc:`minimize <minimize>` command. Note that if you
|
||||||
@ -204,10 +209,10 @@ check if you have done this.
|
|||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
If you want the atom/indenter interaction energy to be included
|
If you want the atom/indenter interaction energy to be included in
|
||||||
in the total potential energy of the system (the quantity being
|
the total potential energy of the system (the quantity being
|
||||||
minimized), you must enable the :doc:`fix_modify <fix_modify>` *energy*
|
minimized), you must enable the :doc:`fix_modify <fix_modify>`
|
||||||
option for this fix.
|
*energy* option for this fix.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -230,7 +230,7 @@ conservation.
|
|||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
this accumulated energy does NOT include kinetic energy removed
|
This accumulated energy does NOT include kinetic energy removed
|
||||||
by the *zero* flag. LAMMPS will print a warning when both options are
|
by the *zero* flag. LAMMPS will print a warning when both options are
|
||||||
active.
|
active.
|
||||||
|
|
||||||
@ -244,7 +244,8 @@ to zero by subtracting off an equal part of it from each atom in the
|
|||||||
group. As a result, the center-of-mass of a system with zero initial
|
group. As a result, the center-of-mass of a system with zero initial
|
||||||
momentum will not drift over time.
|
momentum will not drift over time.
|
||||||
|
|
||||||
The keyword *gjf* can be used to run the :ref:`Gronbech-Jensen/Farago <Gronbech-Jensen>` time-discretization of the Langevin model. As
|
The keyword *gjf* can be used to run the :ref:`Gronbech-Jensen/Farago
|
||||||
|
<Gronbech-Jensen>` time-discretization of the Langevin model. As
|
||||||
described in the papers cited below, the purpose of this method is to
|
described in the papers cited below, the purpose of this method is to
|
||||||
enable longer timesteps to be used (up to the numerical stability
|
enable longer timesteps to be used (up to the numerical stability
|
||||||
limit of the integrator), while still producing the correct Boltzmann
|
limit of the integrator), while still producing the correct Boltzmann
|
||||||
@ -252,19 +253,20 @@ distribution of atom positions.
|
|||||||
|
|
||||||
The current implementation provides the user with the option to output
|
The current implementation provides the user with the option to output
|
||||||
the velocity in one of two forms: *vfull* or *vhalf*\ , which replaces
|
the velocity in one of two forms: *vfull* or *vhalf*\ , which replaces
|
||||||
the outdated option *yes*\ . The *gjf* option *vfull* outputs the on-site
|
the outdated option *yes*\ . The *gjf* option *vfull* outputs the
|
||||||
velocity given in :ref:`Gronbech-Jensen/Farago <Gronbech-Jensen>`; this velocity
|
on-site velocity given in :ref:`Gronbech-Jensen/Farago
|
||||||
is shown to be systematically lower than the target temperature by a small
|
<Gronbech-Jensen>`; this velocity is shown to be systematically lower
|
||||||
amount, which grows quadratically with the timestep.
|
than the target temperature by a small amount, which grows
|
||||||
The *gjf* option *vhalf* outputs the 2GJ half-step velocity given in
|
quadratically with the timestep. The *gjf* option *vhalf* outputs the
|
||||||
:ref:`Gronbech Jensen/Gronbech-Jensen <2Gronbech-Jensen>`; for linear systems,
|
2GJ half-step velocity given in :ref:`Gronbech Jensen/Gronbech-Jensen
|
||||||
this velocity is shown to not have any statistical errors for any stable time step.
|
<2Gronbech-Jensen>`; for linear systems, this velocity is shown to not
|
||||||
An overview of statistically correct Boltzmann and Maxwell-Boltzmann
|
have any statistical errors for any stable time step. An overview of
|
||||||
sampling of true on-site and true half-step velocities is given in
|
statistically correct Boltzmann and Maxwell-Boltzmann sampling of true
|
||||||
:ref:`Gronbech-Jensen <1Gronbech-Jensen>`.
|
on-site and true half-step velocities is given in
|
||||||
Regardless of the choice of output velocity, the sampling of the configurational
|
:ref:`Gronbech-Jensen <1Gronbech-Jensen>`. Regardless of the choice
|
||||||
distribution of atom positions is the same, and linearly consistent with the
|
of output velocity, the sampling of the configurational distribution
|
||||||
target temperature.
|
of atom positions is the same, and linearly consistent with the target
|
||||||
|
temperature.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -287,16 +289,18 @@ you have defined to this fix which will be used in its thermostatting
|
|||||||
procedure, as described above. For consistency, the group used by
|
procedure, as described above. For consistency, the group used by
|
||||||
this fix and by the compute should be the same.
|
this fix and by the compute should be the same.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Langevin thermostatting to the
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. Note that use of this option requires
|
*ecouple* and *econserve*\ , but only if the *tally* keyword to set to
|
||||||
setting the *tally* keyword to *yes*\ .
|
*yes*\ . See the :doc:`thermo_style <thermo_style>` doc page for
|
||||||
|
details.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
energy change due to this fix. The scalar value calculated by this
|
cumulative energy change due to this fix described in the previous
|
||||||
fix is "extensive". Note that calculation of this quantity requires
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
setting the *tally* keyword to *yes*\ .
|
Note that calculation of this quantity also requires setting the
|
||||||
|
*tally* keyword to *yes*\ .
|
||||||
|
|
||||||
This fix can ramp its target temperature over multiple runs, using the
|
This fix can ramp its target temperature over multiple runs, using the
|
||||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||||
|
|||||||
@ -81,16 +81,18 @@ you have defined to this fix which will be used in its thermostatting
|
|||||||
procedure, as described above. For consistency, the group used by
|
procedure, as described above. For consistency, the group used by
|
||||||
this fix and by the compute should be the same.
|
this fix and by the compute should be the same.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Langevin thermostatting to the
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. Note that use of this option requires
|
*ecouple* and *econserve*\ , but only if the *tally* keyword to set to
|
||||||
setting the *tally* keyword to *yes*\ .
|
*yes*\ . See the :doc:`thermo_style <thermo_style>` doc page for
|
||||||
|
details.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
energy change due to this fix. The scalar value calculated by this
|
cumulative energy change due to this fix described in the previous
|
||||||
fix is "extensive". Note that calculation of this quantity requires
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
setting the *tally* keyword to *yes*\ .
|
Note that calculation of this quantity also requires setting the
|
||||||
|
*tally* keyword to *yes*\ .
|
||||||
|
|
||||||
This fix can ramp its target temperature over multiple runs, using the
|
This fix can ramp its target temperature over multiple runs, using the
|
||||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||||
|
|||||||
@ -107,16 +107,27 @@ larger system sizes and longer time scales
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the potential energy computed by LATTE to the system's
|
this fix to add the potential energy computed by LATTE to the global
|
||||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
potential energy of the system as part of :doc:`thermodynamic output
|
||||||
|
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||||
|
energy yes <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
fix to add the LATTE DFTB contribution to the system's virial as part
|
this fix to add the contribution compute by LATTE to the global
|
||||||
of :doc:`thermodynamic output <thermo_style>`. The default is *virial
|
pressure of the system via the :doc:`compute pressure
|
||||||
yes*
|
<compute_pressure>` command. This can be accessed by
|
||||||
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
|
this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||||
|
|
||||||
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
|
this fix to add the contribution computed by LATTE to the global
|
||||||
|
pressure of the system as part of :doc:`thermodynamic output
|
||||||
|
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||||
|
virial yes <fix_modify>`.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||||
@ -127,20 +138,22 @@ No parameter of this fix can be used with the *start/stop* keywords of
|
|||||||
the :doc:`run <run>` command.
|
the :doc:`run <run>` command.
|
||||||
|
|
||||||
The DFTB forces computed by LATTE via this fix are imposed during an
|
The DFTB forces computed by LATTE via this fix are imposed during an
|
||||||
energy minimization, invoked by the :doc:`minimize <minimize>` command.
|
energy minimization, invoked by the :doc:`minimize <minimize>`
|
||||||
|
command.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
If you want the potential energy associated with the DFTB
|
If you want the potential energy associated with the DFTB
|
||||||
forces to be included in the total potential energy of the system (the
|
forces to be included in the total potential energy of the system (the
|
||||||
quantity being minimized), you MUST enable the
|
quantity being minimized), you MUST not disable the
|
||||||
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the LATTE package. It is only enabled if LAMMPS
|
This fix is part of the LATTE package. It is only enabled if LAMMPS
|
||||||
was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
You must use metal units, as set by the :doc:`units <units>` command to
|
You must use metal units, as set by the :doc:`units <units>` command to
|
||||||
use this fix.
|
use this fix.
|
||||||
|
|||||||
@ -50,7 +50,8 @@ This fix is based on the :doc:`fix rigid <fix_rigid>` command, and was
|
|||||||
created to be used in place of that fix, to integrate the equations of
|
created to be used in place of that fix, to integrate the equations of
|
||||||
motion of spherical rigid bodies when a lattice-Boltzmann fluid is
|
motion of spherical rigid bodies when a lattice-Boltzmann fluid is
|
||||||
present with a user-specified value of the force-coupling constant.
|
present with a user-specified value of the force-coupling constant.
|
||||||
The fix uses the integration algorithm described in :ref:`Mackay et al. <Mackay>` to update the positions, velocities, and orientations of
|
The fix uses the integration algorithm described in :ref:`Mackay et
|
||||||
|
al. <Mackay>` to update the positions, velocities, and orientations of
|
||||||
a set of spherical rigid bodies experiencing velocity dependent
|
a set of spherical rigid bodies experiencing velocity dependent
|
||||||
hydrodynamic forces. The spherical bodies are assumed to rotate as
|
hydrodynamic forces. The spherical bodies are assumed to rotate as
|
||||||
solid, uniform density spheres, with moments of inertia calculated
|
solid, uniform density spheres, with moments of inertia calculated
|
||||||
@ -88,9 +89,18 @@ Restart, fix_modify, output, run start/stop, minimize info
|
|||||||
No information about the *rigid* and *rigid/nve* fixes are written to
|
No information about the *rigid* and *rigid/nve* fixes are written to
|
||||||
:doc:`binary restart files <restart>`.
|
:doc:`binary restart files <restart>`.
|
||||||
|
|
||||||
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
|
this fix to add the contribution due to the added forces on atoms to
|
||||||
|
both the global pressure and per-atom stress of the system via the
|
||||||
|
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||||
|
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>`.
|
||||||
|
|
||||||
Similar to the :doc:`fix rigid <fix_rigid>` command: The rigid fix
|
Similar to the :doc:`fix rigid <fix_rigid>` command: The rigid fix
|
||||||
computes a global scalar which can be accessed by various :doc:`output commands <Howto_output>`. The scalar value calculated by these
|
computes a global scalar which can be accessed by various :doc:`output
|
||||||
fixes is "intensive". The scalar is the current temperature of the
|
commands <Howto_output>`. The scalar value calculated by these fixes
|
||||||
|
is "intensive". The scalar is the current temperature of the
|
||||||
collection of rigid bodies. This is averaged over all rigid bodies
|
collection of rigid bodies. This is averaged over all rigid bodies
|
||||||
and their translational and rotational degrees of freedom. The
|
and their translational and rotational degrees of freedom. The
|
||||||
translational energy of a rigid body is 1/2 m v\^2, where m = total
|
translational energy of a rigid body is 1/2 m v\^2, where m = total
|
||||||
@ -130,7 +140,8 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the USER-LB package. It is only enabled if LAMMPS
|
This fix is part of the USER-LB package. It is only enabled if LAMMPS
|
||||||
was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
Can only be used if a lattice-Boltzmann fluid has been created via the
|
Can only be used if a lattice-Boltzmann fluid has been created via the
|
||||||
:doc:`fix lb/fluid <fix_lb_fluid>` command, and must come after this
|
:doc:`fix lb/fluid <fix_lb_fluid>` command, and must come after this
|
||||||
|
|||||||
@ -59,43 +59,58 @@ define their own compute by default, as described in their
|
|||||||
documentation. Thus this option allows the user to override the
|
documentation. Thus this option allows the user to override the
|
||||||
default method for computing P.
|
default method for computing P.
|
||||||
|
|
||||||
The *energy* keyword can be used with fixes that support it.
|
The *energy* keyword can be used with fixes that support it, which is
|
||||||
*energy yes* adds a contribution to the potential energy of the
|
explained at the bottom of their doc page. *Energy yes* will add a
|
||||||
system. The fix's global and per-atom
|
contribution to the potential energy of the system. More
|
||||||
energy is included in the calculation performed by the :doc:`compute pe <compute_pe>` or :doc:`compute pe/atom <compute_pe_atom>`
|
specifically, the fix's global or per-atom energy is included in the
|
||||||
commands. See the :doc:`thermo_style <thermo_style>` command for info
|
calculation performed by the :doc:`compute pe <compute_pe>` or
|
||||||
on how potential energy is output. For fixes that tally a global
|
:doc:`compute pe/atom <compute_pe_atom>` commands. The former is what
|
||||||
energy, it can be printed by using the keyword f_ID in the
|
is used the :doc:`thermo_style <thermo_style>` command for output of
|
||||||
thermo_style custom command, where ID is the fix-ID of the appropriate
|
any quantity that includes the global potential energy of the system.
|
||||||
fix.
|
Note that the :doc:`compute pe <compute_pe>` and :doc:`compute pe/atom
|
||||||
|
<compute_pe_atom>` commands also have an option to include or exclude
|
||||||
|
the contribution from fixes. For fixes that tally a global energy, it
|
||||||
|
can also be printed with thermodynamic output by using the keyword
|
||||||
|
f_ID in the thermo_style custom command, where ID is the fix-ID of the
|
||||||
|
appropriate fix.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
You must also specify the *energy yes* setting for a fix if you
|
If you are performing an :doc:`energy minimization <minimize>` with
|
||||||
are using it when performing an :doc:`energy minimization <minimize>`
|
one of these fixes and want the energy and forces it produces to be
|
||||||
and if you want the energy and forces it produces to be part of the
|
part of the optimization criteria, you must specify the *energy
|
||||||
optimization criteria.
|
yes* setting.
|
||||||
|
|
||||||
The *virial* keyword can be used with fixes that support it.
|
|
||||||
*virial yes* adds a contribution to the virial of the
|
|
||||||
system. The fix's global and per-atom
|
|
||||||
virial is included in the calculation performed by the :doc:`compute pressure <compute_pressure>` or
|
|
||||||
:doc:`compute stress/atom <compute_stress_atom>`
|
|
||||||
commands. See the :doc:`thermo_style <thermo_style>` command for info
|
|
||||||
on how pressure is output.
|
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
You must specify the *virial yes* setting for a fix if you
|
For most fixes that support the *energy* keyword, the default
|
||||||
are doing :doc:`box relaxation <fix_box_relax>` and
|
setting is *no*. For a few it is *yes*, when a user would expect
|
||||||
if you want virial contribution of the fix to be part of the
|
that to be the case. The doc page of each fix gives the default.
|
||||||
relaxation criteria, although this seems unlikely.
|
|
||||||
|
The *virial* keyword can be used with fixes that support it, which is
|
||||||
|
explained at the bottom of their doc page. *Virial yes* will add a
|
||||||
|
contribution to the virial of the system. More specifically, the
|
||||||
|
fix's global or per-atom virial is included in the calculation
|
||||||
|
performed by the :doc:`compute pressure <compute_pressure>` or
|
||||||
|
:doc:`compute stress/atom <compute_stress_atom>` commands. The former
|
||||||
|
is what is used the :doc:`thermo_style <thermo_style>` command for
|
||||||
|
output of any quantity that includes the global pressure of the
|
||||||
|
system. Note that the :doc:`compute pressure <compute_pressure>` and
|
||||||
|
:doc:`compute stress/atom <compute_stress_atom>` commands also have an
|
||||||
|
option to include or exclude the contribution from fixes.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
This option is only supported by fixes that explicitly say
|
If you are performing an :doc:`energy minimization <minimize>` with
|
||||||
so. For some of these (e.g. the :doc:`fix shake <fix_shake>` command)
|
:doc:`box relaxation <fix_box_relax>` and one of these fixes and
|
||||||
the default setting is *virial yes*\ , for others it is *virial no*\ .
|
want the virial contribution of the fix to be part of the
|
||||||
|
optimization criteria, you must specify the *virial yes* setting.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
For most fixes that support the *virial* keyword, the default
|
||||||
|
setting is *no*. For a few it is *yes*, when a user would expect
|
||||||
|
that to be the case. The doc page of each fix gives the default.
|
||||||
|
|
||||||
For fixes that set or modify forces, it may be possible to select at
|
For fixes that set or modify forces, it may be possible to select at
|
||||||
which :doc:`r-RESPA <run_style>` level the fix operates via the *respa*
|
which :doc:`r-RESPA <run_style>` level the fix operates via the *respa*
|
||||||
@ -112,13 +127,15 @@ The *dynamic/dof* keyword determines whether the number of atoms N in
|
|||||||
the fix group and their associated degrees of freedom are re-computed
|
the fix group and their associated degrees of freedom are re-computed
|
||||||
each time a temperature is computed. Only fix styles that calculate
|
each time a temperature is computed. Only fix styles that calculate
|
||||||
their own internal temperature use this option. Currently this is
|
their own internal temperature use this option. Currently this is
|
||||||
only the :doc:`fix rigid/nvt/small <fix_rigid>` and :doc:`fix rigid/npt/small <fix_rigid>` commands for the purpose of
|
only the :doc:`fix rigid/nvt/small <fix_rigid>` and :doc:`fix
|
||||||
|
rigid/npt/small <fix_rigid>` commands for the purpose of
|
||||||
thermostatting rigid body translation and rotation. By default, N and
|
thermostatting rigid body translation and rotation. By default, N and
|
||||||
their DOF are assumed to be constant. If you are adding atoms or
|
their DOF are assumed to be constant. If you are adding atoms or
|
||||||
molecules to the system (see the :doc:`fix pour <fix_pour>`, :doc:`fix deposit <fix_deposit>`, and :doc:`fix gcmc <fix_gcmc>` commands) or
|
molecules to the system (see the :doc:`fix pour <fix_pour>`, :doc:`fix
|
||||||
|
deposit <fix_deposit>`, and :doc:`fix gcmc <fix_gcmc>` commands) or
|
||||||
expect atoms or molecules to be lost (e.g. due to exiting the
|
expect atoms or molecules to be lost (e.g. due to exiting the
|
||||||
simulation box or via :doc:`fix evaporate <fix_evaporate>`), then
|
simulation box or via :doc:`fix evaporate <fix_evaporate>`), then this
|
||||||
this option should be used to insure the temperature is correctly
|
option should be used to insure the temperature is correctly
|
||||||
normalized.
|
normalized.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|||||||
@ -131,20 +131,29 @@ command for info on how to re-specify a fix in an input script that
|
|||||||
reads a restart file, so that the operation of the fix continues in an
|
reads a restart file, so that the operation of the fix continues in an
|
||||||
uninterrupted fashion.
|
uninterrupted fashion.
|
||||||
|
|
||||||
|
The cumulative energy change in the system imposed by this fix is
|
||||||
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
|
This fix computes a global scalar which can be accessed by various
|
||||||
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
|
cumulative energy change due to this fix described in the previous
|
||||||
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
The progress of the MSST can be monitored by printing the global
|
The progress of the MSST can be monitored by printing the global
|
||||||
scalar and global vector quantities computed by the fix.
|
scalar and global vector quantities computed by the fix.
|
||||||
|
|
||||||
The scalar is the cumulative energy change due to the fix. This is
|
As mentioned above, the scalar is the cumulative energy change due to
|
||||||
also the energy added to the potential energy by the
|
the fix. By monitoring the thermodynamic *econserve* output, this can
|
||||||
:doc:`fix_modify <fix_modify>` *energy* command. With this command, the
|
be used to test if the MD timestep is sufficiently small for accurate
|
||||||
thermo keyword *etotal* prints the conserved quantity of the MSST
|
integration of the dynamic equations.
|
||||||
dynamic equations. This can be used to test if the MD timestep is
|
|
||||||
sufficiently small for accurate integration of the dynamic
|
|
||||||
equations. See also :doc:`thermo_style <thermo_style>` command.
|
|
||||||
|
|
||||||
The global vector contains four values in this order:
|
The global vector contains four values in the following order. The
|
||||||
|
vector values output by this fix are "intensive".
|
||||||
|
|
||||||
[\ *dhugoniot*\ , *drayleigh*\ , *lagrangian_speed*, *lagrangian_position*]
|
[\ *dhugoniot*\ , *drayleigh*\ , *lagrangian_speed*,
|
||||||
|
*lagrangian_position*]
|
||||||
|
|
||||||
1. *dhugoniot* is the departure from the Hugoniot (temperature units).
|
1. *dhugoniot* is the departure from the Hugoniot (temperature units).
|
||||||
2. *drayleigh* is the departure from the Rayleigh line (pressure units).
|
2. *drayleigh* is the departure from the Rayleigh line (pressure units).
|
||||||
@ -157,17 +166,11 @@ headers, the following LAMMPS commands are suggested:
|
|||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
fix msst all msst z
|
fix msst all msst z
|
||||||
fix_modify msst energy yes
|
|
||||||
variable dhug equal f_msst[1]
|
variable dhug equal f_msst[1]
|
||||||
variable dray equal f_msst[2]
|
variable dray equal f_msst[2]
|
||||||
variable lgr_vel equal f_msst[3]
|
variable lgr_vel equal f_msst[3]
|
||||||
variable lgr_pos equal f_msst[4]
|
variable lgr_pos equal f_msst[4]
|
||||||
thermo_style custom step temp ke pe lz pzz etotal v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
thermo_style custom step temp ke pe lz pzz econserve v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||||
|
|
||||||
These fixes compute a global scalar and a global vector of 4
|
|
||||||
quantities, which can be accessed by various :doc:`output commands
|
|
||||||
<Howto_output>`. The scalar values calculated by this fix are
|
|
||||||
"extensive"; the vector values are "intensive".
|
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -594,17 +594,20 @@ compute temperature on a subset of atoms.
|
|||||||
specified by the *press* keyword will be unaffected by the *temp*
|
specified by the *press* keyword will be unaffected by the *temp*
|
||||||
setting.
|
setting.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by these
|
The cumulative energy change in the system imposed by these fixes, via
|
||||||
fixes to add the energy change induced by Nose/Hoover thermostatting
|
either thermostatting and/or barostatting, is included in the
|
||||||
and barostatting to the system's potential energy as part of
|
:doc:`thermodynamic output <thermo_style>` keywords *ecouple* and
|
||||||
:doc:`thermodynamic output <thermo_style>`.
|
*econserve*. See the :doc:`thermo_style <thermo_style>` doc page for
|
||||||
|
details.
|
||||||
|
|
||||||
These fixes compute a global scalar and a global vector of quantities,
|
These fixes compute a global scalar which can be accessed by various
|
||||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
The scalar value calculated by these fixes is "extensive"; the vector
|
cumulative energy change due to this fix described in the previous
|
||||||
values are "intensive".
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
The scalar is the cumulative energy change due to the fix.
|
These fixes compute also compute a global vector of quantities, which
|
||||||
|
can be accessed by various :doc:`output commands <Howto_output>`. The
|
||||||
|
vector values are "intensive".
|
||||||
|
|
||||||
The vector stores internal Nose/Hoover thermostat and barostat
|
The vector stores internal Nose/Hoover thermostat and barostat
|
||||||
variables. The number and meaning of the vector values depends on
|
variables. The number and meaning of the vector values depends on
|
||||||
|
|||||||
@ -87,7 +87,8 @@ It also means that changing attributes of *thermo_temp* or
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the state of the Nose/Hoover barostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
This fix writes the state of the Nose/Hoover barostat to :doc:`binary
|
||||||
|
restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||||
command for info on how to re-specify a fix in an input script that
|
command for info on how to re-specify a fix in an input script that
|
||||||
reads a restart file, so that the operation of the fix continues in an
|
reads a restart file, so that the operation of the fix continues in an
|
||||||
uninterrupted fashion.
|
uninterrupted fashion.
|
||||||
@ -101,9 +102,10 @@ consistent with the virial term computed using all atoms for the
|
|||||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||||
on a subset of atoms.
|
on a subset of atoms.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover barostatting to
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix nph <fix_nh>` command.
|
quantities as does the :doc:`fix nph <fix_nh>` command.
|
||||||
|
|||||||
@ -84,7 +84,8 @@ It also means that changing attributes of *thermo_temp* or
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the state of the Nose/Hoover barostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
This fix writes the state of the Nose/Hoover barostat to :doc:`binary
|
||||||
|
restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||||
command for info on how to re-specify a fix in an input script that
|
command for info on how to re-specify a fix in an input script that
|
||||||
reads a restart file, so that the operation of the fix continues in an
|
reads a restart file, so that the operation of the fix continues in an
|
||||||
uninterrupted fashion.
|
uninterrupted fashion.
|
||||||
@ -98,9 +99,10 @@ consistent with the virial term computed using all atoms for the
|
|||||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||||
on a subset of atoms.
|
on a subset of atoms.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover barostatting to
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix nph <fix_nh>` command.
|
quantities as does the :doc:`fix nph <fix_nh>` command.
|
||||||
|
|||||||
@ -100,7 +100,8 @@ It also means that changing attributes of *thermo_temp* or
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the state of the Nose/Hoover barostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
This fix writes the state of the Nose/Hoover barostat to :doc:`binary
|
||||||
|
restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
||||||
command for info on how to re-specify a fix in an input script that
|
command for info on how to re-specify a fix in an input script that
|
||||||
reads a restart file, so that the operation of the fix continues in an
|
reads a restart file, so that the operation of the fix continues in an
|
||||||
uninterrupted fashion.
|
uninterrupted fashion.
|
||||||
@ -114,9 +115,10 @@ consistent with the virial term computed using all atoms for the
|
|||||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||||
on a subset of atoms.
|
on a subset of atoms.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover barostatting to
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix nph <fix_nh>` command.
|
quantities as does the :doc:`fix nph <fix_nh>` command.
|
||||||
|
|||||||
@ -168,43 +168,47 @@ specified, then the instantaneous value in the system at the start of
|
|||||||
the simulation is used.
|
the simulation is used.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||||
supported by these fixes. You can use them to assign a
|
supported by this fix. You can use them to assign a :doc:`compute
|
||||||
:doc:`compute <compute>` you have defined to this fix which will be used
|
<compute>` you have defined to this fix which will be used in its
|
||||||
in its thermostatting or barostatting procedure, as described above.
|
thermostatting or barostatting procedure, as described above. If you
|
||||||
If you do this, note that the kinetic energy derived from the compute
|
do this, note that the kinetic energy derived from the compute
|
||||||
temperature should be consistent with the virial term computed using
|
temperature should be consistent with the virial term computed using
|
||||||
all atoms for the pressure. LAMMPS will warn you if you choose to
|
all atoms for the pressure. LAMMPS will warn you if you choose to
|
||||||
compute temperature on a subset of atoms.
|
compute temperature on a subset of atoms.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by these
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fixes to add the energy change induced by Nose/Hoover thermostatting
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
and barostatting to the system's potential energy as part of
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
:doc:`thermodynamic output <thermo_style>`. Either way, this energy is \*not\*
|
doc page for details. Note that this energy is \*not\* included in
|
||||||
included in the definition of internal energy E when calculating the value
|
the definition of internal energy E when calculating the value of
|
||||||
of Delta in the above equation.
|
Delta in the above equation.
|
||||||
|
|
||||||
These fixes compute a global scalar and a global vector of quantities,
|
This fix computes a global scalar which can be accessed by various
|
||||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
The scalar value calculated by these fixes is "extensive"; the vector
|
cumulative energy change due to this fix described in the previous
|
||||||
values are "intensive".
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
The scalar is the cumulative energy change due to the fix.
|
This fix also computes a global vector of quantities, which can be
|
||||||
|
accessed by various :doc:`output commands <Howto_output>`. The scalar
|
||||||
|
The vector values are "intensive".
|
||||||
|
|
||||||
The vector stores three quantities unique to this fix (:math:`\Delta`, Us, and up),
|
The vector stores three quantities unique to this fix (:math:`\Delta`,
|
||||||
followed by all the internal Nose/Hoover thermostat and barostat
|
Us, and up), followed by all the internal Nose/Hoover thermostat and
|
||||||
variables defined for :doc:`fix npt <fix_nh>`. Delta is the deviation
|
barostat variables defined for :doc:`fix npt <fix_nh>`. Delta is the
|
||||||
of the temperature from the target temperature, given by the above equation.
|
deviation of the temperature from the target temperature, given by the
|
||||||
Us and up are the shock and particle velocity corresponding to a steady
|
above equation. Us and up are the shock and particle velocity
|
||||||
shock calculated from the RH conditions. They have units of distance/time.
|
corresponding to a steady shock calculated from the RH
|
||||||
|
conditions. They have units of distance/time.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix style is part of the SHOCK package. It is only enabled if
|
This fix style is part of the SHOCK package. It is only enabled if
|
||||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
All the usual restrictions for :doc:`fix npt <fix_nh>` apply,
|
All the usual restrictions for :doc:`fix npt <fix_nh>` apply, plus the
|
||||||
plus the additional ones mentioned above.
|
additional ones mentioned above.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
""""""""""""""""
|
""""""""""""""""
|
||||||
|
|||||||
@ -124,10 +124,10 @@ consistent with the virial term computed using all atoms for the
|
|||||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||||
on a subset of atoms.
|
on a subset of atoms.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover thermostatting and
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
barostatting to the system's potential energy as part of
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
:doc:`thermodynamic output <thermo_style>`.
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix npt <fix_nh>` command.
|
quantities as does the :doc:`fix npt <fix_nh>` command.
|
||||||
|
|||||||
@ -45,7 +45,8 @@ can also have a bias velocity removed from them before thermostatting
|
|||||||
takes place; see the description below.
|
takes place; see the description below.
|
||||||
|
|
||||||
Additional parameters affecting the thermostat and barostat are
|
Additional parameters affecting the thermostat and barostat are
|
||||||
specified by keywords and values documented with the :doc:`fix npt <fix_nh>` command. See, for example, discussion of the *temp*\ ,
|
specified by keywords and values documented with the :doc:`fix npt
|
||||||
|
<fix_nh>` command. See, for example, discussion of the *temp*\ ,
|
||||||
*iso*\ , *aniso*\ , and *dilate* keywords.
|
*iso*\ , *aniso*\ , and *dilate* keywords.
|
||||||
|
|
||||||
The particles in the fix group are the only ones whose velocities and
|
The particles in the fix group are the only ones whose velocities and
|
||||||
@ -121,10 +122,10 @@ consistent with the virial term computed using all atoms for the
|
|||||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||||
on a subset of atoms.
|
on a subset of atoms.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover thermostatting and
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
barostatting to the system's potential energy as part of
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
:doc:`thermodynamic output <thermo_style>`.
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix npt <fix_nh>` command.
|
quantities as does the :doc:`fix npt <fix_nh>` command.
|
||||||
|
|||||||
@ -487,27 +487,31 @@ compute temperature on a subset of atoms.
|
|||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
If both the *temp* and *press* keywords are used in a single
|
If both the *temp* and *press* keywords are used in a single
|
||||||
thermo_modify command (or in two separate commands), then the order in
|
thermo_modify command (or in two separate commands), then the order
|
||||||
which the keywords are specified is important. Note that a :doc:`pressure compute <compute_pressure>` defines its own temperature compute as
|
in which the keywords are specified is important. Note that a
|
||||||
an argument when it is specified. The *temp* keyword will override
|
:doc:`pressure compute <compute_pressure>` defines its own
|
||||||
this (for the pressure compute being used by fix npt), but only if the
|
temperature compute as an argument when it is specified. The
|
||||||
*temp* keyword comes after the *press* keyword. If the *temp* keyword
|
*temp* keyword will override this (for the pressure compute being
|
||||||
comes before the *press* keyword, then the new pressure compute
|
used by fix npt), but only if the *temp* keyword comes after the
|
||||||
specified by the *press* keyword will be unaffected by the *temp*
|
*press* keyword. If the *temp* keyword comes before the *press*
|
||||||
setting.
|
keyword, then the new pressure compute specified by the *press*
|
||||||
|
keyword will be unaffected by the *temp* setting.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix, due to
|
||||||
fix to add the energy change induced by Nose/Hoover thermostatting
|
thermostatting and/or barostatting, is included in the
|
||||||
and barostatting to the system's potential energy as part of
|
:doc:`thermodynamic output <thermo_style>` keywords *ecouple* and
|
||||||
:doc:`thermodynamic output <thermo_style>`.
|
*econserve*. See the :doc:`thermo_style <thermo_style>` doc page for
|
||||||
|
details.
|
||||||
|
|
||||||
This fix computes a global scalar and a global vector of quantities,
|
This fix computes a global scalar which can be accessed by various
|
||||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
The scalar value calculated by this fix is "extensive"; the vector
|
cumulative energy change due to this fix described in the previous
|
||||||
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
|
This fix also computes a global vector of quantities, which can be
|
||||||
|
accessed by various :doc:`output commands <Howto_output>`. Rhe vector
|
||||||
values are "intensive".
|
values are "intensive".
|
||||||
|
|
||||||
The scalar is the cumulative energy change due to the fix.
|
|
||||||
|
|
||||||
The vector stores internal Nose/Hoover thermostat and barostat
|
The vector stores internal Nose/Hoover thermostat and barostat
|
||||||
variables. The number and meaning of the vector values depends on
|
variables. The number and meaning of the vector values depends on
|
||||||
which fix is used and the settings for keywords *tchain* and *pchain*\ ,
|
which fix is used and the settings for keywords *tchain* and *pchain*\ ,
|
||||||
|
|||||||
@ -93,13 +93,14 @@ IDs of the new computes are the fix-ID + underscore + "temp" or fix_ID
|
|||||||
since pressure is computed for the entire system.
|
since pressure is computed for the entire system.
|
||||||
|
|
||||||
Note that these are NOT the computes used by thermodynamic output (see
|
Note that these are NOT the computes used by thermodynamic output (see
|
||||||
the :doc:`thermo_style <thermo_style>` command) with ID = *thermo_temp*
|
the :doc:`thermo_style <thermo_style>` command) with ID =
|
||||||
and *thermo_press*. This means you can change the attributes of this
|
*thermo_temp* and *thermo_press*. This means you can change the
|
||||||
fix's temperature or pressure via the
|
attributes of this fix's temperature or pressure via the
|
||||||
:doc:`compute_modify <compute_modify>` command or print this temperature
|
:doc:`compute_modify <compute_modify>` command or print this
|
||||||
or pressure during thermodynamic output via the :doc:`thermo_style custom <thermo_style>` command using the appropriate compute-ID.
|
temperature or pressure during thermodynamic output via the
|
||||||
It also means that changing attributes of *thermo_temp* or
|
:doc:`thermo_style custom <thermo_style>` command using the
|
||||||
*thermo_press* will have no effect on this fix.
|
appropriate compute-ID. It also means that changing attributes of
|
||||||
|
*thermo_temp* or *thermo_press* will have no effect on this fix.
|
||||||
|
|
||||||
Like other fixes that perform thermostatting, this fix can be used
|
Like other fixes that perform thermostatting, this fix can be used
|
||||||
with :doc:`compute commands <compute>` that calculate a temperature
|
with :doc:`compute commands <compute>` that calculate a temperature
|
||||||
@ -129,18 +130,18 @@ a fix in an input script that reads a restart file, so that the
|
|||||||
operation of the fix continues in an uninterrupted fashion.
|
operation of the fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||||
supported by this fix. You can use them to assign a
|
supported by this fix. You can use them to assign a :doc:`compute
|
||||||
:doc:`compute <compute>` you have defined to this fix which will be used
|
<compute>` you have defined to this fix which will be used in its
|
||||||
in its thermostatting or barostatting procedure. If you do this, note
|
thermostatting or barostatting procedure. If you do this, note that
|
||||||
that the kinetic energy derived from the compute temperature should be
|
the kinetic energy derived from the compute temperature should be
|
||||||
consistent with the virial term computed using all atoms for the
|
consistent with the virial term computed using all atoms for the
|
||||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||||
on a subset of atoms.
|
on a subset of atoms.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover thermostatting and
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
barostatting to the system's potential energy as part of
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
:doc:`thermodynamic output <thermo_style>`.
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix npt <fix_nh>` command.
|
quantities as does the :doc:`fix npt <fix_nh>` command.
|
||||||
|
|||||||
@ -92,19 +92,21 @@ thermal degrees of freedom, and the bias is added back in.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the state of the Nose/Hoover thermostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
This fix writes the state of the Nose/Hoover thermostat to
|
||||||
command for info on how to re-specify a fix in an input script that
|
:doc:`binary restart files <restart>`. See the :doc:`read_restart
|
||||||
reads a restart file, so that the operation of the fix continues in an
|
<read_restart>` command for info on how to re-specify a fix in an
|
||||||
uninterrupted fashion.
|
input script that reads a restart file, so that the operation of the
|
||||||
|
fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||||
fix. You can use it to assign a :doc:`compute <compute>` you have
|
fix. You can use it to assign a :doc:`compute <compute>` you have
|
||||||
defined to this fix which will be used in its thermostatting
|
defined to this fix which will be used in its thermostatting
|
||||||
procedure.
|
procedure.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
||||||
|
|||||||
@ -89,19 +89,21 @@ thermal degrees of freedom, and the bias is added back in.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the state of the Nose/Hoover thermostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
This fix writes the state of the Nose/Hoover thermostat to
|
||||||
command for info on how to re-specify a fix in an input script that
|
:doc:`binary restart files <restart>`. See the :doc:`read_restart
|
||||||
reads a restart file, so that the operation of the fix continues in an
|
<read_restart>` command for info on how to re-specify a fix in an
|
||||||
uninterrupted fashion.
|
input script that reads a restart file, so that the operation of the
|
||||||
|
fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||||
fix. You can use it to assign a :doc:`compute <compute>` you have
|
fix. You can use it to assign a :doc:`compute <compute>` you have
|
||||||
defined to this fix which will be used in its thermostatting
|
defined to this fix which will be used in its thermostatting
|
||||||
procedure.
|
procedure.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
||||||
|
|||||||
@ -122,19 +122,21 @@ thermal degrees of freedom, and the bias is added back in.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the state of the Nose/Hoover thermostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
This fix writes the state of the Nose/Hoover thermostat to
|
||||||
command for info on how to re-specify a fix in an input script that
|
:doc:`binary restart files <restart>`. See the :doc:`read_restart
|
||||||
reads a restart file, so that the operation of the fix continues in an
|
<read_restart>` command for info on how to re-specify a fix in an
|
||||||
uninterrupted fashion.
|
input script that reads a restart file, so that the operation of the
|
||||||
|
fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||||
fix. You can use it to assign a :doc:`compute <compute>` you have
|
fix. You can use it to assign a :doc:`compute <compute>` you have
|
||||||
defined to this fix which will be used in its thermostatting
|
defined to this fix which will be used in its thermostatting
|
||||||
procedure.
|
procedure.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
||||||
|
|||||||
@ -41,19 +41,21 @@ velocity.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the state of the Nose/Hoover thermostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
This fix writes the state of the Nose/Hoover thermostat to
|
||||||
command for info on how to re-specify a fix in an input script that
|
:doc:`binary restart files <restart>`. See the :doc:`read_restart
|
||||||
reads a restart file, so that the operation of the fix continues in an
|
<read_restart>` command for info on how to re-specify a fix in an
|
||||||
uninterrupted fashion.
|
input script that reads a restart file, so that the operation of the
|
||||||
|
fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||||
fix. You can use it to assign a :doc:`compute <compute>` you have
|
fix. You can use it to assign a :doc:`compute <compute>` you have
|
||||||
defined to this fix which will be used in its thermostatting
|
defined to this fix which will be used in its thermostatting
|
||||||
procedure.
|
procedure.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix nvt/eff <fix_nh_eff>` command.
|
quantities as does the :doc:`fix nvt/eff <fix_nh_eff>` command.
|
||||||
|
|||||||
@ -106,19 +106,21 @@ thermal degrees of freedom, and the bias is added back in.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the state of the Nose/Hoover thermostat to :doc:`binary restart files <restart>`. See the :doc:`read_restart <read_restart>`
|
This fix writes the state of the Nose/Hoover thermostat to
|
||||||
command for info on how to re-specify a fix in an input script that
|
:doc:`binary restart files <restart>`. See the :doc:`read_restart
|
||||||
reads a restart file, so that the operation of the fix continues in an
|
<read_restart>` command for info on how to re-specify a fix in an
|
||||||
uninterrupted fashion.
|
input script that reads a restart file, so that the operation of the
|
||||||
|
fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||||
fix. You can use it to assign a :doc:`compute <compute>` you have
|
fix. You can use it to assign a :doc:`compute <compute>` you have
|
||||||
defined to this fix which will be used in its thermostatting
|
defined to this fix which will be used in its thermostatting
|
||||||
procedure.
|
procedure.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
This fix computes the same global scalar and global vector of
|
This fix computes the same global scalar and global vector of
|
||||||
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
||||||
|
|||||||
@ -144,16 +144,20 @@ writing the orientation files is given in :ref:`(Wicaksono2) <Wicaksono2>`
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the potential energy of atom interactions with the grain
|
this fix to add the potential energy of atom interactions with the
|
||||||
boundary driving force to the system's potential energy as part of
|
grain boundary driving force to the global potential energy of the
|
||||||
:doc:`thermodynamic output <thermo_style>`.
|
system as part of :doc:`thermodynamic output <thermo_style>`. The
|
||||||
|
default setting for this fix is :doc:`fix_modify energy no
|
||||||
|
<fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by these
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
||||||
fixes. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
these fixes. This allows to set at which level of the :doc:`r-RESPA
|
||||||
integrator a fix is adding its forces. Default is the outermost level.
|
<run_style>` integrator a fix is adding its forces. Default is the
|
||||||
|
outermost level.
|
||||||
|
|
||||||
This fix calculates a global scalar which can be accessed by various
|
This fix calculates a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||||
@ -166,13 +170,16 @@ order parameter Xi and normalized order parameter (0 to 1) for each
|
|||||||
atom. The per-atom values can be accessed on any timestep.
|
atom. The per-atom values can be accessed on any timestep.
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
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
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the MISC package. It is only enabled if LAMMPS
|
This fix is part of the MISC package. It is only enabled if LAMMPS
|
||||||
was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
This fix should only be used with fcc or bcc lattices.
|
This fix should only be used with fcc or bcc lattices.
|
||||||
|
|
||||||
|
|||||||
@ -26,22 +26,24 @@ Examples
|
|||||||
Description
|
Description
|
||||||
"""""""""""
|
"""""""""""
|
||||||
|
|
||||||
The fix applies a synthetic driving force to a grain boundary which can
|
The fix applies a synthetic driving force to a grain boundary which
|
||||||
be used for the investigation of grain boundary motion. The affiliation
|
can be used for the investigation of grain boundary motion. The
|
||||||
of atoms to either of the two grains forming the grain boundary is
|
affiliation of atoms to either of the two grains forming the grain
|
||||||
determined from an orientation-dependent order parameter as described
|
boundary is determined from an orientation-dependent order parameter
|
||||||
in :ref:`(Ulomek) <Ulomek>`. The potential energy of atoms is either increased by an amount
|
as described in :ref:`(Ulomek) <Ulomek>`. The potential energy of
|
||||||
of 0.5*\ *u0* or -0.5*\ *u0* according to the orientation of the surrounding
|
atoms is either increased by an amount of 0.5*\ *u0* or -0.5*\ *u0*
|
||||||
crystal. This creates a potential energy gradient which pushes atoms near
|
according to the orientation of the surrounding crystal. This creates
|
||||||
the grain boundary to orient according to the energetically favorable
|
a potential energy gradient which pushes atoms near the grain boundary
|
||||||
grain orientation. This fix is designed for applications in bicrystal system
|
to orient according to the energetically favorable grain
|
||||||
with one grain boundary and open ends, or two opposite grain boundaries in
|
orientation. This fix is designed for applications in bicrystal system
|
||||||
a periodic system. In either case, the entire system can experience a
|
with one grain boundary and open ends, or two opposite grain
|
||||||
displacement during the simulation which needs to be accounted for in the
|
boundaries in a periodic system. In either case, the entire system can
|
||||||
evaluation of the grain boundary velocity. While the basic method is
|
experience a displacement during the simulation which needs to be
|
||||||
described in :ref:`(Ulomek) <Ulomek>`, the implementation follows the efficient
|
accounted for in the evaluation of the grain boundary velocity. While
|
||||||
implementation from :ref:`(Schratt & Mohles) <Schratt>`. The synthetic potential energy added to an
|
the basic method is described in :ref:`(Ulomek) <Ulomek>`, the
|
||||||
atom j is given by the following formulas
|
implementation follows the efficient implementation from
|
||||||
|
:ref:`(Schratt & Mohles) <Schratt>`. The synthetic potential energy
|
||||||
|
added to an atom j is given by the following formulas
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
@ -60,60 +62,69 @@ atom j is given by the following formulas
|
|||||||
which are fully explained in :ref:`(Ulomek) <Ulomek>`
|
which are fully explained in :ref:`(Ulomek) <Ulomek>`
|
||||||
and :ref:`(Schratt & Mohles) <Schratt>`.
|
and :ref:`(Schratt & Mohles) <Schratt>`.
|
||||||
|
|
||||||
The force on each atom is the negative gradient of the synthetic potential energy. It
|
The force on each atom is the negative gradient of the synthetic
|
||||||
depends on the surrounding of this atom. An atom far from the grain boundary does not
|
potential energy. It depends on the surrounding of this atom. An atom
|
||||||
experience a synthetic force as its surrounding is that of an oriented single crystal
|
far from the grain boundary does not experience a synthetic force as
|
||||||
and thermal fluctuations are masked by the parameter *eta*\ . Near the grain boundary
|
its surrounding is that of an oriented single crystal and thermal
|
||||||
however, the gradient is nonzero and synthetic force terms are computed.
|
fluctuations are masked by the parameter *eta*\ . Near the grain
|
||||||
The orientationsFile specifies the perfect oriented crystal basis vectors for the
|
boundary however, the gradient is nonzero and synthetic force terms
|
||||||
two adjoining crystals. The first three lines (line=row vector) for the energetically penalized and the
|
are computed. The orientationsFile specifies the perfect oriented
|
||||||
last three lines for the energetically favored grain assuming *u0* is positive. For
|
crystal basis vectors for the two adjoining crystals. The first three
|
||||||
negative *u0*, this is reversed. With the *cutoff* parameter, the size of the region around
|
lines (line=row vector) for the energetically penalized and the last
|
||||||
each atom which is used in the order parameter computation is defined. The cutoff must be
|
three lines for the energetically favored grain assuming *u0* is
|
||||||
smaller than the interaction range of the MD potential. It should at
|
positive. For negative *u0*, this is reversed. With the *cutoff*
|
||||||
least include the nearest neighbor shell. For high temperatures or low angle
|
parameter, the size of the region around each atom which is used in
|
||||||
grain boundaries, it might be beneficial to increase the cutoff in order to get a more
|
the order parameter computation is defined. The cutoff must be smaller
|
||||||
precise identification of the atoms surrounding. However, computation time will
|
than the interaction range of the MD potential. It should at least
|
||||||
increase as more atoms are considered in the order parameter and force computation.
|
include the nearest neighbor shell. For high temperatures or low angle
|
||||||
It is also worth noting that the cutoff radius must not exceed the communication
|
grain boundaries, it might be beneficial to increase the cutoff in
|
||||||
distance for ghost atoms in LAMMPS. With orientationsFile, the
|
order to get a more precise identification of the atoms
|
||||||
6 oriented crystal basis vectors is specified. Each line of the input file
|
surrounding. However, computation time will increase as more atoms are
|
||||||
contains the three components of a primitive lattice vector oriented according to
|
considered in the order parameter and force computation. It is also
|
||||||
the grain orientation in the simulation box. The first (last) three lines correspond
|
worth noting that the cutoff radius must not exceed the communication
|
||||||
to the primitive lattice vectors of the first (second) grain. An example for
|
distance for ghost atoms in LAMMPS. With orientationsFile, the 6
|
||||||
a :math:`\Sigma\langle001\rangle` mis-orientation is given at the end.
|
oriented crystal basis vectors is specified. Each line of the input
|
||||||
|
file contains the three components of a primitive lattice vector
|
||||||
If no synthetic energy difference between the grains is created, :math:`u0=0`, the
|
oriented according to the grain orientation in the simulation box. The
|
||||||
force computation is omitted. In this case, still, the order parameter of the
|
first (last) three lines correspond to the primitive lattice vectors
|
||||||
driving force is computed and can be used to track the grain boundary motion throughout the
|
of the first (second) grain. An example for a
|
||||||
simulation.
|
:math:`\Sigma\langle001\rangle` mis-orientation is given at the end.
|
||||||
|
|
||||||
|
|
||||||
|
If no synthetic energy difference between the grains is created,
|
||||||
|
:math:`u0=0`, the force computation is omitted. In this case, still,
|
||||||
|
the order parameter of the driving force is computed and can be used
|
||||||
|
to track the grain boundary motion throughout the simulation.
|
||||||
|
|
||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc: `binary restart files <restart>`.
|
No information about this fix is written to :doc: `binary restart
|
||||||
|
files <restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this fix to
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
add the potential energy of atom interactions with the grain boundary
|
this fix to add the potential energy of atom interactions with the
|
||||||
driving force to the system's potential energy as part of thermodynamic output.
|
grain boundary driving force to the global potential energy of the
|
||||||
The total sum of added synthetic potential energy is computed and can be accessed
|
system as part of :doc:`thermodynamic output <thermo_style>`. The
|
||||||
by various output options. The order parameter as well as the thermally masked
|
default setting for this fix is :doc:`fix_modify energy no
|
||||||
output parameter are stored in per-atom arrays and can also be accessed by various
|
<fix_modify>`.
|
||||||
:doc:`output commands <Howto_output>`.
|
|
||||||
|
|
||||||
No parameter of this fix can be used with the start/stop keywords of the run command. This fix is
|
This fix calculates a per-atom array with 2 columns, which can be
|
||||||
not invoked during energy minimization.
|
accessed by indices 1-1 by any command that uses per-atom values from
|
||||||
|
a fix as input. See the :doc:`Howto output <Howto_output>` doc page
|
||||||
|
for an overview of LAMMPS output options.
|
||||||
|
|
||||||
|
The first column is the order parameter for each atom; the second is
|
||||||
|
the thermal masking value for each atom. Both are described above.
|
||||||
|
|
||||||
|
No parameter of this fix can be used with the start/stop keywords of
|
||||||
|
the run command. This fix is not invoked during energy minimization.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the USER-MISC package. It is only enabled if LAMMPS was
|
This fix is part of the USER-MISC package. It is only enabled if
|
||||||
built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -66,7 +66,8 @@ plumed fix in the LAMMPS input.
|
|||||||
|
|
||||||
The *plumedfile* keyword allows the user to specify the name of the
|
The *plumedfile* keyword allows the user to specify the name of the
|
||||||
PLUMED input file. Instructions as to what should be included in a
|
PLUMED input file. Instructions as to what should be included in a
|
||||||
plumed input file can be found in the `documentation for PLUMED <plumeddocs_>`_
|
plumed input file can be found in the `documentation for PLUMED
|
||||||
|
<plumeddocs_>`_
|
||||||
|
|
||||||
The *outfile* keyword allows the user to specify the name of a file in
|
The *outfile* keyword allows the user to specify the name of a file in
|
||||||
which to output the PLUMED log. This log file normally just repeats the
|
which to output the PLUMED log. This log file normally just repeats the
|
||||||
@ -78,31 +79,45 @@ be specified by the user in the PLUMED input file.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
When performing a restart of a calculation that involves PLUMED you must
|
When performing a restart of a calculation that involves PLUMED you
|
||||||
include a RESTART command in the PLUMED input file as detailed in the
|
must include a RESTART command in the PLUMED input file as detailed in
|
||||||
`PLUMED documentation <plumeddocs_>`_. When the restart command is found in
|
the `PLUMED documentation <plumeddocs_>`_. When the restart command
|
||||||
the PLUMED input PLUMED will append to the files that were generated in
|
is found in the PLUMED input PLUMED will append to the files that were
|
||||||
the run that was performed previously. No part of the PLUMED restart
|
generated in the run that was performed previously. No part of the
|
||||||
data is included in the LAMMPS restart files. Furthermore, any history
|
PLUMED restart data is included in the LAMMPS restart files.
|
||||||
dependent bias potentials that were accumulated in previous calculations
|
Furthermore, any history dependent bias potentials that were
|
||||||
will be read in when the RESTART command is included in the PLUMED
|
accumulated in previous calculations will be read in when the RESTART
|
||||||
input.
|
command is included in the PLUMED input.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is not supported by
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
this fix.
|
this fix to add the energy change from the biasing force added by
|
||||||
|
PLUMED to the global potential energy of the system as part of
|
||||||
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
|
this fix is :doc:`fix_modify energy yes <fix_modify>`.
|
||||||
|
|
||||||
Nothing is computed by this fix that can be accessed by any of the
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
:doc:`output commands <Howto_output>` within LAMMPS. All the quantities
|
this fix to add the contribution from the biasing force to the global
|
||||||
of interest can be output by commands that are native to PLUMED,
|
pressure of the system via the :doc:`compute pressure
|
||||||
however.
|
<compute_pressure>` command. This can be accessed by
|
||||||
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
|
this fix is :doc:`fix_modify virial yes <fix_modify>`.
|
||||||
|
|
||||||
|
This fix computes a global scalar which can be accessed by various
|
||||||
|
:doc:`output commands <Howto_output>`. The scalar is the PLUMED
|
||||||
|
energy mentioned above. The scalar value calculated by this fix is
|
||||||
|
"extensive".
|
||||||
|
|
||||||
|
Note that other quantities of interest can be output by commands that
|
||||||
|
are native to PLUMED.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the USER-PLUMED package. It is only enabled if
|
This fix is part of the USER-PLUMED package. It is only enabled if
|
||||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
There can only be one plumed fix active at a time.
|
There can only be one fix plumed command active at a time.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
""""""""""""""""
|
""""""""""""""""
|
||||||
|
|||||||
@ -39,14 +39,15 @@ useful for treating a large biomolecule as a collection of connected,
|
|||||||
coarse-grained particles.
|
coarse-grained particles.
|
||||||
|
|
||||||
The coupling, associated motion constraints, and time integration is
|
The coupling, associated motion constraints, and time integration is
|
||||||
performed by the software package `Parallelizable Open source Efficient Multibody Software (POEMS)` which computes the
|
performed by the software package `Parallelizable Open source
|
||||||
constrained rigid-body motion of articulated (jointed) multibody
|
Efficient Multibody Software (POEMS)` which computes the constrained
|
||||||
systems :ref:`(Anderson) <Anderson>`. POEMS was written and is distributed
|
rigid-body motion of articulated (jointed) multibody systems
|
||||||
by Prof Kurt Anderson, his graduate student Rudranarayan Mukherjee,
|
:ref:`(Anderson) <Anderson>`. POEMS was written and is distributed by
|
||||||
and other members of his group at Rensselaer Polytechnic Institute
|
Prof Kurt Anderson, his graduate student Rudranarayan Mukherjee, and
|
||||||
(RPI). Rudranarayan developed the LAMMPS/POEMS interface. For
|
other members of his group at Rensselaer Polytechnic Institute (RPI).
|
||||||
copyright information on POEMS and other details, please refer to the
|
Rudranarayan developed the LAMMPS/POEMS interface. For copyright
|
||||||
documents in the poems directory distributed with LAMMPS.
|
information on POEMS and other details, please refer to the documents
|
||||||
|
in the poems directory distributed with LAMMPS.
|
||||||
|
|
||||||
This fix updates the positions and velocities of the rigid atoms with
|
This fix updates the positions and velocities of the rigid atoms with
|
||||||
a constant-energy time integration, so you should not update the same
|
a constant-energy time integration, so you should not update the same
|
||||||
@ -107,7 +108,16 @@ off, and there is only a single fix poems defined.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
|
this fix to add the contribution due to the added forces and torques
|
||||||
|
on atoms to both the global pressure and per-atom stress of the system
|
||||||
|
via the :doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||||
|
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>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *bodyforces* option is supported by
|
The :doc:`fix_modify <fix_modify>` *bodyforces* option is supported by
|
||||||
this fix style to set whether per-body forces and torques are computed
|
this fix style to set whether per-body forces and torques are computed
|
||||||
@ -115,16 +125,18 @@ early or late in a timestep, i.e. at the post-force stage or at the
|
|||||||
final-integrate stage, respectively.
|
final-integrate stage, respectively.
|
||||||
|
|
||||||
No global or per-atom quantities are stored by this fix for access by
|
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
|
various :doc:`output commands <Howto_output>`. No parameter of this
|
||||||
can be used with the *start/stop* keywords of the :doc:`run <run>`
|
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>`.
|
command. This fix is not invoked during :doc:`energy minimization
|
||||||
|
<minimize>`.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the :ref:`POEMS <PKG-POEMS>` package. It is only enabled if LAMMPS
|
This fix is part of the :ref:`POEMS <PKG-POEMS>` package. It is only
|
||||||
was built with that package, which also requires the POEMS library be
|
enabled if LAMMPS was built with that package, which also requires the
|
||||||
built and linked with LAMMPS. See the :doc:`Build package <Build_package>` doc page for more info.
|
POEMS library be built and linked with LAMMPS. See the :doc:`Build
|
||||||
|
package <Build_package>` doc page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
""""""""""""""""
|
""""""""""""""""
|
||||||
|
|||||||
@ -42,11 +42,12 @@ Examples
|
|||||||
Description
|
Description
|
||||||
"""""""""""
|
"""""""""""
|
||||||
|
|
||||||
This fix applies a precession torque to each magnetic spin in the group.
|
This fix applies a precession torque to each magnetic spin in the
|
||||||
|
group.
|
||||||
|
|
||||||
Style *zeeman* is used for the simulation of the interaction
|
Style *zeeman* is used for the simulation of the interaction between
|
||||||
between the magnetic spins in the defined group and an external
|
the magnetic spins in the defined group and an external magnetic
|
||||||
magnetic field:
|
field:
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
@ -62,17 +63,17 @@ with:
|
|||||||
|
|
||||||
The field value in Tesla is multiplied by the gyromagnetic
|
The field value in Tesla is multiplied by the gyromagnetic
|
||||||
ratio, :math:`g \cdot \mu_B/\hbar`, converting it into a precession frequency in
|
ratio, :math:`g \cdot \mu_B/\hbar`, converting it into a precession frequency in
|
||||||
rad.THz (in metal units and with :math:`\mu_B = 5.788\cdot 10^{-5}` eV/T).
|
rad.THz (in metal units and with :math:`\mu_B = 5.788\cdot 10^{-5}`
|
||||||
|
eV/T).
|
||||||
|
|
||||||
As a comparison, the figure below displays the simulation of a
|
As a comparison, the figure below displays the simulation of a single
|
||||||
single spin (of norm :math:`\mu_i = 1.0`) submitted to an external
|
spin (of norm :math:`\mu_i = 1.0`) submitted to an external magnetic
|
||||||
magnetic field of :math:`\vert B_{ext}\vert = 10.0\; \mathrm{Tesla}` (and oriented along the z
|
field of :math:`\vert B_{ext}\vert = 10.0\; \mathrm{Tesla}` (and
|
||||||
axis).
|
oriented along the z axis). The upper plot shows the average
|
||||||
The upper plot shows the average magnetization along the
|
magnetization along the external magnetic field axis and the lower
|
||||||
external magnetic field axis and the lower plot the Zeeman
|
plot the Zeeman energy, both as a function of temperature. The
|
||||||
energy, both as a function of temperature.
|
reference result is provided by the plot of the Langevin function for
|
||||||
The reference result is provided by the plot of the Langevin
|
the same parameters.
|
||||||
function for the same parameters.
|
|
||||||
|
|
||||||
.. image:: JPG/zeeman_langevin.jpg
|
.. image:: JPG/zeeman_langevin.jpg
|
||||||
:align: center
|
:align: center
|
||||||
@ -88,10 +89,12 @@ for the magnetic spins in the defined group:
|
|||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
H_{aniso} = -\sum_{{ i}=1}^{N} K_{an}(\mathbf{r}_{i})\, \left( \vec{s}_{i} \cdot \vec{n}_{i} \right)^2
|
H_{aniso} = -\sum_{{ i}=1}^{N} K_{an}(\mathbf{r}_{i})\, \left(
|
||||||
|
\vec{s}_{i} \cdot \vec{n}_{i} \right)^2
|
||||||
|
|
||||||
with :math:`n` defining the direction of the anisotropy, and :math:`K` (in eV) its intensity.
|
with :math:`n` defining the direction of the anisotropy, and :math:`K`
|
||||||
If :math:`K > 0`, an easy axis is defined, and if :math:`K < 0`, an easy plane is defined.
|
(in eV) its intensity. If :math:`K > 0`, an easy axis is defined, and
|
||||||
|
if :math:`K < 0`, an easy plane is defined.
|
||||||
|
|
||||||
Style *cubic* is used to simulate a cubic anisotropy, with three
|
Style *cubic* is used to simulate a cubic anisotropy, with three
|
||||||
possible easy axis for the magnetic spins in the defined group:
|
possible easy axis for the magnetic spins in the defined group:
|
||||||
@ -110,17 +113,17 @@ possible easy axis for the magnetic spins in the defined group:
|
|||||||
\left(\vec{s}_{i} \cdot \vec{n_2} \right)^2
|
\left(\vec{s}_{i} \cdot \vec{n_2} \right)^2
|
||||||
\left(\vec{s}_{i} \cdot \vec{n_3} \right)^2
|
\left(\vec{s}_{i} \cdot \vec{n_3} \right)^2
|
||||||
|
|
||||||
with :math:`K_1` and :math:`K_{2c}` (in eV) the intensity coefficients and
|
with :math:`K_1` and :math:`K_{2c}` (in eV) the intensity coefficients
|
||||||
:math:`\vec{n}_1`, :math:`\vec{n}_2` and :math:`\vec{n}_3` defining the three anisotropic directions
|
and :math:`\vec{n}_1`, :math:`\vec{n}_2` and :math:`\vec{n}_3`
|
||||||
defined by the command (from *n1x* to *n3z*).
|
defining the three anisotropic directions defined by the command (from
|
||||||
For :math:`\vec{n}_1 = (1 0 0)`, :math:`\vec{n}_2 = (0 1 0)`, and :math:`\vec{n}_3 = (0 0 1)`, :math:`K_1 < 0` defines an
|
*n1x* to *n3z*). For :math:`\vec{n}_1 = (1 0 0)`, :math:`\vec{n}_2 =
|
||||||
|
(0 1 0)`, and :math:`\vec{n}_3 = (0 0 1)`, :math:`K_1 < 0` defines an
|
||||||
iron type anisotropy (easy axis along the :math:`(0 0 1)`-type cube
|
iron type anisotropy (easy axis along the :math:`(0 0 1)`-type cube
|
||||||
edges), and :math:`K_1 > 0` defines a nickel type anisotropy (easy axis
|
edges), and :math:`K_1 > 0` defines a nickel type anisotropy (easy
|
||||||
along the :math:`(1 1 1)`-type cube diagonals).
|
axis along the :math:`(1 1 1)`-type cube diagonals). :math:`K_2^c >
|
||||||
:math:`K_2^c > 0` also defines easy axis along the :math:`(1 1 1)`-type cube
|
0` also defines easy axis along the :math:`(1 1 1)`-type cube
|
||||||
diagonals.
|
diagonals. See chapter 2 of :ref:`(Skomski) <Skomski1>` for more
|
||||||
See chapter 2 of :ref:`(Skomski) <Skomski1>` for more details on cubic
|
details on cubic anisotropies.
|
||||||
anisotropies.
|
|
||||||
|
|
||||||
In all cases, the choice of :math:`(x y z)` only imposes the vector
|
In all cases, the choice of :math:`(x y z)` only imposes the vector
|
||||||
directions for the forces. Only the direction of the vector is
|
directions for the forces. Only the direction of the vector is
|
||||||
@ -134,32 +137,35 @@ Those styles can be combined within one single command line.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
By default, the energy associated to this fix is not added to the potential
|
No information about this fix is written to :doc:`binary restart files
|
||||||
energy of the system.
|
<restart>`.
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this fix
|
|
||||||
to add this magnetic potential energy to the potential energy of the system,
|
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
|
this fix to add the energy associated with the spin precession
|
||||||
fix 1 all precession/spin zeeman 1.0 0.0 0.0 1.0
|
torque to the global potential energy of the system as part of
|
||||||
fix_modify 1 energy yes
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
|
this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`.
|
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||||
|
energy (in energy units) discussed in the previous paragraph. The
|
||||||
|
scalar value is an "extensive" quantity.
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
The *precession/spin* style is part of the SPIN package. This style
|
The *precession/spin* style is part of the SPIN package. This style
|
||||||
is only enabled if LAMMPS was built with this package, and if the
|
is only enabled if LAMMPS was built with this package, and if the
|
||||||
atom_style "spin" was declared. See the :doc:`Build package <Build_package>` doc page for more info.
|
atom_style "spin" was declared. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
The *precession/spin* style can only be declared once. If more
|
The *precession/spin* style can only be declared once. If more than
|
||||||
than one precession type (for example combining an anisotropy and a Zeeman interactions)
|
one precession type (for example combining an anisotropy and a Zeeman
|
||||||
has to be declared, they have to be chained in the same command
|
interactions) has to be declared, they have to be chained in the same
|
||||||
line (as shown in the examples above).
|
command line (as shown in the examples above).
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
""""""""""""""""
|
""""""""""""""""
|
||||||
|
|||||||
@ -152,13 +152,30 @@ Because the state of the random number generator is not written to
|
|||||||
"exactly" in an uninterrupted fashion. However, in a statistical
|
"exactly" in an uninterrupted fashion. However, in a statistical
|
||||||
sense, a restarted simulation should produce similar behaviors of the
|
sense, a restarted simulation should produce similar behaviors of the
|
||||||
system as if it is not interrupted. To achieve such a restart, one
|
system as if it is not interrupted. To achieve such a restart, one
|
||||||
should write explicitly the same value for *q*\ , *mu*\ , *damp*\ , *f_max*,
|
should write explicitly the same value for *q*\ , *mu*\ , *damp*\ ,
|
||||||
*N_f*, *eta*\ , and *beta* and set *tscale* = 0 if the system is
|
*f_max*, *N_f*, *eta*\ , and *beta* and set *tscale* = 0 if the system
|
||||||
compressed during the first run.
|
is compressed during the first run.
|
||||||
|
|
||||||
|
The cumulative energy change in the system imposed by this fix is
|
||||||
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
|
This fix computes a global scalar which can be accessed by various
|
||||||
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
|
cumulative energy change due to this fix described in the previous
|
||||||
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
The progress of the QBMSST can be monitored by printing the global
|
The progress of the QBMSST can be monitored by printing the global
|
||||||
scalar and global vector quantities computed by the fix. The global
|
scalar and global vector quantities computed by the fix.
|
||||||
vector contains five values in this order:
|
|
||||||
|
As mentioned above, the scalar is the cumulative energy change due to
|
||||||
|
the fix. By monitoring the thermodynamic *econserve* output, this can
|
||||||
|
be used to test if the MD timestep is sufficiently small for accurate
|
||||||
|
integration of the dynamic equations.
|
||||||
|
|
||||||
|
The global vector contains five values in the following order. The
|
||||||
|
vector values output by this fix are "intensive".
|
||||||
|
|
||||||
[\ *dhugoniot*\ , *drayleigh*\ , *lagrangian_speed*, *lagrangian_position*,
|
[\ *dhugoniot*\ , *drayleigh*\ , *lagrangian_speed*, *lagrangian_position*,
|
||||||
*quantum_temperature*]
|
*quantum_temperature*]
|
||||||
@ -170,29 +187,21 @@ vector contains five values in this order:
|
|||||||
5. *quantum_temperature* is the temperature of the quantum thermal bath :math:`T^{qm}`.
|
5. *quantum_temperature* is the temperature of the quantum thermal bath :math:`T^{qm}`.
|
||||||
|
|
||||||
To print these quantities to the log file with descriptive column
|
To print these quantities to the log file with descriptive column
|
||||||
headers, the following LAMMPS commands are suggested. Here the
|
headers, the following LAMMPS commands are suggested.
|
||||||
:doc:`fix_modify <fix_modify>` energy command is also enabled to allow
|
|
||||||
the thermo keyword *etotal* to print the quantity :math:`E^{tot}`. See
|
|
||||||
also the :doc:`thermo_style <thermo_style>` command.
|
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
fix fix_id all msst z
|
fix fix_id all msst z
|
||||||
fix_modify fix_id energy yes
|
|
||||||
variable dhug equal f_fix_id[1]
|
variable dhug equal f_fix_id[1]
|
||||||
variable dray equal f_fix_id[2]
|
variable dray equal f_fix_id[2]
|
||||||
variable lgr_vel equal f_fix_id[3]
|
variable lgr_vel equal f_fix_id[3]
|
||||||
variable lgr_pos equal f_fix_id[4]
|
variable lgr_pos equal f_fix_id[4]
|
||||||
variable T_qm equal f_fix_id[5]
|
variable T_qm equal f_fix_id[5]
|
||||||
thermo_style custom step temp ke pe lz pzz etotal v_dhug v_dray v_lgr_vel v_lgr_pos v_T_qm f_fix_id
|
thermo_style custom step temp ke pe lz pzz econserve v_dhug v_dray v_lgr_vel v_lgr_pos v_T_qm f_fix_id
|
||||||
|
|
||||||
The global scalar under the entry f_fix_id is the quantity of thermo
|
It is worth noting that the temp keyword for the :doc:`thermo_style
|
||||||
energy as an extra part of :math:`E^{tot}`. This global scalar and the
|
<thermo_style>` command prints the instantaneous classical temperature
|
||||||
vector of 5 quantities can be accessed by various :doc:`output commands <Howto_output>`.
|
:math:`T^{cl}` as described by the :doc:`fix qtb <fix_qtb>` command.
|
||||||
It is worth noting that the temp keyword
|
|
||||||
under the :doc:`thermo_style <thermo_style>` command print the
|
|
||||||
instantaneous classical temperature :math:`T^{cl}` as described
|
|
||||||
in the command :doc:`fix qtb <fix_qtb>`.
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -200,7 +209,8 @@ Restrictions
|
|||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix style is part of the USER-QTB package. It is only enabled if
|
This fix style is part of the USER-QTB package. It is only enabled if
|
||||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
All cell dimensions must be periodic. This fix can not be used with a
|
All cell dimensions must be periodic. This fix can not be used with a
|
||||||
triclinic cell. The QBMSST fix has been tested only for the group-ID
|
triclinic cell. The QBMSST fix has been tested only for the group-ID
|
||||||
|
|||||||
@ -219,15 +219,19 @@ current dihedral angle :math:`\phi` is equal to :math:`\phi_0`.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the potential energy associated with this fix to the
|
this fix to add the potential energy associated with this fix to the
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
global potential energy of the system as part of :doc:`thermodynamic
|
||||||
|
output <thermo_style>` The default setting for this fix is
|
||||||
|
:doc:`fix_modify energy no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||||
integrator the fix is adding its forces. Default is the outermost level.
|
<run_style>` integrator the fix is adding its forces. Default is the
|
||||||
|
outermost level.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
|
|||||||
@ -45,11 +45,34 @@ temperatures :ref:`(Pedersen) <Pedersen>`.
|
|||||||
An example of using the interface pinning method is located in the
|
An example of using the interface pinning method is located in the
|
||||||
*examples/USER/misc/rhok* directory.
|
*examples/USER/misc/rhok* directory.
|
||||||
|
|
||||||
|
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>` *energy* option is supported by
|
||||||
|
this fix to add the potential energy calculated by the fix to the
|
||||||
|
global potential energy of the system as part of :doc:`thermodynamic
|
||||||
|
output <thermo_style>`. The default setting for this fix is
|
||||||
|
:doc:`fix_modify energy no <fix_modify>`.
|
||||||
|
|
||||||
|
This fix computes a global scalar which can be accessed by various
|
||||||
|
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||||
|
energy discussed in the preceding paragraph. The scalar stored by
|
||||||
|
this fix is "extensive".
|
||||||
|
|
||||||
|
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
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the USER-MISC package. It is only enabled if
|
This fix is part of the USER-MISC package. It is only enabled if
|
||||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
""""""""""""""""
|
""""""""""""""""
|
||||||
|
|||||||
@ -752,25 +752,17 @@ rigid/nvt.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about the 4 NVE rigid styles is written to :doc:`binary restart files <restart>`. The exception is if the *infile* or
|
No information about the 4 NVE rigid styles is written to :doc:`binary
|
||||||
*mol* keyword is used, in which case an auxiliary file is written out
|
restart files <restart>`. The exception is if the *infile* or *mol*
|
||||||
with rigid body information each time a restart file is written, as
|
keyword is used, in which case an auxiliary file is written out with
|
||||||
|
rigid body information each time a restart file is written, as
|
||||||
explained above for the *infile* keyword. For the 2 NVT rigid styles,
|
explained above for the *infile* keyword. For the 2 NVT rigid styles,
|
||||||
the state of the Nose/Hoover thermostat is written to :doc:`binary restart files <restart>`. Ditto for the 4 NPT and NPH rigid styles, and
|
the state of the Nose/Hoover thermostat is written to :doc:`binary
|
||||||
the state of the Nose/Hoover barostat. See the
|
restart files <restart>`. Ditto for the 4 NPT and NPH rigid styles,
|
||||||
:doc:`read_restart <read_restart>` command for info on how to re-specify
|
and the state of the Nose/Hoover barostat. See the :doc:`read_restart
|
||||||
a fix in an input script that reads a restart file, so that the
|
<read_restart>` command for info on how to re-specify a fix in an
|
||||||
operation of the fix continues in an uninterrupted fashion.
|
input script that reads a restart file, so that the operation of the
|
||||||
|
fix continues in an uninterrupted fashion.
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by the 6
|
|
||||||
NVT, NPT, NPH rigid styles to add the energy change induced by the
|
|
||||||
thermostatting to the system's potential energy as part of
|
|
||||||
:doc:`thermodynamic output <thermo_style>`.
|
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
|
||||||
fix to add the contribution due to keeping the objects rigid to the
|
|
||||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
|
||||||
The default is *virial yes*
|
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||||
supported by the 4 NPT and NPH rigid styles to change the computes
|
supported by the 4 NPT and NPH rigid styles to change the computes
|
||||||
@ -783,6 +775,12 @@ all rigid styles to set whether per-body forces and torques are
|
|||||||
computed early or late in a timestep, i.e. at the post-force stage or
|
computed early or late in a timestep, i.e. at the post-force stage or
|
||||||
at the final-integrate stage or the timestep, respectively.
|
at the final-integrate stage or the timestep, respectively.
|
||||||
|
|
||||||
|
The cumulative energy change in the system imposed by the 6 NVT, NPT,
|
||||||
|
NPH rigid fixes, via either thermostatting and/or barostatting, is
|
||||||
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
The 2 NVE rigid fixes compute a global scalar which can be accessed by
|
The 2 NVE rigid fixes compute a global scalar which can be accessed by
|
||||||
various :doc:`output commands <Howto_output>`. The scalar value
|
various :doc:`output commands <Howto_output>`. The scalar value
|
||||||
calculated by these fixes is "intensive". The scalar is the current
|
calculated by these fixes is "intensive". The scalar is the current
|
||||||
@ -798,13 +796,22 @@ are removed from this calculation, but only for the *rigid* and
|
|||||||
|
|
||||||
The 6 NVT, NPT, NPH rigid fixes compute a global scalar which can be
|
The 6 NVT, NPT, NPH rigid fixes compute a global scalar which can be
|
||||||
accessed by various :doc:`output commands <Howto_output>`. The scalar
|
accessed by various :doc:`output commands <Howto_output>`. The scalar
|
||||||
value calculated by these fixes is "extensive". The scalar is the
|
is the same cumulative energy change due to these fixes described
|
||||||
cumulative energy change due to the thermostatting and barostatting
|
above. The scalar value calculated by this fix is "extensive".
|
||||||
the fix performs.
|
|
||||||
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
|
these fixes to add the contribution due to the added forces on atoms
|
||||||
|
to both the global pressure and per-atom stress of the system via the
|
||||||
|
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||||
|
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 (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
|
global array of values which can be accessed by various :doc:`output
|
||||||
defined by the *rigid/small* styles can be accessed via the :doc:`compute rigid/local <compute_rigid_local>` command.
|
commands <Howto_output>`. Similar information about the bodies
|
||||||
|
defined by the *rigid/small* styles can be accessed via the
|
||||||
|
:doc:`compute rigid/local <compute_rigid_local>` command.
|
||||||
|
|
||||||
The number of rows in the array is equal to the number of rigid
|
The number of rows in the array is equal to the number of rigid
|
||||||
bodies. The number of columns is 15. Thus for each rigid body, 15
|
bodies. The number of columns is 15. Thus for each rigid body, 15
|
||||||
|
|||||||
@ -191,22 +191,29 @@ LAMMPS closely follows (:ref:`Andersen (1983) <Andersen3>`).
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
No information about these fixes is written to :doc:`binary restart
|
||||||
fix to add the contribution due to keeping the constraints to the
|
files <restart>`.
|
||||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
|
||||||
The default is *virial yes*
|
|
||||||
|
|
||||||
No information about these fixes is written to :doc:`binary restart files <restart>`. None of the :doc:`fix_modify <fix_modify>` options
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
are relevant to these fixes. No global or per-atom quantities are
|
these fixes to add the contribution due to the added forces on atoms
|
||||||
stored by these fixes for access by various :doc:`output commands <Howto_output>`. No parameter of these fixes can be used
|
to both the global pressure and per-atom stress of the system via the
|
||||||
with the *start/stop* keywords of the :doc:`run <run>` command. These
|
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||||
fixes are not invoked during :doc:`energy minimization <minimize>`.
|
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>`.
|
||||||
|
|
||||||
|
No global or per-atom quantities are stored by these fixes for access
|
||||||
|
by various :doc:`output commands <Howto_output>`. No parameter of
|
||||||
|
these fixes can be used with the *start/stop* keywords of the
|
||||||
|
:doc:`run <run>` command. These fixes are not invoked during
|
||||||
|
:doc:`energy minimization <minimize>`.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
These fixes are part of the RIGID package. They are only enabled if
|
These fixes are part of the RIGID package. They are only enabled if
|
||||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
For computational efficiency, there can only be one shake or rattle
|
For computational efficiency, there can only be one shake or rattle
|
||||||
fix defined in a simulation.
|
fix defined in a simulation.
|
||||||
|
|||||||
@ -48,10 +48,12 @@ Description
|
|||||||
"""""""""""
|
"""""""""""
|
||||||
|
|
||||||
This fix implements several options of steered MD (SMD) as reviewed in
|
This fix implements several options of steered MD (SMD) as reviewed in
|
||||||
:ref:`(Izrailev) <Izrailev>`, which allows to induce conformational changes
|
:ref:`(Izrailev) <Izrailev>`, which allows to induce conformational
|
||||||
in systems and to compute the potential of mean force (PMF) along the
|
changes in systems and to compute the potential of mean force (PMF)
|
||||||
assumed reaction coordinate :ref:`(Park) <Park>` based on Jarzynski's
|
along the assumed reaction coordinate :ref:`(Park) <Park>` based on
|
||||||
equality :ref:`(Jarzynski) <Jarzynski>`. This fix borrows a lot from :doc:`fix spring <fix_spring>` and :doc:`fix setforce <fix_setforce>`.
|
Jarzynski's equality :ref:`(Jarzynski) <Jarzynski>`. This fix borrows
|
||||||
|
a lot from :doc:`fix spring <fix_spring>` and :doc:`fix setforce
|
||||||
|
<fix_setforce>`.
|
||||||
|
|
||||||
You can apply a moving spring force to a group of atoms (\ *tether*
|
You can apply a moving spring force to a group of atoms (\ *tether*
|
||||||
style) or between two groups of atoms (\ *couple* style). The spring
|
style) or between two groups of atoms (\ *couple* style). The spring
|
||||||
@ -108,30 +110,36 @@ See the :doc:`read_restart <read_restart>` command for info on how to
|
|||||||
re-specify a fix in an input script that reads a restart file, so that
|
re-specify a fix in an input script that reads a restart file, so that
|
||||||
the operation of the fix continues in an uninterrupted fashion.
|
the operation of the fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
fix to add the contribution due to the added forces on atoms to the
|
this fix to add the contribution due to the added forces on atoms to
|
||||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
both the global pressure and per-atom stress of the system via the
|
||||||
The default is *virial no*
|
:doc:`compute pressure <compute_pressure>` and :doc:`compute
|
||||||
|
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 no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
this fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||||
integrator the fix is adding its forces. Default is the outermost level.
|
<run_style>` integrator the fix is adding its forces. Default is the
|
||||||
|
outermost level.
|
||||||
|
|
||||||
This fix computes a vector list of 7 quantities, which can be accessed
|
This fix computes a vector list of 7 quantities, which can be accessed
|
||||||
by various :doc:`output commands <Howto_output>`. The quantities in the
|
by various :doc:`output commands <Howto_output>`. The quantities in
|
||||||
vector are in this order: the x-, y-, and z-component of the pulling
|
the vector are in this order: the x-, y-, and z-component of the
|
||||||
force, the total force in direction of the pull, the equilibrium
|
pulling force, the total force in direction of the pull, the
|
||||||
distance of the spring, the distance between the two reference points,
|
equilibrium distance of the spring, the distance between the two
|
||||||
and finally the accumulated PMF (the sum of pulling forces times
|
reference points, and finally the accumulated PMF (the sum of pulling
|
||||||
displacement).
|
forces times displacement).
|
||||||
|
|
||||||
The force is the total force on the group of atoms by the spring. In
|
The force is the total force on the group of atoms by the spring. In
|
||||||
the case of the *couple* style, it is the force on the fix group
|
the case of the *couple* style, it is the force on the fix group
|
||||||
(group-ID) or the negative of the force on the second group (group-ID2).
|
(group-ID) or the negative of the force on the second group
|
||||||
The vector values calculated by this fix are "extensive".
|
(group-ID2). The vector values calculated by this fix are
|
||||||
|
"extensive".
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
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
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -100,11 +100,14 @@ last example holds the ion a distance 5 away from the pore axis
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the energy stored in the spring to the system's potential
|
this fix to add the energy stored in the spring to the global
|
||||||
energy as part of :doc:`thermodynamic output <thermo_style>`.
|
potential energy of the system as part of :doc:`thermodynamic output
|
||||||
|
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||||
|
energy no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||||
|
|||||||
@ -62,9 +62,11 @@ will define the same number of chunks. The restart data is only applied
|
|||||||
when the number of chunks matches. Otherwise the center of mass
|
when the number of chunks matches. Otherwise the center of mass
|
||||||
coordinates are recomputed.
|
coordinates are recomputed.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the energy stored in all the springs to the system's potential
|
this fix to add the energy stored in all the springs to the global
|
||||||
energy as part of :doc:`thermodynamic output <thermo_style>`.
|
potential energy of the system as part of :doc:`thermodynamic output
|
||||||
|
<thermo_style>`. The default setting for this fix is :doc:`fix_modify
|
||||||
|
energy no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||||
|
|||||||
@ -44,15 +44,18 @@ plane, respectively.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the original coordinates of tethered atoms to :doc:`binary restart files <restart>`, so that the spring effect will be the
|
This fix writes the original coordinates of tethered atoms to
|
||||||
same in a restarted simulation. See the
|
:doc:`binary restart files <restart>`, so that the spring effect will
|
||||||
:doc:`read_restart <read_restart>` command for info on how to re-specify
|
be the same in a restarted simulation. See the :doc:`read_restart
|
||||||
a fix in an input script that reads a restart file, so that the
|
<read_restart>` command for info on how to re-specify a fix in an
|
||||||
operation of the fix continues in an uninterrupted fashion.
|
input script that reads a restart file, so that the operation of the
|
||||||
|
fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the energy stored in the per-atom springs to the system's
|
this fix to add the energy stored in the per-atom springs to the
|
||||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
global potential energy of the system as part of :doc:`thermodynamic
|
||||||
|
output <thermo_style>`. The default setting for this fix is
|
||||||
|
:doc:`fix_modify energy no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
||||||
this fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
this fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||||
|
|||||||
@ -132,14 +132,15 @@ you have defined to this fix which will be used in its thermostatting
|
|||||||
procedure, as described above. For consistency, the group used by
|
procedure, as described above. For consistency, the group used by
|
||||||
this fix and by the compute should be the same.
|
this fix and by the compute should be the same.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change implied by a velocity rescaling to the
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
energy change due to this fix. The scalar value calculated by this
|
cumulative energy change due to this fix described in the previous
|
||||||
fix is "extensive".
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
This fix can ramp its target temperature over multiple runs, using the
|
This fix can ramp its target temperature over multiple runs, using the
|
||||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||||
|
|||||||
@ -142,32 +142,36 @@ ensemble.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
These fixes write the cumulative global energy change and the
|
These fixes write the cumulative global energy change and the random
|
||||||
random number generator states to :doc:`binary restart files <restart>`.
|
number generator states to :doc:`binary restart files <restart>`. See
|
||||||
See the :doc:`read_restart <read_restart>` command for info on how to
|
the :doc:`read_restart <read_restart>` command for info on how to
|
||||||
re-specify a fix in an input script that reads a restart file,
|
re-specify a fix in an input script that reads a restart file, so that
|
||||||
so that the selected fix continues in an uninterrupted fashion. The
|
the selected fix continues in an uninterrupted fashion. The random
|
||||||
random number generator state can only be restored when the number
|
number generator state can only be restored when the number of
|
||||||
of processors remains unchanged from what is recorded in the restart file.
|
processors remains unchanged from what is recorded in the restart
|
||||||
|
file.
|
||||||
No information about these fixes are written to :doc:`binary restart files <restart>`.
|
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by these
|
The :doc:`fix_modify <fix_modify>` *temp* option is supported by these
|
||||||
fixes. You can use it to assign a temperature :doc:`compute <compute>`
|
fixes. You can use it to assign a temperature :doc:`compute
|
||||||
you have defined to these fixes which will be used in its thermostatting
|
<compute>` you have defined to these fixes which will be used in its
|
||||||
procedure, as described above. For consistency, the group used by
|
thermostatting procedure, as described above. For consistency, the
|
||||||
these fixes and by the compute should be the same.
|
group used by these fixes and by the compute should be the same.
|
||||||
|
|
||||||
These fixes can ramp its target temperature over multiple runs, using
|
The cumulative energy change in the system imposed by these fixes is
|
||||||
the *start* and *stop* keywords of the :doc:`run <run>` command. See the
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
:doc:`run <run>` command for details of how to do this.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
These fixes are not invoked during :doc:`energy minimization <minimize>`.
|
|
||||||
|
|
||||||
These fixes compute a global scalar which can be accessed by various
|
These fixes compute a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
energy change due to the fix. The scalar value calculated by this fix
|
cumulative energy change due to this fix described in the previous
|
||||||
is "extensive".
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
|
These fixes can ramp their target 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.
|
||||||
|
|
||||||
|
These fixes are not invoked during :doc:`energy minimization <minimize>`.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -100,13 +100,13 @@ ID of the new compute is the fix-ID + underscore + "temp", and the
|
|||||||
group for the new compute is the same as the fix group.
|
group for the new compute is the same as the fix group.
|
||||||
|
|
||||||
Note that this is NOT the compute used by thermodynamic output (see
|
Note that this is NOT the compute used by thermodynamic output (see
|
||||||
the :doc:`thermo_style <thermo_style>` command) with ID = *thermo_temp*.
|
the :doc:`thermo_style <thermo_style>` command) with ID =
|
||||||
This means you can change the attributes of this fix's temperature
|
*thermo_temp*. This means you can change the attributes of this fix's
|
||||||
(e.g. its degrees-of-freedom) via the
|
temperature (e.g. its degrees-of-freedom) via the :doc:`compute_modify
|
||||||
:doc:`compute_modify <compute_modify>` command or print this temperature
|
<compute_modify>` command or print this temperature during
|
||||||
during thermodynamic output via the :doc:`thermo_style custom <thermo_style>` command using the appropriate compute-ID.
|
thermodynamic output via the :doc:`thermo_style custom <thermo_style>`
|
||||||
It also means that changing attributes of *thermo_temp* will have no
|
command using the appropriate compute-ID. It also means that changing
|
||||||
effect on this fix.
|
attributes of *thermo_temp* will have no effect on this fix.
|
||||||
|
|
||||||
Like other fixes that perform thermostatting, this fix can be used
|
Like other fixes that perform thermostatting, this fix can be used
|
||||||
with :doc:`compute commands <compute>` that calculate a temperature
|
with :doc:`compute commands <compute>` that calculate a temperature
|
||||||
@ -114,13 +114,14 @@ after removing a "bias" from the atom velocities. E.g. removing the
|
|||||||
center-of-mass velocity from a group of atoms or only calculating
|
center-of-mass velocity from a group of atoms or only calculating
|
||||||
temperature on the x-component of velocity or only calculating
|
temperature on the x-component of velocity or only calculating
|
||||||
temperature for atoms in a geometric region. This is not done by
|
temperature for atoms in a geometric region. This is not done by
|
||||||
default, but only if the :doc:`fix_modify <fix_modify>` command is used
|
default, but only if the :doc:`fix_modify <fix_modify>` command is
|
||||||
to assign a temperature compute to this fix that includes such a bias
|
used to assign a temperature compute to this fix that includes such a
|
||||||
term. See the doc pages for individual :doc:`compute commands <compute>` to determine which ones include a bias. In
|
bias term. See the doc pages for individual :doc:`compute commands
|
||||||
this case, the thermostat works in the following manner: the current
|
<compute>` to determine which ones include a bias. In this case, the
|
||||||
temperature is calculated taking the bias into account, bias is
|
thermostat works in the following manner: the current temperature is
|
||||||
removed from each atom, thermostatting is performed on the remaining
|
calculated taking the bias into account, bias is removed from each
|
||||||
thermal degrees of freedom, and the bias is added back in.
|
atom, thermostatting is performed on the remaining thermal degrees of
|
||||||
|
freedom, and the bias is added back in.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -139,15 +140,15 @@ you have defined to this fix which will be used in its thermostatting
|
|||||||
procedure, as described above. For consistency, the group used by
|
procedure, as described above. For consistency, the group used by
|
||||||
this fix and by the compute should be the same.
|
this fix and by the compute should be the same.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change implied by a velocity rescaling to the
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
system's potential energy as part of :doc:`thermodynamic output
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
<thermo_style>`.
|
doc page for details.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
energy change due to this fix. The scalar value calculated by this
|
cumulative energy change due to this fix described in the previous
|
||||||
fix is "extensive".
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
This fix can ramp its target temperature over multiple runs, using the
|
This fix can ramp its target temperature over multiple runs, using the
|
||||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||||
|
|||||||
@ -38,7 +38,8 @@ particles.
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *temp* option is supported by this
|
||||||
fix. You can use it to assign a temperature :doc:`compute <compute>`
|
fix. You can use it to assign a temperature :doc:`compute <compute>`
|
||||||
@ -46,14 +47,15 @@ you have defined to this fix which will be used in its thermostatting
|
|||||||
procedure, as described above. For consistency, the group used by
|
procedure, as described above. For consistency, the group used by
|
||||||
this fix and by the compute should be the same.
|
this fix and by the compute should be the same.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The cumulative energy change in the system imposed by this fix is
|
||||||
fix to add the energy change implied by a velocity rescaling to the
|
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||||
|
doc page for details.
|
||||||
|
|
||||||
This fix computes a global scalar which can be accessed by various
|
This fix computes a global scalar which can be accessed by various
|
||||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
energy change due to this fix. The scalar value calculated by this
|
cumulative energy change due to this fix described in the previous
|
||||||
fix is "extensive".
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
|
|
||||||
This fix can ramp its target temperature over multiple runs, using the
|
This fix can ramp its target temperature over multiple runs, using the
|
||||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||||
|
|||||||
@ -218,10 +218,10 @@ a fix in an input script that reads a restart file, so that the
|
|||||||
operation of the fix continues in an uninterrupted fashion.
|
operation of the fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||||
supported by these fixes. You can use them to assign a
|
supported by these fixes. You can use them to assign a :doc:`compute
|
||||||
:doc:`compute <compute>` you have defined to this fix which will be used
|
<compute>` you have defined to this fix which will be used in its
|
||||||
in its thermostatting or barostatting procedure, as described above.
|
thermostatting or barostatting procedure, as described above. If you
|
||||||
If you do this, note that the kinetic energy derived from the compute
|
do this, note that the kinetic energy derived from the compute
|
||||||
temperature should be consistent with the virial term computed using
|
temperature should be consistent with the virial term computed using
|
||||||
all atoms for the pressure. LAMMPS will warn you if you choose to
|
all atoms for the pressure. LAMMPS will warn you if you choose to
|
||||||
compute temperature on a subset of atoms.
|
compute temperature on a subset of atoms.
|
||||||
@ -229,42 +229,49 @@ compute temperature on a subset of atoms.
|
|||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
If both the *temp* and *press* keywords are used in a single
|
If both the *temp* and *press* keywords are used in a single
|
||||||
thermo_modify command (or in two separate commands), then the order in
|
thermo_modify command (or in two separate commands), then the order
|
||||||
which the keywords are specified is important. Note that a :doc:`pressure compute <compute_pressure>` defines its own temperature compute as
|
in which the keywords are specified is important. Note that a
|
||||||
an argument when it is specified. The *temp* keyword will override
|
:doc:`pressure compute <compute_pressure>` defines its own
|
||||||
this (for the pressure compute being used by fix npt), but only if the
|
temperature compute as an argument when it is specified. The
|
||||||
*temp* keyword comes after the *press* keyword. If the *temp* keyword
|
*temp* keyword will override this (for the pressure compute being
|
||||||
comes before the *press* keyword, then the new pressure compute
|
used by fix npt), but only if the *temp* keyword comes after the
|
||||||
specified by the *press* keyword will be unaffected by the *temp*
|
*press* keyword. If the *temp* keyword comes before the *press*
|
||||||
setting.
|
keyword, then the new pressure compute specified by the *press*
|
||||||
|
keyword will be unaffected by the *temp* setting.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by these
|
The cumulative energy change in the system imposed by these fixes, due
|
||||||
fixes to add the energy change induced by Nose/Hoover thermostatting
|
to thermostatting and/or barostatting, are included in the
|
||||||
and barostatting to the system's potential energy as part of
|
:doc:`thermodynamic output <thermo_style>` keywords *ecouple* and
|
||||||
:doc:`thermodynamic output <thermo_style>`.
|
*econserve*. See the :doc:`thermo_style <thermo_style>` doc page for
|
||||||
|
details.
|
||||||
|
|
||||||
These fixes compute a global scalar and a global vector of quantities,
|
These fixes compute a global scalar which can be accessed by various
|
||||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
:doc:`output commands <Howto_output>`. The scalar is the same
|
||||||
The scalar value calculated by these fixes is "extensive"; the vector
|
cumulative energy change due to this fix described in the previous
|
||||||
values are "intensive".
|
paragraph. The scalar value calculated by this fix is "extensive".
|
||||||
The scalar is the cumulative energy change due to the fix.
|
|
||||||
The vector stores the three temperatures :math:`T_\mathrm{M}`, :math:`T_\mathrm{R}` and :math:`T_\mathrm{D}`.
|
These fixes also compute a global vector of quantities, which can be
|
||||||
|
accessed by various :doc:`output commands <Howto_output>`. The vector
|
||||||
|
values are "intensive". The vector stores the three temperatures
|
||||||
|
:math:`T_\mathrm{M}`, :math:`T_\mathrm{R}` and :math:`T_\mathrm{D}`.
|
||||||
|
|
||||||
These fixes can ramp their external temperature and pressure over
|
These fixes can ramp their external temperature and pressure over
|
||||||
multiple runs, using the *start* and *stop* keywords of the
|
multiple runs, using the *start* and *stop* keywords of the :doc:`run
|
||||||
:doc:`run <run>` command. See the :doc:`run <run>` command for details of
|
<run>` command. See the :doc:`run <run>` command for details of how
|
||||||
how to do this.
|
to do this.
|
||||||
|
|
||||||
These fixes are not invoked during :doc:`energy minimization <minimize>`.
|
These fixes are not invoked during :doc:`energy minimization
|
||||||
|
<minimize>`.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
These fixes are only available when LAMMPS was built with the USER-DRUDE package.
|
These fixes are only available when LAMMPS was built with the
|
||||||
These fixes cannot be used with dynamic groups as defined by the :doc:`group <group>` command.
|
USER-DRUDE package. These fixes cannot be used with dynamic groups as
|
||||||
These fixes cannot be used in 2D simulations.
|
defined by the :doc:`group <group>` command. These fixes cannot be
|
||||||
|
used in 2D simulations.
|
||||||
|
|
||||||
*X*\ , *y*\ , *z* cannot be barostatted if the associated dimension is not
|
*X*\ , *y*\ , *z* cannot be barostatted if the associated dimension is not
|
||||||
periodic. *Xy*\ , *xz*\ , and *yz* can only be barostatted if the
|
periodic. *Xy*\ , *xz*\ , and *yz* can only be barostatted if the
|
||||||
|
|||||||
@ -89,13 +89,14 @@ time:
|
|||||||
|
|
||||||
\lambda(\tau) = \tau
|
\lambda(\tau) = \tau
|
||||||
|
|
||||||
where :math:`\tau` is the scaled time variable *t/t_s*. The option *2* performs
|
where :math:`\tau` is the scaled time variable *t/t_s*. The option *2*
|
||||||
the lambda switching at a rate defined by the following switching
|
performs the lambda switching at a rate defined by the following
|
||||||
function
|
switching function
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
\lambda(\tau) = \tau^5 \left( 70 \tau^4 - 315 \tau^3 + 540 \tau^2 - 420 \tau + 126 \right)
|
\lambda(\tau) = \tau^5 \left( 70 \tau^4 - 315 \tau^3 + 540 \tau^2 -
|
||||||
|
420 \tau + 126 \right)
|
||||||
|
|
||||||
This function has zero slope as lambda approaches its extreme values
|
This function has zero slope as lambda approaches its extreme values
|
||||||
(0 and 1), according to :ref:`de Koning <deKoning96>` this results in
|
(0 and 1), according to :ref:`de Koning <deKoning96>` this results in
|
||||||
@ -106,16 +107,19 @@ increase in computational resources cost.
|
|||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
As described in :ref:`Freitas <Freitas1>`, it is important to keep the
|
As described in :ref:`Freitas <Freitas1>`, it is important to keep
|
||||||
center-of-mass fixed during the thermodynamic integration. A nonzero
|
the center-of-mass fixed during the thermodynamic integration. A
|
||||||
total velocity will result in divergences during the integration due
|
nonzero total velocity will result in divergences during the
|
||||||
to the fact that the atoms are 'attached' to their equilibrium
|
integration due to the fact that the atoms are 'attached' to their
|
||||||
positions by the Einstein crystal. Check the option *zero* of :doc:`fix langevin <fix_langevin>` and :doc:`velocity <velocity>`. The use of
|
equilibrium positions by the Einstein crystal. Check the option
|
||||||
the Nose-Hoover thermostat (:doc:`fix nvt <fix_nh>`) is *NOT*
|
*zero* of :doc:`fix langevin <fix_langevin>` and :doc:`velocity
|
||||||
recommended due to its well documented issues with the canonical
|
<velocity>`. The use of the Nose-Hoover thermostat (:doc:`fix nvt
|
||||||
sampling of harmonic degrees of freedom (notice that the *chain*
|
<fix_nh>`) is *NOT* recommended due to its well documented issues
|
||||||
option will *NOT* solve this problem). The Langevin thermostat (:doc:`fix langevin <fix_langevin>`) correctly thermostats the system and we
|
with the canonical sampling of harmonic degrees of freedom (notice
|
||||||
advise its usage with ti/spring command.
|
that the *chain* option will *NOT* solve this problem). The
|
||||||
|
Langevin thermostat (:doc:`fix langevin <fix_langevin>`) correctly
|
||||||
|
thermostats the system and we advise its usage with ti/spring
|
||||||
|
command.
|
||||||
|
|
||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
@ -127,18 +131,20 @@ be the same in a restarted simulation. See the :doc:`read restart
|
|||||||
input script that reads a restart file, so that the operation of the
|
input script that reads a restart file, so that the operation of the
|
||||||
fix continues in an uninterrupted fashion.
|
fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
The :doc:`fix modify <fix_modify>` *energy* option is supported by
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
this fix to add the energy stored in the per-atom springs to the
|
this fix to add the energy stored in the per-atom springs to the
|
||||||
system's potential energy as part of :doc:`thermodynamic output
|
global potential energy of the system as part of :doc:`thermodynamic
|
||||||
<thermo_style>`.
|
output <thermo_style>`. The default setting for this fix is
|
||||||
|
:doc:`fix_modify energy no <fix_modify>`.
|
||||||
|
|
||||||
This fix computes a global scalar and a global vector quantities which
|
This fix computes a global scalar and a global vector quantities which
|
||||||
can be accessed by various :doc:`output commands <Howto_output>`. The
|
can be accessed by various :doc:`output commands <Howto_output>`. The
|
||||||
scalar is an energy which is the sum of the spring energy for each
|
scalar is an energy which is the sum of the spring energy for each
|
||||||
atom, where the per-atom energy is 0.5 \* k \* r\^2. The vector stores
|
atom, where the per-atom energy is :math:`0.5 \cdot k \cdot r^2`.
|
||||||
2 values. The first value is the coupling parameter lambda. The
|
The vector stores 2 values. The first value is the coupling parameter lambda.
|
||||||
second value is the derivative of lambda with respect to the integer
|
The second value is the derivative of lambda with respect to the integer
|
||||||
timestep *s*, i.e. d lambda / ds. In order to obtain d lambda / dt,
|
timestep *s*, i.e. :math:`\frac{d \lambda}{d s}`. In order to obtain
|
||||||
|
:math:`\frac{d \lambda}{d t}`,
|
||||||
where t is simulation time, this 2nd value needs to be divided by the
|
where t is simulation time, this 2nd value needs to be divided by the
|
||||||
timestep size (e.g. 0.5 fs). The scalar and vector values calculated
|
timestep size (e.g. 0.5 fs). The scalar and vector values calculated
|
||||||
by this fix are "extensive".
|
by this fix are "extensive".
|
||||||
|
|||||||
@ -331,23 +331,33 @@ perturbation on the particles:
|
|||||||
Restart, fix_modify, output, run start/stop, minimize info
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files
|
||||||
|
<restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the energy of interaction between atoms and each wall to
|
this fix to add the energy of interaction between atoms and all the
|
||||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
specified walls to the global potential energy of the system as part
|
||||||
|
of :doc:`thermodynamic output <thermo_style>`. The default setting
|
||||||
|
for this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
fix to add the contribution due to the interaction between
|
this fix to add the contribution due to the interaction between atoms
|
||||||
atoms and each wall to the system's virial as part of :doc:`thermodynamic output <thermo_style>`. The default is *virial no*
|
and all the specified walls to both the global pressure and per-atom
|
||||||
|
stress of the system via the :doc:`compute pressure
|
||||||
|
<compute_pressure>` and :doc:`compute 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 no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||||
integrator the fix is adding its forces. Default is the outermost level.
|
<run_style>` integrator the fix is adding its forces. Default is the
|
||||||
|
outermost level.
|
||||||
|
|
||||||
This fix computes a global scalar energy and a global vector of
|
This fix computes a global scalar energy and a global vector of
|
||||||
forces, which can be accessed by various :doc:`output commands <Howto_output>`. Note that the scalar energy is the sum
|
forces, which can be accessed by various :doc:`output commands
|
||||||
of interactions with all defined walls. If you want the energy on a
|
<Howto_output>`. Note that the scalar energy is the sum of
|
||||||
|
interactions with all defined walls. If you want the energy on a
|
||||||
per-wall basis, you need to use multiple fix wall commands. The
|
per-wall basis, you need to use multiple fix wall commands. The
|
||||||
length of the vector is equal to the number of walls defined by the
|
length of the vector is equal to the number of walls defined by the
|
||||||
fix. Each vector value is the normal force on a specific wall. Note
|
fix. Each vector value is the normal force on a specific wall. Note
|
||||||
|
|||||||
@ -56,20 +56,27 @@ Description
|
|||||||
"""""""""""
|
"""""""""""
|
||||||
|
|
||||||
Fix *wall/ees* bounds the simulation domain on one or more of its
|
Fix *wall/ees* bounds the simulation domain on one or more of its
|
||||||
faces with a flat wall that interacts with the ellipsoidal atoms in the
|
faces with a flat wall that interacts with the ellipsoidal atoms in
|
||||||
group by generating a force on the atom in a direction perpendicular to
|
the group by generating a force on the atom in a direction
|
||||||
the wall and a torque parallel with the wall. The energy of
|
perpendicular to the wall and a torque parallel with the wall. The
|
||||||
wall-particle interactions E is given by:
|
energy of wall-particle interactions E is given by:
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
E = \epsilon \left[ \frac{2 \sigma_{LJ}^{12} \left(7 r^5+14 r^3 \sigma_{n}^2+3 r \sigma_{n}^4\right) }{945 \left(r^2-\sigma_{n}^2\right)^7} -\frac{ \sigma_{LJ}^6 \left(2 r \sigma_{n}^3+\sigma_{n}^2 \left(r^2-\sigma_{n}^2\right)\log{ \left[\frac{r-\sigma_{n}}{r+\sigma_{n}}\right]}\right) }{12 \sigma_{n}^5 \left(r^2-\sigma_{n}^2\right)} \right]\qquad \sigma_n < r < r_c
|
E = \epsilon \left[ \frac{2 \sigma_{LJ}^{12} \left(7 r^5+14 r^3
|
||||||
|
\sigma_{n}^2+3 r \sigma_{n}^4\right) }{945
|
||||||
|
\left(r^2-\sigma_{n}^2\right)^7} -\frac{ \sigma_{LJ}^6 \left(2 r
|
||||||
|
\sigma_{n}^3+\sigma_{n}^2 \left(r^2-\sigma_{n}^2\right)\log{
|
||||||
|
\left[\frac{r-\sigma_{n}}{r+\sigma_{n}}\right]}\right) }{12
|
||||||
|
\sigma_{n}^5 \left(r^2-\sigma_{n}^2\right)} \right]\qquad \sigma_n
|
||||||
|
< r < r_c
|
||||||
|
|
||||||
Introduced by Babadi and Ejtehadi in :ref:`(Babadi) <BabadiEjtehadi>`. Here,
|
Introduced by Babadi and Ejtehadi in :ref:`(Babadi)
|
||||||
*r* is the distance from the particle to the wall at position *coord*\ ,
|
<BabadiEjtehadi>`. Here, *r* is the distance from the particle to the
|
||||||
and Rc is the *cutoff* distance at which the particle and wall no
|
wall at position *coord*\ , and Rc is the *cutoff* distance at which
|
||||||
longer interact. Also, :math:`\sigma_n` is the distance between center of
|
the particle and wall no longer interact. Also, :math:`\sigma_n` is
|
||||||
ellipsoid and the nearest point of its surface to the wall as shown below.
|
the distance between center of ellipsoid and the nearest point of its
|
||||||
|
surface to the wall as shown below.
|
||||||
|
|
||||||
.. image:: JPG/fix_wall_ees_image.jpg
|
.. image:: JPG/fix_wall_ees_image.jpg
|
||||||
:align: center
|
:align: center
|
||||||
@ -85,13 +92,15 @@ pre-factor is
|
|||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
8 \pi^2 \quad \rho_{wall} \quad \rho_{ellipsoid} \quad \epsilon \quad \sigma_a \quad \sigma_b \quad \sigma_c
|
8 \pi^2 \quad \rho_{wall} \quad \rho_{ellipsoid} \quad \epsilon
|
||||||
|
\quad \sigma_a \quad \sigma_b \quad \sigma_c
|
||||||
|
|
||||||
where :math:`\epsilon` is the LJ energy parameter for the constituent LJ
|
where :math:`\epsilon` is the LJ energy parameter for the constituent
|
||||||
particles and :math:`\sigma_a`, :math:`\sigma_b`, and :math:`\sigma_c`
|
LJ particles and :math:`\sigma_a`, :math:`\sigma_b`, and
|
||||||
are the radii of the ellipsoidal particles. :math:`\rho_{wall}` and
|
:math:`\sigma_c` are the radii of the ellipsoidal
|
||||||
:math:`\rho_{ellipsoid}` are the number density of the constituent
|
particles. :math:`\rho_{wall}` and :math:`\rho_{ellipsoid}` are the
|
||||||
particles, in the wall and ellipsoid respectively, in units of 1/volume.
|
number density of the constituent particles, in the wall and ellipsoid
|
||||||
|
respectively, in units of 1/volume.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
@ -106,16 +115,56 @@ Fix *wall/region/ees* treats the surface of the geometric region defined
|
|||||||
by the *region-ID* as a bounding wall which interacts with nearby
|
by the *region-ID* as a bounding wall which interacts with nearby
|
||||||
ellipsoidal particles according to the EES potential introduced above.
|
ellipsoidal particles according to the EES potential introduced above.
|
||||||
|
|
||||||
Other details of this command are the same as for the :doc:`fix wall/region <fix_wall_region>` command. One may also find an example
|
Other details of this command are the same as for the :doc:`fix
|
||||||
|
wall/region <fix_wall_region>` command. One may also find an example
|
||||||
of using this fix in the examples/USER/misc/ees/ directory.
|
of using this fix in the examples/USER/misc/ees/ directory.
|
||||||
|
|
||||||
|
----------
|
||||||
|
|
||||||
|
Restart, fix_modify, output, run start/stop, minimize info
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
No information about these fixes are written to :doc:`binary restart
|
||||||
|
files <restart>`.
|
||||||
|
|
||||||
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
|
these fixes to add the energy of interaction between atoms and all the
|
||||||
|
specified walls or region wall to the global potential energy of the
|
||||||
|
system as part of :doc:`thermodynamic output <thermo_style>`. The
|
||||||
|
default settings for these fixes are :doc:`fix_modify energy no
|
||||||
|
<fix_modify>`.
|
||||||
|
|
||||||
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by
|
||||||
|
these fixes. This allows to set at which level of the :doc:`r-RESPA
|
||||||
|
<run_style>` integrator the fix is adding its forces. Default is the
|
||||||
|
outermost level.
|
||||||
|
|
||||||
|
These fixes computes a global scalar and a global vector of forces,
|
||||||
|
which can be accessed by various :doc:`output commands
|
||||||
|
<Howto_output>`. See the :doc:`fix wall <fix_wall>` command for a
|
||||||
|
description of the scalar and vector.
|
||||||
|
|
||||||
|
No parameter of these fixes can be used with the *start/stop* keywords of
|
||||||
|
the :doc:`run <run>` command.
|
||||||
|
|
||||||
|
The forces due to these fixes are imposed during an energy
|
||||||
|
minimization, invoked by the :doc:`minimize <minimize>` command.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
If you want the atom/wall interaction energy to be included in
|
||||||
|
the total potential energy of the system (the quantity being
|
||||||
|
minimized), you MUST enable the :doc:`fix_modify <fix_modify>` *energy*
|
||||||
|
option for this fix.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|
||||||
This fix is part of the USER-MISC package. It is only enabled if
|
These fixes are part of the USER-MISC package. They are only enabled
|
||||||
LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
|
if LAMMPS was built with that package. See the :doc:`Build package
|
||||||
|
<Build_package>` doc page for more info.
|
||||||
|
|
||||||
This fix requires that atoms be ellipsoids as defined by the
|
These fixes requires that atoms be ellipsoids as defined by the
|
||||||
:doc:`atom_style ellipsoid <atom_style>` command.
|
:doc:`atom_style ellipsoid <atom_style>` command.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
|
|||||||
@ -194,24 +194,32 @@ Restart, fix_modify, output, run start/stop, minimize info
|
|||||||
|
|
||||||
No information about this fix is written to :doc:`binary restart files <restart>`.
|
No information about this fix is written to :doc:`binary restart files <restart>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||||
fix to add the energy of interaction between atoms and the wall to the
|
this fix to add the energy of interaction between atoms and the region
|
||||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
wall to the global potential energy of the system as part of
|
||||||
|
:doc:`thermodynamic output <thermo_style>`. The default setting for
|
||||||
|
this fix is :doc:`fix_modify energy no <fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||||
fix to add the contribution due to the interaction between
|
this fix to add the contribution due to the interaction between atoms
|
||||||
atoms and each wall to the system's virial as part of :doc:`thermodynamic output <thermo_style>`. The default is *virial no*
|
and the region wall to both the global pressure and per-atom stress of
|
||||||
|
the system via the :doc:`compute pressure <compute_pressure>` and
|
||||||
|
:doc:`compute 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 no
|
||||||
|
<fix_modify>`.
|
||||||
|
|
||||||
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
The :doc:`fix_modify <fix_modify>` *respa* option is supported by this
|
||||||
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
fix. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||||
integrator the fix is adding its forces. Default is the outermost level.
|
integrator the fix is adding its forces. Default is the outermost level.
|
||||||
|
|
||||||
This fix computes a global scalar energy and a global 3-length vector
|
This fix computes a global scalar energy and a global 3-length vector
|
||||||
of forces, which can be accessed by various :doc:`output commands <Howto_output>`. The scalar energy is the sum of energy
|
of forces, which can be accessed by various :doc:`output commands
|
||||||
interactions for all particles interacting with the wall represented
|
<Howto_output>`. The scalar energy is the sum of energy interactions
|
||||||
by the region surface. The 3 vector quantities are the x,y,z
|
for all particles interacting with the wall represented by the region
|
||||||
components of the total force acting on the wall due to the particles.
|
surface. The 3 vector quantities are the x,y,z components of the
|
||||||
The scalar and vector values calculated by this fix are "extensive".
|
total force acting on the wall due to the particles. The scalar and
|
||||||
|
vector values calculated by this fix are "extensive".
|
||||||
|
|
||||||
No parameter of this fix can be used with the *start/stop* keywords of
|
No parameter of this fix can be used with the *start/stop* keywords of
|
||||||
the :doc:`run <run>` command.
|
the :doc:`run <run>` command.
|
||||||
@ -221,10 +229,10 @@ invoked by the :doc:`minimize <minimize>` command.
|
|||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
If you want the atom/wall interaction energy to be included in
|
If you want the atom/wall interaction energy to be included in the
|
||||||
the total potential energy of the system (the quantity being
|
total potential energy of the system (the quantity being
|
||||||
minimized), you MUST enable the :doc:`fix_modify <fix_modify>` *energy*
|
minimized), you MUST enable the :doc:`fix_modify <fix_modify>`
|
||||||
option for this fix.
|
*energy* option for this fix.
|
||||||
|
|
||||||
Restrictions
|
Restrictions
|
||||||
""""""""""""
|
""""""""""""
|
||||||
|
|||||||
@ -155,11 +155,11 @@ Restart, fix_modify, output, run start/stop, minimize info
|
|||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
This fix writes the state of the fix to :doc:`binary restart files
|
This fix writes the state of the fix to :doc:`binary restart files
|
||||||
<restart>`. This includes information about the random number generator
|
<restart>`. This includes information about the random number
|
||||||
seed, the next timestep for Widom insertions etc. See the
|
generator seed, the next timestep for Widom insertions etc. See the
|
||||||
:doc:`read_restart <read_restart>` command for info on how to re-specify
|
:doc:`read_restart <read_restart>` command for info on how to
|
||||||
a fix in an input script that reads a restart file, so that the
|
re-specify a fix in an input script that reads a restart file, so that
|
||||||
operation of the fix continues in an uninterrupted fashion.
|
the operation of the fix continues in an uninterrupted fashion.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
|
|||||||
@ -1286,7 +1286,7 @@ to cite the OpenKIM project :ref:`(Tadmor) <kim-mainpaper>`, KIM API
|
|||||||
in addition to the relevant scientific references for the IM.
|
in addition to the relevant scientific references for the IM.
|
||||||
The citation format for an IM is displayed on its page on
|
The citation format for an IM is displayed on its page on
|
||||||
`OpenKIM <https://openkim.org>`_ along with the corresponding BibTex file,
|
`OpenKIM <https://openkim.org>`_ along with the corresponding BibTex file,
|
||||||
and is automatically added to the LAMMPS *log.cite* file.
|
and is automatically added to the LAMMPS citation reminder.
|
||||||
|
|
||||||
Citing the IM software (KIM infrastructure and specific PM or SM codes)
|
Citing the IM software (KIM infrastructure and specific PM or SM codes)
|
||||||
used in the simulation gives credit to the researchers who developed them
|
used in the simulation gives credit to the researchers who developed them
|
||||||
|
|||||||
@ -11,10 +11,10 @@ Syntax
|
|||||||
thermo_modify keyword value ...
|
thermo_modify keyword value ...
|
||||||
|
|
||||||
* one or more keyword/value pairs may be listed
|
* one or more keyword/value pairs may be listed
|
||||||
|
* keyword = *lost* or *lost/bond* or *norm* or *flush* or *line* or *format* or *temp* or *press*
|
||||||
|
|
||||||
.. parsed-literal::
|
.. parsed-literal::
|
||||||
|
|
||||||
keyword = *lost* or *lost/bond* or *norm* or *flush* or *line* or *format* or *temp* or *press*\ :l
|
|
||||||
*lost* value = *error* or *warn* or *ignore*
|
*lost* value = *error* or *warn* or *ignore*
|
||||||
*lost/bond* value = *error* or *warn* or *ignore*
|
*lost/bond* value = *error* or *warn* or *ignore*
|
||||||
*norm* value = *yes* or *no*
|
*norm* value = *yes* or *no*
|
||||||
|
|||||||
@ -20,9 +20,10 @@ Syntax
|
|||||||
*custom* args = list of keywords
|
*custom* args = list of keywords
|
||||||
possible keywords = step, elapsed, elaplong, dt, time,
|
possible keywords = step, elapsed, elaplong, dt, time,
|
||||||
cpu, tpcpu, spcpu, cpuremain, part, timeremain,
|
cpu, tpcpu, spcpu, cpuremain, part, timeremain,
|
||||||
atoms, temp, press, pe, ke, etotal, enthalpy,
|
atoms, temp, press, pe, ke, etotal,
|
||||||
evdwl, ecoul, epair, ebond, eangle, edihed, eimp,
|
evdwl, ecoul, epair, ebond, eangle, edihed, eimp,
|
||||||
emol, elong, etail,
|
emol, elong, etail,
|
||||||
|
enthalpy, ecouple, econserve,
|
||||||
vol, density, lx, ly, lz, xlo, xhi, ylo, yhi, zlo, zhi,
|
vol, density, lx, ly, lz, xlo, xhi, ylo, yhi, zlo, zhi,
|
||||||
xy, xz, yz, xlat, ylat, zlat,
|
xy, xz, yz, xlat, ylat, zlat,
|
||||||
bonds, angles, dihedrals, impropers,
|
bonds, angles, dihedrals, impropers,
|
||||||
@ -49,7 +50,6 @@ Syntax
|
|||||||
pe = total potential energy
|
pe = total potential energy
|
||||||
ke = kinetic energy
|
ke = kinetic energy
|
||||||
etotal = total energy (pe + ke)
|
etotal = total energy (pe + ke)
|
||||||
enthalpy = enthalpy (etotal + press\*vol)
|
|
||||||
evdwl = van der Waals pairwise energy (includes etail)
|
evdwl = van der Waals pairwise energy (includes etail)
|
||||||
ecoul = Coulombic pairwise energy
|
ecoul = Coulombic pairwise energy
|
||||||
epair = pairwise energy (evdwl + ecoul + elong)
|
epair = pairwise energy (evdwl + ecoul + elong)
|
||||||
@ -60,6 +60,9 @@ Syntax
|
|||||||
emol = molecular energy (ebond + eangle + edihed + eimp)
|
emol = molecular energy (ebond + eangle + edihed + eimp)
|
||||||
elong = long-range kspace energy
|
elong = long-range kspace energy
|
||||||
etail = van der Waals energy long-range tail correction
|
etail = van der Waals energy long-range tail correction
|
||||||
|
enthalpy = enthalpy (etotal + press\*vol)
|
||||||
|
ecouple = cumulative energy change due to thermo/baro statting fixes
|
||||||
|
econserve = pe + ke + ecouple = etotal + ecouple
|
||||||
vol = volume
|
vol = volume
|
||||||
density = mass density of system
|
density = mass density of system
|
||||||
lx,ly,lz = box lengths in x,y,z
|
lx,ly,lz = box lengths in x,y,z
|
||||||
@ -197,27 +200,33 @@ change the attributes of this potential energy via the
|
|||||||
|
|
||||||
The kinetic energy of the system *ke* is inferred from the temperature
|
The kinetic energy of the system *ke* is inferred from the temperature
|
||||||
of the system with :math:`\frac{1}{2} k_B T` of energy for each degree
|
of the system with :math:`\frac{1}{2} k_B T` of energy for each degree
|
||||||
of freedom. Thus, using different :doc:`compute commands <compute>` for
|
of freedom. Thus, using different :doc:`compute commands <compute>`
|
||||||
calculating temperature, via the :doc:`thermo_modify temp
|
for calculating temperature, via the :doc:`thermo_modify temp
|
||||||
<thermo_modify>` command, may yield different kinetic energies, since
|
<thermo_modify>` command, may yield different kinetic energies, since
|
||||||
different computes that calculate temperature can subtract out different
|
different computes that calculate temperature can subtract out
|
||||||
non-thermal components of velocity and/or include different degrees of
|
different non-thermal components of velocity and/or include different
|
||||||
freedom (translational, rotational, etc).
|
degrees of freedom (translational, rotational, etc).
|
||||||
|
|
||||||
The potential energy of the system *pe* will include contributions
|
The potential energy of the system *pe* will include contributions
|
||||||
from fixes if the :doc:`fix_modify thermo <fix_modify>` option is set
|
from fixes if the :doc:`fix_modify energy yes <fix_modify>` option is
|
||||||
for a fix that calculates such a contribution. For example, the :doc:`fix wall/lj93 <fix_wall>` fix calculates the energy of atoms
|
set for a fix that calculates such a contribution. For example, the
|
||||||
|
:doc:`fix wall/lj93 <fix_wall>` fix calculates the energy of atoms
|
||||||
interacting with the wall. See the doc pages for "individual fixes"
|
interacting with the wall. See the doc pages for "individual fixes"
|
||||||
to see which ones contribute.
|
to see which ones contribute and whether their default
|
||||||
|
:doc:`fix_modify energy <fix_modify>` setting is *yes* or *no*\ .
|
||||||
|
|
||||||
A long-range tail correction *etail* for the van der Waals pairwise
|
A long-range tail correction *etail* for the van der Waals pairwise
|
||||||
energy will be non-zero only if the :doc:`pair_modify tail <pair_modify>` option is turned on. The *etail* contribution
|
energy will be non-zero only if the :doc:`pair_modify tail
|
||||||
is included in *evdwl*\ , *epair*\ , *pe*\ , and *etotal*\ , and the
|
<pair_modify>` option is turned on. The *etail* contribution is
|
||||||
|
included in *evdwl*\ , *epair*\ , *pe*\ , and *etotal*\ , and the
|
||||||
corresponding tail correction to the pressure is included in *press*
|
corresponding tail correction to the pressure is included in *press*
|
||||||
and *pxx*\ , *pyy*\ , etc.
|
and *pxx*\ , *pyy*\ , etc.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
|
Here is more information on other keywords whose meaning may not be
|
||||||
|
clear:
|
||||||
|
|
||||||
The *step*\ , *elapsed*\ , and *elaplong* keywords refer to timestep
|
The *step*\ , *elapsed*\ , and *elaplong* keywords refer to timestep
|
||||||
count. *Step* is the current timestep, or iteration count when a
|
count. *Step* is the current timestep, or iteration count when a
|
||||||
:doc:`minimization <minimize>` is being performed. *Elapsed* is the
|
:doc:`minimization <minimize>` is being performed. *Elapsed* is the
|
||||||
@ -228,13 +237,14 @@ keywords for the :doc:`run <run>` for info on how to invoke a series of
|
|||||||
runs that keep track of an initial starting time. If these keywords
|
runs that keep track of an initial starting time. If these keywords
|
||||||
are not used, then *elapsed* and *elaplong* are the same value.
|
are not used, then *elapsed* and *elaplong* are the same value.
|
||||||
|
|
||||||
The *dt* keyword is the current timestep size in time
|
The *dt* keyword is the current timestep size in time :doc:`units
|
||||||
:doc:`units <units>`. The *time* keyword is the current elapsed
|
<units>`. The *time* keyword is the current elapsed simulation time,
|
||||||
simulation time, also in time :doc:`units <units>`, which is simply
|
also in time :doc:`units <units>`, which is simply (step\*dt) if the
|
||||||
(step\*dt) if the timestep size has not changed and the timestep has
|
timestep size has not changed and the timestep has not been reset. If
|
||||||
not been reset. If the timestep has changed (e.g. via :doc:`fix dt/reset <fix_dt_reset>`) or the timestep has been reset (e.g. via
|
the timestep has changed (e.g. via :doc:`fix dt/reset <fix_dt_reset>`)
|
||||||
the "reset_timestep" command), then the simulation time is effectively
|
or the timestep has been reset (e.g. via the "reset_timestep"
|
||||||
a cumulative value up to the current point.
|
command), then the simulation time is effectively a cumulative value
|
||||||
|
up to the current point.
|
||||||
|
|
||||||
The *cpu* keyword is elapsed CPU seconds since the beginning of this
|
The *cpu* keyword is elapsed CPU seconds since the beginning of this
|
||||||
run. The *tpcpu* and *spcpu* keywords are measures of how fast your
|
run. The *tpcpu* and *spcpu* keywords are measures of how fast your
|
||||||
@ -266,16 +276,29 @@ a filename for output specific to this partition. See discussion of
|
|||||||
the :doc:`-partition command-line switch <Run_options>` for details on
|
the :doc:`-partition command-line switch <Run_options>` for details on
|
||||||
running in multi-partition mode.
|
running in multi-partition mode.
|
||||||
|
|
||||||
The *timeremain* keyword returns the remaining seconds when a
|
The *timeremain* keyword is the seconds remaining when a timeout has
|
||||||
timeout has been configured via the :doc:`timer timeout <timer>` command.
|
been configured via the :doc:`timer timeout <timer>` command. If the
|
||||||
If the timeout timer is inactive, the value of this keyword is 0.0 and
|
timeout timer is inactive, the value of this keyword is 0.0 and if the
|
||||||
if the timer is expired, it is negative. This allows for example to exit
|
timer is expired, it is negative. This allows for example to exit
|
||||||
loops cleanly, if the timeout is expired with:
|
loops cleanly, if the timeout is expired with:
|
||||||
|
|
||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
if "$(timeremain) < 0.0" then "quit 0"
|
if "$(timeremain) < 0.0" then "quit 0"
|
||||||
|
|
||||||
|
The *ecouple* keyword is cumulative energy change in the system due to
|
||||||
|
any thermostatting or barostatting fixes that are being used. A
|
||||||
|
positive value means that energy has been subtracted from the system
|
||||||
|
(added to the coupling reservoir). See the *econserve* keyword for an
|
||||||
|
explanation of why this sign choice makes sense.
|
||||||
|
|
||||||
|
The *econserve* keyword is the sum of the potential and kinetic energy
|
||||||
|
of the system as well as the energy that has been transferred by
|
||||||
|
thermostatting or barostatting to their coupling reservoirs. I.e. it
|
||||||
|
is *pe* + *ke* + *econserve*\ . Ideally, for a simulation in the NVE,
|
||||||
|
NPH, or NPT ensembles, the *econserve* quantity should remain constant
|
||||||
|
over time.
|
||||||
|
|
||||||
The *fmax* and *fnorm* keywords are useful for monitoring the progress
|
The *fmax* and *fnorm* keywords are useful for monitoring the progress
|
||||||
of an :doc:`energy minimization <minimize>`. The *fmax* keyword
|
of an :doc:`energy minimization <minimize>`. The *fmax* keyword
|
||||||
calculates the maximum force in any dimension on any atom in the
|
calculates the maximum force in any dimension on any atom in the
|
||||||
@ -295,12 +318,13 @@ to reduce the delay factor to insure no force interactions are missed
|
|||||||
by atoms moving beyond the neighbor skin distance before a rebuild
|
by atoms moving beyond the neighbor skin distance before a rebuild
|
||||||
takes place.
|
takes place.
|
||||||
|
|
||||||
The keywords *cella*\ , *cellb*\ , *cellc*\ , *cellalpha*\ , *cellbeta*\ ,
|
The keywords *cella*\ , *cellb*\ , *cellc*\ , *cellalpha*\ ,
|
||||||
*cellgamma*\ , correspond to the usual crystallographic quantities that
|
*cellbeta*\ , *cellgamma*\ , correspond to the usual crystallographic
|
||||||
define the periodic unit cell of a crystal. See the :doc:`Howto triclinic <Howto_triclinic>` doc page for a geometric description
|
quantities that define the periodic unit cell of a crystal. See the
|
||||||
of triclinic periodic cells, including a precise definition of these
|
:doc:`Howto triclinic <Howto_triclinic>` doc page for a geometric
|
||||||
quantities in terms of the internal LAMMPS cell dimensions *lx*\ , *ly*\ ,
|
description of triclinic periodic cells, including a precise
|
||||||
*lz*\ , *yz*\ , *xz*\ , *xy*\ .
|
definition of these quantities in terms of the internal LAMMPS cell
|
||||||
|
dimensions *lx*\ , *ly*\ , *lz*\ , *yz*\ , *xz*\ , *xy*\ .
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
@ -330,8 +354,8 @@ creates a global vector with 6 values.
|
|||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
The *c_ID* and *c_ID[I]* and *c_ID[I][J]* keywords allow global
|
The *c_ID* and *c_ID[I]* and *c_ID[I][J]* keywords allow global values
|
||||||
values calculated by a compute to be output. As discussed on the
|
calculated by a compute to be output. As discussed on the
|
||||||
:doc:`compute <compute>` doc page, computes can calculate global,
|
:doc:`compute <compute>` doc page, computes can calculate global,
|
||||||
per-atom, or local values. Only global values can be referenced by
|
per-atom, or local values. Only global values can be referenced by
|
||||||
this command. However, per-atom compute values for an individual atom
|
this command. However, per-atom compute values for an individual atom
|
||||||
@ -353,12 +377,13 @@ kinetic energy that are summed over all atoms in the compute group.
|
|||||||
Intensive quantities are printed directly without normalization by
|
Intensive quantities are printed directly without normalization by
|
||||||
thermo_style custom. Extensive quantities may be normalized by the
|
thermo_style custom. Extensive quantities may be normalized by the
|
||||||
total number of atoms in the simulation (NOT the number of atoms in
|
total number of atoms in the simulation (NOT the number of atoms in
|
||||||
the compute group) when output, depending on the :doc:`thermo_modify norm <thermo_modify>` option being used.
|
the compute group) when output, depending on the :doc:`thermo_modify
|
||||||
|
norm <thermo_modify>` option being used.
|
||||||
|
|
||||||
The *f_ID* and *f_ID[I]* and *f_ID[I][J]* keywords allow global
|
The *f_ID* and *f_ID[I]* and *f_ID[I][J]* keywords allow global values
|
||||||
values calculated by a fix to be output. As discussed on the
|
calculated by a fix to be output. As discussed on the :doc:`fix
|
||||||
:doc:`fix <fix>` doc page, fixes can calculate global, per-atom, or
|
<fix>` doc page, fixes can calculate global, per-atom, or local
|
||||||
local values. Only global values can be referenced by this command.
|
values. Only global values can be referenced by this command.
|
||||||
However, per-atom fix values can be referenced for an individual atom
|
However, per-atom fix values can be referenced for an individual atom
|
||||||
in a :doc:`variable <variable>` and the variable referenced by
|
in a :doc:`variable <variable>` and the variable referenced by
|
||||||
thermo_style custom, as discussed below. See the discussion above for
|
thermo_style custom, as discussed below. See the discussion above for
|
||||||
@ -377,8 +402,8 @@ energy that are summed over all atoms in the fix group. Intensive
|
|||||||
quantities are printed directly without normalization by thermo_style
|
quantities are printed directly without normalization by thermo_style
|
||||||
custom. Extensive quantities may be normalized by the total number of
|
custom. Extensive quantities may be normalized by the total number of
|
||||||
atoms in the simulation (NOT the number of atoms in the fix group)
|
atoms in the simulation (NOT the number of atoms in the fix group)
|
||||||
when output, depending on the :doc:`thermo_modify norm <thermo_modify>`
|
when output, depending on the :doc:`thermo_modify norm
|
||||||
option being used.
|
<thermo_modify>` option being used.
|
||||||
|
|
||||||
The *v_name* keyword allow the current value of a variable to be
|
The *v_name* keyword allow the current value of a variable to be
|
||||||
output. The name in the keyword should be replaced by the variable
|
output. The name in the keyword should be replaced by the variable
|
||||||
|
|||||||
@ -508,6 +508,7 @@ cpp
|
|||||||
cpu
|
cpu
|
||||||
createatoms
|
createatoms
|
||||||
createAtoms
|
createAtoms
|
||||||
|
CreateIDs
|
||||||
crespi
|
crespi
|
||||||
Crespi
|
Crespi
|
||||||
Critchley
|
Critchley
|
||||||
@ -597,6 +598,7 @@ Dcut
|
|||||||
de
|
de
|
||||||
dE
|
dE
|
||||||
De
|
De
|
||||||
|
deallocated
|
||||||
decorrelation
|
decorrelation
|
||||||
debye
|
debye
|
||||||
Debye
|
Debye
|
||||||
@ -787,6 +789,7 @@ ees
|
|||||||
eFF
|
eFF
|
||||||
efield
|
efield
|
||||||
effm
|
effm
|
||||||
|
eflag
|
||||||
eflux
|
eflux
|
||||||
eg
|
eg
|
||||||
Eggebrecht
|
Eggebrecht
|
||||||
@ -2537,6 +2540,8 @@ Px
|
|||||||
pxx
|
pxx
|
||||||
Pxx
|
Pxx
|
||||||
Pxy
|
Pxy
|
||||||
|
pxy
|
||||||
|
pxz
|
||||||
py
|
py
|
||||||
Py
|
Py
|
||||||
pydir
|
pydir
|
||||||
@ -2548,10 +2553,13 @@ pymol
|
|||||||
pypar
|
pypar
|
||||||
pythonic
|
pythonic
|
||||||
pytorch
|
pytorch
|
||||||
|
pyy
|
||||||
Pyy
|
Pyy
|
||||||
|
pyz
|
||||||
pz
|
pz
|
||||||
Pz
|
Pz
|
||||||
Pzz
|
Pzz
|
||||||
|
pzz
|
||||||
qbmsst
|
qbmsst
|
||||||
qcore
|
qcore
|
||||||
qdist
|
qdist
|
||||||
@ -2680,6 +2688,7 @@ rfile
|
|||||||
rg
|
rg
|
||||||
Rg
|
Rg
|
||||||
Rhaphson
|
Rhaphson
|
||||||
|
Rhe
|
||||||
rheological
|
rheological
|
||||||
rheology
|
rheology
|
||||||
rhodo
|
rhodo
|
||||||
@ -3334,6 +3343,7 @@ verlet
|
|||||||
Verlet
|
Verlet
|
||||||
versa
|
versa
|
||||||
ves
|
ves
|
||||||
|
vflag
|
||||||
vhi
|
vhi
|
||||||
vibrational
|
vibrational
|
||||||
Vij
|
Vij
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
# fcc nickel in a 3d periodic box
|
# fcc nickel in a 3d periodic box
|
||||||
|
|
||||||
clear
|
clear
|
||||||
units metal
|
units metal
|
||||||
atom_style spin
|
atom_style spin
|
||||||
|
|
||||||
@ -8,7 +8,7 @@ dimension 3
|
|||||||
boundary p p p
|
boundary p p p
|
||||||
|
|
||||||
# necessary for the serial algorithm (sametag)
|
# necessary for the serial algorithm (sametag)
|
||||||
atom_modify map array
|
atom_modify map array
|
||||||
|
|
||||||
lattice fcc 3.524
|
lattice fcc 3.524
|
||||||
region box block 0.0 5.0 0.0 5.0 0.0 5.0
|
region box block 0.0 5.0 0.0 5.0 0.0 5.0
|
||||||
@ -20,7 +20,7 @@ create_atoms 1 box
|
|||||||
mass 1 58.69
|
mass 1 58.69
|
||||||
|
|
||||||
set group all spin/random 31 0.63
|
set group all spin/random 31 0.63
|
||||||
#set group all spin 0.63 0.0 0.0 1.0
|
#set group all spin 0.63 0.0 0.0 1.0
|
||||||
velocity all create 100 4928459 rot yes dist gaussian
|
velocity all create 100 4928459 rot yes dist gaussian
|
||||||
|
|
||||||
pair_style hybrid/overlay eam/alloy spin/exchange 4.0
|
pair_style hybrid/overlay eam/alloy spin/exchange 4.0
|
||||||
@ -31,7 +31,7 @@ neighbor 0.1 bin
|
|||||||
neigh_modify every 10 check yes delay 20
|
neigh_modify every 10 check yes delay 20
|
||||||
|
|
||||||
fix 1 all precession/spin zeeman 0.0 0.0 0.0 1.0
|
fix 1 all precession/spin zeeman 0.0 0.0 0.0 1.0
|
||||||
fix_modify 1 energy yes
|
fix_modify 1 energy yes
|
||||||
fix 2 all langevin/spin 0.0 0.0 21
|
fix 2 all langevin/spin 0.0 0.0 21
|
||||||
|
|
||||||
fix 3 all nve/spin lattice moving
|
fix 3 all nve/spin lattice moving
|
||||||
|
|||||||
@ -1,60 +1,60 @@
|
|||||||
# fcc nickel in a 3d periodic box
|
# fcc nickel in a 3d periodic box
|
||||||
|
|
||||||
clear
|
clear
|
||||||
units metal
|
units metal
|
||||||
atom_style spin
|
atom_style spin
|
||||||
|
|
||||||
dimension 3
|
dimension 3
|
||||||
boundary p p p
|
boundary p p p
|
||||||
|
|
||||||
# necessary for the serial algorithm (sametag)
|
# necessary for the serial algorithm (sametag)
|
||||||
atom_modify map array
|
atom_modify map array
|
||||||
|
|
||||||
lattice fcc 3.524
|
lattice fcc 3.524
|
||||||
region box block 0.0 5.0 0.0 5.0 0.0 5.0
|
region box block 0.0 5.0 0.0 5.0 0.0 5.0
|
||||||
create_box 1 box
|
create_box 1 box
|
||||||
create_atoms 1 box
|
create_atoms 1 box
|
||||||
|
|
||||||
# setting mass, mag. moments, and interactions for cobalt
|
# setting mass, mag. moments, and interactions for cobalt
|
||||||
|
|
||||||
mass 1 58.69
|
mass 1 58.69
|
||||||
|
|
||||||
set group all spin/random 31 0.63
|
set group all spin/random 31 0.63
|
||||||
#set group all spin 0.63 0.0 0.0 1.0
|
#set group all spin 0.63 0.0 0.0 1.0
|
||||||
velocity all create 100 4928459 rot yes dist gaussian
|
velocity all create 100 4928459 rot yes dist gaussian
|
||||||
|
|
||||||
pair_style hybrid/overlay eam/alloy spin/exchange 4.0
|
pair_style hybrid/overlay eam/alloy spin/exchange 4.0
|
||||||
pair_coeff * * eam/alloy Ni99.eam.alloy Ni
|
pair_coeff * * eam/alloy Ni99.eam.alloy Ni
|
||||||
pair_coeff * * spin/exchange exchange 4.0 0.50 0.2280246862 1.229983475
|
pair_coeff * * spin/exchange exchange 4.0 0.50 0.2280246862 1.229983475
|
||||||
|
|
||||||
neighbor 0.1 bin
|
neighbor 0.1 bin
|
||||||
neigh_modify every 10 check yes delay 20
|
neigh_modify every 10 check yes delay 20
|
||||||
|
|
||||||
fix 1 all precession/spin cubic -0.0001 0.0 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0 &
|
fix 1 all precession/spin cubic -0.0001 0.0 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0 &
|
||||||
zeeman 0.0 0.0 0.0 1.0
|
zeeman 0.0 0.0 0.0 1.0
|
||||||
fix_modify 1 energy yes
|
fix_modify 1 energy yes
|
||||||
fix 2 all langevin/spin 0.0 0.0 21
|
fix 2 all langevin/spin 0.0 0.0 21
|
||||||
|
|
||||||
fix 3 all nve/spin lattice moving
|
fix 3 all nve/spin lattice moving
|
||||||
timestep 0.0001
|
timestep 0.0001
|
||||||
|
|
||||||
# compute and output options
|
# compute and output options
|
||||||
|
|
||||||
compute out_mag all spin
|
compute out_mag all spin
|
||||||
compute out_pe all pe
|
compute out_pe all pe
|
||||||
compute out_ke all ke
|
compute out_ke all ke
|
||||||
compute out_temp all temp
|
compute out_temp all temp
|
||||||
|
|
||||||
variable magz equal c_out_mag[3]
|
variable magz equal c_out_mag[3]
|
||||||
variable magnorm equal c_out_mag[4]
|
variable magnorm equal c_out_mag[4]
|
||||||
variable emag equal c_out_mag[5]
|
variable emag equal c_out_mag[5]
|
||||||
variable tmag equal c_out_mag[6]
|
variable tmag equal c_out_mag[6]
|
||||||
|
|
||||||
thermo_style custom step time v_magnorm pe v_emag temp v_tmag etotal
|
thermo_style custom step time v_magnorm pe v_emag temp v_tmag etotal
|
||||||
thermo 50
|
thermo 50
|
||||||
|
|
||||||
compute outsp all property/atom spx spy spz sp fmx fmy fmz
|
compute outsp all property/atom spx spy spz sp fmx fmy fmz
|
||||||
dump 1 all custom 50 dump.lammpstrj type x y z c_outsp[1] c_outsp[2] c_outsp[3] c_outsp[4] c_outsp[5] c_outsp[6] c_outsp[7]
|
dump 1 all custom 50 dump.lammpstrj type x y z c_outsp[1] c_outsp[2] c_outsp[3] c_outsp[4] c_outsp[5] c_outsp[6] c_outsp[7]
|
||||||
|
|
||||||
run 1000
|
run 1000
|
||||||
|
|
||||||
|
|||||||
0
examples/USER/dpd/dpdrx-shardlow/kinetics.dpdrx
Executable file → Normal file
0
examples/USER/dpd/dpdrx-shardlow/kinetics.dpdrx
Executable file → Normal file
0
examples/USER/dpd/dpdrx-shardlow/params.exp6
Executable file → Normal file
0
examples/USER/dpd/dpdrx-shardlow/params.exp6
Executable file → Normal file
0
examples/USER/dpd/dpdrx-shardlow/table.eos
Executable file → Normal file
0
examples/USER/dpd/dpdrx-shardlow/table.eos
Executable file → Normal file
0
examples/USER/dpd/dpdrx-shardlow/thermo.dpdrx
Executable file → Normal file
0
examples/USER/dpd/dpdrx-shardlow/thermo.dpdrx
Executable file → Normal file
@ -1,17 +0,0 @@
|
|||||||
# rx heats of formation for various molecules
|
|
||||||
# multiple entries can be added to this file, LAMMPS reads the ones it needs
|
|
||||||
# the entries are in LAMMPS "metal" units (eV)
|
|
||||||
# Be sure the units are consistent with your input file
|
|
||||||
|
|
||||||
# format of a single entry (one or more lines):
|
|
||||||
# species DeltaHformation
|
|
||||||
|
|
||||||
rdx 1.989907438211819
|
|
||||||
hcn 1.400635733970104
|
|
||||||
no2 0.343004076201018
|
|
||||||
no 0.935781955892458
|
|
||||||
h2o -2.506184777415379
|
|
||||||
n2 0.000000000000000
|
|
||||||
h2 0.000000000000000
|
|
||||||
co -1.145533746031845
|
|
||||||
co2 -4.078501848437456
|
|
||||||
0
examples/USER/lb/confined_colloid/results64.out
Executable file → Normal file
0
examples/USER/lb/confined_colloid/results64.out
Executable file → Normal file
0
examples/USER/lb/dragforce/data.one_radius16d2
Executable file → Normal file
0
examples/USER/lb/dragforce/data.one_radius16d2
Executable file → Normal file
0
examples/USER/lb/dragforce/defaultgamma_drag.out
Executable file → Normal file
0
examples/USER/lb/dragforce/defaultgamma_drag.out
Executable file → Normal file
0
examples/USER/lb/dragforce/setgamma13d0_drag.out
Executable file → Normal file
0
examples/USER/lb/dragforce/setgamma13d0_drag.out
Executable file → Normal file
0
examples/USER/lb/fourspheres/data.four
Executable file → Normal file
0
examples/USER/lb/fourspheres/data.four
Executable file → Normal file
0
examples/USER/lb/fourspheres/fourspheres_velocity0d0001_defaultgamma.out
Executable file → Normal file
0
examples/USER/lb/fourspheres/fourspheres_velocity0d0001_defaultgamma.out
Executable file → Normal file
0
examples/USER/lb/fourspheres/fourspheres_velocity0d0001_setgamma.out
Executable file → Normal file
0
examples/USER/lb/fourspheres/fourspheres_velocity0d0001_setgamma.out
Executable file → Normal file
0
examples/USER/lb/microrheology/data.two
Executable file → Normal file
0
examples/USER/lb/microrheology/data.two
Executable file → Normal file
0
examples/USER/lb/microrheology/microrheology_defaultgamma.out
Executable file → Normal file
0
examples/USER/lb/microrheology/microrheology_defaultgamma.out
Executable file → Normal file
0
examples/USER/lb/microrheology/microrheology_setgamma.out
Executable file → Normal file
0
examples/USER/lb/microrheology/microrheology_setgamma.out
Executable file → Normal file
0
examples/USER/lb/planewall/data.one_radius16d2
Executable file → Normal file
0
examples/USER/lb/planewall/data.one_radius16d2
Executable file → Normal file
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user