fix up remaining computes for embedded math and a few other issues

This commit is contained in:
Axel Kohlmeyer 2020-02-10 16:21:19 -05:00
parent e952bcb5ac
commit c8034d19c4
No known key found for this signature in database
GPG Key ID: D9B44E93BF0C375A
39 changed files with 218 additions and 274 deletions

View File

@ -75,8 +75,11 @@ html: $(ANCHORCHECK)
@rm -rf html/_sources
@rm -rf html/PDF
@rm -rf html/USER
@rm -rf html/JPG
@cp -r src/PDF html/PDF
@cp -r src/USER html/USER
@mkdir -p html/JPG
@cp -v `grep -A2 '\.\. image::' src/*.rst | grep ':target:' | sed -e 's,.*:target: JPG/,src/JPG/,'` html/JPG/
@rm -rf html/PDF/.[sg]*
@rm -rf html/USER/.[sg]*
@rm -rf html/USER/*/.[sg]*

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

View File

@ -1,9 +0,0 @@
\documentstyle[12pt]{article}
\begin{document}
$$
NGP(t) = 3<(r(t)-r(0))^4>/(5<(r(t)-r(0))^2>^2) - 1
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -1,10 +0,0 @@
\documentstyle[12pt]{article}
\begin{document}
$$
I=\frac{F^{*}F}{N}
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

View File

@ -1,9 +0,0 @@
\documentstyle[12pt]{article}
\begin{document}
$$
F(\mathbf{k})=\sum_{j=1}^{N}f_j(\theta)exp(2\pi i \mathbf{k}\cdot \mathbf{r}_j)
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

View File

@ -1,10 +0,0 @@
\documentstyle[12pt]{article}
\begin{document}
$$
f_j\left ( \frac{sin(\theta)}{\lambda} \right )=\sum_{i}^{5}
a_i exp\left ( -b_i \frac{sin^{2}(\theta)}{\lambda^{2}} \right )
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

View File

@ -1,11 +0,0 @@
\documentclass[24pt]{article}
\pagestyle{empty}
\begin{document}
\begin{eqnarray*}
\theta_0 = {\tt rfac0} \frac{r-r_{min0}}{R_{ii'}-r_{min0}} \pi
\end{eqnarray*}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

View File

@ -1,11 +0,0 @@
\documentclass[24pt]{article}
\pagestyle{empty}
\begin{document}
\begin{eqnarray*}
u^j_{m,m'} = U^j_{m,m'}(0,0,0) + \sum_{r_{ii'} < R_{ii'}}{f_c(r_{ii'}) w_{i'} U^j_{m,m'}(\theta_0,\theta,\phi)}
\end{eqnarray*}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

View File

@ -1,16 +0,0 @@
\documentclass[24pt]{article}
\pagestyle{empty}
\begin{document}
\newcommand{\hcoeff}[9]{H\!\!{\tiny\begin{array}{l}#1 #2 #3 \\ #4 #5 #6 \\ #7 #8 #9 \end{array}}}
\begin{equation}
B_{j_1,j_2,j} = \\
\sum_{m_1,m'_1=-j_1}^{j_1}\sum_{m_2,m'_2=-j_2}^{j_2}\sum_{m,m'=-j}^{j} (u^j_{m,m'})^*
\hcoeff{j}{m}{m'}{j_1}{\!m_1}{\!m'_1}{j_2}{m_2}{m'_2}
u^{j_1}_{m_1,m'_1} u^{j_2}_{m_2,m'_2}
\end{equation}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

View File

@ -1,14 +0,0 @@
\documentclass[24pt]{article}
\pagestyle{empty}
\begin{document}
\begin{eqnarray*}
\label{eqn:f_c}
f_c(r) & = & \frac{1}{2}(\cos(\pi \frac{r-r_{min0}}{R_{ii'}-r_{min0}}) + 1), r \leq R_{ii'} \\
& = & 0, r > R_{ii'}
\end{eqnarray*}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

View File

@ -1,12 +0,0 @@
\documentclass[24pt]{article}
\pagestyle{empty}
\begin{document}
\begin{equation}
- \sum_{i' \in I} \frac{\partial {B^{i'}_{j_1,j_2,j} }}{\partial {\bf r}_i}
\end{equation}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

View File

@ -1,12 +0,0 @@
\documentclass[24pt]{article}
\pagestyle{empty}
\begin{document}
\begin{eqnarray*}
- {\bf r}_i \otimes \sum_{i' \in I} \frac{\partial {B^{i'}_{j_1,j_2,j}}}{\partial {\bf r}_i}
\end{eqnarray*}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@ -1,8 +0,0 @@
\documentclass[12pt]{article}
\begin{document}
$$
q_n = \frac{1}{nnn}\sum_{j = 1}^{nnn} e^{n i \theta({\bf r}_{ij})}
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

View File

@ -1,12 +0,0 @@
\documentclass[12pt]{article}
\begin{document}
$$
\bar{Y}_{lm} = \frac{1}{nnn}\sum_{j = 1}^{nnn} Y_{lm}( \theta( {\bf r}_{ij} ), \phi( {\bf r}_{ij} ) )
$$
$$
Q_l = \sqrt{\frac{4 \pi}{2 l + 1} \sum_{m = -l}^{m = l} \bar{Y}_{lm} \bar{Y}^*_{lm}}
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

View File

@ -1,9 +0,0 @@
\documentclass[12pt]{article}
\begin{document}
$$
P = \frac{N k_B T}{V} + \frac{\sum_{i}^{N'} r_i \bullet f_i}{dV}
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

View File

@ -1,10 +0,0 @@
\documentclass[12pt]{article}
\begin{document}
$$
P_{IJ} = \frac{\sum_{k}^{N} m_k v_{k_I} v_{k_J}}{V} +
\frac{\sum_{k}^{N'} r_{k_I} f_{k_J}}{V}
$$
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

View File

@ -1,21 +0,0 @@
\documentclass[12pt,article]{article}
\usepackage{indentfirst}
\usepackage{amsmath}
\newcommand{\set}[1]{\ensuremath{\mathbf{#1}}}
\newcommand{\mean}[1]{\ensuremath{\overline{#1}}}
\newcommand{\norm}[1]{\ensuremath{\left|\left|{#1}\right|\right|}}
\begin{document}
\begin{equation*}
\text{RMSD}(\set{u}, \set{v}) = \min_{s, \set{Q}} \sqrt{\frac{1}{N} \sum\limits_{i=1}^{N}
\norm{
s[\vec{u_i} - \mean{\set{u}}]
-
\set{Q} \vec{v_i}
}^2}
\end{equation*}
\end{document}

View File

@ -36,19 +36,22 @@ Examples
Description
"""""""""""
Define a computation that calculates *qn* the bond-orientational
Define a computation that calculates :math:`q_n` the bond-orientational
order parameter for each atom in a group. The hexatic (\ *n* = 6) order
parameter was introduced by :ref:`Nelson and Halperin <Nelson>` as a way to detect
hexagonal symmetry in two-dimensional systems. For each atom, *qn*
hexagonal symmetry in two-dimensional systems. For each atom, :math:`q_n`
is a complex number (stored as two real numbers) defined as follows:
.. image:: Eqs/hexorder.jpg
:align: center
.. math::
q_n = \frac{1}{nnn}\sum_{j = 1}^{nnn} e^{n i \theta({\bf r}_{ij})}
where the sum is over the *nnn* nearest neighbors
of the central atom. The angle theta
is formed by the bond vector rij and the *x* axis. theta is calculated
only using the *x* and *y* components, whereas the distance from the
of the central atom. The angle :math:`\theta`
is formed by the bond vector :math:`r_{ij}` and the *x* axis.
:math:`\theta` is calculated only using the *x* and *y* components,
whereas the distance from the
central atom is calculated using all three
*x*\ , *y*\ , and *z* components of the bond vector.
Neighbor atoms not in the group
@ -60,22 +63,22 @@ the maximum allowable value, is the cutoff specified
by the pair style.
The optional keyword *nnn* defines the number of nearest
neighbors used to calculate *qn*\ . The default value is 6.
neighbors used to calculate :math:`q_n`. The default value is 6.
If the value is NULL, then all neighbors up to the
distance cutoff are used.
The optional keyword *degree* sets the degree *n* of the order parameter.
The default value is 6. For a perfect hexagonal lattice with
*nnn* = 6,
*q*\ 6 = exp(6 i phi) for all atoms, where the constant 0 < phi < pi/3
:math:`q_6 = e^{6 i \phi}` for all atoms, where the constant :math:`0 < \phi < \frac{\pi}{3}`
depends only on the orientation of the lattice relative to the *x* axis.
In an isotropic liquid, local neighborhoods may still exhibit
weak hexagonal symmetry, but because the orientational correlation
decays quickly with distance, the value of phi will be different for
different atoms, and so when *q*\ 6 is averaged over all the atoms
in the system, \|<\ *q*\ 6>\| << 1.
decays quickly with distance, the value of :math:`\phi` will be different for
different atoms, and so when :math:`q_6` is averaged over all the atoms
in the system, :math:`| \left< q_6 \right> | << 1`.
The value of *qn* is set to zero for atoms not in the
The value of :math:`q_n` is set to zero for atoms not in the
specified compute group, as well as for atoms that have less than
*nnn* neighbors within the distance cutoff.
@ -102,8 +105,8 @@ too frequently.
**Output info:**
This compute calculates a per-atom array with 2 columns, giving the
real and imaginary parts *qn*\ , a complex number restricted to the
unit disk of the complex plane i.e. Re(\ *qn*\ )\^2 + Im(\ *qn*\ )\^2 <= 1 .
real and imaginary parts :math:`q_n`, a complex number restricted to the
unit disk of the complex plane i.e. :math:`Re(q_n)^2 + Im(q_n)^2 <= 1`.
These values can be accessed by any command that uses per-atom values
from a compute as input. See the :doc:`Howto output <Howto_output>` doc

View File

@ -46,8 +46,10 @@ dz\*dz)\*(dx\*dx + dy\*dy + dz\*dz), summed and averaged over atoms in the
group. The 3rd component is the nonGaussian diffusion parameter NGP =
3\*drfourth/(5\*drsquared\*drsquared), i.e.
.. image:: Eqs/compute_msd_nongauss.jpg
:align: center
.. math::
NGP(t) = 3<(r(t)-r(0))^4>/(5<(r(t)-r(0))^2>^2) - 1
The NGP is a commonly used quantity in studies of dynamical
heterogeneity. Its minimum theoretical value (-0.4) occurs when all

View File

@ -42,23 +42,25 @@ Description
"""""""""""
Define a computation that calculates a set of bond-orientational
order parameters *Ql* for each atom in a group. These order parameters
order parameters :math:`Q_l` for each atom in a group. These order parameters
were introduced by :ref:`Steinhardt et al. <Steinhardt>` as a way to
characterize the local orientational order in atomic structures.
For each atom, *Ql* is a real number defined as follows:
For each atom, :math:`Q_l` is a real number defined as follows:
.. image:: Eqs/orientorder.jpg
:align: center
.. math::
\bar{Y}_{lm} = & \frac{1}{nnn}\sum_{j = 1}^{nnn} Y_{lm}( \theta( {\bf r}_{ij} ), \phi( {\bf r}_{ij} ) ) \\
Q_l = & \sqrt{\frac{4 \pi}{2 l + 1} \sum_{m = -l}^{m = l} \bar{Y}_{lm} \bar{Y}^*_{lm}}
The first equation defines the spherical harmonic order parameters.
These are complex number components of the 3D analog of the 2D order
parameter *qn*\ , which is implemented as LAMMPS compute
parameter :math:`q_n`, which is implemented as LAMMPS compute
:doc:`hexorder/atom <compute_hexorder_atom>`.
The summation is over the *nnn* nearest
neighbors of the central atom.
The angles theta and phi are the standard spherical polar angles
defining the direction of the bond vector *rij*\ .
The second equation defines *Ql*\ , which is a
defining the direction of the bond vector :math:`r_{ij}`.
The second equation defines :math:`Q_l`, which is a
rotationally invariant non-negative amplitude obtained by summing
over all the components of degree *l*\ .
@ -68,42 +70,45 @@ the maximum allowable value, is the cutoff specified
by the pair style.
The optional keyword *nnn* defines the number of nearest
neighbors used to calculate *Ql*\ . The default value is 12.
neighbors used to calculate :math:`Q_l`. The default value is 12.
If the value is NULL, then all neighbors up to the
specified distance cutoff are used.
The optional keyword *degrees* defines the list of order parameters to
be computed. The first argument *nlvalues* is the number of order
parameters. This is followed by that number of non-negative integers giving the
degree of each order parameter. Because *Q*\ 2 and all odd-degree order
degree of each order parameter. Because :math:`Q_2` and all odd-degree order
parameters are zero for atoms in cubic crystals (see
:ref:`Steinhardt <Steinhardt>`), the default order parameters are *Q*\ 4,
*Q*\ 6, *Q*\ 8, *Q*\ 10, and *Q*\ 12. For the FCC crystal with *nnn* =12, *Q*\ 4
= sqrt(7/3)/8 = 0.19094.... The numerical values of all order
parameters up to *Q*\ 12 for a range of commonly encountered
high-symmetry structures are given in Table I of :ref:`Mickel et al. <Mickel>`, and these can be reproduced with this compute
:ref:`Steinhardt <Steinhardt>`), the default order parameters are :math:`Q_4`,
:math:`Q_6`, :math:`Q_8`, :math:`Q_{10}`, and :math:`Q_{12}`. For the FCC
crystal with *nnn* =12, :math:`Q_4 = \sqrt{\frac{7}{192}} = 0.19094...`.
The numerical values of all order
parameters up to :math:`Q_12` for a range of commonly encountered
high-symmetry structures are given in Table I of :ref:`Mickel et al. <Mickel>`,
and these can be reproduced with this compute.
The optional keyword *wl* will output the third-order invariants *Wl*
The optional keyword *wl* will output the third-order invariants :math:`W_l`
(see Eq. 1.4 in :ref:`Steinhardt <Steinhardt>`) for the same degrees as
for the *Ql* parameters. For the FCC crystal with *nnn* =12,
*W*\ 4 = -sqrt(14/143).(49/4096)/Pi\^1.5 = -0.0006722136...
for the :math:`Q_l` parameters. For the FCC crystal with *nnn* =12,
:math:`W_4` = -sqrt(14/143).(49/4096)/Pi\^1.5 = -0.0006722136...
The optional keyword *wl/hat* will output the normalized third-order
invariants *Wlhat* (see Eq. 2.2 in :ref:`Steinhardt <Steinhardt>`)
for the same degrees as for the *Ql* parameters. For the FCC crystal
with *nnn* =12, *W*\ 4hat = -7/3\*sqrt(2/429) = -0.159317...The numerical
values of *Wlhat* for a range of commonly encountered high-symmetry
invariants :math:`\hat{W}_l` (see Eq. 2.2 in :ref:`Steinhardt <Steinhardt>`)
for the same degrees as for the :math:`Q_l` parameters. For the FCC crystal
with *nnn* =12, :math:`\hat{W}_4 = -\frac{7}{3} \sqrt{\frac{2}{429}} = -0.159317...`
The numerical
values of :math:`\hat{W}_l` for a range of commonly encountered high-symmetry
structures are given in Table I of :ref:`Steinhardt <Steinhardt>`, and these
can be reproduced with this keyword.
The optional keyword *components* will output the components of the
normalized complex vector *Ybar\_lm* of degree *ldegree*\ , which must be
normalized complex vector :math:`\bar{Y}_{lm}` of degree *ldegree*\ , which must be
explicitly included in the keyword *degrees*\ . This option can be used
in conjunction with :doc:`compute coord\_atom <compute_coord_atom>` to
calculate the ten Wolde's criterion to identify crystal-like
particles, as discussed in :ref:`ten Wolde <tenWolde2>`.
The value of *Ql* is set to zero for atoms not in the
The value of :math:`Q_l` is set to zero for atoms not in the
specified compute group, as well as for atoms that have less than
*nnn* neighbors within the distance cutoff, unless *nnn* is NULL.
@ -130,19 +135,19 @@ too frequently.
**Output info:**
This compute calculates a per-atom array with *nlvalues* columns,
giving the *Ql* values for each atom, which are real numbers on the
range 0 <= *Ql* <= 1.
giving the :math:`Q_l` values for each atom, which are real numbers on the
range :math:`0 <= Q_l <= 1`.
If the keyword *wl* is set to yes, then the *Wl* values for each
If the keyword *wl* is set to yes, then the :math:`W_l` values for each
atom will be added to the output array, which are real numbers.
If the keyword *wl/hat* is set to yes, then the *Wl\_hat*
If the keyword *wl/hat* is set to yes, then the :math:`\hat{W}_l`
values for each atom will be added to the output array, which are real numbers.
If the keyword *components* is set, then the real and imaginary parts
of each component of (normalized) *Ybar\_lm* will be added to the
output array in the following order: Re(*Ybar\_-m*) Im(*Ybar\_-m*)
Re(*Ybar\_-m+1*) Im(*Ybar\_-m+1*) ... Re(*Ybar\_m*) Im(*Ybar\_m*). This
of each component of (normalized) :math:`\bar{Y}_{lm}` will be added to the
output array in the following order: :math:`Re(\bar{Y}_{-m}) Im(\bar{Y}_{-m})
Re(\bar{Y}_{-m+1}) Im(\bar{Y}_{-m+1}) ... Re(\bar{Y}_m) Im(\bar{Y}_m)`. This
way, the per-atom array will have a total of *nlvalues*\ +2\*(2\ *l*\ +1)
columns.
@ -163,7 +168,7 @@ Default
"""""""
The option defaults are *cutoff* = pair style cutoff, *nnn* = 12,
*degrees* = 5 4 6 8 10 12 i.e. *Q*\ 4, *Q*\ 6, *Q*\ 8, *Q*\ 10, and *Q*\ 12,
*degrees* = 5 4 6 8 10 12 i.e. :math:`Q_4`, :math:`Q_6`, :math:`Q_8`, :math:`Q_{10}`, and :math:`Q_{12}`,
*wl* = no, *wl/hat* = no, and *components* off
@ -172,21 +177,16 @@ The option defaults are *cutoff* = pair style cutoff, *nnn* = 12,
.. _Steinhardt:
**(Steinhardt)** P. Steinhardt, D. Nelson, and M. Ronchetti,
Phys. Rev. B 28, 784 (1983).
.. _Mickel:
**(Mickel)** W. Mickel, S. C. Kapfer, G. E. Schroeder-Turkand, K. Mecke,
J. Chem. Phys. 138, 044501 (2013).
.. _tenWolde2:
**(tenWolde)** P. R. ten Wolde, M. J. Ruiz-Montero, D. Frenkel,
J. Chem. Phys. 104, 9932 (1996).

View File

@ -37,8 +37,10 @@ of atoms via the :doc:`compute reduce <compute_reduce>` command.
The pressure is computed by the formula
.. image:: Eqs/pressure.jpg
:align: center
.. math::
P = \frac{N k_B T}{V} + \frac{\sum_{i}^{N'} r_i \bullet f_i}{dV}
where N is the number of atoms in the system (see discussion of DOF
below), Kb is the Boltzmann constant, T is the temperature, d is the
@ -62,8 +64,11 @@ ordered xx, yy, zz, xy, xz, yz. The equation for the I,J components
the first term uses components of the kinetic energy tensor and the
second term uses components of the virial tensor:
.. image:: Eqs/pressure_tensor.jpg
:align: center
.. math::
P_{IJ} = \frac{\sum_{k}^{N} m_k v_{k_I} v_{k_J}}{V} +
\frac{\sum_{k}^{N'} r_{k_I} f_{k_J}}{V}
If no extra keywords are listed, the entire equations above are
calculated. This includes a kinetic energy (temperature) term and the

View File

@ -62,8 +62,11 @@ to identify potential structure matches. Next, the deviation is computed betwee
local structure (in the simulation) and a template of the ideal lattice structure.
The deviation is calculated as:
.. image:: Eqs/ptm_rmsd.jpg
:align: center
.. math::
\text{RMSD}(\mathbf{u}, \mathbf{v}) = \min_{s, \mathbf{Q}} \sqrt{\frac{1}{N} \sum\limits_{i=1}^{N}
{\left|\left| s[\vec{u_i} - \overline{\mathbf{u}}] - \mathbf{Q} \vec{v_i} \right|\right|}^2}
Here, u and v contain the coordinates of the local and ideal structures respectively,
s is a scale factor, and Q is a rotation. The best match is identified by the

View File

@ -59,14 +59,14 @@ radiation of wavelength lambda.
The electron diffraction intensity I at each reciprocal lattice point
is computed from the structure factor F using the equations:
.. image:: Eqs/compute_saed1.jpg
:align: center
.. math::
.. image:: Eqs/compute_saed2.jpg
:align: center
I = & \frac{F^{*}F}{N} \\
F(\mathbf{k}) = & \sum_{j=1}^{N}f_j(\theta)exp(2\pi i \mathbf{k} \cdot \mathbf{r}_j)
Here, K is the location of the reciprocal lattice node, rj is the
position of each atom, fj are atomic scattering factors.
Here, K is the location of the reciprocal lattice node, :math:`r_j` is the
position of each atom, :math:`f_j` are atomic scattering factors.
Diffraction intensities are calculated on a three-dimensional mesh of
reciprocal lattice nodes. The mesh spacing is defined either (a) by
@ -119,33 +119,117 @@ for each atom type (type1 type2 ... typeN) and angle of diffraction.
The analytic approximation is computed using the formula
:ref:`(Brown) <Brown>`:
.. image:: Eqs/compute_saed3.jpg
:align: center
.. math::
f_j\left ( \frac{sin(\theta)}{\lambda} \right )=\sum_{i}^{5}
a_i exp\left ( -b_i \frac{sin^{2}(\theta)}{\lambda^{2}} \right )
Coefficients parameterized by :ref:`(Fox) <Fox>` are assigned for each
atom type designating the chemical symbol and charge of each atom
type. Valid chemical symbols for compute saed are:
H: He: Li: Be: B:
C: N: O: F: Ne:
Na: Mg: Al: Si: P:
S: Cl: Ar: K: Ca:
Sc: Ti: V: Cr: Mn:
Fe: Co: Ni: Cu: Zn:
Ga: Ge: As: Se: Br:
Kr: Rb: Sr: Y: Zr:
Nb: Mo: Tc: Ru: Rh:
Pd: Ag: Cd: In: Sn:
Sb: Te: I: Xe: Cs:
Ba: La: Ce: Pr: Nd:
Pm: Sm: Eu: Gd: Tb:
Dy: Ho: Er: Tm: Yb:
Lu: Hf: Ta: W: Re:
Os: Ir: Pt: Au: Hg:
Tl: Pb: Bi: Po: At:
Rn: Fr: Ra: Ac: Th:
Pa: U: Np: Pu: Am:
Cm: Bk: Cf:tb(c=5,s=:)
.. table_from_list::
:columns: 20
* H
* He
* Li
* Be
* B
* C
* N
* O
* F
* Ne
* Na
* Mg
* Al
* Si
* P
* S
* Cl
* Ar
* K
* Ca
* Sc
* Ti
* V
* Cr
* Mn
* Fe
* Co
* Ni
* Cu
* Zn
* Ga
* Ge
* As
* Se
* Br
* Kr
* Rb
* Sr
* Y
* Zr
* Nb
* Mo
* Tc
* Ru
* Rh
* Pd
* Ag
* Cd
* In
* Sn
* Sb
* Te
* I
* Xe
* Cs
* Ba
* La
* Ce
* Pr
* Nd
* Pm
* Sm
* Eu
* Gd
* Tb
* Dy
* Ho
* Er
* Tm
* Yb
* Lu
* Hf
* Ta
* W
* Re
* Os
* Ir
* Pt
* Au
* Hg
* Tl
* Pb
* Bi
* Po
* At
* Rn
* Fr
* Ra
* Ac
* Th
* Pa
* U
* Np
* Pu
* Am
* Cm
* Bk
* Cf
If the *echo* keyword is specified, compute saed will provide extra
reporting information to the screen.

View File

@ -82,8 +82,10 @@ onto the 3-sphere, the surface of the unit ball in a four-dimensional
space. The radial distance *r* within *R\_ii'* is mapped on to a third
polar angle *theta0* defined by,
.. image:: Eqs/compute_sna_atom1.jpg
:align: center
.. math::
\theta_0 = {\tt rfac0} \frac{r-r_{min0}}{R_{ii'}-r_{min0}} \pi
In this way, all possible neighbor positions are mapped on to a subset
of the 3-sphere. Points south of the latitude *theta0max=rfac0\*Pi*
@ -101,8 +103,10 @@ radial distance. Expanding this density function as a generalized
Fourier series in the basis functions, we can write each Fourier
coefficient as
.. image:: Eqs/compute_sna_atom2.jpg
:align: center
.. math::
u^j_{m,m'} = U^j_{m,m'}(0,0,0) + \sum_{r_{ii'} < R_{ii'}}{f_c(r_{ii'}) w_{i'} U^j_{m,m'}(\theta_0,\theta,\phi)}
The *w\_i'* neighbor weights are dimensionless numbers that are chosen
to distinguish atoms of different types, while the central atom is
@ -110,8 +114,11 @@ arbitrarily assigned a unit weight. The function *fc(r)* ensures that
the contribution of each neighbor atom goes smoothly to zero at
*R\_ii'*:
.. image:: Eqs/compute_sna_atom4.jpg
:align: center
.. math::
f_c(r) = & \frac{1}{2}(\cos(\pi \frac{r-r_{min0}}{R_{ii'}-r_{min0}}) + 1), r \leq R_{ii'} \\
= & 0, r > R_{ii'}
The expansion coefficients *u\^j\_m,m'* are complex-valued and they are
not directly useful as descriptors, because they are not invariant
@ -119,8 +126,15 @@ under rotation of the polar coordinate frame. However, the following
scalar triple products of expansion coefficients can be shown to be
real-valued and invariant under rotation :ref:`(Bartok) <Bartok20101>`.
.. image:: Eqs/compute_sna_atom3.jpg
:align: center
.. math::
B_{j_1,j_2,j} =
\sum_{m_1,m'_1=-j_1}^{j_1}\sum_{m_2,m'_2=-j_2}^{j_2}\sum_{m,m'=-j}^{j} (u^j_{m,m'})^*
H {\scriptscriptstyle \begin{array}{l} {j} {m} {m'} \\
{j_1} {m_1} {m'_1} \\
{j_2} {m_2} {m'_2} \end{array}}
u^{j_1}_{m_1,m'_1} u^{j_2}_{m_2,m'_2}
The constants *H\^jmm'\_j1m1m1'\_j2m2m2'* are coupling coefficients,
analogous to Clebsch-Gordan coefficients for rotations on the
@ -138,8 +152,10 @@ atom.
Compute *snad/atom* calculates the derivative of the bispectrum components
summed separately for each atom type:
.. image:: Eqs/compute_sna_atom5.jpg
:align: center
.. math::
-\sum_{i' \in I} \frac{\partial {B^{i'}_{j_1,j_2,j} }}{\partial {\bf r}_i}
The sum is over all atoms *i'* of atom type *I*\ . For each atom *i*\ ,
this compute evaluates the above expression for each direction, each
@ -149,8 +165,10 @@ for a detailed explanation.
Compute *snav/atom* calculates the virial contribution due to the
derivatives:
.. image:: Eqs/compute_sna_atom6.jpg
:align: center
.. math::
-{\bf r}_i \otimes \sum_{i' \in I} \frac{\partial {B^{i'}_{j_1,j_2,j}}}{\partial {\bf r}_i}
Again, the sum is over all atoms *i'* of atom type *I*\ . For each atom
*i*\ , this compute evaluates the above expression for each of the six

View File

@ -235,7 +235,7 @@ that a particular atom is changed or not changed, regardless of how
many processors are being used. This keyword does not allow use of an
atom-style variable.
Keywords *type/ratio* and *type/subset" also set the atom type for a
Keywords *type/ratio* and *type/subset* also set the atom type for a
fraction of the selected atoms. The actual number of atoms changed
will be exactly the requested number. For *type/ratio* the specified
fraction (0 <= *fraction* <= 1) determines the number. For