Merge branch 'master' into charge_regulation2
This commit is contained in:
@ -652,7 +652,7 @@ install(
|
||||
if(BUILD_SHARED_LIBS)
|
||||
if(CMAKE_VERSION VERSION_LESS 3.12)
|
||||
# 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
|
||||
if(PYTHONINTERP_FOUND)
|
||||
set(Python_EXECUTABLE ${PYTHON_EXECUTABLE})
|
||||
@ -662,10 +662,10 @@ if(BUILD_SHARED_LIBS)
|
||||
endif()
|
||||
if (Python_EXECUTABLE)
|
||||
add_custom_target(
|
||||
install-python
|
||||
${Python_EXECUTABLE} install.py -v ${LAMMPS_SOURCE_DIR}/version.h
|
||||
install-python ${CMAKE_COMMAND} -E remove_directory build
|
||||
COMMAND ${Python_EXECUTABLE} install.py -v ${LAMMPS_SOURCE_DIR}/version.h
|
||||
-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}
|
||||
COMMENT "Installing LAMMPS Python module")
|
||||
else()
|
||||
|
||||
@ -36,6 +36,9 @@ if(GPU_API STREQUAL "CUDA")
|
||||
option(CUDPP_OPT "Enable CUDPP_OPT" ON)
|
||||
option(CUDA_MPS_SUPPORT "Enable tweaks to support CUDA Multi-process service (MPS)" OFF)
|
||||
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")
|
||||
endif()
|
||||
|
||||
@ -94,9 +97,9 @@ if(GPU_API STREQUAL "CUDA")
|
||||
if(CUDA_VERSION VERSION_GREATER_EQUAL "10.0")
|
||||
string(APPEND GPU_CUDA_GENCODE " -gencode arch=compute_75,code=[sm_75,compute_75]")
|
||||
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")
|
||||
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()
|
||||
if(CUDA_VERSION VERSION_GREATER_EQUAL "12.0")
|
||||
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
|
||||
set(MLIAP_ENABLE_PYTHON_DEFAULT OFF)
|
||||
if(PKG_PYTHON)
|
||||
find_package(Cythonize)
|
||||
find_package(Cythonize QUIET)
|
||||
if(Cythonize_FOUND)
|
||||
set(MLIAP_ENABLE_PYTHON_DEFAULT ON)
|
||||
endif()
|
||||
@ -14,6 +14,15 @@ if(MLIAP_ENABLE_PYTHON)
|
||||
if(NOT PKG_PYTHON)
|
||||
message(FATAL_ERROR "Must enable PYTHON package for including Python support in MLIAP")
|
||||
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_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
|
||||
.B LAMMPS
|
||||
\- Molecular Dynamics Simulator.
|
||||
|
||||
@ -131,7 +131,7 @@ CMake build
|
||||
-D HIP_USE_DEVICE_SORT=value # enables GPU sorting
|
||||
# value = yes (default) or no
|
||||
-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
|
||||
-D CUDA_MPS_SUPPORT=value # enables some tweaks required to run with active nvidia-cuda-mps daemon
|
||||
# value = yes or no (default)
|
||||
@ -219,11 +219,19 @@ Makefile if desired:
|
||||
* ``CUDA_PRECISION`` = precision (double, mixed, single)
|
||||
* ``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
|
||||
through using the "--gencode " flag, which can be used multiple times and
|
||||
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:
|
||||
``lib/gpu/libgpu.a``\ , ``lib/gpu/nvc_get_devices``\ , and
|
||||
``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
|
||||
work at a conceptual level. Comments on code in source files
|
||||
This section documents how some of the code functionality within
|
||||
LAMMPS works at a conceptual level. Comments on code in source files
|
||||
typically document what a variable stores, what a small section of
|
||||
code does, or what a function does or its input/outputs. The topics
|
||||
on this page are intended to document code at a higher level.
|
||||
code does, or what a function does and its input/outputs. The topics
|
||||
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
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@ -38,17 +38,18 @@ In addition there are DOIs for individual stable releases. Currently there are:
|
||||
Home page
|
||||
^^^^^^^^^
|
||||
|
||||
The LAMMPS website at `https://lammps.sandia.gov/ <https://lammps.sandia.gov>`_ is the canonical
|
||||
location for information about LAMMPS and more detailed lists of publications
|
||||
using LAMMPS and contributing features.
|
||||
The LAMMPS website at `https://lammps.sandia.gov/
|
||||
<https://lammps.sandia.gov>`_ is the canonical location for information
|
||||
about LAMMPS and its features.
|
||||
|
||||
Citing contributions
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
LAMMPS has many features and uses previously published methods and
|
||||
algorithms or novel features. It also includes potential parameter
|
||||
filed for specific models. You can look up relevant publications either
|
||||
in the LAMMPS output to the screen, the ``log.cite`` file (which is
|
||||
populated with references to relevant papers through embedding them into
|
||||
the source code) and in the documentation of the :doc:`corresponding commands
|
||||
LAMMPS has many features and that use either previously published
|
||||
methods and algorithms or novel features. It also includes potential
|
||||
parameter filed for specific models. Where available, a reminder about
|
||||
references for optional features used in a specific run is printed to
|
||||
the screen and log file. Style and output location can be selected with
|
||||
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>`.
|
||||
|
||||
@ -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
|
||||
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.
|
||||
A LaTeX citation is stored in a variable at the top of the file and a
|
||||
single line of code that references the variable is added to the
|
||||
constructor of the class. Whenever a user invokes your feature from
|
||||
their input script, this will cause LAMMPS to output the citation to a
|
||||
log.cite file and prompt the user to examine the file. Note that you
|
||||
should only use this for a paper you or your group authored.
|
||||
E.g. adding a cite 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 in the doc page you
|
||||
provide.
|
||||
A LaTeX citation is stored in a variable at the top of the file and
|
||||
a single line of code registering this variable is added to the
|
||||
constructor of the class. If there is additional functionality (which
|
||||
may have been added later) described in a different publication,
|
||||
additional citation descriptions may be added for as long as they
|
||||
are only registered when the corresponding keyword activating this
|
||||
functionality is used. With these options it is possible to have
|
||||
LAMMPS output a specific citation reminder whenever a user invokes
|
||||
your feature from their input script. Note that you should only use
|
||||
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
|
||||
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 be installed. To make the *mliappy* model available, also the
|
||||
:ref:`PYTHON package <PKG-PYTHON>` package needs to be installed, the version of
|
||||
Python must be 3.6 or later, and the `cython <https://cython.org/>`_ software
|
||||
:ref:`PYTHON package <PKG-PYTHON>` package needs to be installed, the version
|
||||
of Python must be 3.6 or later, and the `cython <https://cython.org/>`_ software
|
||||
must be installed.
|
||||
|
||||
**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
|
||||
|
||||
.. 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
|
||||
|
||||
@ -11,6 +11,7 @@ letter abbreviation can be used:
|
||||
* :ref:`-k or -kokkos <run-kokkos>`
|
||||
* :ref:`-l or -log <log>`
|
||||
* :ref:`-m or -mpicolor <mpicolor>`
|
||||
* :ref:`-c or -cite <cite>`
|
||||
* :ref:`-nc or -nocite <nocite>`
|
||||
* :ref:`-pk or -package <package>`
|
||||
* :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**
|
||||
|
||||
Disable writing the log.cite file which is normally written to list
|
||||
references for specific cite-able features used during a LAMMPS run.
|
||||
See the `citation page <https://lammps.sandia.gov/cite.html>`_ for more
|
||||
details.
|
||||
Disable generating a citation reminder (see above) at all.
|
||||
|
||||
----------
|
||||
|
||||
|
||||
@ -46,11 +46,12 @@ the compute command was issued. The value of the displacement will be
|
||||
.. note::
|
||||
|
||||
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.
|
||||
See the Atoms section of the :doc:`read_data <read_data>` command for a
|
||||
discussion of image flags and how they are set for each atom. You can
|
||||
reset the image flags (e.g. to 0) before invoking this compute by
|
||||
using the :doc:`set image <set>` command.
|
||||
image flags associated with each atom. See the :doc:`dump custom
|
||||
<dump>` command for a discussion of "unwrapped" coordinates. See
|
||||
the Atoms section of the :doc:`read_data <read_data>` command for a
|
||||
discussion of image flags and how they are set for each atom. You
|
||||
can reset the image flags (e.g. to 0) before invoking this compute
|
||||
by using the :doc:`set image <set>` command.
|
||||
|
||||
.. note::
|
||||
|
||||
|
||||
@ -122,8 +122,11 @@ Output info
|
||||
This compute calculates a global scalar (the pressure) and a global
|
||||
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
|
||||
or vector values from a compute as input. See the :doc:`Howto output <Howto_output>` doc page for an overview of LAMMPS output
|
||||
options.
|
||||
or vector values from a compute as input. See the :doc:`Howto output
|
||||
<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
|
||||
"intensive". The scalar and vector values will be in pressure
|
||||
|
||||
@ -30,7 +30,7 @@ Examples
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
compute 1 all reduce/chunk/atom mychunk min c_cluster
|
||||
compute 1 all reduce/chunk mychunk min c_cluster
|
||||
|
||||
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
|
||||
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
|
||||
<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
|
||||
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
|
||||
ready to perform a simulation. This means, for example, that all
|
||||
: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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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 add the potential "energy" inferred by the added force to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. This is a fictitious quantity but 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>` *energy* option is supported by
|
||||
this fix to add the potential energy inferred by the added force 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>`. Note that this
|
||||
energy is a fictitious quantity but 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
|
||||
fix to add the contribution due to the added forces on atoms to the
|
||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The default is *virial no*
|
||||
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 no <fix_modify>`.
|
||||
|
||||
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>`
|
||||
integrator the fix is adding its forces. Default is the outermost
|
||||
level.
|
||||
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.
|
||||
|
||||
This fix computes a global scalar and a global 3-vector of forces,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar is the potential energy discussed above. The vector is the
|
||||
total force on the group of atoms before the forces on individual
|
||||
atoms are changed by the fix. The scalar and vector values calculated
|
||||
by this fix are "extensive".
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar is the potential energy discussed above.
|
||||
The vector is the total force on the group of atoms before the forces
|
||||
on individual atoms are changed by the fix. 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
|
||||
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>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the potential "energy" inferred by the added forces to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. This is a fictitious quantity but 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 forces.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential "energy" inferred by the added torques
|
||||
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>`. Note that this
|
||||
is a fictitious quantity but 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 forces.
|
||||
|
||||
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>`
|
||||
@ -78,16 +80,28 @@ No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
The forces due to this fix are imposed during an energy minimization,
|
||||
invoked by the :doc:`minimize <minimize>` command. 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.
|
||||
invoked by the :doc:`minimize <minimize>` command.
|
||||
|
||||
.. note::
|
||||
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
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
|
||||
""""""""""""""""
|
||||
|
||||
@ -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
|
||||
<restart>`. The :doc:`fix_modify <fix_modify>` options relevant to this
|
||||
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
|
||||
<Howto_output>`. No parameter of this fix can be used with the
|
||||
<restart>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is not supported by
|
||||
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
|
||||
invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
@ -145,10 +157,10 @@ one, e.g. nve, nvt, etc. In addition, currently:
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
After specifying this fix in your input script, several other
|
||||
:doc:`fix_modify <fix_modify>` commands are used to setup the problem,
|
||||
e.g. define the finite element mesh and prescribe initial and boundary
|
||||
conditions.
|
||||
After specifying this fix in your input script, several
|
||||
:doc:`fix_modify AtC <fix_modify>` commands are used to setup the
|
||||
problem, e.g. define the finite element mesh and prescribe initial and
|
||||
boundary conditions. Each of these options has its own doc page.
|
||||
|
||||
*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_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
|
||||
"""""""
|
||||
@ -252,30 +265,52 @@ For detailed exposition of the theory and algorithms please see:
|
||||
|
||||
.. _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:
|
||||
|
||||
**(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)** 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)** 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, 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)** 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, 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
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
|
||||
@ -41,7 +41,7 @@ Syntax
|
||||
* 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
|
||||
* 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::
|
||||
|
||||
@ -59,6 +59,12 @@ Syntax
|
||||
off = allow both inter- and intramolecular reactions (default)
|
||||
inter = search for reactions between molecules with different IDs
|
||||
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
|
||||
""""""""
|
||||
@ -89,7 +95,9 @@ documentation. Topology changes are defined in pre- and post-reaction
|
||||
molecule templates and can include creation and deletion of bonds,
|
||||
angles, dihedrals, impropers, bond types, angle types, dihedral types,
|
||||
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
|
||||
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
|
||||
site and its surrounding topology after the reaction has occurred. It
|
||||
must contain the same number of atoms as the pre-reacted template. A
|
||||
one-to-one correspondence between the atom IDs in the pre- and
|
||||
post-reacted templates is specified in the map file as described
|
||||
below. Note that during a reaction, an atom, bond, etc. type may
|
||||
change to one that was previously not present in the simulation. These
|
||||
new types must also be defined during the setup of a given simulation.
|
||||
A discussion of correctly handling this is also provided on the
|
||||
:doc:`molecule <molecule>` command page.
|
||||
must contain the same number of atoms as the pre-reacted template
|
||||
(unless there are created atoms). A one-to-one correspondence between
|
||||
the atom IDs in the pre- and post-reacted templates is specified in
|
||||
the map file as described below. Note that during a reaction, an atom,
|
||||
bond, etc. type may change to one that was previously not present in
|
||||
the simulation. These new types must also be defined during the setup
|
||||
of a given simulation. A discussion of correctly handling this is also
|
||||
provided on the :doc:`molecule <molecule>` command page.
|
||||
|
||||
.. 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:
|
||||
|
||||
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':
|
||||
|
||||
.. parsed-literal::
|
||||
@ -296,11 +304,12 @@ The optional keywords are 'edgeIDs', 'deleteIDs', 'chiralIDs' and
|
||||
.. parsed-literal::
|
||||
|
||||
N *edgeIDs* = # of edge atoms N in the pre-reacted molecule template
|
||||
N *deleteIDs* = # of atoms N that are specified for deletion
|
||||
N *chiralIDs* = # of specified chiral centers N
|
||||
N *constraints* = # of specified reaction constraints N
|
||||
N *deleteIDs* = # of atoms N that are deleted
|
||||
N *createIDs* = # of atoms N that are created
|
||||
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
|
||||
'InitiatorIDs' and lists the two atom IDs of the initiator atom pair
|
||||
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
|
||||
the keyword 'DeleteIDs' and lists the atom IDs of pre-reaction
|
||||
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
|
||||
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
|
||||
satisfied in order for the reaction to occur. Currently, there are
|
||||
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
|
||||
listing their IDs in the ChiralIDs section. A chiral atom must be
|
||||
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:
|
||||
|
||||
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.
|
||||
For example, it may be beneficial to force reacting atoms to remain at
|
||||
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,
|
||||
reset_mol_ids = yes, custom_charges = no, molecule = off
|
||||
reset_mol_ids = yes, custom_charges = no, molecule = off, modify_create = no
|
||||
|
||||
----------
|
||||
|
||||
.. _Gissinger:
|
||||
|
||||
**(Gissinger)** Gissinger, Jensen and Wise, Polymer, 128, 211-217 (2017).
|
||||
**(Gissinger2017)** Gissinger, Jensen and Wise, Polymer, 128, 211-217 (2017).
|
||||
|
||||
.. _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 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
|
||||
should not normally contain force field commands, like a
|
||||
:doc:`pair_style <pair_style>`, :doc:`bond_style <bond_style>`, or
|
||||
:doc:`kspace_style <kspace_style>` command. However it is possible for
|
||||
a server code to only compute a portion of the full force-field, while
|
||||
LAMMPS computes the remaining part. Your LAMMPS script can also
|
||||
:doc:`kspace_style <kspace_style>` command. However it is possible
|
||||
for a server code to only compute a portion of the full force-field,
|
||||
while LAMMPS computes the remaining part. Your LAMMPS script can also
|
||||
specify boundary conditions or force constraints in the usual way,
|
||||
which will be added to the per-atom forces returned by the server
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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 add the potential energy computed by the server application to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy set by the server application 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>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the server application's contribution to the system's
|
||||
virial as part of :doc:`thermodynamic output <thermo_style>`. The
|
||||
default is *virial yes*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution computed by the server application to
|
||||
the global pressure of the system via the :doc:`compute pressure
|
||||
<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 potential
|
||||
@ -86,13 +92,16 @@ energy discussed above. The scalar value calculated 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>`.
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
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
|
||||
: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
|
||||
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
|
||||
residues long; see :ref:`(Buck) <Buck>` and :ref:`(Brooks) <Brooks2>` for details,
|
||||
including the analytic energy expressions for CMAP interactions. The
|
||||
CMAP cross-terms add additional potential energy contributions to pairs
|
||||
of overlapping phi-psi dihedrals of amino-acids, which are important
|
||||
to properly represent their conformational behavior.
|
||||
residues long; see :ref:`(Buck) <Buck>` and :ref:`(Brooks) <Brooks2>`
|
||||
for details, including the analytic energy expressions for CMAP
|
||||
interactions. The CMAP cross-terms add additional potential energy
|
||||
contributions to pairs of overlapping phi-psi dihedrals of
|
||||
amino-acids, which are important to properly represent their
|
||||
conformational behavior.
|
||||
|
||||
The examples/cmap directory has a sample input script and data file
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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
|
||||
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
|
||||
fix to add the potential "energy" of the CMAP interactions system's
|
||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy of the CMAP interactions to both
|
||||
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
|
||||
fix to add the contribution due to the interaction between atoms to
|
||||
the system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The default is *virial yes*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the CMAP interactions 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>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the potential
|
||||
@ -121,8 +130,8 @@ invoked by the :doc:`minimize <minimize>` command.
|
||||
.. note::
|
||||
|
||||
If you want the potential energy associated with the CMAP terms
|
||||
forces to be included in the total potential energy of the system (the
|
||||
quantity being minimized), you MUST enable the
|
||||
forces to be included in the total potential energy of the system
|
||||
(the quantity being minimized), you MUST not disable the
|
||||
:doc:`fix_modify <fix_modify>` *energy* option for this fix.
|
||||
|
||||
Restrictions
|
||||
|
||||
@ -35,12 +35,12 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
This fix interfaces LAMMPS to the collective variables "Colvars"
|
||||
library, which allows to calculate potentials of mean force
|
||||
(PMFs) for any set of colvars, using different sampling methods:
|
||||
currently implemented are the Adaptive Biasing Force (ABF) method,
|
||||
metadynamics, Steered Molecular Dynamics (SMD) and Umbrella Sampling
|
||||
(US) via a flexible harmonic restraint bias.
|
||||
This fix interfaces LAMMPS to the collective variables (Colvars)
|
||||
library, which allows to calculate potentials of mean force (PMFs) for
|
||||
any set of colvars, using different sampling methods: currently
|
||||
implemented are the Adaptive Biasing Force (ABF) method, metadynamics,
|
||||
Steered Molecular Dynamics (SMD) and Umbrella Sampling (US) via a
|
||||
flexible harmonic restraint bias.
|
||||
|
||||
This documentation describes only the fix colvars command itself and
|
||||
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
|
||||
kind of information in both files is identical.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change from the biasing force added by the fix
|
||||
to the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy change from the biasing force added by
|
||||
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
|
||||
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).
|
||||
|
||||
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".
|
||||
:doc:`output commands <Howto_output>`. The scalar is the Colvars
|
||||
energy mentioned above. The scalar value calculated by this fix is
|
||||
"extensive".
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
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
|
||||
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
|
||||
:doc:`variable <variable>` which is used to compute the energy of each
|
||||
atom as function of its position. Like variables used for *ex*\ , *ey*\ ,
|
||||
*ez*\ , the energy variable is specified as v_name, where name is the
|
||||
variable name.
|
||||
atom as function of its position. Like variables used for *ex*\ ,
|
||||
*ey*\ , *ez*\ , the energy variable is specified as v_name, where name
|
||||
is the variable name.
|
||||
|
||||
Note that when the *energy* keyword is used during an energy
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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 add the potential "energy" inferred by the added force due to
|
||||
the electric field to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. This is a fictitious
|
||||
quantity but 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 due to the electric field.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy inferred by the added force due
|
||||
to the electric field 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>`.
|
||||
Note that this energy is a fictitious quantity but 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
|
||||
due to the electric field.
|
||||
|
||||
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 the
|
||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The default is *virial no*
|
||||
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 no <fix_modify>`.
|
||||
|
||||
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>`
|
||||
integrator the fix adding its forces. Default is the outermost level.
|
||||
fix. This allows to set at which level of the :doc:`r-RESPA
|
||||
<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,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar is the potential energy discussed above. The vector is the
|
||||
total force added to the group of atoms. The scalar and vector values
|
||||
calculated by this fix are "extensive".
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar is the potential energy discussed above.
|
||||
The vector is the total force added to the group of atoms. 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
|
||||
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
|
||||
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
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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 add the potential "energy" set by the external driver to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. This is a fictitious quantity but 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>` *energy* option is supported by
|
||||
this fix to add the potential energy set by the external driver to
|
||||
both 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>`.
|
||||
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
|
||||
fix to add the contribution due to the interactions computed by the
|
||||
external program to the system's virial as part of :doc:`thermodynamic output <thermo_style>`. The default is *virial yes*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution computed by the external program 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>`.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
: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
|
||||
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.
|
||||
|
||||
Restrictions
|
||||
|
||||
@ -76,28 +76,31 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
The instantaneous values of the extended variables are written to
|
||||
:doc:`binary restart files <restart>`. Because the state of the random
|
||||
number generator is not saved in restart files, this means you cannot
|
||||
do "exact" restarts with this fix, where the simulation continues on
|
||||
the same as if no restart had taken place. However, in a statistical
|
||||
sense, a restarted simulation should produce the same behavior.
|
||||
Note however that you should use a different seed each time you
|
||||
restart, otherwise the same sequence of random numbers will be used
|
||||
each time, which might lead to stochastic synchronization and
|
||||
:doc:`binary restart files <restart>`. Because the state of the
|
||||
random number generator is not saved in restart files, this means you
|
||||
cannot do "exact" restarts with this fix, where the simulation
|
||||
continues on the same as if no restart had taken place. However, in a
|
||||
statistical sense, a restarted simulation should produce the same
|
||||
behavior. Note however that you should use a different seed each time
|
||||
you restart, otherwise the same sequence of random numbers will be
|
||||
used each time, which might lead to stochastic synchronization and
|
||||
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
|
||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
:doc:`run <run>` command for details of how to do this.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
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".
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -55,17 +55,22 @@ momentum.
|
||||
GD applies an external fluctuating gravitational field that acts as a
|
||||
driving force to keep the system away from equilibrium. To maintain
|
||||
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.
|
||||
|
||||
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
|
||||
: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
|
||||
from inhomogeneities in the fluid, such as fixed wall atoms. Further,
|
||||
the computed pressure profile must be corrected for the acceleration
|
||||
: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 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
|
||||
other methods, such as the pump method :ref:`(Zhu) <Zhu>`. The pressure
|
||||
correction is discussed and described in :ref:`(Strong) <Strong>`.
|
||||
other methods, such as the pump method :ref:`(Zhu) <Zhu>`. The
|
||||
pressure correction is discussed and described in :ref:`(Strong)
|
||||
<Strong>`.
|
||||
|
||||
For a complete example including the considerations discussed
|
||||
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>`.
|
||||
|
||||
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
|
||||
rRESPA level as the interactions between the flowing fluid and the obstacle.
|
||||
The rRESPA level at which the acceleration is applied can be changed using
|
||||
the :doc:`fix_modify <fix_modify>` *respa* option discussed below. If the
|
||||
flowing fluid and the obstacle interact through multiple interactions that are
|
||||
computed at different rRESPA levels, then there must be a separate flow/gauss
|
||||
fix for each level. For example, if the flowing fluid and obstacle interact
|
||||
through pairwise and long-range Coulomb interactions, which are computed at
|
||||
integrator, the applied acceleration must be computed and applied at
|
||||
the same rRESPA level as the interactions between the flowing fluid
|
||||
and the obstacle. The rRESPA level at which the acceleration is
|
||||
applied can be changed using the :doc:`fix_modify <fix_modify>`
|
||||
*respa* option discussed below. If the flowing fluid and the obstacle
|
||||
interact through multiple interactions that are computed at different
|
||||
rRESPA levels, then there must be a separate flow/gauss fix for each
|
||||
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
|
||||
flow/gauss fixes, one that specifies *fix_modify respa 3* and one with
|
||||
*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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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.
|
||||
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 subtract the work done from the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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
|
||||
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
|
||||
fix. This allows the user to set at which level of the :doc:`rRESPA <run_style>`
|
||||
integrator the fix computes and adds the external acceleration. Default is the
|
||||
outermost level.
|
||||
fix. This allows the user to set at which level of the :doc:`rRESPA
|
||||
<run_style>` integrator the fix computes and adds the external
|
||||
acceleration. Default is the outermost level.
|
||||
|
||||
This fix computes a global scalar and a global 3-vector of forces,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar is the negative of the work done on the system, see above
|
||||
discussion. 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".
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar is the negative of the work done on the
|
||||
system, see the discussion above. It is only calculated if the
|
||||
*energy* keyword is enabled or :doc:`fix_modify energy yes
|
||||
<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
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
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
|
||||
""""""""""""""""
|
||||
|
||||
: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
|
||||
"""""""
|
||||
|
||||
@ -398,12 +398,13 @@ adds all inserted atoms of the specified type to the
|
||||
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
|
||||
number generator seed, the next timestep for MC exchanges, the number
|
||||
of MC step attempts and successes etc. 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 operation of the fix continues in an uninterrupted fashion.
|
||||
This fix writes the state of the fix to :doc:`binary restart files
|
||||
<restart>`. This includes information about the random number
|
||||
generator seed, the next timestep for MC exchanges, the number of MC
|
||||
step attempts and successes etc. 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 operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
.. 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>`.
|
||||
The fix will try to detect it and stop with an error.
|
||||
|
||||
None of the :doc:`fix_modify <fix_modify>` options are relevant to this
|
||||
fix.
|
||||
None of the :doc:`fix_modify <fix_modify>` options are relevant to
|
||||
this fix.
|
||||
|
||||
This fix computes a global vector of length 8, which can be accessed
|
||||
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".
|
||||
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
@ -103,28 +103,31 @@ Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
The instantaneous values of the extended variables are written to
|
||||
:doc:`binary restart files <restart>`. Because the state of the random
|
||||
number generator is not saved in restart files, this means you cannot
|
||||
do "exact" restarts with this fix, where the simulation continues on
|
||||
the same as if no restart had taken place. However, in a statistical
|
||||
sense, a restarted simulation should produce the same behavior.
|
||||
Note however that you should use a different seed each time you
|
||||
restart, otherwise the same sequence of random numbers will be used
|
||||
each time, which might lead to stochastic synchronization and
|
||||
:doc:`binary restart files <restart>`. Because the state of the
|
||||
random number generator is not saved in restart files, this means you
|
||||
cannot do "exact" restarts with this fix, where the simulation
|
||||
continues on the same as if no restart had taken place. However, in a
|
||||
statistical sense, a restarted simulation should produce the same
|
||||
behavior. Note however that you should use a different seed each time
|
||||
you restart, otherwise the same sequence of random numbers will be
|
||||
used each time, which might lead to stochastic synchronization and
|
||||
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
|
||||
*start* and *stop* keywords of the :doc:`run <run>` command. See the
|
||||
:doc:`run <run>` command for details of how to do this.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
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".
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
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>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the gravitational potential energy of the system to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the gravitational potential energy of the system 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>` *respa* option is supported by this
|
||||
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.
|
||||
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.
|
||||
|
||||
This fix computes a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. This scalar is the gravitational
|
||||
potential energy of the particles in the defined field, namely mass \*
|
||||
(g dot x) for each particles, where x and mass are the particles
|
||||
position and mass, and g is the gravitational field. The scalar value
|
||||
calculated by this fix is "extensive".
|
||||
:doc:`output commands <Howto_output>`. This scalar is the
|
||||
gravitational potential energy of the particles in the defined field,
|
||||
namely mass \* (g dot x) for each particles, where x and mass are the
|
||||
particles position and mass, and g is the gravitational field. The
|
||||
scalar value calculated 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>`.
|
||||
the :doc:`run <run>` command. This fix is not invoked during
|
||||
:doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -200,16 +200,20 @@ algorithm.
|
||||
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 add the energy of the bias potential to the system's
|
||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy of the bias potential 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 and global vector of length 12, which
|
||||
can be accessed by various :doc:`output commands <Howto_output>`. The
|
||||
scalar is the magnitude of the bias potential (energy units) applied on
|
||||
the current timestep. The vector stores the following quantities:
|
||||
This fix computes a global scalar and global vector of length 12,
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar is the magnitude of the bias potential
|
||||
(energy units) applied on the current timestep. The vector stores the
|
||||
following quantities:
|
||||
|
||||
* 1 = boost factor on this step (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".
|
||||
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
@ -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>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy of the bias potential to the system's potential
|
||||
energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy of the bias potential 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 and global vector of length 28,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar is the magnitude of the bias potential (energy units)
|
||||
applied on the current timestep, summed over all biased bonds. The
|
||||
vector stores the following quantities:
|
||||
which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar is the magnitude of the bias potential
|
||||
(energy units) applied on the current timestep, summed over all biased
|
||||
bonds. The vector stores the following quantities:
|
||||
|
||||
* 1 = average boost for all bonds on this step (unitless)
|
||||
* 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
|
||||
on this step.
|
||||
|
||||
The scalar and vector values calculated by this fix are all
|
||||
"intensive".
|
||||
The scalar value is an "extensive" quantity since it grows with the
|
||||
system size; the vector values are all "intensive".
|
||||
|
||||
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}`
|
||||
@ -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.
|
||||
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
@ -179,20 +179,25 @@ contains *xlat*\ , *ylat*\ , *zlat* keywords of the
|
||||
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 add the energy of interaction between atoms and the indenter to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. The energy of each particle interacting
|
||||
with the indenter is K/3 (r - R)\^3.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy of interaction between atoms and the
|
||||
indenter 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 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
|
||||
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.
|
||||
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.
|
||||
|
||||
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
|
||||
by this fix are "extensive".
|
||||
forces (on the indenter), which can be accessed by various
|
||||
: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,
|
||||
invoked by the :doc:`minimize <minimize>` command. Note that if you
|
||||
@ -204,10 +209,10 @@ check if you have done this.
|
||||
|
||||
.. note::
|
||||
|
||||
If you want the atom/indenter 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.
|
||||
If you want the atom/indenter 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
|
||||
""""""""""""
|
||||
|
||||
@ -230,7 +230,7 @@ conservation.
|
||||
|
||||
.. 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
|
||||
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
|
||||
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
|
||||
enable longer timesteps to be used (up to the numerical stability
|
||||
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 velocity in one of two forms: *vfull* or *vhalf*\ , which replaces
|
||||
the outdated option *yes*\ . The *gjf* option *vfull* outputs the on-site
|
||||
velocity given in :ref:`Gronbech-Jensen/Farago <Gronbech-Jensen>`; this velocity
|
||||
is shown to be systematically lower than the target temperature by a small
|
||||
amount, which grows quadratically with the timestep.
|
||||
The *gjf* option *vhalf* outputs the 2GJ half-step velocity given in
|
||||
:ref:`Gronbech Jensen/Gronbech-Jensen <2Gronbech-Jensen>`; for linear systems,
|
||||
this velocity is shown to not have any statistical errors for any stable time step.
|
||||
An overview of statistically correct Boltzmann and Maxwell-Boltzmann
|
||||
sampling of true on-site and true half-step velocities is given in
|
||||
:ref:`Gronbech-Jensen <1Gronbech-Jensen>`.
|
||||
Regardless of the choice of output velocity, the sampling of the configurational
|
||||
distribution of atom positions is the same, and linearly consistent with the
|
||||
target temperature.
|
||||
the outdated option *yes*\ . The *gjf* option *vfull* outputs the
|
||||
on-site velocity given in :ref:`Gronbech-Jensen/Farago
|
||||
<Gronbech-Jensen>`; this velocity is shown to be systematically lower
|
||||
than the target temperature by a small amount, which grows
|
||||
quadratically with the timestep. The *gjf* option *vhalf* outputs the
|
||||
2GJ half-step velocity given in :ref:`Gronbech Jensen/Gronbech-Jensen
|
||||
<2Gronbech-Jensen>`; for linear systems, this velocity is shown to not
|
||||
have any statistical errors for any stable time step. An overview of
|
||||
statistically correct Boltzmann and Maxwell-Boltzmann sampling of true
|
||||
on-site and true half-step velocities is given in
|
||||
:ref:`Gronbech-Jensen <1Gronbech-Jensen>`. Regardless of the choice
|
||||
of output velocity, the sampling of the configurational distribution
|
||||
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
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Langevin thermostatting to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. Note that use of this option requires
|
||||
setting the *tally* keyword to *yes*\ .
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*\ , but only if the *tally* keyword to set to
|
||||
*yes*\ . 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 cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive". Note that calculation of this quantity requires
|
||||
setting the *tally* keyword to *yes*\ .
|
||||
: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".
|
||||
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
|
||||
*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
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Langevin thermostatting to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`. Note that use of this option requires
|
||||
setting the *tally* keyword to *yes*\ .
|
||||
The cumulative energy change in the system imposed by this fix is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*\ , but only if the *tally* keyword to set to
|
||||
*yes*\ . 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 cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive". Note that calculation of this quantity requires
|
||||
setting the *tally* keyword to *yes*\ .
|
||||
: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".
|
||||
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
|
||||
*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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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 add the potential energy computed by LATTE to the system's
|
||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy computed by LATTE 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>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the LATTE DFTB contribution to the system's virial as part
|
||||
of :doc:`thermodynamic output <thermo_style>`. The default is *virial
|
||||
yes*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution compute by LATTE to the global
|
||||
pressure of the system via the :doc:`compute pressure
|
||||
<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
|
||||
: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 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::
|
||||
|
||||
If you want the potential energy associated with the DFTB
|
||||
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.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
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
|
||||
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
|
||||
motion of spherical rigid bodies when a lattice-Boltzmann fluid is
|
||||
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
|
||||
hydrodynamic forces. The spherical bodies are assumed to rotate as
|
||||
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
|
||||
: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
|
||||
computes a global scalar which can be accessed by various :doc:`output commands <Howto_output>`. The scalar value calculated by these
|
||||
fixes is "intensive". The scalar is the current temperature of the
|
||||
computes a global scalar which can be accessed by various :doc:`output
|
||||
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
|
||||
and their translational and rotational degrees of freedom. The
|
||||
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
|
||||
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
|
||||
: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
|
||||
default method for computing P.
|
||||
|
||||
The *energy* keyword can be used with fixes that support it.
|
||||
*energy yes* adds a contribution to the potential energy of the
|
||||
system. The fix's global and per-atom
|
||||
energy is included in the calculation performed by the :doc:`compute pe <compute_pe>` or :doc:`compute pe/atom <compute_pe_atom>`
|
||||
commands. See the :doc:`thermo_style <thermo_style>` command for info
|
||||
on how potential energy is output. For fixes that tally a global
|
||||
energy, it can be printed by using the keyword f_ID in the
|
||||
thermo_style custom command, where ID is the fix-ID of the appropriate
|
||||
fix.
|
||||
The *energy* keyword can be used with fixes that support it, which is
|
||||
explained at the bottom of their doc page. *Energy yes* will add a
|
||||
contribution to the potential energy of the system. More
|
||||
specifically, the fix's global or per-atom energy is included in the
|
||||
calculation performed by the :doc:`compute pe <compute_pe>` or
|
||||
:doc:`compute pe/atom <compute_pe_atom>` commands. The former is what
|
||||
is used the :doc:`thermo_style <thermo_style>` command for output of
|
||||
any quantity that includes the global potential energy of the system.
|
||||
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::
|
||||
|
||||
You must also specify the *energy yes* setting for a fix if you
|
||||
are using it when performing an :doc:`energy minimization <minimize>`
|
||||
and if you want the energy and forces it produces to be part of the
|
||||
optimization criteria.
|
||||
|
||||
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.
|
||||
If you are performing an :doc:`energy minimization <minimize>` with
|
||||
one of these fixes and want the energy and forces it produces to be
|
||||
part of the optimization criteria, you must specify the *energy
|
||||
yes* setting.
|
||||
|
||||
.. note::
|
||||
|
||||
You must specify the *virial yes* setting for a fix if you
|
||||
are doing :doc:`box relaxation <fix_box_relax>` and
|
||||
if you want virial contribution of the fix to be part of the
|
||||
relaxation criteria, although this seems unlikely.
|
||||
For most fixes that support the *energy* 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.
|
||||
|
||||
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::
|
||||
|
||||
This option is only supported by fixes that explicitly say
|
||||
so. For some of these (e.g. the :doc:`fix shake <fix_shake>` command)
|
||||
the default setting is *virial yes*\ , for others it is *virial no*\ .
|
||||
If you are performing an :doc:`energy minimization <minimize>` with
|
||||
:doc:`box relaxation <fix_box_relax>` and one of these fixes and
|
||||
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
|
||||
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
|
||||
each time a temperature is computed. Only fix styles that calculate
|
||||
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
|
||||
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
|
||||
simulation box or via :doc:`fix evaporate <fix_evaporate>`), then
|
||||
this option should be used to insure the temperature is correctly
|
||||
simulation box or via :doc:`fix evaporate <fix_evaporate>`), then this
|
||||
option should be used to insure the temperature is correctly
|
||||
normalized.
|
||||
|
||||
.. 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
|
||||
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
|
||||
scalar and global vector quantities computed by the fix.
|
||||
|
||||
The scalar is the cumulative energy change due to the fix. This is
|
||||
also the energy added to the potential energy by the
|
||||
:doc:`fix_modify <fix_modify>` *energy* command. With this command, the
|
||||
thermo keyword *etotal* prints the conserved quantity of the MSST
|
||||
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.
|
||||
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 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).
|
||||
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
|
||||
|
||||
fix msst all msst z
|
||||
fix_modify msst energy yes
|
||||
variable dhug equal f_msst[1]
|
||||
variable dray equal f_msst[2]
|
||||
variable lgr_vel equal f_msst[3]
|
||||
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
|
||||
|
||||
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".
|
||||
thermo_style custom step temp ke pe lz pzz econserve v_dhug v_dray v_lgr_vel v_lgr_pos f_msst
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
@ -594,17 +594,20 @@ compute temperature on a subset of atoms.
|
||||
specified by the *press* keyword will be unaffected by the *temp*
|
||||
setting.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by these
|
||||
fixes to add the energy change induced by Nose/Hoover thermostatting
|
||||
and barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by these 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.
|
||||
|
||||
These fixes compute a global scalar and a global vector of quantities,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar value calculated by these fixes is "extensive"; the vector
|
||||
values are "intensive".
|
||||
These fixes compute 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 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
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
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
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover barostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
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
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover barostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
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
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover barostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
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 :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||
supported by these fixes. You can use them to assign a
|
||||
:doc:`compute <compute>` you have defined to this fix which will be used
|
||||
in its thermostatting or barostatting procedure, as described above.
|
||||
If you do this, note that the kinetic energy derived from the compute
|
||||
supported by this fix. You can use them to assign a :doc:`compute
|
||||
<compute>` you have defined to this fix which will be used in its
|
||||
thermostatting or barostatting procedure, as described above. If you
|
||||
do this, note that the kinetic energy derived from the compute
|
||||
temperature should be consistent with the virial term computed using
|
||||
all atoms for the pressure. LAMMPS will warn you if you choose to
|
||||
compute temperature on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by these
|
||||
fixes to add the energy change induced by Nose/Hoover thermostatting
|
||||
and barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`. Either way, this energy is \*not\*
|
||||
included in the definition of internal energy E when calculating the value
|
||||
of Delta in the above equation.
|
||||
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. Note that this energy is \*not\* included in
|
||||
the definition of internal energy E when calculating the value of
|
||||
Delta in the above equation.
|
||||
|
||||
These fixes compute a global scalar and a global vector of quantities,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar value calculated by these fixes is "extensive"; the vector
|
||||
values are "intensive".
|
||||
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 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),
|
||||
followed by all the internal Nose/Hoover thermostat and barostat
|
||||
variables defined for :doc:`fix npt <fix_nh>`. Delta is the deviation
|
||||
of the temperature from the target temperature, given by the above equation.
|
||||
Us and up are the shock and particle velocity corresponding to a steady
|
||||
shock calculated from the RH conditions. They have units of distance/time.
|
||||
The vector stores three quantities unique to this fix (:math:`\Delta`,
|
||||
Us, and up), followed by all the internal Nose/Hoover thermostat and
|
||||
barostat variables defined for :doc:`fix npt <fix_nh>`. Delta is the
|
||||
deviation of the temperature from the target temperature, given by the
|
||||
above equation. Us and up are the shock and particle velocity
|
||||
corresponding to a steady shock calculated from the RH
|
||||
conditions. They have units of distance/time.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
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,
|
||||
plus the additional ones mentioned above.
|
||||
All the usual restrictions for :doc:`fix npt <fix_nh>` apply, plus the
|
||||
additional ones mentioned above.
|
||||
|
||||
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
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting and
|
||||
barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting and
|
||||
barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix npt <fix_nh>` command.
|
||||
|
||||
@ -487,27 +487,31 @@ compute temperature on a subset of atoms.
|
||||
.. note::
|
||||
|
||||
If both the *temp* and *press* keywords are used in a single
|
||||
thermo_modify command (or in two separate commands), then the order in
|
||||
which the keywords are specified is important. Note that a :doc:`pressure compute <compute_pressure>` defines its own temperature compute as
|
||||
an argument when it is specified. The *temp* keyword will override
|
||||
this (for the pressure compute being used by fix npt), but only if the
|
||||
*temp* keyword comes after the *press* keyword. If the *temp* keyword
|
||||
comes before the *press* keyword, then the new pressure compute
|
||||
specified by the *press* keyword will be unaffected by the *temp*
|
||||
setting.
|
||||
thermo_modify command (or in two separate commands), then the order
|
||||
in which the keywords are specified is important. Note that a
|
||||
:doc:`pressure compute <compute_pressure>` defines its own
|
||||
temperature compute as an argument when it is specified. The
|
||||
*temp* keyword will override this (for the pressure compute being
|
||||
used by fix npt), but only if the *temp* keyword comes after the
|
||||
*press* keyword. If the *temp* keyword comes before the *press*
|
||||
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
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting
|
||||
and barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by this fix, due to
|
||||
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.
|
||||
|
||||
This fix computes a global scalar and a global vector of quantities,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar value calculated by this fix is "extensive"; the vector
|
||||
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 also computes a global vector of quantities, which can be
|
||||
accessed by various :doc:`output commands <Howto_output>`. Rhe vector
|
||||
values are "intensive".
|
||||
|
||||
The scalar is the cumulative energy change due to the fix.
|
||||
|
||||
The vector stores internal Nose/Hoover thermostat and barostat
|
||||
variables. The number and meaning of the vector values depends on
|
||||
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.
|
||||
|
||||
Note that these are NOT the computes used by thermodynamic output (see
|
||||
the :doc:`thermo_style <thermo_style>` command) with ID = *thermo_temp*
|
||||
and *thermo_press*. This means you can change the attributes of this
|
||||
fix's temperature or pressure via the
|
||||
:doc:`compute_modify <compute_modify>` command or print this temperature
|
||||
or pressure during thermodynamic output via the :doc:`thermo_style custom <thermo_style>` command using the appropriate compute-ID.
|
||||
It also means that changing attributes of *thermo_temp* or
|
||||
*thermo_press* will have no effect on this fix.
|
||||
the :doc:`thermo_style <thermo_style>` command) with ID =
|
||||
*thermo_temp* and *thermo_press*. This means you can change the
|
||||
attributes of this fix's temperature or pressure via the
|
||||
:doc:`compute_modify <compute_modify>` command or print this
|
||||
temperature or pressure during thermodynamic output via the
|
||||
:doc:`thermo_style custom <thermo_style>` command using the
|
||||
appropriate compute-ID. It also means that changing attributes of
|
||||
*thermo_temp* or *thermo_press* will have no effect on this fix.
|
||||
|
||||
Like other fixes that perform thermostatting, this fix can be used
|
||||
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.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||
supported by this fix. You can use them to assign a
|
||||
:doc:`compute <compute>` you have defined to this fix which will be used
|
||||
in its thermostatting or barostatting procedure. If you do this, note
|
||||
that the kinetic energy derived from the compute temperature should be
|
||||
supported by this fix. You can use them to assign a :doc:`compute
|
||||
<compute>` you have defined to this fix which will be used in its
|
||||
thermostatting or barostatting procedure. If you do this, note that
|
||||
the kinetic energy derived from the compute temperature should be
|
||||
consistent with the virial term computed using all atoms for the
|
||||
pressure. LAMMPS will warn you if you choose to compute temperature
|
||||
on a subset of atoms.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting and
|
||||
barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover thermostat 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 operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
This fix writes the state of the Nose/Hoover thermostat 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 operation of 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 :doc:`compute <compute>` you have
|
||||
defined to this fix which will be used in its thermostatting
|
||||
procedure.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover thermostat 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 operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
This fix writes the state of the Nose/Hoover thermostat 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 operation of 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 :doc:`compute <compute>` you have
|
||||
defined to this fix which will be used in its thermostatting
|
||||
procedure.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover thermostat 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 operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
This fix writes the state of the Nose/Hoover thermostat 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 operation of 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 :doc:`compute <compute>` you have
|
||||
defined to this fix which will be used in its thermostatting
|
||||
procedure.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
quantities as does the :doc:`fix nvt <fix_nh>` command.
|
||||
|
||||
@ -41,19 +41,21 @@ velocity.
|
||||
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>`
|
||||
command for info on how to re-specify a fix in an input script that
|
||||
reads a restart file, so that the operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
This fix writes the state of the Nose/Hoover thermostat 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 operation of 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 :doc:`compute <compute>` you have
|
||||
defined to this fix which will be used in its thermostatting
|
||||
procedure.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the state of the Nose/Hoover thermostat 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 operation of the fix continues in an
|
||||
uninterrupted fashion.
|
||||
This fix writes the state of the Nose/Hoover thermostat 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 operation of 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 :doc:`compute <compute>` you have
|
||||
defined to this fix which will be used in its thermostatting
|
||||
procedure.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change induced by Nose/Hoover thermostatting to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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 the same global scalar and global vector of
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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 add the potential energy of atom interactions with the grain
|
||||
boundary driving force to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy of atom interactions with the
|
||||
grain boundary driving force 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>` *respa* option is supported by these
|
||||
fixes. This allows to set at which level of the :doc:`r-RESPA <run_style>`
|
||||
integrator a fix is adding its forces. Default is the outermost level.
|
||||
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 a fix is adding its forces. Default is the
|
||||
outermost level.
|
||||
|
||||
This fix calculates a global scalar which can be accessed by various
|
||||
: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.
|
||||
|
||||
No parameter of this fix can be used with the *start/stop* keywords of
|
||||
the :doc:`run <run>` command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
the :doc:`run <run>` command.
|
||||
|
||||
This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This 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.
|
||||
|
||||
|
||||
@ -26,22 +26,24 @@ Examples
|
||||
Description
|
||||
"""""""""""
|
||||
|
||||
The fix applies a synthetic driving force to a grain boundary which can
|
||||
be used for the investigation of grain boundary motion. The affiliation
|
||||
of atoms to either of the two grains forming the grain boundary is
|
||||
determined from an orientation-dependent order parameter as described
|
||||
in :ref:`(Ulomek) <Ulomek>`. The potential energy of atoms is either increased by an amount
|
||||
of 0.5*\ *u0* or -0.5*\ *u0* according to the orientation of the surrounding
|
||||
crystal. This creates a potential energy gradient which pushes atoms near
|
||||
the grain boundary to orient according to the energetically favorable
|
||||
grain orientation. This fix is designed for applications in bicrystal system
|
||||
with one grain boundary and open ends, or two opposite grain boundaries in
|
||||
a periodic system. In either case, the entire system can experience a
|
||||
displacement during the simulation which needs to be accounted for in the
|
||||
evaluation of the grain boundary velocity. While the basic method is
|
||||
described in :ref:`(Ulomek) <Ulomek>`, the 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
|
||||
The fix applies a synthetic driving force to a grain boundary which
|
||||
can be used for the investigation of grain boundary motion. The
|
||||
affiliation of atoms to either of the two grains forming the grain
|
||||
boundary is determined from an orientation-dependent order parameter
|
||||
as described in :ref:`(Ulomek) <Ulomek>`. The potential energy of
|
||||
atoms is either increased by an amount of 0.5*\ *u0* or -0.5*\ *u0*
|
||||
according to the orientation of the surrounding crystal. This creates
|
||||
a potential energy gradient which pushes atoms near the grain boundary
|
||||
to orient according to the energetically favorable grain
|
||||
orientation. This fix is designed for applications in bicrystal system
|
||||
with one grain boundary and open ends, or two opposite grain
|
||||
boundaries in a periodic system. In either case, the entire system can
|
||||
experience a displacement during the simulation which needs to be
|
||||
accounted for in the evaluation of the grain boundary velocity. While
|
||||
the basic method is described in :ref:`(Ulomek) <Ulomek>`, the
|
||||
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::
|
||||
|
||||
@ -60,60 +62,69 @@ atom j is given by the following formulas
|
||||
which are fully explained in :ref:`(Ulomek) <Ulomek>`
|
||||
and :ref:`(Schratt & Mohles) <Schratt>`.
|
||||
|
||||
The force on each atom is the negative gradient of the synthetic potential energy. It
|
||||
depends on the surrounding of this atom. An atom far from the grain boundary does not
|
||||
experience a synthetic force as its surrounding is that of an oriented single crystal
|
||||
and thermal fluctuations are masked by the parameter *eta*\ . Near the grain boundary
|
||||
however, the gradient is nonzero and synthetic force terms are computed.
|
||||
The orientationsFile specifies the perfect oriented crystal basis vectors for the
|
||||
two adjoining crystals. The first three lines (line=row vector) for the energetically penalized and the
|
||||
last three lines for the energetically favored grain assuming *u0* is positive. For
|
||||
negative *u0*, this is reversed. With the *cutoff* parameter, the size of the region around
|
||||
each atom which is used in the order parameter computation is defined. The cutoff must be
|
||||
smaller than the interaction range of the MD potential. It should at
|
||||
least include the nearest neighbor shell. For high temperatures or low angle
|
||||
grain boundaries, it might be beneficial to increase the cutoff in order to get a more
|
||||
precise identification of the atoms surrounding. However, computation time will
|
||||
increase as more atoms are considered in the order parameter and force computation.
|
||||
It is also worth noting that the cutoff radius must not exceed the communication
|
||||
distance for ghost atoms in LAMMPS. With orientationsFile, the
|
||||
6 oriented crystal basis vectors is specified. Each line of the input file
|
||||
contains the three components of a primitive lattice vector oriented according to
|
||||
the grain orientation in the simulation box. The first (last) three lines correspond
|
||||
to the primitive lattice vectors of the first (second) grain. An example for
|
||||
a :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.
|
||||
|
||||
The force on each atom is the negative gradient of the synthetic
|
||||
potential energy. It depends on the surrounding of this atom. An atom
|
||||
far from the grain boundary does not experience a synthetic force as
|
||||
its surrounding is that of an oriented single crystal and thermal
|
||||
fluctuations are masked by the parameter *eta*\ . Near the grain
|
||||
boundary however, the gradient is nonzero and synthetic force terms
|
||||
are computed. The orientationsFile specifies the perfect oriented
|
||||
crystal basis vectors for the two adjoining crystals. The first three
|
||||
lines (line=row vector) for the energetically penalized and the last
|
||||
three lines for the energetically favored grain assuming *u0* is
|
||||
positive. For negative *u0*, this is reversed. With the *cutoff*
|
||||
parameter, the size of the region around each atom which is used in
|
||||
the order parameter computation is defined. The cutoff must be smaller
|
||||
than the interaction range of the MD potential. It should at least
|
||||
include the nearest neighbor shell. For high temperatures or low angle
|
||||
grain boundaries, it might be beneficial to increase the cutoff in
|
||||
order to get a more precise identification of the atoms
|
||||
surrounding. However, computation time will increase as more atoms are
|
||||
considered in the order parameter and force computation. It is also
|
||||
worth noting that the cutoff radius must not exceed the communication
|
||||
distance for ghost atoms in LAMMPS. With orientationsFile, the 6
|
||||
oriented crystal basis vectors is specified. Each line of the input
|
||||
file contains the three components of a primitive lattice vector
|
||||
oriented according to the grain orientation in the simulation box. The
|
||||
first (last) three lines correspond to the primitive lattice vectors
|
||||
of the first (second) grain. An example for a
|
||||
: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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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
|
||||
add the potential energy of atom interactions with the grain boundary
|
||||
driving force to the system's potential energy as part of thermodynamic output.
|
||||
The total sum of added synthetic potential energy is computed and can be accessed
|
||||
by various output options. The order parameter as well as the thermally masked
|
||||
output parameter are stored in per-atom arrays and can also be accessed by various
|
||||
:doc:`output commands <Howto_output>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy of atom interactions with the
|
||||
grain boundary driving force 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>`.
|
||||
|
||||
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.
|
||||
This fix calculates a per-atom array with 2 columns, which can be
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
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.
|
||||
|
||||
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
|
||||
|
||||
@ -66,7 +66,8 @@ plumed fix in the LAMMPS input.
|
||||
|
||||
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 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
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
When performing a restart of a calculation that involves PLUMED you must
|
||||
include a RESTART command in the PLUMED input file as detailed in the
|
||||
`PLUMED documentation <plumeddocs_>`_. When the restart command is found in
|
||||
the PLUMED input PLUMED will append to the files that were generated in
|
||||
the run that was performed previously. No part of the PLUMED restart
|
||||
data is included in the LAMMPS restart files. Furthermore, any history
|
||||
dependent bias potentials that were accumulated in previous calculations
|
||||
will be read in when the RESTART command is included in the PLUMED
|
||||
input.
|
||||
When performing a restart of a calculation that involves PLUMED you
|
||||
must include a RESTART command in the PLUMED input file as detailed in
|
||||
the `PLUMED documentation <plumeddocs_>`_. When the restart command
|
||||
is found in the PLUMED input PLUMED will append to the files that were
|
||||
generated in the run that was performed previously. No part of the
|
||||
PLUMED restart data is included in the LAMMPS restart files.
|
||||
Furthermore, any history dependent bias potentials that were
|
||||
accumulated in previous calculations will be read in when the RESTART
|
||||
command is included in the PLUMED input.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is not supported by
|
||||
this fix.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
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
|
||||
:doc:`output commands <Howto_output>` within LAMMPS. All the quantities
|
||||
of interest can be output by commands that are native to PLUMED,
|
||||
however.
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution from the biasing force to the global
|
||||
pressure of the system via the :doc:`compute pressure
|
||||
<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
|
||||
""""""""""""
|
||||
|
||||
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
|
||||
""""""""""""""""
|
||||
|
||||
@ -39,14 +39,15 @@ useful for treating a large biomolecule as a collection of connected,
|
||||
coarse-grained particles.
|
||||
|
||||
The coupling, associated motion constraints, and time integration is
|
||||
performed by the software package `Parallelizable Open source Efficient Multibody Software (POEMS)` which computes the
|
||||
constrained rigid-body motion of articulated (jointed) multibody
|
||||
systems :ref:`(Anderson) <Anderson>`. POEMS was written and is distributed
|
||||
by Prof Kurt Anderson, his graduate student Rudranarayan Mukherjee,
|
||||
and other members of his group at Rensselaer Polytechnic Institute
|
||||
(RPI). Rudranarayan developed the LAMMPS/POEMS interface. For
|
||||
copyright information on POEMS and other details, please refer to the
|
||||
documents in the poems directory distributed with LAMMPS.
|
||||
performed by the software package `Parallelizable Open source
|
||||
Efficient Multibody Software (POEMS)` which computes the constrained
|
||||
rigid-body motion of articulated (jointed) multibody systems
|
||||
:ref:`(Anderson) <Anderson>`. POEMS was written and is distributed by
|
||||
Prof Kurt Anderson, his graduate student Rudranarayan Mukherjee, and
|
||||
other members of his group at Rensselaer Polytechnic Institute (RPI).
|
||||
Rudranarayan developed the LAMMPS/POEMS interface. For copyright
|
||||
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
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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
|
||||
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.
|
||||
|
||||
No global or per-atom quantities are stored by this fix for access by
|
||||
various :doc:`output commands <Howto_output>`. No parameter of this fix
|
||||
can be used with the *start/stop* keywords of the :doc:`run <run>`
|
||||
command. This fix is not invoked during :doc:`energy minimization <minimize>`.
|
||||
various :doc:`output commands <Howto_output>`. No parameter of this
|
||||
fix can be used with the *start/stop* keywords of the :doc:`run <run>`
|
||||
command. This fix is not invoked during :doc:`energy minimization
|
||||
<minimize>`.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
This fix is part of the :ref:`POEMS <PKG-POEMS>` package. It is only enabled if LAMMPS
|
||||
was built with that package, which also requires the POEMS library be
|
||||
built and linked with LAMMPS. See the :doc:`Build package <Build_package>` doc page for more info.
|
||||
This fix is part of the :ref:`POEMS <PKG-POEMS>` package. It is only
|
||||
enabled if LAMMPS was built with that package, which also requires the
|
||||
POEMS library be built and linked with LAMMPS. See the :doc:`Build
|
||||
package <Build_package>` doc page for more info.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
@ -42,11 +42,12 @@ Examples
|
||||
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
|
||||
between the magnetic spins in the defined group and an external
|
||||
magnetic field:
|
||||
Style *zeeman* is used for the simulation of the interaction between
|
||||
the magnetic spins in the defined group and an external magnetic
|
||||
field:
|
||||
|
||||
.. math::
|
||||
|
||||
@ -62,17 +63,17 @@ with:
|
||||
|
||||
The field value in Tesla is multiplied by the gyromagnetic
|
||||
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
|
||||
single spin (of norm :math:`\mu_i = 1.0`) submitted to an external
|
||||
magnetic field of :math:`\vert B_{ext}\vert = 10.0\; \mathrm{Tesla}` (and oriented along the z
|
||||
axis).
|
||||
The upper plot shows the average magnetization along the
|
||||
external magnetic field axis and the lower plot the Zeeman
|
||||
energy, both as a function of temperature.
|
||||
The reference result is provided by the plot of the Langevin
|
||||
function for the same parameters.
|
||||
As a comparison, the figure below displays the simulation of a single
|
||||
spin (of norm :math:`\mu_i = 1.0`) submitted to an external magnetic
|
||||
field of :math:`\vert B_{ext}\vert = 10.0\; \mathrm{Tesla}` (and
|
||||
oriented along the z axis). The upper plot shows the average
|
||||
magnetization along the external magnetic field axis and the lower
|
||||
plot the Zeeman energy, both as a function of temperature. The
|
||||
reference result is provided by the plot of the Langevin function for
|
||||
the same parameters.
|
||||
|
||||
.. image:: JPG/zeeman_langevin.jpg
|
||||
:align: center
|
||||
@ -88,10 +89,12 @@ for the magnetic spins in the defined group:
|
||||
|
||||
.. 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.
|
||||
If :math:`K > 0`, an easy axis is defined, and if :math:`K < 0`, an easy plane is defined.
|
||||
with :math:`n` defining the direction of the anisotropy, and :math:`K`
|
||||
(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
|
||||
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_3} \right)^2
|
||||
|
||||
with :math:`K_1` and :math:`K_{2c}` (in eV) the intensity coefficients and
|
||||
:math:`\vec{n}_1`, :math:`\vec{n}_2` and :math:`\vec{n}_3` defining the three anisotropic directions
|
||||
defined by the command (from *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
|
||||
with :math:`K_1` and :math:`K_{2c}` (in eV) the intensity coefficients
|
||||
and :math:`\vec{n}_1`, :math:`\vec{n}_2` and :math:`\vec{n}_3`
|
||||
defining the three anisotropic directions defined by the command (from
|
||||
*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
|
||||
edges), and :math:`K_1 > 0` defines a nickel type anisotropy (easy axis
|
||||
along the :math:`(1 1 1)`-type cube diagonals).
|
||||
:math:`K_2^c > 0` also defines easy axis along the :math:`(1 1 1)`-type cube
|
||||
diagonals.
|
||||
See chapter 2 of :ref:`(Skomski) <Skomski1>` for more details on cubic
|
||||
anisotropies.
|
||||
edges), and :math:`K_1 > 0` defines a nickel type anisotropy (easy
|
||||
axis along the :math:`(1 1 1)`-type cube diagonals). :math:`K_2^c >
|
||||
0` also defines easy axis along the :math:`(1 1 1)`-type cube
|
||||
diagonals. See chapter 2 of :ref:`(Skomski) <Skomski1>` for more
|
||||
details on cubic anisotropies.
|
||||
|
||||
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
|
||||
@ -134,32 +137,35 @@ Those styles can be combined within one single command line.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
By default, the energy associated to this fix is not added to the potential
|
||||
energy of the system.
|
||||
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,
|
||||
No information about this fix is written to :doc:`binary restart files
|
||||
<restart>`.
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
fix 1 all precession/spin zeeman 1.0 0.0 0.0 1.0
|
||||
fix_modify 1 energy yes
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy associated with the spin precession
|
||||
torque 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>`.
|
||||
: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
|
||||
""""""""""""
|
||||
|
||||
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
|
||||
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
|
||||
than one precession type (for example combining an anisotropy and a Zeeman interactions)
|
||||
has to be declared, they have to be chained in the same command
|
||||
line (as shown in the examples above).
|
||||
The *precession/spin* style can only be declared once. If more than
|
||||
one precession type (for example combining an anisotropy and a Zeeman
|
||||
interactions) has to be declared, they have to be chained in the same
|
||||
command line (as shown in the examples above).
|
||||
|
||||
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
|
||||
sense, a restarted simulation should produce similar behaviors of the
|
||||
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*,
|
||||
*N_f*, *eta*\ , and *beta* and set *tscale* = 0 if the system is
|
||||
compressed during the first run.
|
||||
should write explicitly the same value for *q*\ , *mu*\ , *damp*\ ,
|
||||
*f_max*, *N_f*, *eta*\ , and *beta* and set *tscale* = 0 if the system
|
||||
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
|
||||
scalar and global vector quantities computed by the fix. The global
|
||||
vector contains five values in this order:
|
||||
scalar and global vector quantities computed by the fix.
|
||||
|
||||
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*,
|
||||
*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}`.
|
||||
|
||||
To print these quantities to the log file with descriptive column
|
||||
headers, the following LAMMPS commands are suggested. Here the
|
||||
: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.
|
||||
headers, the following LAMMPS commands are suggested.
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
fix fix_id all msst z
|
||||
fix_modify fix_id energy yes
|
||||
variable dhug equal f_fix_id[1]
|
||||
variable dray equal f_fix_id[2]
|
||||
variable lgr_vel equal f_fix_id[3]
|
||||
variable lgr_pos equal f_fix_id[4]
|
||||
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
|
||||
energy as an extra part of :math:`E^{tot}`. This global scalar and the
|
||||
vector of 5 quantities can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
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>`.
|
||||
It is worth noting that the temp keyword for the :doc:`thermo_style
|
||||
<thermo_style>` command prints the instantaneous classical temperature
|
||||
:math:`T^{cl}` as described by the :doc:`fix qtb <fix_qtb>` command.
|
||||
|
||||
----------
|
||||
|
||||
@ -200,7 +209,8 @@ Restrictions
|
||||
""""""""""""
|
||||
|
||||
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
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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 add the potential energy associated with this fix to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the potential energy associated with this 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>`.
|
||||
|
||||
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>`
|
||||
integrator the fix is adding its forces. Default is the outermost level.
|
||||
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.
|
||||
|
||||
.. note::
|
||||
|
||||
|
||||
@ -45,11 +45,34 @@ temperatures :ref:`(Pedersen) <Pedersen>`.
|
||||
An example of using the interface pinning method is located in the
|
||||
*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
|
||||
""""""""""""
|
||||
|
||||
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
|
||||
""""""""""""""""
|
||||
|
||||
@ -752,25 +752,17 @@ rigid/nvt.
|
||||
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
|
||||
*mol* keyword is used, in which case an auxiliary file is written out
|
||||
with rigid body information each time a restart file is written, as
|
||||
No information about the 4 NVE rigid styles is written to :doc:`binary
|
||||
restart files <restart>`. The exception is if the *infile* or *mol*
|
||||
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,
|
||||
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 barostat. 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
|
||||
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 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 barostat. 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 operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||
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
|
||||
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
|
||||
various :doc:`output commands <Howto_output>`. The scalar value
|
||||
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
|
||||
accessed by various :doc:`output commands <Howto_output>`. The scalar
|
||||
value calculated by these fixes is "extensive". The scalar is the
|
||||
cumulative energy change due to the thermostatting and barostatting
|
||||
the fix performs.
|
||||
is the same cumulative energy change due to these fixes described
|
||||
above. The scalar value calculated by this fix is "extensive".
|
||||
|
||||
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
|
||||
global array of values which can be accessed by various :doc:`output commands <Howto_output>`. Similar information about the bodies
|
||||
defined by the *rigid/small* styles can be accessed via the :doc:`compute rigid/local <compute_rigid_local>` command.
|
||||
global array of values which can be accessed by various :doc:`output
|
||||
commands <Howto_output>`. Similar information about the bodies
|
||||
defined by the *rigid/small* styles can be accessed via the
|
||||
:doc:`compute rigid/local <compute_rigid_local>` command.
|
||||
|
||||
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
|
||||
|
||||
@ -191,22 +191,29 @@ LAMMPS closely follows (:ref:`Andersen (1983) <Andersen3>`).
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by this
|
||||
fix to add the contribution due to keeping the constraints to the
|
||||
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>`.
|
||||
|
||||
No information about these fixes is written to :doc:`binary restart files <restart>`. None of the :doc:`fix_modify <fix_modify>` options
|
||||
are relevant to these fixes. 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>`.
|
||||
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>`.
|
||||
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
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
|
||||
fix defined in a simulation.
|
||||
|
||||
@ -48,10 +48,12 @@ Description
|
||||
"""""""""""
|
||||
|
||||
This fix implements several options of steered MD (SMD) as reviewed in
|
||||
:ref:`(Izrailev) <Izrailev>`, which allows to induce conformational changes
|
||||
in systems and to compute the potential of mean force (PMF) along the
|
||||
assumed reaction coordinate :ref:`(Park) <Park>` based on Jarzynski's
|
||||
equality :ref:`(Jarzynski) <Jarzynski>`. This fix borrows a lot from :doc:`fix spring <fix_spring>` and :doc:`fix setforce <fix_setforce>`.
|
||||
:ref:`(Izrailev) <Izrailev>`, which allows to induce conformational
|
||||
changes in systems and to compute the potential of mean force (PMF)
|
||||
along the assumed reaction coordinate :ref:`(Park) <Park>` based on
|
||||
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*
|
||||
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
|
||||
the operation of the fix continues in an uninterrupted fashion.
|
||||
|
||||
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 the
|
||||
system's virial as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The default is *virial no*
|
||||
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 no <fix_modify>`.
|
||||
|
||||
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>`
|
||||
integrator the fix is adding its forces. Default is the outermost level.
|
||||
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>` 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
|
||||
by various :doc:`output commands <Howto_output>`. The quantities in the
|
||||
vector are in this order: the x-, y-, and z-component of the pulling
|
||||
force, the total force in direction of the pull, the equilibrium
|
||||
distance of the spring, the distance between the two reference points,
|
||||
and finally the accumulated PMF (the sum of pulling forces times
|
||||
displacement).
|
||||
by various :doc:`output commands <Howto_output>`. The quantities in
|
||||
the vector are in this order: the x-, y-, and z-component of the
|
||||
pulling force, the total force in direction of the pull, the
|
||||
equilibrium distance of the spring, the distance between the two
|
||||
reference points, and finally the accumulated PMF (the sum of pulling
|
||||
forces times displacement).
|
||||
|
||||
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
|
||||
(group-ID) or the negative of the force on the second group (group-ID2).
|
||||
The vector values calculated by this fix are "extensive".
|
||||
(group-ID) or the negative of the force on the second group
|
||||
(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
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
@ -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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
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 add the energy stored in the spring to the system's potential
|
||||
energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy stored in the spring 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>` *respa* option is supported by this
|
||||
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
|
||||
coordinates are recomputed.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy stored in all the springs to the system's potential
|
||||
energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy stored in all the springs 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>` *respa* option is supported by this
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
This fix writes the original coordinates of tethered atoms to :doc:`binary restart files <restart>`, so that the spring effect will be the
|
||||
same in a restarted simulation. 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
|
||||
operation of the fix continues in an uninterrupted fashion.
|
||||
This fix writes the original coordinates of tethered atoms to
|
||||
:doc:`binary restart files <restart>`, so that the spring effect will
|
||||
be the same in a restarted simulation. 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 operation of the
|
||||
fix continues in an uninterrupted fashion.
|
||||
|
||||
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 system's
|
||||
potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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
|
||||
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 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
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change implied by a velocity rescaling to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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 cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive".
|
||||
: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
|
||||
|
||||
@ -142,32 +142,36 @@ ensemble.
|
||||
Restart, fix_modify, output, run start/stop, minimize info
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
These fixes write the cumulative global energy change and the
|
||||
random number generator states 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 selected fix continues in an uninterrupted fashion. The
|
||||
random number generator state can only be restored when the number
|
||||
of processors remains unchanged from what is recorded in the restart file.
|
||||
|
||||
No information about these fixes are written to :doc:`binary restart files <restart>`.
|
||||
These fixes write the cumulative global energy change and the random
|
||||
number generator states 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 selected fix continues in an uninterrupted fashion. The random
|
||||
number generator state can only be restored when the number of
|
||||
processors remains unchanged from what is recorded in the restart
|
||||
file.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* option is supported by these
|
||||
fixes. You can use it to assign a temperature :doc:`compute <compute>`
|
||||
you have defined to these fixes which will be used in its thermostatting
|
||||
procedure, as described above. For consistency, the group used by
|
||||
these fixes and by the compute should be the same.
|
||||
fixes. You can use it to assign a temperature :doc:`compute
|
||||
<compute>` you have defined to these fixes which will be used in its
|
||||
thermostatting procedure, as described above. For consistency, the
|
||||
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 *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>`.
|
||||
The cumulative energy change in the system imposed by these fixes is
|
||||
included in the :doc:`thermodynamic output <thermo_style>` keywords
|
||||
*ecouple* and *econserve*. See the :doc:`thermo_style <thermo_style>`
|
||||
doc page for details.
|
||||
|
||||
These fixes compute a global scalar which can be accessed by various
|
||||
:doc:`output commands <Howto_output>`. The scalar is the cumulative
|
||||
energy change due to the fix. The scalar value calculated by this fix
|
||||
is "extensive".
|
||||
: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".
|
||||
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
@ -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.
|
||||
|
||||
Note that this is NOT the compute used by thermodynamic output (see
|
||||
the :doc:`thermo_style <thermo_style>` command) with ID = *thermo_temp*.
|
||||
This means you can change the attributes of this fix's temperature
|
||||
(e.g. its degrees-of-freedom) via the
|
||||
:doc:`compute_modify <compute_modify>` command or print this temperature
|
||||
during thermodynamic output via the :doc:`thermo_style custom <thermo_style>` command using the appropriate compute-ID.
|
||||
It also means that changing attributes of *thermo_temp* will have no
|
||||
effect on this fix.
|
||||
the :doc:`thermo_style <thermo_style>` command) with ID =
|
||||
*thermo_temp*. This means you can change the attributes of this fix's
|
||||
temperature (e.g. its degrees-of-freedom) via the :doc:`compute_modify
|
||||
<compute_modify>` command or print this temperature during
|
||||
thermodynamic output via the :doc:`thermo_style custom <thermo_style>`
|
||||
command using the appropriate compute-ID. It also means that changing
|
||||
attributes of *thermo_temp* will have no effect on this fix.
|
||||
|
||||
Like other fixes that perform thermostatting, this fix can be used
|
||||
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
|
||||
temperature on the x-component of velocity or only calculating
|
||||
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
|
||||
to assign a temperature compute to this fix that includes such a bias
|
||||
term. See the doc pages for individual :doc:`compute commands <compute>` to determine which ones include a bias. In
|
||||
this case, the thermostat works in the following manner: the current
|
||||
temperature is calculated taking the bias into account, bias is
|
||||
removed from each atom, thermostatting is performed on the remaining
|
||||
thermal degrees of freedom, and the bias is added back in.
|
||||
default, but only if the :doc:`fix_modify <fix_modify>` command is
|
||||
used to assign a temperature compute to this fix that includes such a
|
||||
bias term. See the doc pages for individual :doc:`compute commands
|
||||
<compute>` to determine which ones include a bias. In this case, the
|
||||
thermostat works in the following manner: the current temperature is
|
||||
calculated taking the bias into account, bias is removed from each
|
||||
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
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change implied by a velocity rescaling to the
|
||||
system's potential energy as part of :doc:`thermodynamic output
|
||||
<thermo_style>`.
|
||||
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 cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive".
|
||||
: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
|
||||
|
||||
@ -38,7 +38,8 @@ particles.
|
||||
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
|
||||
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
|
||||
this fix and by the compute should be the same.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy change implied by a velocity rescaling to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
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 cumulative
|
||||
energy change due to this fix. The scalar value calculated by this
|
||||
fix is "extensive".
|
||||
: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
|
||||
|
||||
@ -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.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *temp* and *press* options are
|
||||
supported by these fixes. You can use them to assign a
|
||||
:doc:`compute <compute>` you have defined to this fix which will be used
|
||||
in its thermostatting or barostatting procedure, as described above.
|
||||
If you do this, note that the kinetic energy derived from the compute
|
||||
supported by these fixes. You can use them to assign a :doc:`compute
|
||||
<compute>` you have defined to this fix which will be used in its
|
||||
thermostatting or barostatting procedure, as described above. If you
|
||||
do this, note that the kinetic energy derived from the compute
|
||||
temperature should be consistent with the virial term computed using
|
||||
all atoms for the pressure. LAMMPS will warn you if you choose to
|
||||
compute temperature on a subset of atoms.
|
||||
@ -229,42 +229,49 @@ compute temperature on a subset of atoms.
|
||||
.. note::
|
||||
|
||||
If both the *temp* and *press* keywords are used in a single
|
||||
thermo_modify command (or in two separate commands), then the order in
|
||||
which the keywords are specified is important. Note that a :doc:`pressure compute <compute_pressure>` defines its own temperature compute as
|
||||
an argument when it is specified. The *temp* keyword will override
|
||||
this (for the pressure compute being used by fix npt), but only if the
|
||||
*temp* keyword comes after the *press* keyword. If the *temp* keyword
|
||||
comes before the *press* keyword, then the new pressure compute
|
||||
specified by the *press* keyword will be unaffected by the *temp*
|
||||
setting.
|
||||
thermo_modify command (or in two separate commands), then the order
|
||||
in which the keywords are specified is important. Note that a
|
||||
:doc:`pressure compute <compute_pressure>` defines its own
|
||||
temperature compute as an argument when it is specified. The
|
||||
*temp* keyword will override this (for the pressure compute being
|
||||
used by fix npt), but only if the *temp* keyword comes after the
|
||||
*press* keyword. If the *temp* keyword comes before the *press*
|
||||
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
|
||||
fixes to add the energy change induced by Nose/Hoover thermostatting
|
||||
and barostatting to the system's potential energy as part of
|
||||
:doc:`thermodynamic output <thermo_style>`.
|
||||
The cumulative energy change in the system imposed by these fixes, due
|
||||
to thermostatting and/or barostatting, are included in the
|
||||
:doc:`thermodynamic output <thermo_style>` keywords *ecouple* and
|
||||
*econserve*. See the :doc:`thermo_style <thermo_style>` doc page for
|
||||
details.
|
||||
|
||||
These fixes compute a global scalar and a global vector of quantities,
|
||||
which can be accessed by various :doc:`output commands <Howto_output>`.
|
||||
The scalar value calculated by these fixes is "extensive"; the vector
|
||||
values are "intensive".
|
||||
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 compute 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".
|
||||
|
||||
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
|
||||
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.
|
||||
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>`.
|
||||
These fixes are not invoked during :doc:`energy minimization
|
||||
<minimize>`.
|
||||
|
||||
----------
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
These fixes are only available when LAMMPS was built with the USER-DRUDE package.
|
||||
These fixes cannot be used with dynamic groups as defined by the :doc:`group <group>` command.
|
||||
These fixes cannot be used in 2D simulations.
|
||||
These fixes are only available when LAMMPS was built with the
|
||||
USER-DRUDE package. These fixes cannot be used with dynamic groups as
|
||||
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
|
||||
periodic. *Xy*\ , *xz*\ , and *yz* can only be barostatted if the
|
||||
|
||||
@ -89,13 +89,14 @@ time:
|
||||
|
||||
\lambda(\tau) = \tau
|
||||
|
||||
where :math:`\tau` is the scaled time variable *t/t_s*. The option *2* performs
|
||||
the lambda switching at a rate defined by the following switching
|
||||
function
|
||||
where :math:`\tau` is the scaled time variable *t/t_s*. The option *2*
|
||||
performs the lambda switching at a rate defined by the following
|
||||
switching function
|
||||
|
||||
.. 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
|
||||
(0 and 1), according to :ref:`de Koning <deKoning96>` this results in
|
||||
@ -106,16 +107,19 @@ increase in computational resources cost.
|
||||
|
||||
.. note::
|
||||
|
||||
As described in :ref:`Freitas <Freitas1>`, it is important to keep the
|
||||
center-of-mass fixed during the thermodynamic integration. A nonzero
|
||||
total velocity will result in divergences during the integration due
|
||||
to the fact that the atoms are 'attached' to their equilibrium
|
||||
positions by the Einstein crystal. Check the option *zero* of :doc:`fix langevin <fix_langevin>` and :doc:`velocity <velocity>`. The use of
|
||||
the Nose-Hoover thermostat (:doc:`fix nvt <fix_nh>`) is *NOT*
|
||||
recommended due to its well documented issues with the canonical
|
||||
sampling of harmonic degrees of freedom (notice 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.
|
||||
As described in :ref:`Freitas <Freitas1>`, it is important to keep
|
||||
the center-of-mass fixed during the thermodynamic integration. A
|
||||
nonzero total velocity will result in divergences during the
|
||||
integration due to the fact that the atoms are 'attached' to their
|
||||
equilibrium positions by the Einstein crystal. Check the option
|
||||
*zero* of :doc:`fix langevin <fix_langevin>` and :doc:`velocity
|
||||
<velocity>`. The use of the Nose-Hoover thermostat (:doc:`fix nvt
|
||||
<fix_nh>`) is *NOT* recommended due to its well documented issues
|
||||
with the canonical sampling of harmonic degrees of freedom (notice
|
||||
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
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
@ -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
|
||||
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
|
||||
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>`.
|
||||
|
||||
This fix computes a global scalar and a global vector quantities which
|
||||
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
|
||||
atom, where the per-atom energy is 0.5 \* k \* r\^2. The vector stores
|
||||
2 values. The first value is the coupling parameter lambda. 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,
|
||||
atom, where the per-atom energy is :math:`0.5 \cdot k \cdot r^2`.
|
||||
The vector stores 2 values. The first value is the coupling parameter lambda.
|
||||
The second value is the derivative of lambda with respect to the integer
|
||||
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
|
||||
timestep size (e.g. 0.5 fs). The scalar and vector values calculated
|
||||
by this fix are "extensive".
|
||||
|
||||
@ -331,23 +331,33 @@ perturbation on the particles:
|
||||
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 add the energy of interaction between atoms and each wall to
|
||||
the system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy of interaction between atoms and all the
|
||||
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
|
||||
fix to add the contribution due to the interaction between
|
||||
atoms and each wall to the system's virial as part of :doc:`thermodynamic output <thermo_style>`. The default is *virial no*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the interaction between atoms
|
||||
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
|
||||
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.
|
||||
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.
|
||||
|
||||
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
|
||||
of interactions with all defined walls. If you want the energy on a
|
||||
forces, which can be accessed by various :doc:`output commands
|
||||
<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
|
||||
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
|
||||
|
||||
@ -56,20 +56,27 @@ Description
|
||||
"""""""""""
|
||||
|
||||
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
|
||||
group by generating a force on the atom in a direction perpendicular to
|
||||
the wall and a torque parallel with the wall. The energy of
|
||||
wall-particle interactions E is given by:
|
||||
faces with a flat wall that interacts with the ellipsoidal atoms in
|
||||
the group by generating a force on the atom in a direction
|
||||
perpendicular to the wall and a torque parallel with the wall. The
|
||||
energy of wall-particle interactions E is given by:
|
||||
|
||||
.. 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,
|
||||
*r* is the distance from the particle to the wall at position *coord*\ ,
|
||||
and Rc is the *cutoff* distance at which the particle and wall no
|
||||
longer interact. Also, :math:`\sigma_n` is the distance between center of
|
||||
ellipsoid and the nearest point of its surface to the wall as shown below.
|
||||
Introduced by Babadi and Ejtehadi in :ref:`(Babadi)
|
||||
<BabadiEjtehadi>`. Here, *r* is the distance from the particle to the
|
||||
wall at position *coord*\ , and Rc is the *cutoff* distance at which
|
||||
the particle and wall no longer interact. Also, :math:`\sigma_n` is
|
||||
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
|
||||
:align: center
|
||||
@ -85,13 +92,15 @@ pre-factor is
|
||||
|
||||
.. 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
|
||||
particles and :math:`\sigma_a`, :math:`\sigma_b`, and :math:`\sigma_c`
|
||||
are the radii of the ellipsoidal particles. :math:`\rho_{wall}` and
|
||||
:math:`\rho_{ellipsoid}` are the number density of the constituent
|
||||
particles, in the wall and ellipsoid respectively, in units of 1/volume.
|
||||
where :math:`\epsilon` is the LJ energy parameter for the constituent
|
||||
LJ particles and :math:`\sigma_a`, :math:`\sigma_b`, and
|
||||
:math:`\sigma_c` are the radii of the ellipsoidal
|
||||
particles. :math:`\rho_{wall}` and :math:`\rho_{ellipsoid}` are the
|
||||
number density of the constituent particles, in the wall and ellipsoid
|
||||
respectively, in units of 1/volume.
|
||||
|
||||
.. 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
|
||||
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.
|
||||
|
||||
----------
|
||||
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
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.
|
||||
These fixes are part of the USER-MISC package. They are only enabled
|
||||
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.
|
||||
|
||||
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>`.
|
||||
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by this
|
||||
fix to add the energy of interaction between atoms and the wall to the
|
||||
system's potential energy as part of :doc:`thermodynamic output <thermo_style>`.
|
||||
The :doc:`fix_modify <fix_modify>` *energy* option is supported by
|
||||
this fix to add the energy of interaction between atoms and the region
|
||||
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
|
||||
fix to add the contribution due to the interaction between
|
||||
atoms and each wall to the system's virial as part of :doc:`thermodynamic output <thermo_style>`. The default is *virial no*
|
||||
The :doc:`fix_modify <fix_modify>` *virial* option is supported by
|
||||
this fix to add the contribution due to the interaction between atoms
|
||||
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
|
||||
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.
|
||||
|
||||
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
|
||||
interactions for all particles interacting with the wall represented
|
||||
by the region surface. The 3 vector quantities are the x,y,z
|
||||
components of the total force acting on the wall due to the particles.
|
||||
The scalar and vector values calculated by this fix are "extensive".
|
||||
of forces, which can be accessed by various :doc:`output commands
|
||||
<Howto_output>`. The scalar energy is the sum of energy interactions
|
||||
for all particles interacting with the wall represented by the region
|
||||
surface. The 3 vector quantities are the x,y,z components of the
|
||||
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
|
||||
the :doc:`run <run>` command.
|
||||
@ -221,10 +229,10 @@ 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.
|
||||
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
|
||||
""""""""""""
|
||||
|
||||
@ -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
|
||||
<restart>`. This includes information about the random number generator
|
||||
seed, the next timestep for Widom insertions etc. 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
|
||||
operation of the fix continues in an uninterrupted fashion.
|
||||
<restart>`. This includes information about the random number
|
||||
generator seed, the next timestep for Widom insertions etc. 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 operation of the fix continues in an uninterrupted fashion.
|
||||
|
||||
.. 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.
|
||||
The citation format for an IM is displayed on its page on
|
||||
`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)
|
||||
used in the simulation gives credit to the researchers who developed them
|
||||
|
||||
@ -11,10 +11,10 @@ Syntax
|
||||
thermo_modify keyword value ...
|
||||
|
||||
* 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::
|
||||
|
||||
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/bond* value = *error* or *warn* or *ignore*
|
||||
*norm* value = *yes* or *no*
|
||||
|
||||
@ -20,9 +20,10 @@ Syntax
|
||||
*custom* args = list of keywords
|
||||
possible keywords = step, elapsed, elaplong, dt, time,
|
||||
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,
|
||||
emol, elong, etail,
|
||||
enthalpy, ecouple, econserve,
|
||||
vol, density, lx, ly, lz, xlo, xhi, ylo, yhi, zlo, zhi,
|
||||
xy, xz, yz, xlat, ylat, zlat,
|
||||
bonds, angles, dihedrals, impropers,
|
||||
@ -49,7 +50,6 @@ Syntax
|
||||
pe = total potential energy
|
||||
ke = kinetic energy
|
||||
etotal = total energy (pe + ke)
|
||||
enthalpy = enthalpy (etotal + press\*vol)
|
||||
evdwl = van der Waals pairwise energy (includes etail)
|
||||
ecoul = Coulombic pairwise energy
|
||||
epair = pairwise energy (evdwl + ecoul + elong)
|
||||
@ -60,6 +60,9 @@ Syntax
|
||||
emol = molecular energy (ebond + eangle + edihed + eimp)
|
||||
elong = long-range kspace energy
|
||||
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
|
||||
density = mass density of system
|
||||
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
|
||||
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
|
||||
calculating temperature, via the :doc:`thermo_modify temp
|
||||
of freedom. Thus, using different :doc:`compute commands <compute>`
|
||||
for calculating temperature, via the :doc:`thermo_modify temp
|
||||
<thermo_modify>` command, may yield different kinetic energies, since
|
||||
different computes that calculate temperature can subtract out different
|
||||
non-thermal components of velocity and/or include different degrees of
|
||||
freedom (translational, rotational, etc).
|
||||
different computes that calculate temperature can subtract out
|
||||
different non-thermal components of velocity and/or include different
|
||||
degrees of freedom (translational, rotational, etc).
|
||||
|
||||
The potential energy of the system *pe* will include contributions
|
||||
from fixes if the :doc:`fix_modify thermo <fix_modify>` option is set
|
||||
for a fix that calculates such a contribution. For example, the :doc:`fix wall/lj93 <fix_wall>` fix calculates the energy of atoms
|
||||
from fixes if the :doc:`fix_modify energy yes <fix_modify>` option is
|
||||
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"
|
||||
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
|
||||
energy will be non-zero only if the :doc:`pair_modify tail <pair_modify>` option is turned on. The *etail* contribution
|
||||
is included in *evdwl*\ , *epair*\ , *pe*\ , and *etotal*\ , and the
|
||||
energy will be non-zero only if the :doc:`pair_modify tail
|
||||
<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*
|
||||
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
|
||||
count. *Step* is the current timestep, or iteration count when a
|
||||
: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
|
||||
are not used, then *elapsed* and *elaplong* are the same value.
|
||||
|
||||
The *dt* keyword is the current timestep size in time
|
||||
:doc:`units <units>`. The *time* keyword is the current elapsed
|
||||
simulation time, also in time :doc:`units <units>`, which is simply
|
||||
(step\*dt) if the timestep size has not changed and the timestep has
|
||||
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 "reset_timestep" command), then the simulation time is effectively
|
||||
a cumulative value up to the current point.
|
||||
The *dt* keyword is the current timestep size in time :doc:`units
|
||||
<units>`. The *time* keyword is the current elapsed simulation time,
|
||||
also in time :doc:`units <units>`, which is simply (step\*dt) if the
|
||||
timestep size has not changed and the timestep has 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 "reset_timestep"
|
||||
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
|
||||
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
|
||||
running in multi-partition mode.
|
||||
|
||||
The *timeremain* keyword returns the remaining seconds when a
|
||||
timeout has been configured via the :doc:`timer timeout <timer>` command.
|
||||
If the timeout timer is inactive, the value of this keyword is 0.0 and
|
||||
if the timer is expired, it is negative. This allows for example to exit
|
||||
The *timeremain* keyword is the seconds remaining when a timeout has
|
||||
been configured via the :doc:`timer timeout <timer>` command. If the
|
||||
timeout timer is inactive, the value of this keyword is 0.0 and if the
|
||||
timer is expired, it is negative. This allows for example to exit
|
||||
loops cleanly, if the timeout is expired with:
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
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
|
||||
of an :doc:`energy minimization <minimize>`. The *fmax* keyword
|
||||
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
|
||||
takes place.
|
||||
|
||||
The keywords *cella*\ , *cellb*\ , *cellc*\ , *cellalpha*\ , *cellbeta*\ ,
|
||||
*cellgamma*\ , correspond to the usual crystallographic quantities that
|
||||
define the periodic unit cell of a crystal. See the :doc:`Howto triclinic <Howto_triclinic>` doc page for a geometric description
|
||||
of triclinic periodic cells, including a precise definition of these
|
||||
quantities in terms of the internal LAMMPS cell dimensions *lx*\ , *ly*\ ,
|
||||
*lz*\ , *yz*\ , *xz*\ , *xy*\ .
|
||||
The keywords *cella*\ , *cellb*\ , *cellc*\ , *cellalpha*\ ,
|
||||
*cellbeta*\ , *cellgamma*\ , correspond to the usual crystallographic
|
||||
quantities that define the periodic unit cell of a crystal. See the
|
||||
:doc:`Howto triclinic <Howto_triclinic>` doc page for a geometric
|
||||
description of triclinic periodic cells, including a precise
|
||||
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
|
||||
values calculated by a compute to be output. As discussed on the
|
||||
The *c_ID* and *c_ID[I]* and *c_ID[I][J]* keywords allow global values
|
||||
calculated by a compute to be output. As discussed on the
|
||||
:doc:`compute <compute>` doc page, computes can calculate global,
|
||||
per-atom, or local values. Only global values can be referenced by
|
||||
this command. However, per-atom compute values for an individual atom
|
||||
@ -353,12 +377,13 @@ kinetic energy that are summed over all atoms in the compute group.
|
||||
Intensive quantities are printed directly without normalization by
|
||||
thermo_style custom. Extensive quantities may be normalized by the
|
||||
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
|
||||
values calculated by a fix to be output. As discussed on the
|
||||
:doc:`fix <fix>` doc page, fixes can calculate global, per-atom, or
|
||||
local values. Only global values can be referenced by this command.
|
||||
The *f_ID* and *f_ID[I]* and *f_ID[I][J]* keywords allow global values
|
||||
calculated by a fix to be output. As discussed on the :doc:`fix
|
||||
<fix>` doc page, fixes can calculate global, per-atom, or local
|
||||
values. Only global values can be referenced by this command.
|
||||
However, per-atom fix values can be referenced for an individual atom
|
||||
in a :doc:`variable <variable>` and the variable referenced by
|
||||
thermo_style custom, as discussed below. See the discussion above for
|
||||
@ -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
|
||||
custom. Extensive quantities may be normalized by the total number of
|
||||
atoms in the simulation (NOT the number of atoms in the fix group)
|
||||
when output, depending on the :doc:`thermo_modify norm <thermo_modify>`
|
||||
option being used.
|
||||
when output, depending on the :doc:`thermo_modify norm
|
||||
<thermo_modify>` option being used.
|
||||
|
||||
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
|
||||
|
||||
@ -508,6 +508,7 @@ cpp
|
||||
cpu
|
||||
createatoms
|
||||
createAtoms
|
||||
CreateIDs
|
||||
crespi
|
||||
Crespi
|
||||
Critchley
|
||||
@ -597,6 +598,7 @@ Dcut
|
||||
de
|
||||
dE
|
||||
De
|
||||
deallocated
|
||||
decorrelation
|
||||
debye
|
||||
Debye
|
||||
@ -787,6 +789,7 @@ ees
|
||||
eFF
|
||||
efield
|
||||
effm
|
||||
eflag
|
||||
eflux
|
||||
eg
|
||||
Eggebrecht
|
||||
@ -2537,6 +2540,8 @@ Px
|
||||
pxx
|
||||
Pxx
|
||||
Pxy
|
||||
pxy
|
||||
pxz
|
||||
py
|
||||
Py
|
||||
pydir
|
||||
@ -2548,10 +2553,13 @@ pymol
|
||||
pypar
|
||||
pythonic
|
||||
pytorch
|
||||
pyy
|
||||
Pyy
|
||||
pyz
|
||||
pz
|
||||
Pz
|
||||
Pzz
|
||||
pzz
|
||||
qbmsst
|
||||
qcore
|
||||
qdist
|
||||
@ -2680,6 +2688,7 @@ rfile
|
||||
rg
|
||||
Rg
|
||||
Rhaphson
|
||||
Rhe
|
||||
rheological
|
||||
rheology
|
||||
rhodo
|
||||
@ -3334,6 +3343,7 @@ verlet
|
||||
Verlet
|
||||
versa
|
||||
ves
|
||||
vflag
|
||||
vhi
|
||||
vibrational
|
||||
Vij
|
||||
|
||||
@ -31,7 +31,7 @@ neighbor 0.1 bin
|
||||
neigh_modify every 10 check yes delay 20
|
||||
|
||||
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 3 all nve/spin lattice moving
|
||||
|
||||
@ -1,60 +1,60 @@
|
||||
# fcc nickel in a 3d periodic box
|
||||
|
||||
clear
|
||||
units metal
|
||||
atom_style spin
|
||||
units metal
|
||||
atom_style spin
|
||||
|
||||
dimension 3
|
||||
boundary p p p
|
||||
dimension 3
|
||||
boundary p p p
|
||||
|
||||
# necessary for the serial algorithm (sametag)
|
||||
atom_modify map array
|
||||
atom_modify map array
|
||||
|
||||
lattice fcc 3.524
|
||||
region box block 0.0 5.0 0.0 5.0 0.0 5.0
|
||||
create_box 1 box
|
||||
create_atoms 1 box
|
||||
lattice fcc 3.524
|
||||
region box block 0.0 5.0 0.0 5.0 0.0 5.0
|
||||
create_box 1 box
|
||||
create_atoms 1 box
|
||||
|
||||
# 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 0.63 0.0 0.0 1.0
|
||||
velocity all create 100 4928459 rot yes dist gaussian
|
||||
set group all spin/random 31 0.63
|
||||
#set group all spin 0.63 0.0 0.0 1.0
|
||||
velocity all create 100 4928459 rot yes dist gaussian
|
||||
|
||||
pair_style hybrid/overlay eam/alloy spin/exchange 4.0
|
||||
pair_coeff * * eam/alloy Ni99.eam.alloy Ni
|
||||
pair_coeff * * spin/exchange exchange 4.0 0.50 0.2280246862 1.229983475
|
||||
pair_style hybrid/overlay eam/alloy spin/exchange 4.0
|
||||
pair_coeff * * eam/alloy Ni99.eam.alloy Ni
|
||||
pair_coeff * * spin/exchange exchange 4.0 0.50 0.2280246862 1.229983475
|
||||
|
||||
neighbor 0.1 bin
|
||||
neigh_modify every 10 check yes delay 20
|
||||
neighbor 0.1 bin
|
||||
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 &
|
||||
zeeman 0.0 0.0 0.0 1.0
|
||||
fix_modify 1 energy yes
|
||||
fix 2 all langevin/spin 0.0 0.0 21
|
||||
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
|
||||
fix_modify 1 energy yes
|
||||
fix 2 all langevin/spin 0.0 0.0 21
|
||||
|
||||
fix 3 all nve/spin lattice moving
|
||||
timestep 0.0001
|
||||
fix 3 all nve/spin lattice moving
|
||||
timestep 0.0001
|
||||
|
||||
# compute and output options
|
||||
|
||||
compute out_mag all spin
|
||||
compute out_pe all pe
|
||||
compute out_ke all ke
|
||||
compute out_temp all temp
|
||||
compute out_mag all spin
|
||||
compute out_pe all pe
|
||||
compute out_ke all ke
|
||||
compute out_temp all temp
|
||||
|
||||
variable magz equal c_out_mag[3]
|
||||
variable magnorm equal c_out_mag[4]
|
||||
variable emag equal c_out_mag[5]
|
||||
variable tmag equal c_out_mag[6]
|
||||
variable magz equal c_out_mag[3]
|
||||
variable magnorm equal c_out_mag[4]
|
||||
variable emag equal c_out_mag[5]
|
||||
variable tmag equal c_out_mag[6]
|
||||
|
||||
thermo_style custom step time v_magnorm pe v_emag temp v_tmag etotal
|
||||
thermo 50
|
||||
|
||||
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]
|
||||
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]
|
||||
|
||||
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