convert remaining lj pair styles

This commit is contained in:
Axel Kohlmeyer 2020-02-24 10:50:31 -05:00
parent d00f8fcd0a
commit 6139617458
No known key found for this signature in database
GPG Key ID: D9B44E93BF0C375A
21 changed files with 145 additions and 182 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

View File

@ -1,11 +0,0 @@
\documentstyle[12pt]{article}
\begin{document}
$$
E = 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} -
\left(\frac{\sigma}{r}\right)^6 \right]
\qquad r < r_c
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

View File

@ -1,11 +0,0 @@
\documentstyle[12pt]{article}
\begin{document}
$$
E = 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{9} -
\left(\frac{\sigma}{r}\right)^6 \right]
\qquad r < r_c
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.1 KiB

View File

@ -1,12 +0,0 @@
\documentstyle[12pt]{article}
\begin{document}
\begin{eqnarray*}
E &=& u_{LJ}(r) \qquad r \leq r_s \\
&=& u_{LJ}(r_s) + (r-r_s) u'_{LJ}(r_s) - \frac{1}{6} A_3 (r-r_s)^3 \qquad r_s < r \leq r_c \\
&=& 0 \qquad r > r_c
\end{eqnarray*}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

View File

@ -1,11 +0,0 @@
\documentclass[12pt]{article}
\begin{document}
$$
E = 4 \epsilon \left[ \left(\frac{\sigma}{r - \Delta}\right)^{12} -
\left(\frac{\sigma}{r - \Delta}\right)^6 \right]
\qquad r < r_c + \Delta
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

View File

@ -1,15 +0,0 @@
\documentclass[12pt]{article}
\begin{document}
\begin{eqnarray*}
E & = & 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} -
\left(\frac{\sigma}{r}\right)^6 \right]
\qquad r < r_{in} \\
F & = & C_1 + C_2 (r - r_{in}) + C_3 (r - r_{in})^2 + C_4 (r - r_{in})^3
\qquad r_{in} < r < r_c
\end{eqnarray*}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

View File

@ -1,13 +0,0 @@
\documentclass[12pt]{article}
\begin{document}
\begin{eqnarray*}
\phi\left(r\right) & = & 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} -
\left(\frac{\sigma}{r}\right)^6 \right] \\
E\left(r\right) & = & \phi\left(r\right) - \phi\left(R_c\right) - \left(r - R_c\right) \left.\frac{d\phi}{d r} \right|_{r=R_c} \qquad r < R_c
\end{eqnarray*}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

View File

@ -1,11 +0,0 @@
\documentclass[12pt]{article}
\begin{document}
\thispagestyle{empty}
\begin{eqnarray*}
E = 4\epsilon \left[ \left(\frac{\sigma}{r}\right)^{12}-\left(\frac{\sigma}{r}\right)^{6} \right]
% \qquad r < r_c \\
\end{eqnarray*}
\end{document}

View File

