Merge pull request #1867 from akohlmey/doc-convert-to-mathjax
Convert more documentation to use embedded math expressions
Before Width: | Height: | Size: 14 KiB |
|
@ -1,15 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\pagestyle{empty}
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E_{a} = K_2\left(\theta - \theta_0\right)^2 + K_3\left(\theta - \theta_0\right)^3 + K_4\left(\theta - \theta_0\right)^4 + K_5\left(\theta - \theta_0\right)^5 + K_6\left(\theta - \theta_0\right)^6
|
||||
$$
|
||||
|
||||
\end{document}
|
||||
|
||||
%%% Local Variables:
|
||||
%%% mode: latex
|
||||
%%% TeX-master: t
|
||||
%%% End:
|
Before Width: | Height: | Size: 11 KiB |
|
@ -1,14 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
a &=& {\rm lx} \\
|
||||
b^2 &=& {\rm ly}^2 + {\rm xy}^2 \\
|
||||
c^2 &=& {\rm lz}^2 + {\rm xz}^2 + {\rm yz}^2 \\
|
||||
\cos{\alpha} &=& \frac{{\rm xy}*{\rm xz} + {\rm ly}*{\rm yz}}{b*c} \\
|
||||
\cos{\beta} &=& \frac{\rm xz}{c} \\
|
||||
\cos{\gamma} &=& \frac{\rm xy}{b} \\
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 10 KiB |
|
@ -1,14 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
{\rm lx} &=& a \\
|
||||
{\rm xy} &=& b \cos{\gamma} \\
|
||||
{\rm xz} &=& c \cos{\beta}\\
|
||||
{\rm ly}^2 &=& b^2 - {\rm xy}^2 \\
|
||||
{\rm yz} &=& \frac{b*c \cos{\alpha} - {\rm xy}*{\rm xz}}{\rm ly} \\
|
||||
{\rm lz}^2 &=& c^2 - {\rm xz}^2 - {\rm yz}^2 \\
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 3.0 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = K [ 1 + \cos (n \phi - d) ]
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 47 KiB |
|
@ -1,17 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
E & = & E_d + E_{mbt} + E_{ebt} + E_{at} + E_{aat} + E_{bb13} \\
|
||||
E_d & = & \sum_{n=1}^{3} K_n [ 1 - \cos (n \phi - \phi_n) ] \\
|
||||
E_{mbt} & = & (r_{jk} - r_2) [ A_1 \cos (\phi) + A_2 \cos (2\phi) + A_3 \cos (3\phi) ] \\
|
||||
E_{ebt} & = & (r_{ij} - r_1) [ B_1 \cos (\phi) + B_2 \cos (2\phi) + B_3 \cos (3\phi) ] + \\
|
||||
& & (r_{kl} - r_3) [ C_1 \cos (\phi) + C_2 \cos (2\phi) + C_3 \cos (3\phi) ] \\
|
||||
E_{at} & = & (\theta_{ijk} - \theta_1) [ D_1 \cos (\phi) + D_2 \cos (2\phi) + D_3 \cos (3\phi) ] + \\
|
||||
& & (\theta_{jkl} - \theta_2) [ E_1 \cos (\phi) + E_2 \cos (2\phi) + E_3 \cos (3\phi) ] \\
|
||||
E_{aat} & = & M (\theta_{ijk} - \theta_1) (\theta_{jkl} - \theta_2) \cos (\phi) \\
|
||||
E_{bb13} & = & N (r_{ij} - r_1) (r_{kl} - r_3)
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 7.8 KiB |
|
@ -1,13 +0,0 @@
|
|||
\documentstyle[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E=-U_{min}
|
||||
\frac{e^{-a U(\theta,\theta_0)}-1}{e^a-1}
|
||||
\quad\mbox{with}\quad
|
||||
U(\theta,\theta_0)
|
||||
=-0.5 \left(1+\cos(\theta-\theta_0) \right)
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 4.4 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = \sum_{i=1,m} K_i [ 1.0 + \cos ( n_i \phi - d_i ) ]
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 2.9 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = K [ 1 + d \cos (n \phi) ]
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 6.7 KiB |
|
@ -1,10 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = A [1 - \cos(\theta)] + B [1 + \cos(3 \theta)] +
|
||||
C [1 + \cos(\theta + \frac{\pi}{4})]
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 3.0 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = \sum_{n=1,5} A_n \cos^{n-1}(\phi)
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 3.2 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = \sum_{n=1,n} A_n \cos^{n-1}(\phi)
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 10 KiB |
|
@ -1,10 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = \frac{1}{2} K_1 [1 + \cos(\phi)] + \frac{1}{2} K_2 [1 - \cos(2 \phi)] +
|
||||
\frac{1}{2} K_3 [1 + \cos(3 \phi)] + \frac{1}{2} K_4 [1 - \cos(4 \phi)]
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 2.0 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = K (\phi - \phi_0)^2
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 14 KiB |
|
@ -1,15 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
\pagestyle{empty}
|
||||
\begin{eqnarray*}
|
||||
E(\phi,\theta_1,\theta_2) & = &\sum_{i=1}^N\nolimits\ C_i\ \Phi_i(\phi)\ \Theta_{1i}(\theta_1)\ \Theta_{2i}(\theta_2)\\
|
||||
\Phi_{i}(\phi) & = & u_i - \mathrm{cos}((\phi - a_i)K_i) \\
|
||||
\Theta_{1i}(\theta_1) & = & v_i - \mathrm{cos}((\theta_1-b_i)L_i) \\
|
||||
\Theta_{2i}(\theta_2) & = & w_i - \mathrm{cos}((\theta_2-c_i)M_i)
|
||||
\end{eqnarray*}
|
||||
|
||||
% Check using: http://quicklatex.com/ (24pt font)
|
||||
\pagestyle{empty}
|
||||
\end{document}
|
||||
|
Before Width: | Height: | Size: 30 KiB |
|
@ -1,11 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
\pagestyle{empty}
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
f(\theta) & = & K \qquad\qquad\qquad\qquad\qquad\qquad \theta < \theta_1 \\
|
||||
f(\theta) & = & K \left(1-\frac{(\theta - \theta_1)^2}{(\theta_2 - \theta_1)^2}\right) \qquad \theta_1 < \theta < \theta_2
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
||||
|
Before Width: | Height: | Size: 15 KiB |
|
@ -1,13 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
E & = & E_i + E_{aa} \\
|
||||
E_i & = & K [ \frac{\chi_{ijkl} + \chi_{kjli} + \chi_{ljik}}{3} - \chi_0 ]^2 \\
|
||||
E_{aa} & = & M_1 (\theta_{ijk} - \theta_1) (\theta_{kjl} - \theta_3) + \\
|
||||
& & M_2 (\theta_{ijk} - \theta_1) (\theta_{ijl} - \theta_2) + \\
|
||||
& & M_3 (\theta_{ijl} - \theta_2) (\theta_{kjl} - \theta_3)
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 2.9 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = \frac{1}{2} K \cos^2{\left(\chi - \chi_0\right)}
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 2.8 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = K [1 + d \cos (n \phi) ]
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 2.1 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = K_2 d^2 + K_4 d^4
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 2.1 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
\thispagestyle{empty}
|
||||
$$
|
||||
E = K (d - d_0)^2
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 4.6 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = K [C_0 + C_1 \cos ( \omega) + C_2 \cos( 2 \omega) ]
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 2.0 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = K (\chi - \chi_0)^2
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 4.5 KiB |
|
@ -1,15 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\pagestyle{empty}
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E = K \left(\theta - \theta_0\right)^2
|
||||
$$
|
||||
|
||||
\end{document}
|
||||
|
||||
%%% Local Variables:
|
||||
%%% mode: latex
|
||||
%%% TeX-master: t
|
||||
%%% End:
|
Before Width: | Height: | Size: 11 KiB |
|
@ -1,12 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
E & = &\frac{1}{6} K \left(\Delta_{ijl} + \Delta_{ijk} + \Delta_{kjl} \right)^6 \\
|
||||
\Delta_{ijl} & = & \cos{\theta_{ijl} - \cos{\theta_0}} \\
|
||||
\Delta_{ijk} & = & \cos{\theta_{ijk} - \cos{\theta_0}} \\
|
||||
\Delta_{kjl} & = & \cos{\theta_{kjl} - \cos{\theta_0}}
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 2.2 KiB |
|
@ -1,9 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
\thispagestyle{empty}
|
||||
$$
|
||||
E = K (d^2 - d_0^2)^2
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 9.4 KiB |
|
@ -1,13 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$$
|
||||
E=\frac{1}{2}K\left( \frac{1}{\sin\omega_0}\right) ^2 \left( \cos\omega - \cos\omega_0\right) ^2 \qquad \omega_0 \neq 0^o
|
||||
$$
|
||||
|
||||
$$
|
||||
E=K\left( 1-cos\omega\right) \qquad \omega_0 = 0^o
|
||||
$$
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 19 KiB |
|
@ -1,15 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
E(r_1,r_2, \ldots ,r_N) & = & \sum_{i,j} E_{\it pair}(r_i,r_j) +
|
||||
\sum_{ij} E_{\it bond}(r_i,r_j) +
|
||||
\sum_{ijk} E_{\it angle}(r_i,r_j,r_k) + \\
|
||||
&& \sum_{ijkl} E_{\it dihedral}(r_i,r_j,r_k,r_l) +
|
||||
\sum_{ijkl} E_{\it improper}(r_i,r_j,r_k,r_l) +
|
||||
\sum_i E_{\it fix}(r_i)
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
||||
|
Before Width: | Height: | Size: 6.9 KiB |
|
@ -1,13 +0,0 @@
|
|||
\documentclass[preview]{standalone}
|
||||
\usepackage{varwidth}
|
||||
\usepackage[utf8x]{inputenc}
|
||||
\usepackage{amsmath, amssymb, graphics, setspace}
|
||||
|
||||
\begin{document}
|
||||
\begin{varwidth}{50in}
|
||||
\begin{equation}
|
||||
\frac{d \vec{s}_{i}}{dt} = \lambda\, \vec{s}_{i} \times\left( \vec{\omega}_{i} \times\vec{s}_{i} \right)
|
||||
\nonumber
|
||||
\end{equation}
|
||||
\end{varwidth}
|
||||
\end{document}
|
Before Width: | Height: | Size: 5.8 KiB |
|
@ -1,14 +0,0 @@
|
|||
\documentclass[preview]{standalone}
|
||||
\usepackage{varwidth}
|
||||
\usepackage[utf8x]{inputenc}
|
||||
\usepackage{amsmath, amssymb, graphics, setspace}
|
||||
|
||||
\begin{document}
|
||||
\begin{varwidth}{50in}
|
||||
\begin{equation}
|
||||
{\Delta t}_{\rm max} = \frac{2\pi}{\kappa
|
||||
\left|\vec{\omega}_{\rm max} \right|}
|
||||
\nonumber
|
||||
\end{equation}
|
||||
\end{varwidth}
|
||||
\end{document}
|
Before Width: | Height: | Size: 9.4 KiB |
|
@ -1,15 +0,0 @@
|
|||
\documentclass[preview]{standalone}
|
||||
\usepackage{varwidth}
|
||||
\usepackage[utf8x]{inputenc}
|
||||
\usepackage{amsmath, amssymb, graphics, setspace}
|
||||
|
||||
\begin{document}
|
||||
\begin{varwidth}{50in}
|
||||
\begin{equation}
|
||||
\omega_i^{\nu} =
|
||||
(\nu - 1) \Delta \omega_i
|
||||
{\rm ~~and~~} \Delta \omega_i = \frac{\omega_i}{Q-1}
|
||||
, \nonumber
|
||||
\end{equation}
|
||||
\end{varwidth}
|
||||
\end{document}
|
Before Width: | Height: | Size: 8.2 KiB |
|
@ -1,16 +0,0 @@
|
|||
\documentclass[preview]{standalone}
|
||||
\usepackage{varwidth}
|
||||
\usepackage[utf8x]{inputenc}
|
||||
\usepackage{amsmath, amssymb, graphics, setspace}
|
||||
|
||||
\begin{document}
|
||||
\begin{varwidth}{50in}
|
||||
\begin{equation}
|
||||
\vec{k}_i =
|
||||
\frac{\vec{m}_i^I \times \vec{m}_i^F}{\left|\vec{m}_i^I
|
||||
\times \vec{m}_i^F\right|}
|
||||
%&{\rm ~if~}& \vec{m}_i^I \times \vec{m}_i^F
|
||||
, \nonumber
|
||||
\end{equation}
|
||||
\end{varwidth}
|
||||
\end{document}
|
Before Width: | Height: | Size: 20 KiB |
|
@ -1,16 +0,0 @@
|
|||
\documentclass[preview]{standalone}
|
||||
\usepackage{varwidth}
|
||||
\usepackage[utf8x]{inputenc}
|
||||
\usepackage{amsmath, amssymb, graphics, setspace}
|
||||
|
||||
\begin{document}
|
||||
\begin{varwidth}{50in}
|
||||
\begin{equation}
|
||||
\vec{m}_i^{\nu} = \vec{m}_i^{I} \cos(\omega_i^{\nu})
|
||||
+ (\vec{k}_i \times \vec{m}_i^{I}) \sin(\omega_i^{\nu})
|
||||
+ (1.0-\cos(\omega_i^{\nu})) \vec{k}_i (\vec{k}_i\cdot
|
||||
\vec{m}_i^{I})
|
||||
, \nonumber
|
||||
\end{equation}
|
||||
\end{varwidth}
|
||||
\end{document}
|
Before Width: | Height: | Size: 14 KiB |
|
@ -1,15 +0,0 @@
|
|||
\documentclass[preview]{standalone}
|
||||
\usepackage{varwidth}
|
||||
\usepackage[utf8x]{inputenc}
|
||||
\usepackage{amsmath, amssymb, graphics, setspace}
|
||||
|
||||
\begin{document}
|
||||
\begin{varwidth}{50in}
|
||||
\begin{equation}
|
||||
|| \vec{F} ||_{inf}
|
||||
= {\rm max}\left(|F_1^1|, |F_1^2|, |F_1^3| \cdots,
|
||||
|F_N^1|, |F_N^2|, |F_N^3|\right)
|
||||
\nonumber
|
||||
\end{equation}
|
||||
\end{varwidth}
|
||||
\end{document}
|
Before Width: | Height: | Size: 9.2 KiB |
|
@ -1,15 +0,0 @@
|
|||
\documentclass[preview]{standalone}
|
||||
\usepackage{varwidth}
|
||||
\usepackage[utf8x]{inputenc}
|
||||
\usepackage{amsmath, amssymb, graphics, setspace}
|
||||
|
||||
\begin{document}
|
||||
\begin{varwidth}{50in}
|
||||
\begin{equation}
|
||||
% \left| \left| \vec{F} \right| \right|_2
|
||||
|| \vec{F} ||_{max}
|
||||
= {\rm max}\left(||\vec{F}_1||, \cdots, ||\vec{F}_N||\right)
|
||||
\nonumber
|
||||
\end{equation}
|
||||
\end{varwidth}
|
||||
\end{document}
|
Before Width: | Height: | Size: 5.9 KiB |
|
@ -1,15 +0,0 @@
|
|||
\documentclass[preview]{standalone}
|
||||
\usepackage{varwidth}
|
||||
\usepackage[utf8x]{inputenc}
|
||||
\usepackage{amsmath, amssymb, graphics, setspace}
|
||||
|
||||
\begin{document}
|
||||
\begin{varwidth}{50in}
|
||||
\begin{equation}
|
||||
% \left| \left| \vec{F} \right| \right|_2
|
||||
|| \vec{F} ||_{2}
|
||||
= \sqrt{\vec{F}_1+ \cdots + \vec{F}_N}
|
||||
\nonumber
|
||||
\end{equation}
|
||||
\end{varwidth}
|
||||
\end{document}
|
Before Width: | Height: | Size: 18 KiB |
|
@ -1,26 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\usepackage{amsmath}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
\mathbf{x}
|
||||
&=&
|
||||
\begin{pmatrix}
|
||||
\mathbf{a} &
|
||||
\mathbf{b} &
|
||||
\mathbf{c}
|
||||
\end{pmatrix}
|
||||
\cdot
|
||||
\frac{1}{V}
|
||||
\begin{pmatrix}
|
||||
\mathbf{B \times C} \\
|
||||
\mathbf{C \times A} \\
|
||||
\mathbf{A \times B}
|
||||
\end{pmatrix}
|
||||
\cdot
|
||||
\mathbf{X}
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 59 KiB |
|
@ -1,27 +0,0 @@
|
|||
\documentclass[12pt]{article}
|
||||
|
||||
\usepackage{amsmath}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{eqnarray*}
|
||||
\begin{pmatrix}
|
||||
\mathbf{a} &
|
||||
\mathbf{b} &
|
||||
\mathbf{c}
|
||||
\end{pmatrix}
|
||||
& = &
|
||||
\begin{pmatrix}
|
||||
a_x & b_x & c_x \\
|
||||
0 & b_y & c_y \\
|
||||
0 & 0 & c_z \\
|
||||
\end{pmatrix} \\
|
||||
a_x &=& A \\
|
||||
b_x &=& \mathbf{B} \cdot \mathbf{\hat{A}} \quad = \quad B \cos{\gamma} \\
|
||||
b_y &=& |\mathbf{\hat{A}} \times \mathbf{B}| \quad = \quad B \sin{\gamma} \quad = \quad \sqrt{B^2 - {b_x}^2} \\
|
||||
c_x &=& \mathbf{C} \cdot \mathbf{\hat{A}} \quad = \quad C \cos{\beta} \\
|
||||
c_y &=& \mathbf{C} \cdot \widehat{(\mathbf{A} \times \mathbf{B})} \times \mathbf{\hat{A}} \quad = \quad \frac{\mathbf{B} \cdot \mathbf{C} - b_x c_x}{b_y} \\
|
||||
c_z &=& |\mathbf{C} \cdot \widehat{(\mathbf{A} \times \mathbf{B})}|\quad = \quad \sqrt{C^2 - {c_x}^2 - {c_y}^2} \\
|
||||
\end{eqnarray*}
|
||||
|
||||
\end{document}
|
|
@ -39,8 +39,20 @@ vectors of a general parallelepiped, where there is no restriction on
|
|||
**A** x **B** . **C** > 0. The equivalent LAMMPS **a**\ ,\ **b**\ ,\ **c** are a linear
|
||||
rotation of **A**\ , **B**\ , and **C** and can be computed as follows:
|
||||
|
||||
.. image:: Eqs/transform.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
\begin{pmatrix} \mathbf{a} & \mathbf{b} & \mathbf{c} \end{pmatrix} = &
|
||||
\begin{pmatrix}
|
||||
a_x & b_x & c_x \\
|
||||
0 & b_y & c_y \\
|
||||
0 & 0 & c_z \\
|
||||
\end{pmatrix} \\
|
||||
a_x = & A \\
|
||||
b_x = & \mathbf{B} \cdot \mathbf{\hat{A}} \quad = \quad B \cos{\gamma} \\
|
||||
b_y = & |\mathbf{\hat{A}} \times \mathbf{B}| \quad = \quad B \sin{\gamma} \quad = \quad \sqrt{B^2 - {b_x}^2} \\
|
||||
c_x = & \mathbf{C} \cdot \mathbf{\hat{A}} \quad = \quad C \cos{\beta} \\
|
||||
c_y = & \mathbf{C} \cdot \widehat{(\mathbf{A} \times \mathbf{B})} \times \mathbf{\hat{A}} \quad = \quad \frac{\mathbf{B} \cdot \mathbf{C} - b_x c_x}{b_y} \\
|
||||
c_z = & |\mathbf{C} \cdot \widehat{(\mathbf{A} \times \mathbf{B})}|\quad = \quad \sqrt{C^2 - {c_x}^2 - {c_y}^2}
|
||||
|
||||
where A = \| **A** \| indicates the scalar length of **A**\ . The hat symbol (\^)
|
||||
indicates the corresponding unit vector. *beta* and *gamma* are angles
|
||||
|
@ -60,8 +72,14 @@ fractional coordinates in the
|
|||
old basis and then converting to distance coordinates in the new basis.
|
||||
The transformation is given by the following equation:
|
||||
|
||||
.. image:: Eqs/rotate.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
\mathbf{x} = & \begin{pmatrix} \mathbf{a} & \mathbf{b} & \mathbf{c} \end{pmatrix} \cdot \frac{1}{V}
|
||||
\begin{pmatrix}
|
||||
\mathbf{B \times C} \\
|
||||
\mathbf{C \times A} \\
|
||||
\mathbf{A \times B}
|
||||
\end{pmatrix} \cdot \mathbf{X}
|
||||
|
||||
where *V* is the volume of the box, **X** is the original vector quantity and
|
||||
**x** is the vector in the LAMMPS basis.
|
||||
|
@ -142,23 +160,36 @@ For extreme values of tilt, LAMMPS may also lose atoms and generate an
|
|||
error.
|
||||
|
||||
Triclinic crystal structures are often defined using three lattice
|
||||
constants *a*\ , *b*\ , and *c*\ , and three angles *alpha*\ , *beta* and
|
||||
*gamma*\ . Note that in this nomenclature, the a, b, and c lattice
|
||||
constants are the scalar lengths of the edge vectors **a**\ , **b**\ , and **c**
|
||||
defined above. The relationship between these 6 quantities
|
||||
(a,b,c,alpha,beta,gamma) and the LAMMPS box sizes (lx,ly,lz) =
|
||||
constants *a*\ , *b*\ , and *c*\ , and three angles :math:`\alpha`,
|
||||
:math:`\beta`, and :math:`\gamma`. Note that in this nomenclature,
|
||||
the a, b, and c lattice constants are the scalar lengths of the edge
|
||||
vectors **a**\ , **b**\ , and **c** defined above. The relationship
|
||||
between these 6 quantities (a, b, c, :math:`\alpha`, :math:`\beta`,
|
||||
:math:`\gamma`) and the LAMMPS box sizes (lx,ly,lz) =
|
||||
(xhi-xlo,yhi-ylo,zhi-zlo) and tilt factors (xy,xz,yz) is as follows:
|
||||
|
||||
.. image:: Eqs/box.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
a = & {\rm lx} \\
|
||||
b^2 = & {\rm ly}^2 + {\rm xy}^2 \\
|
||||
c^2 = & {\rm lz}^2 + {\rm xz}^2 + {\rm yz}^2 \\
|
||||
\cos{\alpha} = & \frac{{\rm xy}*{\rm xz} + {\rm ly}*{\rm yz}}{b*c} \\
|
||||
\cos{\beta} = & \frac{\rm xz}{c} \\
|
||||
\cos{\gamma} = & \frac{\rm xy}{b} \\
|
||||
|
||||
The inverse relationship can be written as follows:
|
||||
|
||||
.. image:: Eqs/box_inverse.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
The values of *a*\ , *b*\ , *c* , *alpha*\ , *beta* , and *gamma* can be printed
|
||||
out or accessed by computes using the
|
||||
{\rm lx} = & a \\
|
||||
{\rm xy} = & b \cos{\gamma} \\
|
||||
{\rm xz} = & c \cos{\beta}\\
|
||||
{\rm ly}^2 = & b^2 - {\rm xy}^2 \\
|
||||
{\rm yz} = & \frac{b*c \cos{\alpha} - {\rm xy}*{\rm xz}}{\rm ly} \\
|
||||
{\rm lz}^2 = & c^2 - {\rm xz}^2 - {\rm yz}^2 \\
|
||||
|
||||
The values of *a*\ , *b*\ , *c* , :math:`\alpha` , :math:`\beta`, and
|
||||
:math:`\gamma` can be printed out or accessed by computes using the
|
||||
:doc:`thermo_style custom <thermo_style>` keywords
|
||||
*cella*\ , *cellb*\ , *cellc*\ , *cellalpha*\ , *cellbeta*\ , *cellgamma*\ ,
|
||||
respectively.
|
||||
|
|
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 19 KiB |
|
@ -30,10 +30,11 @@ a. You can "fetch" the current HTML and PDF files from the LAMMPS web site.
|
|||
you update your local repository).
|
||||
|
||||
b. You can build the HTML and PDF files yourself, by typing "make
|
||||
html" followed by "make pdf". Note that the PDF make requires the
|
||||
HTML files already exist. This requires various tools including
|
||||
html" followed by "make pdf". This requires various tools including
|
||||
Sphinx, which the build process will attempt to download and install
|
||||
on your system, if not already available. See more details below.
|
||||
into a virtual environment in the folder doc/docenv, if not already
|
||||
available. See more details below. To generate the PDF version of
|
||||
the manual, additionally PDFLaTeX and several LaTeX packages are required.
|
||||
|
||||
----------
|
||||
|
||||
|
@ -56,7 +57,7 @@ the doc dir.
|
|||
make clean # remove intermediate RST files created by HTML build
|
||||
make clean-all # remove entire build folder and any cached data
|
||||
make anchor_check # check for duplicate anchor labels
|
||||
style_check # check for complete and consistent style lists
|
||||
make style_check # check for complete and consistent style lists
|
||||
make spelling # spell-check the manual
|
||||
|
||||
|
||||
|
|
|
@ -92,6 +92,7 @@ examples. If you are uncertain, please ask.
|
|||
need to test compiling LAMMPS from scratch with -DLAMMPS\_BIGBIG
|
||||
set in addition to the default -DLAMMPS\_SMALLBIG setting. Your code
|
||||
will need to work correctly in serial and in parallel using MPI.
|
||||
|
||||
* For consistency with the rest of LAMMPS and especially, if you want
|
||||
your contribution(s) to be added to main LAMMPS code or one of its
|
||||
standard packages, it needs to be written in a style compatible with
|
||||
|
@ -114,12 +115,14 @@ examples. If you are uncertain, please ask.
|
|||
structures, performs its operations, and is formatted similar to other
|
||||
LAMMPS source files, including the use of the error class for error
|
||||
and warning messages.
|
||||
|
||||
* If you want your contribution to be added as a user-contributed
|
||||
feature, and it's a single file (actually a \*.cpp and \*.h file) it can
|
||||
rapidly be added to the USER-MISC directory. Send us the one-line
|
||||
entry to add to the USER-MISC/README file in that dir, along with the
|
||||
2 source files. You can do this multiple times if you wish to
|
||||
contribute several individual features.
|
||||
|
||||
* If you want your contribution to be added as a user-contribution and
|
||||
it is several related features, it is probably best to make it a user
|
||||
package directory with a name like USER-FOO. In addition to your new
|
||||
|
@ -132,7 +135,7 @@ examples. If you are uncertain, please ask.
|
|||
and Install.sh files in other USER directories as examples. Send us a
|
||||
tarball of this USER-FOO directory.
|
||||
|
||||
Your new source files need to have the LAMMPS copyright, GPL notice,
|
||||
* Your new source files need to have the LAMMPS copyright, GPL notice,
|
||||
and your name and email address at the top, like other
|
||||
user-contributed LAMMPS source files. They need to create a class
|
||||
that is inside the LAMMPS namespace. If the file is for one of the
|
||||
|
@ -142,35 +145,43 @@ examples. If you are uncertain, please ask.
|
|||
same stylistic format and syntax as other LAMMPS files, though that
|
||||
would be nice for developers as well as users who try to read your
|
||||
code.
|
||||
|
||||
* You **must** also create a **documentation** file for each new command or
|
||||
style you are adding to LAMMPS. For simplicity and convenience, the
|
||||
documentation of groups of closely related commands or styles may be
|
||||
combined into a single file. This will be one file for a single-file
|
||||
feature. For a package, it might be several files. These are simple
|
||||
text files with a specific markup language, that are then auto-converted
|
||||
to HTML and PDF. The tools for this conversion are included in the
|
||||
source distribution, and the translation can be as simple as doing
|
||||
feature. For a package, it might be several files. These are text
|
||||
files with a .rst extension using the
|
||||
`reStructuredText <rst_>`_ markup language, that are then converted to HTML
|
||||
and PDF using the `Sphinx <sphinx_>`_ documentation
|
||||
generator tool. Running Sphinx with the included configuration
|
||||
requires Python 3.x. Configuration
|
||||
settings and custom extensions for this conversion are included in
|
||||
the source distribution, and missing python packages will be
|
||||
transparently downloaded into a virtual environment via pip. Thus,
|
||||
if your local system is missing required packages, you need access
|
||||
to the internet. The translation can be as simple as doing
|
||||
"make html pdf" in the doc folder.
|
||||
Thus the documentation source files must be in the same format and
|
||||
style as other \*.txt files in the lammps/doc/src directory for similar
|
||||
commands and styles; use one or more of them as a starting point.
|
||||
A description of the markup can also be found in
|
||||
lammps/doc/utils/txt2html/README.html
|
||||
As appropriate, the text files can include links to equations
|
||||
(see doc/Eqs/\*.tex for examples, we auto-create the associated JPG
|
||||
files), or figures (see doc/JPG for examples), or even additional PDF
|
||||
files with further details (see doc/PDF for examples). The doc page
|
||||
should also include literature citations as appropriate; see the
|
||||
bottom of doc/fix\_nh.txt for examples and the earlier part of the same
|
||||
file for how to format the cite itself. The "Restrictions" section of
|
||||
the doc page should indicate that your command is only available if
|
||||
LAMMPS is built with the appropriate USER-MISC or USER-FOO package.
|
||||
See other user package doc files for examples of how to do this. The
|
||||
prerequisite for building the HTML format files are Python 3.x and
|
||||
virtualenv, the requirement for generating the PDF format manual
|
||||
is the `htmldoc <http://www.htmldoc.org/>`_ software. Please run at least
|
||||
"make html" and carefully inspect and proofread the resulting HTML format
|
||||
doc page before submitting your code.
|
||||
As appropriate, the text files can include inline mathematical
|
||||
expression or figures (see doc/JPG for examples). Additional PDF
|
||||
files with further details (see doc/PDF for examples) may also be
|
||||
included. The doc page should also include literature citations as
|
||||
appropriate; see the bottom of doc/fix\_nh.rst for examples and
|
||||
the earlier part of the same file for how to format the cite itself.
|
||||
Citation labels must be unique across all .rst files.
|
||||
The "Restrictions" section of the doc page should indicate if
|
||||
your command is only available if LAMMPS is built with the
|
||||
appropriate USER-MISC or USER-FOO package.
|
||||
See other user package doc files for examples of how to do this.
|
||||
Please run at least "make html" and carefully inspect and proofread
|
||||
the resulting HTML format doc page before submitting your code.
|
||||
Upon submission of a pull request, checks for error free completion
|
||||
of the HTML and PDF build will be performed and also a spell check,
|
||||
a check for correct anchors and labels, and a check for completeness
|
||||
of references all styles in their corresponding tables and lists is
|
||||
run. In case the spell check reports false positives they can be
|
||||
added to the file doc/utils/sphinx-config/false_positives.txt
|
||||
|
||||
* For a new package (or even a single command) you should include one or
|
||||
more example scripts demonstrating its use. These should run in no
|
||||
more than a couple minutes, even on a single processor, and not require
|
||||
|
@ -178,6 +189,7 @@ examples. If you are uncertain, please ask.
|
|||
examples of input scripts other users provided for their packages.
|
||||
These example inputs are also required for validating memory accesses
|
||||
and testing for memory leaks with valgrind
|
||||
|
||||
* If there is a paper of yours describing your feature (either the
|
||||
algorithm/science behind the feature itself, or its initial usage, or
|
||||
its implementation in LAMMPS), you can add the citation to the \*.cpp
|
||||
|
@ -198,3 +210,6 @@ Finally, as a general rule-of-thumb, the more clear and
|
|||
self-explanatory you make your documentation and README files, and the
|
||||
easier you make it for people to get started, e.g. by providing example
|
||||
scripts, the more likely it is that users will try out your new feature.
|
||||
|
||||
.. _rst: https://docutils.readthedocs.io/en/sphinx-docs/user/rst/quickstart.html
|
||||
.. _sphinx: https://sphinx-doc.org
|
||||
|
|
|
@ -42,8 +42,10 @@ Description
|
|||
|
||||
The *charmm* and *charmmfsw* dihedral styles use the potential
|
||||
|
||||
.. image:: Eqs/dihedral_charmm.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = K [ 1 + \cos (n \phi - d) ]
|
||||
|
||||
|
||||
See :ref:`(MacKerell) <dihedral-MacKerell>` for a description of the CHARMM
|
||||
force field. This dihedral style can also be used for the AMBER force
|
||||
|
@ -66,9 +68,9 @@ The following coefficients must be defined for each dihedral type via the
|
|||
the data file or restart files read by the :doc:`read_data <read_data>`
|
||||
or :doc:`read_restart <read_restart>` commands:
|
||||
|
||||
* K (energy)
|
||||
* n (integer >= 0)
|
||||
* d (integer value of degrees)
|
||||
* :math:`K` (energy)
|
||||
* :math:`n` (integer >= 0)
|
||||
* :math:`d` (integer value of degrees)
|
||||
* weighting factor (1.0, 0.5, or 0.0)
|
||||
|
||||
The weighting factor is required to correct for double counting
|
||||
|
|
|
@ -36,114 +36,124 @@ Description
|
|||
|
||||
The *class2* dihedral style uses the potential
|
||||
|
||||
.. image:: Eqs/dihedral_class2.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
where Ed is the dihedral term, Embt is a middle-bond-torsion term,
|
||||
Eebt is an end-bond-torsion term, Eat is an angle-torsion term, Eaat
|
||||
is an angle-angle-torsion term, and Ebb13 is a bond-bond-13 term.
|
||||
E = & E_d + E_{mbt} + E_{ebt} + E_{at} + E_{aat} + E_{bb13} \\
|
||||
E_d = & \sum_{n=1}^{3} K_n [ 1 - \cos (n \phi - \phi_n) ] \\
|
||||
E_{mbt} = & (r_{jk} - r_2) [ A_1 \cos (\phi) + A_2 \cos (2\phi) + A_3 \cos (3\phi) ] \\
|
||||
E_{ebt} = & (r_{ij} - r_1) [ B_1 \cos (\phi) + B_2 \cos (2\phi) + B_3 \cos (3\phi) ] + \\
|
||||
& (r_{kl} - r_3) [ C_1 \cos (\phi) + C_2 \cos (2\phi) + C_3 \cos (3\phi) ] \\
|
||||
E_{at} = & (\theta_{ijk} - \theta_1) [ D_1 \cos (\phi) + D_2 \cos (2\phi) + D_3 \cos (3\phi) ] + \\
|
||||
& (\theta_{jkl} - \theta_2) [ E_1 \cos (\phi) + E_2 \cos (2\phi) + E_3 \cos (3\phi) ] \\
|
||||
E_{aat} = & M (\theta_{ijk} - \theta_1) (\theta_{jkl} - \theta_2) \cos (\phi) \\
|
||||
E_{bb13} = & N (r_{ij} - r_1) (r_{kl} - r_3)
|
||||
|
||||
Theta1 and theta2 are equilibrium angles and r1 r2 r3 are equilibrium
|
||||
bond lengths.
|
||||
|
||||
where :math:`E_d` is the dihedral term, :math:`E_{mbt}` is a middle-bond-torsion term,
|
||||
:math:`E_{ebt}` is an end-bond-torsion term, :math:`E_{at}` is an angle-torsion term, :math:`E_{aat}`
|
||||
is an angle-angle-torsion term, and :math:`E_{bb13}` is a bond-bond-13 term.
|
||||
|
||||
:math:`\theta_1` and :math:`\theta_2` are equilibrium angles and :math:`r_1`, :math:`r_2`, and
|
||||
:math:`r_3` are equilibrium bond lengths.
|
||||
|
||||
See :ref:`(Sun) <dihedral-Sun>` for a description of the COMPASS class2 force field.
|
||||
|
||||
Coefficients for the Ed, Embt, Eebt, Eat, Eaat, and Ebb13 formulas
|
||||
must be defined for each dihedral type via the
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command as in the example above,
|
||||
or in the data file or restart files read by the
|
||||
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
||||
commands.
|
||||
Coefficients for the :math:`E_d`, :math:`E_{mbt}`, :math:`E_{ebt}`,
|
||||
:math:`E_{at}`, :math:`E_{aat}`, and :math:`E_{bb13}` formulas must be
|
||||
defined for each dihedral type via the :doc:`dihedral_coeff <dihedral_coeff>`
|
||||
command as in the example above, or in the data file
|
||||
or restart files read by the :doc:`read_data <read_data>` or
|
||||
:doc:`read_restart <read_restart>` commands.
|
||||
|
||||
These are the 6 coefficients for the Ed formula:
|
||||
These are the 6 coefficients for the :math:`E_d` formula:
|
||||
|
||||
* K1 (energy)
|
||||
* phi1 (degrees)
|
||||
* K2 (energy)
|
||||
* phi2 (degrees)
|
||||
* K3 (energy)
|
||||
* phi3 (degrees)
|
||||
* :math:`K_1` (energy)
|
||||
* :math:`\phi_1` (degrees)
|
||||
* :math:`K_2` (energy)
|
||||
* :math:`\phi_2` (degrees)
|
||||
* :math:`K_3` (energy)
|
||||
* :math:`phi_3` (degrees)
|
||||
|
||||
For the Embt formula, each line in a
|
||||
For the :math:`E_{mbt}` formula, each line in a
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command in the input script lists
|
||||
5 coefficients, the first of which is "mbt" to indicate they are
|
||||
5 coefficients, the first of which is *mbt* to indicate they are
|
||||
MiddleBondTorsion coefficients. In a data file, these coefficients
|
||||
should be listed under a "MiddleBondTorsion Coeffs" heading and you
|
||||
must leave out the "mbt", i.e. only list 4 coefficients after the
|
||||
should be listed under a *MiddleBondTorsion Coeffs* heading and you
|
||||
must leave out the *mbt*, i.e. only list 4 coefficients after the
|
||||
dihedral type.
|
||||
|
||||
* mbt
|
||||
* A1 (energy/distance)
|
||||
* A2 (energy/distance)
|
||||
* A3 (energy/distance)
|
||||
* r2 (distance)
|
||||
* *mbt*
|
||||
* :math:`A_1` (energy/distance)
|
||||
* :math:`A_2` (energy/distance)
|
||||
* :math:`A_3` (energy/distance)
|
||||
* :math:`r_2` (distance)
|
||||
|
||||
For the Eebt formula, each line in a
|
||||
For the :math:`E_{ebt}` formula, each line in a
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command in the input script lists
|
||||
9 coefficients, the first of which is "ebt" to indicate they are
|
||||
9 coefficients, the first of which is *ebt* to indicate they are
|
||||
EndBondTorsion coefficients. In a data file, these coefficients
|
||||
should be listed under a "EndBondTorsion Coeffs" heading and you must
|
||||
leave out the "ebt", i.e. only list 8 coefficients after the dihedral
|
||||
should be listed under a *EndBondTorsion Coeffs* heading and you must
|
||||
leave out the *ebt*, i.e. only list 8 coefficients after the dihedral
|
||||
type.
|
||||
|
||||
* ebt
|
||||
* B1 (energy/distance)
|
||||
* B2 (energy/distance)
|
||||
* B3 (energy/distance)
|
||||
* C1 (energy/distance)
|
||||
* C2 (energy/distance)
|
||||
* C3 (energy/distance)
|
||||
* r1 (distance)
|
||||
* r3 (distance)
|
||||
* *ebt*
|
||||
* :math:`B_1` (energy/distance)
|
||||
* :math:`B_2` (energy/distance)
|
||||
* :math:`B_3` (energy/distance)
|
||||
* :math:`C_1` (energy/distance)
|
||||
* :math:`C_2` (energy/distance)
|
||||
* :math:`C_3` (energy/distance)
|
||||
* :math:`r_1` (distance)
|
||||
* :math:`r_3` (distance)
|
||||
|
||||
For the Eat formula, each line in a
|
||||
For the :math:`E_{at}` formula, each line in a
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command in the input script lists
|
||||
9 coefficients, the first of which is "at" to indicate they are
|
||||
9 coefficients, the first of which is *at* to indicate they are
|
||||
AngleTorsion coefficients. In a data file, these coefficients should
|
||||
be listed under a "AngleTorsion Coeffs" heading and you must leave out
|
||||
the "at", i.e. only list 8 coefficients after the dihedral type.
|
||||
be listed under a *AngleTorsion Coeffs* heading and you must leave out
|
||||
the *at*, i.e. only list 8 coefficients after the dihedral type.
|
||||
|
||||
* at
|
||||
* D1 (energy/radian)
|
||||
* D2 (energy/radian)
|
||||
* D3 (energy/radian)
|
||||
* E1 (energy/radian)
|
||||
* E2 (energy/radian)
|
||||
* E3 (energy/radian)
|
||||
* theta1 (degrees)
|
||||
* theta2 (degrees)
|
||||
* *at*
|
||||
* :math:`D_1` (energy/radian)
|
||||
* :math:`D_2` (energy/radian)
|
||||
* :math:`D_3` (energy/radian)
|
||||
* :math:`E_1` (energy/radian)
|
||||
* :math:`E_2` (energy/radian)
|
||||
* :math:`E_3` (energy/radian)
|
||||
* :math:`\theta_1` (degrees)
|
||||
* :math:`\theta_2` (degrees)
|
||||
|
||||
Theta1 and theta2 are specified in degrees, but LAMMPS converts them
|
||||
to radians internally; hence the units of D and E are in
|
||||
:math:`\theta_1` and :math:`\theta_2` are specified in degrees, but LAMMPS converts
|
||||
them to radians internally; hence the units of :math:`D` and :math:`E` are in
|
||||
energy/radian.
|
||||
|
||||
For the Eaat formula, each line in a
|
||||
For the :math:`E_{aat}` formula, each line in a
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command in the input script lists
|
||||
4 coefficients, the first of which is "aat" to indicate they are
|
||||
4 coefficients, the first of which is *aat* to indicate they are
|
||||
AngleAngleTorsion coefficients. In a data file, these coefficients
|
||||
should be listed under a "AngleAngleTorsion Coeffs" heading and you
|
||||
must leave out the "aat", i.e. only list 3 coefficients after the
|
||||
should be listed under a *AngleAngleTorsion Coeffs* heading and you
|
||||
must leave out the *aat*, i.e. only list 3 coefficients after the
|
||||
dihedral type.
|
||||
|
||||
* aat
|
||||
* M (energy/radian\^2)
|
||||
* theta1 (degrees)
|
||||
* theta2 (degrees)
|
||||
* *aat*
|
||||
* :math:`M` (energy/radian\^2)
|
||||
* :math:`\theta_1` (degrees)
|
||||
* :math:`\theta_2` (degrees)
|
||||
|
||||
Theta1 and theta2 are specified in degrees, but LAMMPS converts them
|
||||
to radians internally; hence the units of M are in energy/radian\^2.
|
||||
:math:`\theta_1` and :math:`\theta_2` are specified in degrees, but LAMMPS converts
|
||||
them to radians internally; hence the units of M are in energy/radian\^2.
|
||||
|
||||
For the Ebb13 formula, each line in a
|
||||
For the :math:`E_{bb13}` formula, each line in a
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command in the input script lists
|
||||
4 coefficients, the first of which is "bb13" to indicate they are
|
||||
4 coefficients, the first of which is *bb13* to indicate they are
|
||||
BondBond13 coefficients. In a data file, these coefficients should be
|
||||
listed under a "BondBond13 Coeffs" heading and you must leave out the
|
||||
"bb13", i.e. only list 3 coefficients after the dihedral type.
|
||||
listed under a *BondBond13 Coeffs* heading and you must leave out the
|
||||
*bb13*, i.e. only list 3 coefficients after the dihedral type.
|
||||
|
||||
* bb13
|
||||
* N (energy/distance\^2)
|
||||
* r1 (distance)
|
||||
* r3 (distance)
|
||||
* *bb13*
|
||||
* :math:`N` (energy/distance\^2)
|
||||
* :math:`r_1` (distance)
|
||||
* :math:`r_3` (distance)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -28,21 +28,24 @@ Description
|
|||
|
||||
The *cosine/shift/exp* dihedral style uses the potential
|
||||
|
||||
.. image:: Eqs/dihedral_cosine_shift_exp.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
where Umin, theta, and a are defined for each dihedral type.
|
||||
E = -U_{min}\frac{e^{-a U(\theta,\theta_0)}-1}{e^a-1} \quad\mbox{with}\quad U(\theta,\theta_0)=-0.5 \left(1+\cos(\theta-\theta_0) \right)
|
||||
|
||||
The potential is bounded between [-Umin:0] and the minimum is located
|
||||
at the angle theta0. The a parameter can be both positive or negative
|
||||
|
||||
where :math:`U_{min}`, :math:`\theta`, and :math:`a` are defined for
|
||||
each dihedral type.
|
||||
|
||||
The potential is bounded between :math:`\left[-U_{min}:0\right]` and the minimum is located
|
||||
at the angle :math:`\theta_0`. The a parameter can be both positive or negative
|
||||
and is used to control the spring constant at the equilibrium.
|
||||
|
||||
The spring constant is given by k=a exp(a) Umin/ [2 (Exp(a)-1)].
|
||||
For a>3 k/Umin = a/2 to better than 5% relative error. For negative
|
||||
The spring constant is given by :math:`k=a e^a \frac{U_{min}}{2 \left(e^a-1\right)}`.
|
||||
For :math:`a>3` and :math:`\frac{k}{U_{min}} = \frac{a}{2}` to better than 5% relative error. For negative
|
||||
values of the a parameter, the spring constant is essentially zero,
|
||||
and anharmonic terms takes over. The potential is furthermore well
|
||||
behaved in the limit a->0, where it has been implemented to linear
|
||||
order in a for a < 0.001.
|
||||
behaved in the limit :math:`a \rightarrow 0`, where it has been implemented to linear
|
||||
order in :math:`a` for :math:`a < 0.001`.
|
||||
|
||||
The following coefficients must be defined for each dihedral type via
|
||||
the :doc:`dihedral_coeff <dihedral_coeff>` command as in the example
|
||||
|
@ -50,9 +53,9 @@ above, or in the data file or restart files read by the
|
|||
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
||||
commands:
|
||||
|
||||
* umin (energy)
|
||||
* theta (angle)
|
||||
* A (real number)
|
||||
* :math:`U_{min}` (energy)
|
||||
* :math:`\theta` (angle)
|
||||
* :math:`a` (real number)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -31,27 +31,27 @@ Description
|
|||
|
||||
The *fourier* dihedral style uses the potential:
|
||||
|
||||
.. image:: Eqs/dihedral_fourier.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = \sum_{i=1,m} K_i [ 1.0 + \cos ( n_i \phi - d_i ) ]
|
||||
|
||||
|
||||
The following coefficients must be defined for each dihedral type via the
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command as in the example above, or in
|
||||
the data file or restart files read by the :doc:`read_data <read_data>`
|
||||
or :doc:`read_restart <read_restart>` commands:
|
||||
|
||||
* m (integer >=1)
|
||||
* K1 (energy)
|
||||
* n1 (integer >= 0)
|
||||
* d1 (degrees)
|
||||
* :math:`m` (integer >=1)
|
||||
* :math:`K_1` (energy)
|
||||
* :math:`n_1` (integer >= 0)
|
||||
* :math:`d_1` (degrees)
|
||||
* [...]
|
||||
* Km (energy)
|
||||
* nm (integer >= 0)
|
||||
* dm (degrees)
|
||||
|
||||
* :math:`K_m` (energy)
|
||||
* :math:`n_m` (integer >= 0)
|
||||
* :math:`d_m` (degrees)
|
||||
|
||||
----------
|
||||
|
||||
|
||||
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
|
||||
|
|
|
@ -34,17 +34,19 @@ Description
|
|||
|
||||
The *harmonic* dihedral style uses the potential
|
||||
|
||||
.. image:: Eqs/dihedral_harmonic.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = K [ 1 + d \cos (n \phi) ]
|
||||
|
||||
|
||||
The following coefficients must be defined for each dihedral type via the
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command as in the example above, or in
|
||||
the data file or restart files read by the :doc:`read_data <read_data>`
|
||||
or :doc:`read_restart <read_restart>` commands:
|
||||
|
||||
* K (energy)
|
||||
* d (+1 or -1)
|
||||
* n (integer >= 0)
|
||||
* :math:`K` (energy)
|
||||
* :math:`d` (+1 or -1)
|
||||
* :math:`n` (integer >= 0)
|
||||
|
||||
.. note::
|
||||
|
||||
|
@ -55,9 +57,9 @@ or :doc:`read_restart <read_restart>` commands:
|
|||
|
||||
* The LAMMPS convention is that the trans position = 180 degrees, while
|
||||
in some force fields trans = 0 degrees.
|
||||
* Some force fields reverse the sign convention on *d*\ .
|
||||
* Some force fields let *n* be positive or negative which corresponds to
|
||||
*d* = 1 or -1 for the harmonic style.
|
||||
* Some force fields reverse the sign convention on :math:`d`.
|
||||
* Some force fields let :math:`n` be positive or negative which corresponds to
|
||||
:math:`d = 1` or :math:`d = -1` for the harmonic style.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -28,15 +28,19 @@ Description
|
|||
|
||||
The *helix* dihedral style uses the potential
|
||||
|
||||
.. image:: Eqs/dihedral_helix.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = A [1 - \cos(\theta)] + B [1 + \cos(3 \theta)] +
|
||||
C [1 + \cos(\theta + \frac{\pi}{4})]
|
||||
|
||||
|
||||
This coarse-grain dihedral potential is described in :ref:`(Guo) <Guo>`.
|
||||
For dihedral angles in the helical region, the energy function is
|
||||
represented by a standard potential consisting of three minima, one
|
||||
corresponding to the trans (t) state and the other to gauche states
|
||||
(g+ and g-). The paper describes how the A,B,C parameters are chosen
|
||||
so as to balance secondary (largely driven by local interactions) and
|
||||
(g+ and g-). The paper describes how the :math:`A`, :math:`B` and,
|
||||
:math:`C` parameters are chosen so as to balance secondary (largely
|
||||
driven by local interactions) and
|
||||
tertiary structure (driven by long-range interactions).
|
||||
|
||||
The following coefficients must be defined for each dihedral type via the
|
||||
|
@ -44,9 +48,9 @@ The following coefficients must be defined for each dihedral type via the
|
|||
the data file or restart files read by the :doc:`read_data <read_data>`
|
||||
or :doc:`read_restart <read_restart>` commands:
|
||||
|
||||
* A (energy)
|
||||
* B (energy)
|
||||
* C (energy)
|
||||
* :math:`A` (energy)
|
||||
* :math:`B` (energy)
|
||||
* :math:`C` (energy)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -28,19 +28,21 @@ Description
|
|||
|
||||
The *multi/harmonic* dihedral style uses the potential
|
||||
|
||||
.. image:: Eqs/dihedral_multi_harmonic.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = \sum_{n=1,5} A_n \cos^{n-1}(\phi)
|
||||
|
||||
|
||||
The following coefficients must be defined for each dihedral type via the
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command as in the example above, or in
|
||||
the data file or restart files read by the :doc:`read_data <read_data>`
|
||||
or :doc:`read_restart <read_restart>` commands:
|
||||
|
||||
* A1 (energy)
|
||||
* A2 (energy)
|
||||
* A3 (energy)
|
||||
* A4 (energy)
|
||||
* A5 (energy)
|
||||
* :math:`A_1` (energy)
|
||||
* :math:`A_2` (energy)
|
||||
* :math:`A_3` (energy)
|
||||
* :math:`A_4` (energy)
|
||||
* :math:`A_5` (energy)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -28,19 +28,21 @@ Description
|
|||
|
||||
The *nharmonic* dihedral style uses the potential:
|
||||
|
||||
.. image:: Eqs/dihedral_nharmonic.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = \sum_{n=1,n} A_n \cos^{n-1}(\phi)
|
||||
|
||||
|
||||
The following coefficients must be defined for each dihedral type via the
|
||||
:doc:`dihedral_coeff <dihedral_coeff>` command as in the example above, or in
|
||||
the data file or restart files read by the :doc:`read_data <read_data>`
|
||||
or :doc:`read_restart <read_restart>` commands:
|
||||
|
||||
* n (integer >=1)
|
||||
* A1 (energy)
|
||||
* A2 (energy)
|
||||
* :math:`n` (integer >=1)
|
||||
* :math:`A_1` (energy)
|
||||
* :math:`A_2` (energy)
|
||||
* ...
|
||||
* An (energy)
|
||||
* :math:`A_n` (energy)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -36,8 +36,11 @@ Description
|
|||
|
||||
The *opls* dihedral style uses the potential
|
||||
|
||||
.. image:: Eqs/dihedral_opls.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = & \frac{1}{2} K_1 [1 + \cos(\phi)] + \frac{1}{2} K_2 [1 - \cos(2 \phi)] + \\
|
||||
& \frac{1}{2} K_3 [1 + \cos(3 \phi)] + \frac{1}{2} K_4 [1 - \cos(4 \phi)]
|
||||
|
||||
|
||||
Note that the usual 1/2 factor is not included in the K values.
|
||||
|
||||
|
@ -49,10 +52,10 @@ The following coefficients must be defined for each dihedral type via the
|
|||
the data file or restart files read by the :doc:`read_data <read_data>`
|
||||
or :doc:`read_restart <read_restart>` commands:
|
||||
|
||||
* K1 (energy)
|
||||
* K2 (energy)
|
||||
* K3 (energy)
|
||||
* K4 (energy)
|
||||
* :math:`K_1` (energy)
|
||||
* :math:`K_2` (energy)
|
||||
* :math:`K_3` (energy)
|
||||
* :math:`K_4` (energy)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -28,8 +28,10 @@ Description
|
|||
|
||||
The *quadratic* dihedral style uses the potential:
|
||||
|
||||
.. image:: Eqs/dihedral_quadratic.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = K (\phi - \phi_0)^2
|
||||
|
||||
|
||||
This dihedral potential can be used to keep a dihedral in a predefined
|
||||
value (cis=zero, right-hand convention is used).
|
||||
|
@ -40,8 +42,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:
|
||||
|
||||
* K (energy/radian\^2)
|
||||
* phi0 (degrees)
|
||||
* :math:`K` (energy/radian\^2)
|
||||
* :math:`\phi_0` (degrees)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -30,11 +30,17 @@ The *spherical* dihedral style uses the potential:
|
|||
.. image:: JPG/dihedral_spherical_angles.jpg
|
||||
:align: center
|
||||
|
||||
.. image:: Eqs/dihedral_spherical.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E(\phi,\theta_1,\theta_2) & = \sum_{i=1}^N\nolimits\ C_i\ \Phi_i(\phi)\ \Theta_{1i}(\theta_1)\ \Theta_{2i}(\theta_2) \\
|
||||
\Phi_{i}(\phi) & = u_i - \mathrm{cos}((\phi - a_i)K_i) \\
|
||||
\Theta_{1i}(\theta_1) & = v_i - \mathrm{cos}((\theta_1-b_i)L_i) \\
|
||||
\Theta_{2i}(\theta_2) & = w_i - \mathrm{cos}((\theta_2-c_i)M_i)
|
||||
|
||||
|
||||
For this dihedral style, the energy can be any function that combines the
|
||||
4-body dihedral-angle (phi) and the two 3-body bond-angles (theta1, theta2).
|
||||
4-body dihedral-angle (:math:`\phi`) and the two 3-body bond-angles
|
||||
(:math:`\theta_1`, :math:`\theta_2`).
|
||||
For this reason, there is usually no need to define 3-body "angle" forces
|
||||
separately for the atoms participating in these interactions.
|
||||
It is probably more efficient to incorporate 3-body angle forces into
|
||||
|
@ -44,8 +50,9 @@ parameters can prevent singularities that occur with traditional
|
|||
force-fields whenever theta1 or theta2 approach 0 or 180 degrees.
|
||||
|
||||
The last example above corresponds to an interaction with a single energy
|
||||
minima located near phi=93.9, theta1=74.4, theta2=48.1 degrees, and it remains
|
||||
numerically stable at all angles (phi, theta1, theta2). In this example,
|
||||
minima located near :math:`\phi=93.9`, :math:`\theta_1=74.4`,
|
||||
:math:`\theta_2=48.1` degrees, and it remains numerically stable at all
|
||||
angles (:math:`\phi`, :math:`\theta_1`, :math:`\theta_2`). In this example,
|
||||
the coefficients 49.1, and 25.2 can be physically interpreted as the
|
||||
harmonic spring constants for theta1 and theta2 around their minima.
|
||||
The coefficient 69.3 is the harmonic spring constant for phi after
|
||||
|
@ -56,28 +63,28 @@ The following coefficients must be defined for each dihedral type via the
|
|||
the Dihedral Coeffs section of a data file read by the
|
||||
:doc:`read_data <read_data>` command:
|
||||
|
||||
* n (integer >= 1)
|
||||
* C1 (energy)
|
||||
* K1 (typically an integer)
|
||||
* a1 (degrees)
|
||||
* u1 (typically 0.0 or 1.0)
|
||||
* L1 (typically an integer)
|
||||
* b1 (degrees, typically 0.0 or 90.0)
|
||||
* v1 (typically 0.0 or 1.0)
|
||||
* M1 (typically an integer)
|
||||
* c1 (degrees, typically 0.0 or 90.0)
|
||||
* w1 (typically 0.0 or 1.0)
|
||||
* :math:`n` (integer >= 1)
|
||||
* :math:`C_1` (energy)
|
||||
* :math:`K_1` (typically an integer)
|
||||
* :math:`a_1` (degrees)
|
||||
* :math:`u_1` (typically 0.0 or 1.0)
|
||||
* :math:`L_1` (typically an integer)
|
||||
* :math:`b_1` (degrees, typically 0.0 or 90.0)
|
||||
* :math:`v_1` (typically 0.0 or 1.0)
|
||||
* :math:`M_1` (typically an integer)
|
||||
* :math:`c_1` (degrees, typically 0.0 or 90.0)
|
||||
* :math:`w_1` (typically 0.0 or 1.0)
|
||||
* [...]
|
||||
* Cn (energy)
|
||||
* Kn (typically an integer)
|
||||
* an (degrees)
|
||||
* un (typically 0.0 or 1.0)
|
||||
* Ln (typically an integer)
|
||||
* bn (degrees, typically 0.0 or 90.0)
|
||||
* vn (typically 0.0 or 1.0)
|
||||
* Mn (typically an integer)
|
||||
* cn (degrees, typically 0.0 or 90.0)
|
||||
* wn (typically 0.0 or 1.0)
|
||||
* :math:`C_n` (energy)
|
||||
* :math:`K_n` (typically an integer)
|
||||
* :math:`a_n` (degrees)
|
||||
* :math:`u_n` (typically 0.0 or 1.0)
|
||||
* :math:`L_n` (typically an integer)
|
||||
* :math:`b_n` (degrees, typically 0.0 or 90.0)
|
||||
* :math:`v_n` (typically 0.0 or 1.0)
|
||||
* :math:`M_n` (typically an integer)
|
||||
* :math:`c_n` (degrees, typically 0.0 or 90.0)
|
||||
* :math:`w_n` (typically 0.0 or 1.0)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -66,18 +66,21 @@ above.
|
|||
The cutoff dihedral style uses a tabulated dihedral interaction with a
|
||||
cutoff function:
|
||||
|
||||
.. image:: Eqs/dihedral_table_cut.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
f(\theta) & = K \qquad\qquad\qquad\qquad\qquad\qquad \theta < \theta_1 \\
|
||||
f(\theta) & = K \left(1-\frac{(\theta - \theta_1)^2}{(\theta_2 - \theta_1)^2}\right) \qquad \theta_1 < \theta < \theta_2
|
||||
|
||||
|
||||
The cutoff specifies an prefactor to the cutoff function. While this value
|
||||
would ordinarily equal 1 there may be situations where the value should change.
|
||||
|
||||
The cutoff angle1 specifies the angle (in degrees) below which the dihedral
|
||||
The cutoff :math:`\theta_1` specifies the angle (in degrees) below which the dihedral
|
||||
interaction is unmodified, i.e. the cutoff function is 1.
|
||||
|
||||
The cutoff function is applied between angle1 and angle2, which is the angle at
|
||||
which the cutoff function drops to zero. The value of zero effectively "turns
|
||||
off" the dihedral interaction.
|
||||
The cutoff function is applied between :math:`\theta_1` and :math:`\theta_2`, which is
|
||||
the angle at which the cutoff function drops to zero. The value of zero effectively
|
||||
"turns off" the dihedral interaction.
|
||||
|
||||
The filename specifies a file containing tabulated energy and
|
||||
derivative values. The keyword specifies a section of the file. The
|
||||
|
|
|
@ -40,42 +40,46 @@ Description
|
|||
|
||||
Calculate the dynamical matrix by finite difference of the selected group,
|
||||
|
||||
.. image:: JPG/dynamical_matrix_dynmat.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
where D is the dynamical matrix and Phi is the force constant matrix defined by
|
||||
D = \frac{\Phi_{ij}^{\alpha\beta}}{\sqrt{M_i M_j}}
|
||||
|
||||
.. image:: JPG/dynamical_matrix_force_constant.jpg
|
||||
:align: center
|
||||
where D is the dynamical matrix and :math:`\Phi` is the force constant
|
||||
matrix defined by
|
||||
|
||||
The output for the dynamical matrix is printed three elements at a time. The
|
||||
three elements are the three beta elements for a respective i/alpha/j combination.
|
||||
Each line is printed in order of j increasing first, alpha second, and i last.
|
||||
.. math::
|
||||
|
||||
If the style eskm is selected, the dynamical matrix will be in units of inverse squared
|
||||
femtoseconds. These units will then conveniently leave frequencies in THz, where
|
||||
frequencies, represented as omega, can be calculated from
|
||||
\Phi_{ij}^{\alpha\beta} = \frac{\partial^2 U}{\partial x_{i,\alpha} \partial x_{j,\beta}}
|
||||
|
||||
:c, image(Eqs/dynamical\_matrix\_phonons.jpg)
|
||||
|
||||
The output for the dynamical matrix is printed three elements at a time.
|
||||
The three elements are the three :math:`\beta` elements for a respective
|
||||
i/:math:`\alpha`/j combination. Each line is printed in order of j
|
||||
increasing first, :math:`\alpha` second, and i last.
|
||||
|
||||
If the style eskm is selected, the dynamical matrix will be in units of
|
||||
inverse squared femtoseconds. These units will then conveniently leave
|
||||
frequencies in THz.
|
||||
|
||||
Restrictions
|
||||
""""""""""""
|
||||
|
||||
|
||||
The command collects an array of nine times the number of atoms in a group
|
||||
on every single MPI rank, so the memory requirements can be very significant
|
||||
for large systems.
|
||||
|
||||
This command is part of the USER-PHONON 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
|
||||
""""""""""""""""
|
||||
|
||||
:doc:`fix phonon <fix_phonon>`
|
||||
|
||||
:doc:`compute hma <compute_hma>` uses an analytic formulation of the hessian
|
||||
provided by Pair's single\_hessian.
|
||||
:doc:`compute hma <compute_hma>` uses an analytic formulation of the
|
||||
Hessian provided by a pair_style's Pair::single\_hessian() function,
|
||||
if implemented.
|
||||
|
||||
Default
|
||||
"""""""
|
||||
|
|
|
@ -32,24 +32,33 @@ Description
|
|||
|
||||
The *class2* improper style uses the potential
|
||||
|
||||
.. image:: Eqs/improper_class2.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
where Ei is the improper term and Eaa is an angle-angle term. The 3 X
|
||||
terms in Ei are an average over 3 out-of-plane angles.
|
||||
E = & E_i + E_{aa} \\
|
||||
E_i = & K [ \frac{\chi_{ijkl} + \chi_{kjli} + \chi_{ljik}}{3} - \chi_0 ]^2 \\
|
||||
E_{aa} = & M_1 (\theta_{ijk} - \theta_1) (\theta_{kjl} - \theta_3) + \\
|
||||
& M_2 (\theta_{ijk} - \theta_1) (\theta_{ijl} - \theta_2) + \\
|
||||
& M_3 (\theta_{ijl} - \theta_2) (\theta_{kjl} - \theta_3)
|
||||
|
||||
|
||||
where :math:`E_i` is the improper term and :math:`E_{aa}` is an
|
||||
angle-angle term. The 3 :math:`\chi` terms in :math:`E_i` are an
|
||||
average over 3 out-of-plane angles.
|
||||
|
||||
The 4 atoms in an improper quadruplet (listed in the data file read by
|
||||
the :doc:`read_data <read_data>` command) are ordered I,J,K,L. X\_IJKL
|
||||
refers to the angle between the plane of I,J,K and the plane of J,K,L,
|
||||
and the bond JK lies in both planes. Similarly for X\_KJLI and X\_LJIK.
|
||||
the :doc:`read_data <read_data>` command) are ordered I,J,K,L.
|
||||
:math:`\chi_{ijkl}` refers to the angle between the plane of I,J,K and
|
||||
the plane of J,K,L, and the bond JK lies in both planes. Similarly for
|
||||
:math:`\chi_{kjli}` and :math:`\chi_{ljik}`.
|
||||
Note that atom J appears in the common bonds (JI, JK, JL) of all 3 X
|
||||
terms. Thus J (the 2nd atom in the quadruplet) is the atom of
|
||||
symmetry in the 3 X angles.
|
||||
symmetry in the 3 :math:`\chi` angles.
|
||||
|
||||
The subscripts on the various theta's refer to different combinations
|
||||
of 3 atoms (I,J,K,L) used to form a particular angle. E.g. Theta\_IJL
|
||||
is the angle formed by atoms I,J,L with J in the middle. Theta1,
|
||||
theta2, theta3 are the equilibrium positions of those angles. Again,
|
||||
The subscripts on the various :math:`\theta`\ s refer to different
|
||||
combinations of 3 atoms (I,J,K,L) used to form a particular angle.
|
||||
E.g. :math:`\theta_{ijl}` is the angle formed by atoms I,J,L with J
|
||||
in the middle. :math:`\theta_1`, :math:`\theta_2`, :math:`\theta_3`
|
||||
are the equilibrium positions of those angles. Again,
|
||||
atom J (the 2nd atom in the quadruplet) is the atom of symmetry in the
|
||||
theta angles, since it is always the center atom.
|
||||
|
||||
|
@ -59,34 +68,35 @@ this is not required.
|
|||
|
||||
See :ref:`(Sun) <improper-Sun>` for a description of the COMPASS class2 force field.
|
||||
|
||||
Coefficients for the Ei and Eaa formulas must be defined for each
|
||||
Coefficients for the :math:`E_i` and :math:`E_{aa}` formulas must be
|
||||
defined for each
|
||||
improper type via the :doc:`improper_coeff <improper_coeff>` command as
|
||||
in the example above, or in the data file or restart files read by the
|
||||
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
||||
commands.
|
||||
|
||||
These are the 2 coefficients for the Ei formula:
|
||||
These are the 2 coefficients for the :math:`E_i` formula:
|
||||
|
||||
* K (energy/radian\^2)
|
||||
* X0 (degrees)
|
||||
* :math:`K` (energy/radian\^2)
|
||||
* :math:`\chi_0` (degrees)
|
||||
|
||||
X0 is specified in degrees, but LAMMPS converts it to radians
|
||||
:math:`\chi_0` is specified in degrees, but LAMMPS converts it to radians
|
||||
internally; hence the units of K are in energy/radian\^2.
|
||||
|
||||
For the Eaa formula, each line in a
|
||||
For the :math:`E_{aa}` formula, each line in a
|
||||
:doc:`improper_coeff <improper_coeff>` command in the input script lists
|
||||
7 coefficients, the first of which is "aa" to indicate they are
|
||||
7 coefficients, the first of which is *aa* to indicate they are
|
||||
AngleAngle coefficients. In a data file, these coefficients should be
|
||||
listed under a "AngleAngle Coeffs" heading and you must leave out the
|
||||
"aa", i.e. only list 6 coefficients after the improper type.
|
||||
listed under a *AngleAngle Coeffs* heading and you must leave out the
|
||||
*aa*, i.e. only list 6 coefficients after the improper type.
|
||||
|
||||
* aa
|
||||
* M1 (energy/distance)
|
||||
* M2 (energy/distance)
|
||||
* M3 (energy/distance)
|
||||
* theta1 (degrees)
|
||||
* theta2 (degrees)
|
||||
* theta3 (degrees)
|
||||
* *aa*
|
||||
* :math:`M_1` (energy/distance)
|
||||
* :math:`M_2` (energy/distance)
|
||||
* :math:`M_3` (energy/distance)
|
||||
* :math:`\theta_1` (degrees)
|
||||
* :math:`\theta_2` (degrees)
|
||||
* :math:`\theta_3` (degrees)
|
||||
|
||||
The theta values are specified in degrees, but LAMMPS converts them to
|
||||
radians internally; hence the units of M are in energy/radian\^2.
|
||||
|
|
|
@ -28,18 +28,20 @@ Description
|
|||
|
||||
The *cossq* improper style uses the potential
|
||||
|
||||
.. image:: Eqs/improper_cossq.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
where x is the improper angle, x0 is its equilibrium value, and K is a
|
||||
prefactor.
|
||||
E = \frac{1}{2} K \cos^2{\left(\chi - \chi_0\right)}
|
||||
|
||||
|
||||
where :math:`\chi` is the improper angle, :math:`\chi_0` is its
|
||||
equilibrium value, and :math:`K` is a prefactor.
|
||||
|
||||
If the 4 atoms in an improper quadruplet (listed in the data file read
|
||||
by the :doc:`read_data <read_data>` command) are ordered I,J,K,L then X
|
||||
is the angle between the plane of I,J,K and the plane of J,K,L.
|
||||
by the :doc:`read_data <read_data>` command) are ordered I,J,K,L then
|
||||
:math:`\chi` is the angle between the plane of I,J,K and the plane of J,K,L.
|
||||
Alternatively, you can think of atoms J,K,L as being in a plane, and
|
||||
atom I above the plane, and X as a measure of how far out-of-plane I
|
||||
is with respect to the other 3 atoms.
|
||||
atom I above the plane, and :math:`\chi` as a measure of how far
|
||||
out-of-plane I is with respect to the other 3 atoms.
|
||||
|
||||
Note that defining 4 atoms to interact in this way, does not mean that
|
||||
bonds necessarily exist between I-J, J-K, or K-L, as they would in a
|
||||
|
@ -52,8 +54,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:
|
||||
|
||||
* K (energy)
|
||||
* X0 (degrees)
|
||||
* :math:`K` (energy)
|
||||
* :math:`\chi_0` (degrees)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -31,8 +31,10 @@ Description
|
|||
|
||||
The *cvff* improper style uses the potential
|
||||
|
||||
.. image:: Eqs/improper_cvff.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = K [1 + d \cos (n \phi) ]
|
||||
|
||||
|
||||
where phi is the improper dihedral angle.
|
||||
|
||||
|
@ -54,9 +56,9 @@ above, or in the data file or restart files read by the
|
|||
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
||||
commands:
|
||||
|
||||
* K (energy)
|
||||
* d (+1 or -1)
|
||||
* n (0,1,2,3,4,6)
|
||||
* :math:`K` (energy)
|
||||
* :math:`d` (+1 or -1)
|
||||
* :math:`n` (0,1,2,3,4,6)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -22,8 +22,10 @@ Description
|
|||
|
||||
The *distance* improper style uses the potential
|
||||
|
||||
.. image:: Eqs/improper_dist-1.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = K_2 d^2 + K_4 d^4
|
||||
|
||||
|
||||
where d is the distance between the central atom and the plane formed
|
||||
by the other three atoms. If the 4 atoms in an improper quadruplet
|
||||
|
@ -43,8 +45,8 @@ The following coefficients must be defined for each improper type via
|
|||
the improper\_coeff command as in the example above, or in the data
|
||||
file or restart files read by the read\_data or read\_restart commands:
|
||||
|
||||
* K\_2 (energy/distance\^2)
|
||||
* K\_4 (energy/distance\^4)
|
||||
* :math:`K_2` (energy/distance\^2)
|
||||
* :math:`K_4` (energy/distance\^4)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -22,23 +22,25 @@ Description
|
|||
|
||||
The *distharm* improper style uses the potential
|
||||
|
||||
.. image:: Eqs/improper_distharm.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = K (d - d_0)^2
|
||||
|
||||
|
||||
where d is the oriented distance between the central atom and the plane formed
|
||||
by the other three atoms. If the 4 atoms in an improper quadruplet
|
||||
(listed in the data file read by the :doc:`read_data <read_data>`
|
||||
command) are ordered I,J,K,L then the L-atom is assumed to be the
|
||||
central atom. Note that this is different from the convention used
|
||||
in the improper\_style distance. The distance d is oriented and can take
|
||||
on negative values. This may lead to unwanted behavior if d0 is not equal to zero.
|
||||
in the improper\_style distance. The distance :math:`d` is oriented and can take
|
||||
on negative values. This may lead to unwanted behavior if :math:`d_0` is not equal to zero.
|
||||
|
||||
The following coefficients must be defined for each improper type via
|
||||
the improper\_coeff command as in the example above, or in the data
|
||||
file or restart files read by the read\_data or read\_restart commands:
|
||||
|
||||
* K (energy/distance\^2)
|
||||
* d0 (distance)
|
||||
* :math:`K` (energy/distance\^2)
|
||||
* :math:`d_0` (distance)
|
||||
|
||||
|
||||
----------
|
||||
|
|
|
@ -28,8 +28,10 @@ Description
|
|||
|
||||
The *fourier* improper style uses the following potential:
|
||||
|
||||
.. image:: Eqs/improper_fourier.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
E = K [C_0 + C_1 \cos ( \omega) + C_2 \cos( 2 \omega) ]
|
||||
|
||||
|
||||
where K is the force constant, C0, C1, C2 are dimensionless coefficients,
|
||||
and omega is the angle between the IL axis and the IJK plane:
|
||||
|
@ -45,10 +47,10 @@ above, or in the data file or restart files read by the
|
|||
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
||||
commands:
|
||||
|
||||
* K (energy)
|
||||
* C0 (unitless)
|
||||
* C1 (unitless)
|
||||
* C2 (unitless)
|
||||
* :math:`K` (energy)
|
||||
* :math:`C_0` (unitless)
|
||||
* :math:`C_1` (unitless)
|
||||
* :math:`C_2` (unitless)
|
||||
* all (0 or 1, optional)
|
||||
|
||||
|
||||
|
|
|
@ -34,18 +34,22 @@ Description
|
|||
|
||||
The *harmonic* improper style uses the potential
|
||||
|
||||
.. image:: Eqs/improper_harmonic.jpg
|
||||
:align: center
|
||||
.. math::
|
||||
|
||||
where X is the improper angle, X0 is its equilibrium value, and K is a
|
||||
prefactor. Note that the usual 1/2 factor is included in K.
|
||||
E = K (\chi - \chi_0)^2
|
||||
|
||||
|
||||
where :math:`\chi` is the improper angle, :math:`\chi_0` is its equilibrium
|
||||
value, and :math:`K` is a prefactor. Note that the usual 1/2 factor is
|
||||
included in :math:`K`.
|
||||
|
||||
If the 4 atoms in an improper quadruplet (listed in the data file read
|
||||
by the :doc:`read_data <read_data>` command) are ordered I,J,K,L then X
|
||||
by the :doc:`read_data <read_data>` command) are ordered I,J,K,L then
|
||||
:math:`\chi`
|
||||
is the angle between the plane of I,J,K and the plane of J,K,L.
|
||||
Alternatively, you can think of atoms J,K,L as being in a plane, and
|
||||
atom I above the plane, and X as a measure of how far out-of-plane I
|
||||
is with respect to the other 3 atoms.
|
||||
atom I above the plane, and :math:`\chi` as a measure of how far out-of-plane
|
||||
I is with respect to the other 3 atoms.
|
||||
|
||||
Note that defining 4 atoms to interact in this way, does not mean that
|
||||
bonds necessarily exist between I-J, J-K, or K-L, as they would in a
|
||||
|
@ -58,10 +62,10 @@ above, or in the data file or restart files read by the
|
|||
:doc:`read_data <read_data>` or :doc:`read_restart <read_restart>`
|
||||
commands:
|
||||
|
||||
* K (energy/radian\^2)
|
||||
* X0 (degrees)
|
||||
* :math:`K` (energy/radian\^2)
|
||||
* :math:`\chi_0` (degrees)
|
||||
|
||||
X0 is specified in degrees, but LAMMPS converts it to radians
|
||||
:math:`\chi_0` is specified in degrees, but LAMMPS converts it to radians
|
||||
internally; hence the units of K are in energy/radian\^2.
|
||||
|
||||
|
||||
|
|
|
@ -38,9 +38,9 @@ In the improper\_coeff command, the first coefficient sets the improper
|
|||
style and the remaining coefficients are those appropriate to that
|
||||
style. In the example above, the 2 improper\_coeff commands would set
|
||||
impropers of improper type 1 to be computed with a *harmonic*
|
||||
potential with coefficients 120.0, 30 for K, X0. Improper type 2
|
||||
would be computed with a *cvff* potential with coefficients 20.0, -1,
|
||||
2 for K, d, n.
|
||||
potential with coefficients 120.0, 30 for :math:`K`, :math:`\chi_0`.
|
||||
Improper type 2 would be computed with a *cvff* potential with coefficients
|
||||
20.0, -1, 2 for K, d, and n, respectively.
|
||||
|
||||
If the improper *class2* potential is one of the hybrid styles, it
|
||||
requires additional AngleAngle coefficients be specified in the data
|
||||
|
@ -67,7 +67,8 @@ MOLECULE package. See the :doc:`Build package <Build_package>` doc page
|
|||
for more info.
|
||||
|
||||
Unlike other improper styles, the hybrid improper style does not store
|
||||
improper coefficient info for individual sub-styles in a :doc:`binary restart files <restart>`. Thus when restarting a simulation from a
|
||||
improper coefficient info for individual sub-styles in a :doc:`binary restart files <restart>`.
|
||||
Thus when restarting a simulation from a
|
||||
restart file, you need to re-specify improper\_coeff commands.
|
||||
|
||||
Related commands
|
||||
|
|