Updated documentation

This commit is contained in:
Aidan Thompson
2022-02-19 19:25:02 -07:00
parent 61377f41ad
commit 4ca5441cf1
5 changed files with 20 additions and 200030 deletions

View File

@ -12,16 +12,15 @@ Syntax
* ID, group-ID are documented in :doc:`compute <compute>` command * ID, group-ID are documented in :doc:`compute <compute>` command
* born/matrix = style name of this compute command * born/matrix = style name of this compute command
* one or more keyword/value pairs may be appended * zero or more keyword/value pairs may be appended
.. parsed-literal:: .. parsed-literal::
keyword = *numdiff*
*numdiff* values = delta virial-ID *numdiff* values = delta virial-ID
delta = magnitude of strain fields (dimensionless) delta = magnitude of strain (dimensionless)
virial-ID = ID of pressure compute for virial (string) virial-ID = ID of pressure compute for virial (string)
*pair* or *bond* or *angle* or *dihedral* values = none
Examples Examples
"""""""" """"""""
@ -36,7 +35,7 @@ Description
Define a compute that calculates Define a compute that calculates
:math:`\frac{\partial{}^2U}{\partial\varepsilon_{i}\partial\varepsilon_{j}}` the :math:`\frac{\partial{}^2U}{\partial\varepsilon_{i}\partial\varepsilon_{j}}` the
second derivatives of the potential energy :math:`U` with regard to strain second derivatives of the potential energy :math:`U` w.r.t. strain
tensor :math:`\varepsilon` elements. These values are related to: tensor :math:`\varepsilon` elements. These values are related to:
.. math:: .. math::
@ -62,9 +61,9 @@ tensor, :math:`\delta` is the Kronecker delta and the usual notation apply for
the number of particle, the temperature and volume respectively :math:`N`, the number of particle, the temperature and volume respectively :math:`N`,
:math:`T` and :math:`V`. :math:`k_{B}` is the Boltzmann constant. :math:`T` and :math:`V`. :math:`k_{B}` is the Boltzmann constant.
The Born term is a symmetric 6x6 matrix by construction and as such can be The Born term is a symmetric 6x6 matrix, as is the matrix of second derivatives
expressed as 21 independent terms. The terms are ordered corresponding to the of potential energy w.r.t strain,
following matrix element: whose 21 independent elements are output in this order:
.. math:: .. math::
@ -77,9 +76,10 @@ following matrix element:
\vdots & \vdots & \vdots & \vdots & C_{21} & C_{6} \vdots & \vdots & \vdots & \vdots & C_{21} & C_{6}
\end{matrix} \end{matrix}
in this matrix the indices of :math:`C_{k}` value are the corresponding index in this matrix the indices of :math:`C_{k}` value are the corresponding element
:math:`k` in the compute output. Each term comes from the sum of every :math:`k` in the global vector output by this compute. Each term comes from the sum
interactions derivatives in the system as explained in :ref:`(VanWorkum) of the derivatives of every contribution to the potential energy
in the system as explained in :ref:`(VanWorkum)
<VanWorkum>` or :ref:`(Voyiatzis) <Voyiatzis>`. <VanWorkum>` or :ref:`(Voyiatzis) <Voyiatzis>`.
The output can be accessed using usual Lammps routines: The output can be accessed using usual Lammps routines:
@ -111,15 +111,15 @@ Two different computation methods are implemented in this compute and are
mutually exclusive. mutually exclusive.
The first one is a direct computation from the analytical formula from the The first one is a direct computation from the analytical formula from the
different terms of the potential used for the simulations (see :ref: `(Vorkum) different terms of the potential used for the simulations (see :ref:`(VanWorkum)
<_VanWorkum>`). However, the implementation of such derivations must be done <VanWorkum>`). However, the implementation of such derivations must be done
for every potential form. This has not been done yet and can be very for every potential form. This has not been done yet and can be very
complicated for sophisticated potentials. At the moment a warning message is complicated for complex potentials. At the moment a warning message is
displayed for every term that is not supporting the compute at the moment. displayed for every term that is not supporting the compute at the moment.
This method is the default for now. This method is the default for now.
The second method uses finite differences of energy to numerically approximate The second method uses finite differences of energy to numerically approximate
the second derivatives (see :ref: `(Zhen) <_Zhen>`). This is useful when using the second derivatives (see :ref:`(Zhen) <Zhen>`). This is useful when using
interaction styles for which the analytical second derivatives have not been interaction styles for which the analytical second derivatives have not been
implemented. In this cases, the compute applies linear strain fields of implemented. In this cases, the compute applies linear strain fields of
magnitude *delta* to all the atoms relative to a point at the center of the magnitude *delta* to all the atoms relative to a point at the center of the
@ -161,9 +161,11 @@ requiring that it use the virial keyword e.g.
**Output info:** **Output info:**
This compute calculates a global array with the number of rows=21. This compute calculates a global vector with 21 values that are
the second derivatives of the potential energy w.r.t. strain.
The values are in energy units.
The values are ordered as explained above. These values can be used The values are ordered as explained above. These values can be used
by any command that uses a global values from a compute as input. See by any command that uses global values from a compute as input. See
the :doc:`Howto output <Howto_output>` doc page for an overview of the :doc:`Howto output <Howto_output>` doc page for an overview of
LAMMPS output options. LAMMPS output options.

View File

@ -1,3 +0,0 @@
# Time-averaged data for fix CB
# TimeStep c_born[1] c_born[2] c_born[3] c_born[4] c_born[5] c_born[6] c_born[7] c_born[8] c_born[9] c_born[10] c_born[11] c_born[12] c_born[13] c_born[14] c_born[15] c_born[16] c_born[17] c_born[18] c_born[19] c_born[20] c_born[21]
100000 9548.45 9583.86 9603.94 5344.22 5340.32 5332.84 5332.84 5340.32 6.76151 5.615 -4.57733 5344.22 2.92646 2.31369 -1.40512 -0.756072 2.34424 -1.68733 -1.68733 2.31369 6.76151

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +0,0 @@
# Time-averaged data for fix CB
# TimeStep c_born[1] c_born[2] c_born[3] c_born[4] c_born[5] c_born[6] c_born[7] c_born[8] c_born[9] c_born[10] c_born[11] c_born[12] c_born[13] c_born[14] c_born[15] c_born[16] c_born[17] c_born[18] c_born[19] c_born[20] c_born[21]
100000 9504.48 9542.2 9561.01 5333.83 5329.43 5322.42 5322.45 5329.46 6.62317 5.91783 -4.83884 5333.63 2.95757 2.42725 -0.949434 -0.946756 1.95764 -1.6134 -1.48155 2.30577 6.76235

File diff suppressed because it is too large Load Diff