@ -211,39 +211,51 @@ Description
The *lj/cut* styles compute the standard 12/6 Lennard-Jones potential,
given by
.. image:: Eqs/pair_lj.jpg
:align: center
.. math::
E = 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} -
\left(\frac{\sigma}{r}\right)^6 \right]
\qquad r < r_c
Rc is the cutoff.
Style *lj/cut/coul/cut* adds a Coulombic pairwise interaction given by
.. image:: Eqs/pair_coulomb.jpg
:align: center
.. math::
where C is an energy-conversion constant, Qi and Qj are the charges on
the 2 atoms, and epsilon is the dielectric constant which can be set
by the :doc:`dielectric <dielectric>` command. If one cutoff is
specified in the pair\_style command, it is used for both the LJ and
Coulombic terms. If two cutoffs are specified, they are used as
cutoffs for the LJ and Coulombic terms respectively.
E = \frac{C q_i q_j}{\epsilon r} \qquad r < r_c
where C is an energy-conversion constant, :math:`q_i` and :math:`q_j`
are the charges on the 2 atoms, and :math:`\epsilon` is the dielectric
constant which can be set by the :doc:`dielectric <dielectric>` command.
If one cutoff is specified in the pair\_style command, it is used for
both the LJ and Coulombic terms. If two cutoffs are specified, they are
used as cutoffs for the LJ and Coulombic terms respectively.
Style *lj/cut/coul/debye* adds an additional exp() damping factor
to the Coulombic term, given by
.. image:: Eqs/pair_debye.jpg
:align: center
.. math::
where kappa is the inverse of the Debye length. This potential is
another way to mimic the screening effect of a polar solvent.
E = \frac{C q_i q_j}{\epsilon r} \exp(- \kappa r) \qquad r < r_c
where :math:`\kappa` is the inverse of the Debye length. This potential
is another way to mimic the screening effect of a polar solvent.
Style *lj/cut/coul/dsf* computes the Coulombic term via the damped
shifted force model described in :ref:`Fennell <Fennell2>`, given by:
.. image:: Eqs/pair_coul_dsf.jpg
:align: center
.. math::
where *alpha* is the damping parameter and erfc() is the complementary
E =
q_iq_j \left[ \frac{\mbox{erfc} (\alpha r)}{r} - \frac{\mbox{erfc} (\alpha r_c)}{r_c} +
\left( \frac{\mbox{erfc} (\alpha r_c)}{r_c^2} + \frac{2\alpha}{\sqrt{\pi}}\frac{\exp (-\alpha^2 r^2_c)}{r_c} \right)(r-r_c) \right] \qquad r < r_c
where :math:`\alpha` is the damping parameter and erfc() is the complementary
error-function. This potential is essentially a short-range,
spherically-truncated, charge-neutralized, shifted, pairwise *1/r*
summation. The potential is based on Wolf summation, proposed as an
@ -253,7 +265,7 @@ effectively short-ranged. In order for the electrostatic sum to be
absolutely convergent, charge neutralization within the cutoff radius
is enforced by shifting the potential through placement of image
charges on the cutoff sphere. Convergence can often be improved by
setting *alpha* to a small non-zero value.
setting :math:`\alpha` to a small non-zero value.
Styles *lj/cut/coul/long* and *lj/cut/coul/msm* compute the same
Coulombic interactions as style *lj/cut/coul/cut* except that an
@ -267,21 +279,26 @@ computed in reciprocal space.
Style *coul/wolf* adds a Coulombic pairwise interaction via the Wolf
summation method, described in :ref:`Wolf <Wolf1>`, given by:
.. image:: Eqs/pair_coul_wolf.jpg
:align: center
.. math::
where *alpha* is the damping parameter, and erfc() is the
complementary error-function terms. This potential
is essentially a short-range, spherically-truncated,
charge-neutralized, shifted, pairwise *1/r* summation. With a
manipulation of adding and subtracting a self term (for i = j) to the
first and second term on the right-hand-side, respectively, and a
small enough *alpha* damping parameter, the second term shrinks and
the potential becomes a rapidly-converging real-space summation. With
a long enough cutoff and small enough alpha parameter, the energy and
forces calculated by the Wolf summation method approach those of the
Ewald sum. So it is a means of getting effective long-range
interactions with a short-range potential.
E_i = \frac{1}{2} \sum_{j \neq i}
\frac{q_i q_j {\rm erfc}(\alpha r_{ij})}{r_{ij}} +
\frac{1}{2} \sum_{j \neq i}
\frac{q_i q_j {\rm erf}(\alpha r_{ij})}{r_{ij}} \qquad r < r_c
where :math:`\alpha` is the damping parameter, and erfc() is the
complementary error-function terms. This potential is essentially a
short-range, spherically-truncated, charge-neutralized, shifted,
pairwise *1/r* summation. With a manipulation of adding and subtracting
a self term (for i = j) to the first and second term on the
right-hand-side, respectively, and a small enough :math:`\alpha` damping
parameter, the second term shrinks and the potential becomes a
rapidly-converging real-space summation. With a long enough cutoff and
small enough alpha parameter, the energy and forces calculated by the
Wolf summation method approach those of the Ewald sum. So it is a means
of getting effective long-range interactions with a short-range
potential.
Styles *lj/cut/tip4p/cut* and *lj/cut/tip4p/long* implement the TIP4P
water model of :ref:`(Jorgensen) <Jorgensen2>`, which introduces a massless
@ -319,14 +336,13 @@ the data file or restart files read by the :doc:`read_data <read_data>`
or :doc:`read_restart <read_restart>` commands, or by mixing as
described below:
* epsilon (energy units)
* sigma (distance units)
* :math:`\epsilon` (energy units)
* :math:`\sigma` (distance units)
* cutoff1 (distance units)
* cutoff2 (distance units)
Note that sigma is defined in the LJ formula as the zero-crossing
distance for the potential, not as the energy minimum at 2\^(1/6)
sigma.
Note that :math:`\sigma` is defined in the LJ formula as the zero-crossing
distance for the potential, not as the energy minimum at :math:`2^{\frac{1}{6}} \sigma`.
The latter 2 coefficients are optional. If not specified, the global
LJ and Coulombic cutoffs specified in the pair\_style command are used.
@ -346,10 +362,12 @@ pair\_style command.
----------
A version of these styles with a soft core, *lj/cut/soft*\ , suitable for use in
free energy calculations, is part of the USER-FEP package and is documented with
the :doc:`pair_style */soft <pair_fep_soft>` styles. The version with soft core is
only available if LAMMPS was built with that package. See the :doc:`Build package <Build_package>` doc page for more info.
A version of these styles with a soft core, *lj/cut/soft*\ , suitable
for use in free energy calculations, is part of the USER-FEP package and
is documented with the :doc:`pair_style */soft <pair_fep_soft>`
styles. The version with soft core is only available if LAMMPS was built
with that package. See the :doc:`Build package <Build_package>` doc page
for more info.
----------

View File

@ -35,10 +35,14 @@ Description
The *lj96/cut* style compute a 9/6 Lennard-Jones potential, instead
of the standard 12/6 potential, given by
.. image:: Eqs/pair_lj96.jpg
:align: center
.. math::
Rc is the cutoff.
E = 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{9} -
\left(\frac{\sigma}{r}\right)^6 \right]
\qquad r < r_c
:math:`r_c` is the cutoff.
The following coefficients must be defined for each pair of atoms
types via the :doc:`pair_coeff <pair_coeff>` command as in the examples
@ -46,8 +50,8 @@ above, or in the data file or restart files read by the
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
commands, or by mixing as described below:
* epsilon (energy units)
* sigma (distance units)
* :math:`\epsilon` (energy units)
* :math:`\sigma` (distance units)
* cutoff (distance units)
The last coefficient is optional. If not specified, the global LJ

View File

@ -39,15 +39,19 @@ point. The cubic coefficient A3 is chosen so that both energy and
force go to zero at the cutoff distance. Outside the cutoff distance
the energy and force are zero.
.. image:: Eqs/pair_lj_cubic.jpg
:align: center
.. math::
The location of the inflection point rs is defined
by the LJ diameter, rs/sigma = (26/7)\^1/6. The cutoff distance
is defined by rc/rs = 67/48 or rc/sigma = 1.737....
E & = u_{LJ}(r) \qquad r \leq r_s \\
& = u_{LJ}(r_s) + (r-r_s) u'_{LJ}(r_s) - \frac{1}{6} A_3 (r-r_s)^3 \qquad r_s < r \leq r_c \\
& = 0 \qquad r > r_c
The location of the inflection point :math:`r_s` is defined
by the LJ diameter, :math:`r_s/\sigma = (26/7)^{1/6}`. The cutoff distance
is defined by :math:`r_c/r_s = 67/48` or :math:`r_c/\sigma = 1.737...`
The analytic expression for the
the cubic coefficient
A3\*rmin\^3/epsilon = 27.93... is given in the paper by
:math:`A_3 r_{min}^3/\epsilon = 27.93...` is given in the paper by
Holian and Ravelo :ref:`(Holian) <Holian>`.
This potential is commonly used to study the shock mechanics of FCC
@ -59,13 +63,13 @@ or in the data file or restart files read by the
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
commands, or by mixing as described below:
* epsilon (energy units)
* sigma (distance units)
* :math:`\epsilon` (energy units)
* :math:`\sigma` (distance units)
Note that sigma is defined in the LJ formula as the zero-crossing
distance for the potential, not as the energy minimum, which is
located at rmin = 2\^(1/6)\*sigma. In the above example, sigma =
0.8908987, so rmin = 1.
Note that :math:`\sigma` is defined in the LJ formula as the
zero-crossing distance for the potential, not as the energy minimum,
which is located at :math:`r_{min} = 2^{\frac{1}{6}} \sigma`. In the
above example, :math:`\sigma = 0.8908987`, so :math:`r_{min} = 1.0`.
----------

View File

@ -51,36 +51,40 @@ delta which can be useful when particles are of different sizes, since
it is different that using different sigma values in a standard LJ
formula:
.. image:: Eqs/pair_lj_expand.jpg
:align: center
.. math::
Rc is the cutoff which does not include the delta distance. I.e. the
actual force cutoff is the sum of cutoff + delta.
E = 4 \epsilon \left[ \left(\frac{\sigma}{r - \Delta}\right)^{12} -
\left(\frac{\sigma}{r - \Delta}\right)^6 \right]
\qquad r < r_c + \Delta
:math:`r_c` is the cutoff which does not include the :math:`\Delta`
distance. I.e. the actual force cutoff is the sum of :math:`r_c +
\Delta`.
For all of the *lj/expand* pair styles, the following coefficients must
be defined for each pair of atoms types via the
:doc:`pair_coeff <pair_coeff>` command as in the examples above, or in
the data file or restart files read by the :doc:`read_data <read_data>`
or :doc:`read_restart <read_restart>` commands, or by mixing as
described below:
be defined for each pair of atoms types via the :doc:`pair_coeff
<pair_coeff>` command as in the examples above, or in the data file or
restart files read by the :doc:`read_data <read_data>` or
:doc:`read_restart <read_restart>` commands, or by mixing as described
below:
* epsilon (energy units)
* sigma (distance units)
* delta (distance units)
* :math:`\epsilon` (energy units)
* :math:`\sigma` (distance units)
* :math:`\Delta` (distance units)
* cutoff (distance units)
The delta values can be positive or negative. The last coefficient is
optional. If not specified, the global LJ cutoff is used.
The :math:`\Delta` values can be positive or negative. The last
coefficient is optional. If not specified, the global LJ cutoff is
used.
For *lj/expand/coul/long* only the LJ cutoff can be specified since a
Coulombic cutoff cannot be specified for an individual I,J type pair.
All type pairs use the same global Coulombic cutoff specified in the
pair\_style command.
----------
Styles with a *gpu*\ , *intel*\ , *kk*\ , *omp*\ , or *opt* suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available

View File

@ -75,18 +75,25 @@ Examples
Description
"""""""""""
Style *lj/long/coul/long* computes the standard 12/6 Lennard-Jones and
Coulombic potentials, given by
Style *lj/long/coul/long* computes the standard 12/6 Lennard-Jones potential:
.. image:: Eqs/pair_lj.jpg
:align: center
.. math::
.. image:: Eqs/pair_coulomb.jpg
:align: center
E = 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} -
\left(\frac{\sigma}{r}\right)^6 \right]
\qquad r < r_c \\
where C is an energy-conversion constant, Qi and Qj are the charges on
the 2 atoms, epsilon is the dielectric constant which can be set by
the :doc:`dielectric <dielectric>` command, and Rc is the cutoff. If
with :math:`\epsilon` and :math:`\sigma` being the usual Lennard-Jones
potential parameters, plus the Coulomb potential, given by:
.. math::
E = \frac{C q_i q_j}{\epsilon r} \qquad r < r_c
where C is an energy-conversion constant, :math:`q_i` and :math:`q_j` are the charges on
the 2 atoms, :math:`\epsilon` is the dielectric constant which can be set by
the :doc:`dielectric <dielectric>` command, and :math:`r_c` is the cutoff. If
one cutoff is specified in the pair\_style command, it is used for both
the LJ and Coulombic terms. If two cutoffs are specified, they are
used as cutoffs for the LJ and Coulombic terms respectively.
@ -147,8 +154,8 @@ above, or in the data file or restart files read by the
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
commands, or by mixing as described below:
* epsilon (energy units)
* sigma (distance units)
* :math:`\epsilon` (energy units)
* :math:`\sigma` (distance units)
* cutoff1 (distance units)
* cutoff2 (distance units)

View File

@ -33,12 +33,18 @@ Description
Style *lj/smooth* computes a LJ interaction with a force smoothing
applied between the inner and outer cutoff.
.. image:: Eqs/pair_lj_smooth.jpg
:align: center
.. math::
E & = 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} -
\left(\frac{\sigma}{r}\right)^6 \right]
\qquad r < r_{in} \\
F & = C_1 + C_2 (r - r_{in}) + C_3 (r - r_{in})^2 + C_4 (r - r_{in})^3
\qquad r_{in} < r < r_c
The polynomial coefficients C1, C2, C3, C4 are computed by LAMMPS to
cause the force to vary smoothly from the inner cutoff Rin to the
outer cutoff Rc.
cause the force to vary smoothly from the inner cutoff :math:`r_{in}` to the
outer cutoff :math:`r_c`.
At the inner cutoff the force and its 1st derivative
will match the non-smoothed LJ formula. At the outer cutoff the force
@ -58,13 +64,13 @@ above, or in the data file or restart files read by the
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
commands, or by mixing as described below:
* epsilon (energy units)
* sigma (distance units)
* inner (distance units)
* outer (distance units)
* :math:`\epsilon` (energy units)
* :math:`\sigma` (distance units)
* :math:`r_{in}` (distance units)
* :math:`r_c` (distance units)
The last 2 coefficients are optional inner and outer cutoffs. If not
specified, the global values for Rin and Rc are used.
specified, the global values for :math:`r_{in}` and :math:`r_c` are used.
----------

View File

@ -35,8 +35,12 @@ standard 12/6 Lennard-Jones function and subtracts a linear term based
on the cutoff distance, so that both, the potential and the force, go
continuously to zero at the cutoff Rc :ref:`(Toxvaerd) <Toxvaerd>`:
.. image:: Eqs/pair_lj_smooth_linear.jpg
:align: center
.. math::
\phi\left(r\right) & = 4 \epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} -
\left(\frac{\sigma}{r}\right)^6 \right] \\
E\left(r\right) & = \phi\left(r\right) - \phi\left(R_c\right) - \left(r - R_c\right) \left.\frac{d\phi}{d r} \right|_{r=R_c} \qquad r < R_c
The following coefficients must be defined for each pair of atoms
types via the :doc:`pair_coeff <pair_coeff>` command as in the examples
@ -44,8 +48,8 @@ above, or in the data file or restart files read by the
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
commands, or by mixing as described below:
* epsilon (energy units)
* sigma (distance units)
* :math:`\epsilon` (energy units)
* :math:`\sigma` (distance units)
* cutoff (distance units)
The last coefficient is optional. If not specified, the global