git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@14747 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp
2016-03-14 18:46:42 +00:00
parent ad3c57cb63
commit ec42f2530c
4 changed files with 245 additions and 31 deletions

View File

@ -3,16 +3,31 @@
pair_style thole command
========================
pair_style lj/cut/thole/long command
====================================
pair_style lj/cut/thole/long/omp command
========================================
Syntax
""""""
.. parsed-literal::
pair_style thole damp cutoff
pair_style style args
* thole = style name
* damp = global damping parameter
* cutoff = global cutoff
* style = *thole* or *lj/cut/thole/long* or *lj/cut/thole/long/omp*
* args = list of arguments for a particular style
.. parsed-literal::
*thole* args = damp cutoff
damp = global damping parameter
cutoff = global cutoff (distance units)
*lj/cut/thole/long* or *lj/cut/thole/long/omp* args = damp cutoff (cutoff2)
damp = global damping parameter
cutoff = global cutoff for LJ (and Thole if only 1 arg) (distance units)
cutoff2 = global cutoff for Thole (optional) (distance units)
Examples
""""""""
@ -24,10 +39,14 @@ Examples
pair_coeff 1 2 thole 1.0 2.6 10.0
pair_coeff * 2 thole 1.0 2.6
.. parsed-literal::
pair_style lj/cut/thole/long 2.6 12.0
Description
"""""""""""
The *thole* pair style is meant to be used with force fields that
The *thole* pair styles are meant to be used with force fields that
include explicit polarization through Drude dipoles. This link
describes how to use the :doc:`thermalized Drude oscillator model <tutorial_drude>` in LAMMPS and polarizable models in LAMMPS
are discussed in :ref:`this Section <howto_25>`.
@ -37,7 +56,17 @@ The *thole* pair style should be used as a sub-style within in the
main pair style including Coulomb interactions, i.e. any pair style
containing *coul/cut* or *coul/long* in its style name.
The *thole* pair style computes the Coulomb interaction damped at
The *lj/cut/thole/long* pair style is equivalent to, but more convenient that
the frequent combination *hybrid/overlay lj/cut/coul/long cutoff thole damp
cutoff2*. It is not only a shorthand for this pair_style combination, but
it also allows for mixing pair coefficients instead of listing them all.
The *lj/cut/thole/long* pair style is also a bit faster because it avoids an
overlay and can benefit from OMP acceleration. Moreover, it uses a more
precise approximation of the direct Coulomb interaction at short range similar
to :doc:`coul/long/cs <pair_coul_long_cs>`, which stabilizes the temperature of
Drude particles.
The *thole* pair styles compute the Coulomb interaction damped at
short distances by a function
@ -79,9 +108,9 @@ non-polarizable atoms are also subject to these weighting factors. The
Drude particles inherit the 1-2, 1-3 and 1-4 neighbor relations from
their respective cores.
The following coefficients must be defined for each pair of atoms
types via the :doc:`pair_coeff <pair_coeff>` command as in the example
above.
For pair_style *thole*, the following coefficients must be defined for
each pair of atoms types via the :doc:`pair_coeff <pair_coeff>` command
as in the example above.
* alpha (distance units^3)
* damp
@ -92,11 +121,60 @@ Thole damping parameter or global cutoff specified in the pair_style
command are used. In order to specify a cutoff (third argument) a damp
parameter (second argument) must also be specified.
For pair style *lj/cut/thole/long*, the following coefficients must be
defined for each pair of atoms types via the :doc:`pair_coeff <pair_coeff>`
command.
* epsilon (energy units)
* sigma (length units)
* alpha (distance units^3)
* damps
* LJ cutoff (distance units)
The last two coefficients are optional and default to the global values from
the *pair_style* command line.
----------
Styles with a *cuda*, *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
hardware, as discussed in :doc:`Section_accelerate <Section_accelerate>`
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL,
KOKKOS, USER-OMP and OPT packages, respectively. They are only
enabled if LAMMPS was built with those packages. See the :ref:`Making LAMMPS <start_3>` section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the :ref:`-suffix command-line switch <start_7>` when you invoke LAMMPS, or you can
use the :doc:`suffix <suffix>` command in your input script.
See :doc:`Section_accelerate <Section_accelerate>` of the manual for
more instructions on how to use the accelerated styles effectively.
**Mixing**:
The *thole* pair style does not support mixing. Thus, coefficients
for all I,J pairs must be specified explicitly.
The *lj/cut/thole/long* pair style does support mixing. Mixed coefficients
are defined using
.. math::
\begin{equation} \alpha_{ij} = \sqrt{\alpha_i\alpha_j}\end{equation}
.. math::
\begin{equation} a_{ij} = \frac 1 2 (a_i + a_j)\end{equation}
Restrictions
""""""""""""
@ -108,10 +186,15 @@ This pair_style should currently not be used with the :doc:`charmm dihedral styl
factors. This is because the *thole* pair style does not know which
pairs are 1-4 partners of which dihedrals.
The *lj/cut/thole/long* pair style should be used with a :doc:`Kspace solver <kspace_style>`
like PPPM or Ewald, which is only enabled if LAMMPS was built with the kspace
package.
Related commands
""""""""""""""""
:doc:`fix drude <fix_drude>`, :doc:`fix langevin/drude <fix_langevin_drude>`, :doc:`fix drude/transform <fix_drude_transform>`, :doc:`compute temp/drude <compute_temp_drude>`
`pair_style lj/cut/coul/long <pair_lj_cut_coul_long>`_
**Default:** none

View File

@ -126,16 +126,30 @@
<div class="section" id="pair-style-thole-command">
<span id="index-0"></span><h1>pair_style thole command<a class="headerlink" href="#pair-style-thole-command" title="Permalink to this headline"></a></h1>
</div>
<div class="section" id="pair-style-lj-cut-thole-long-command">
<h1>pair_style lj/cut/thole/long command<a class="headerlink" href="#pair-style-lj-cut-thole-long-command" title="Permalink to this headline"></a></h1>
</div>
<div class="section" id="pair-style-lj-cut-thole-long-omp-command">
<h1>pair_style lj/cut/thole/long/omp command<a class="headerlink" href="#pair-style-lj-cut-thole-long-omp-command" title="Permalink to this headline"></a></h1>
<div class="section" id="syntax">
<h2>Syntax<a class="headerlink" href="#syntax" title="Permalink to this headline"></a></h2>
<div class="highlight-python"><div class="highlight"><pre>pair_style thole damp cutoff
<div class="highlight-python"><div class="highlight"><pre>pair_style style args
</pre></div>
</div>
<ul class="simple">
<li>thole = style name</li>
<li>damp = global damping parameter</li>
<li>cutoff = global cutoff</li>
<li>style = <em>thole</em> or <em>lj/cut/thole/long</em> or <em>lj/cut/thole/long/omp</em></li>
<li>args = list of arguments for a particular style</li>
</ul>
<pre class="literal-block">
<em>thole</em> args = damp cutoff
damp = global damping parameter
cutoff = global cutoff (distance units)
<em>lj/cut/thole/long</em> or <em>lj/cut/thole/long/omp</em> args = damp cutoff (cutoff2)
damp = global damping parameter
cutoff = global cutoff for LJ (and Thole if only 1 arg) (distance units)
cutoff2 = global cutoff for Thole (optional) (distance units)
</pre>
</div>
<div class="section" id="examples">
<h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline"></a></h2>
@ -145,10 +159,13 @@ pair_coeff 1 2 thole 1.0 2.6 10.0
pair_coeff * 2 thole 1.0 2.6
</pre></div>
</div>
<div class="highlight-python"><div class="highlight"><pre>pair_style lj/cut/thole/long 2.6 12.0
</pre></div>
</div>
</div>
<div class="section" id="description">
<h2>Description<a class="headerlink" href="#description" title="Permalink to this headline"></a></h2>
<p>The <em>thole</em> pair style is meant to be used with force fields that
<p>The <em>thole</em> pair styles are meant to be used with force fields that
include explicit polarization through Drude dipoles. This link
describes how to use the <a class="reference internal" href="tutorial_drude.html"><em>thermalized Drude oscillator model</em></a> in LAMMPS and polarizable models in LAMMPS
are discussed in <a class="reference internal" href="Section_howto.html#howto-25"><span>this Section</span></a>.</p>
@ -156,15 +173,24 @@ are discussed in <a class="reference internal" href="Section_howto.html#howto-25
<a class="reference internal" href="pair_hybrid.html"><em>pair_hybrid/overlay</em></a> command, in conjunction with a
main pair style including Coulomb interactions, i.e. any pair style
containing <em>coul/cut</em> or <em>coul/long</em> in its style name.</p>
<p>The <em>thole</em> pair style computes the Coulomb interaction damped at
<p>The <em>lj/cut/thole/long</em> pair style is equivalent to, but more convenient that
the frequent combination <em>hybrid/overlay lj/cut/coul/long cutoff thole damp
cutoff2</em>. It is not only a shorthand for this pair_style combination, but
it also allows for mixing pair coefficients instead of listing them all.
The <em>lj/cut/thole/long</em> pair style is also a bit faster because it avoids an
overlay and can benefit from OMP acceleration. Moreover, it uses a more
precise approximation of the direct Coulomb interaction at short range similar
to <code class="xref doc docutils literal"><span class="pre">coul/long/cs</span></code>, which stabilizes the temperature of
Drude particles.</p>
<p>The <em>thole</em> pair styles compute the Coulomb interaction damped at
short distances by a function</p>
<div class="math">
\[\begin{equation} T_{ij}(r_{ij}) = 1 - \left( 1 +
\frac{s_{ij} r_{ij} }{2} \right)
\exp \left( - s_{ij} r_{ij} \right) \end{equation}\]</div>
<p>This function results from an adaptation to point charges
<a class="reference internal" href="tutorial_drude.html#noskov"><span>(Noskov)</span></a> of the dipole screening scheme originally proposed
by <a class="reference internal" href="tutorial_drude.html#thole"><span>Thole</span></a>. The scaling coefficient <span class="math">\(s_{ij}\)</span> is determined
<a class="reference internal" href="#noskov"><span>(Noskov)</span></a> of the dipole screening scheme originally proposed
by <a class="reference internal" href="#thole"><span>Thole</span></a>. The scaling coefficient <span class="math">\(s_{ij}\)</span> is determined
by the polarizability of the atoms, <span class="math">\(\alpha_i\)</span>, and by a Thole
damping parameter <span class="math">\(a\)</span>. This Thole damping parameter usually takes
a value of 2.6, but in certain force fields the value can depend upon
@ -188,9 +214,9 @@ interactions between Drude particles and core charges or
non-polarizable atoms are also subject to these weighting factors. The
Drude particles inherit the 1-2, 1-3 and 1-4 neighbor relations from
their respective cores.</p>
<p>The following coefficients must be defined for each pair of atoms
types via the <a class="reference internal" href="pair_coeff.html"><em>pair_coeff</em></a> command as in the example
above.</p>
<p>For pair_style <em>thole</em>, the following coefficients must be defined for
each pair of atoms types via the <a class="reference internal" href="pair_coeff.html"><em>pair_coeff</em></a> command
as in the example above.</p>
<ul class="simple">
<li>alpha (distance units^3)</li>
<li>damp</li>
@ -200,9 +226,43 @@ above.</p>
Thole damping parameter or global cutoff specified in the pair_style
command are used. In order to specify a cutoff (third argument) a damp
parameter (second argument) must also be specified.</p>
<p>For pair style <em>lj/cut/thole/long</em>, the following coefficients must be
defined for each pair of atoms types via the <a class="reference internal" href="pair_coeff.html"><em>pair_coeff</em></a>
command.</p>
<ul class="simple">
<li>epsilon (energy units)</li>
<li>sigma (length units)</li>
<li>alpha (distance units^3)</li>
<li>damps</li>
<li>LJ cutoff (distance units)</li>
</ul>
<p>The last two coefficients are optional and default to the global values from
the <em>pair_style</em> command line.</p>
<hr class="docutils" />
<p>Styles with a <em>cuda</em>, <em>gpu</em>, <em>intel</em>, <em>kk</em>, <em>omp</em>, or <em>opt</em> suffix are
functionally the same as the corresponding style without the suffix.
They have been optimized to run faster, depending on your available
hardware, as discussed in <a class="reference internal" href="Section_accelerate.html"><em>Section_accelerate</em></a>
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.</p>
<p>These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL,
KOKKOS, USER-OMP and OPT packages, respectively. They are only
enabled if LAMMPS was built with those packages. See the <a class="reference internal" href="Section_start.html#start-3"><span>Making LAMMPS</span></a> section for more info.</p>
<p>You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the <a class="reference internal" href="Section_start.html#start-7"><span>-suffix command-line switch</span></a> when you invoke LAMMPS, or you can
use the <a class="reference internal" href="suffix.html"><em>suffix</em></a> command in your input script.</p>
<p>See <a class="reference internal" href="Section_accelerate.html"><em>Section_accelerate</em></a> of the manual for
more instructions on how to use the accelerated styles effectively.</p>
<p><strong>Mixing</strong>:</p>
<p>The <em>thole</em> pair style does not support mixing. Thus, coefficients
for all I,J pairs must be specified explicitly.</p>
<p>The <em>lj/cut/thole/long</em> pair style does support mixing. Mixed coefficients
are defined using</p>
<div class="math">
\[\begin{equation} \alpha_{ij} = \sqrt{\alpha_i\alpha_j}\end{equation}\]</div>
<div class="math">
\[\begin{equation} a_{ij} = \frac 1 2 (a_i + a_j)\end{equation}\]</div>
</div>
<div class="section" id="restrictions">
<h2>Restrictions<a class="headerlink" href="#restrictions" title="Permalink to this headline"></a></h2>
@ -211,10 +271,14 @@ enabled if LAMMPS was built with that package. See the <a class="reference inter
<p>This pair_style should currently not be used with the <a class="reference internal" href="dihedral_charmm.html"><em>charmm dihedral style</em></a> if the latter has non-zero 1-4 weighting
factors. This is because the <em>thole</em> pair style does not know which
pairs are 1-4 partners of which dihedrals.</p>
<p>The <em>lj/cut/thole/long</em> pair style should be used with a <a class="reference internal" href="kspace_style.html"><em>Kspace solver</em></a>
like PPPM or Ewald, which is only enabled if LAMMPS was built with the kspace
package.</p>
</div>
<div class="section" id="related-commands">
<h2>Related commands<a class="headerlink" href="#related-commands" title="Permalink to this headline"></a></h2>
<p><a class="reference internal" href="fix_drude.html"><em>fix drude</em></a>, <a class="reference internal" href="fix_langevin_drude.html"><em>fix langevin/drude</em></a>, <a class="reference internal" href="fix_drude_transform.html"><em>fix drude/transform</em></a>, <a class="reference internal" href="compute_temp_drude.html"><em>compute temp/drude</em></a></p>
<p><a class="reference internal" href="fix_drude.html"><em>fix drude</em></a>, <a class="reference internal" href="fix_langevin_drude.html"><em>fix langevin/drude</em></a>, <a class="reference internal" href="fix_drude_transform.html"><em>fix drude/transform</em></a>, <a class="reference internal" href="compute_temp_drude.html"><em>compute temp/drude</em></a>
<a class="reference external" href="pair_lj_cut_coul_long">pair_style lj/cut/coul/long</a></p>
<p><strong>Default:</strong> none</p>
<hr class="docutils" />
<p id="noskov"><strong>(Noskov)</strong> Noskov, Lamoureux and Roux, J Phys Chem B, 109, 6705 (2005).</p>

View File

@ -14,14 +14,22 @@
:line
pair_style thole command :h3
pair_style lj/cut/thole/long command :h3
pair_style lj/cut/thole/long/omp command :h3
[Syntax:]
pair_style thole damp cutoff :pre
pair_style style args :pre
thole = style name
damp = global damping parameter
cutoff = global cutoff :ul
style = {thole} or {lj/cut/thole/long} or {lj/cut/thole/long/omp}
args = list of arguments for a particular style :ul
{thole} args = damp cutoff
damp = global damping parameter
cutoff = global cutoff (distance units)
{lj/cut/thole/long} or {lj/cut/thole/long/omp} args = damp cutoff (cutoff2)
damp = global damping parameter
cutoff = global cutoff for LJ (and Thole if only 1 arg) (distance units)
cutoff2 = global cutoff for Thole (optional) (distance units) :pre
[Examples:]
@ -30,9 +38,11 @@ pair_coeff 1 1 thole 1.0
pair_coeff 1 2 thole 1.0 2.6 10.0
pair_coeff * 2 thole 1.0 2.6 :pre
pair_style lj/cut/thole/long 2.6 12.0 :pre
[Description:]
The {thole} pair style is meant to be used with force fields that
The {thole} pair styles are meant to be used with force fields that
include explicit polarization through Drude dipoles. This link
describes how to use the "thermalized Drude oscillator
model"_tutorial_drude.html in LAMMPS and polarizable models in LAMMPS
@ -43,7 +53,17 @@ The {thole} pair style should be used as a sub-style within in the
main pair style including Coulomb interactions, i.e. any pair style
containing {coul/cut} or {coul/long} in its style name.
The {thole} pair style computes the Coulomb interaction damped at
The {lj/cut/thole/long} pair style is equivalent to, but more convenient that
the frequent combination {hybrid/overlay lj/cut/coul/long cutoff thole damp
cutoff2}. It is not only a shorthand for this pair_style combination, but
it also allows for mixing pair coefficients instead of listing them all.
The {lj/cut/thole/long} pair style is also a bit faster because it avoids an
overlay and can benefit from OMP acceleration. Moreover, it uses a more
precise approximation of the direct Coulomb interaction at short range similar
to "coul/long/cs"_pair_coul_long_cs.html, which stabilizes the temperature of
Drude particles.
The {thole} pair styles compute the Coulomb interaction damped at
short distances by a function
\begin\{equation\} T_\{ij\}(r_\{ij\}) = 1 - \left( 1 +
@ -79,9 +99,9 @@ non-polarizable atoms are also subject to these weighting factors. The
Drude particles inherit the 1-2, 1-3 and 1-4 neighbor relations from
their respective cores.
The following coefficients must be defined for each pair of atoms
types via the "pair_coeff"_pair_coeff.html command as in the example
above.
For pair_style {thole}, the following coefficients must be defined for
each pair of atoms types via the "pair_coeff"_pair_coeff.html command
as in the example above.
alpha (distance units^3)
damp
@ -92,11 +112,53 @@ Thole damping parameter or global cutoff specified in the pair_style
command are used. In order to specify a cutoff (third argument) a damp
parameter (second argument) must also be specified.
For pair style {lj/cut/thole/long}, the following coefficients must be
defined for each pair of atoms types via the "pair_coeff"_pair_coeff.html
command.
epsilon (energy units)
sigma (length units)
alpha (distance units^3)
damps
LJ cutoff (distance units) :ul
The last two coefficients are optional and default to the global values from
the {pair_style} command line.
:line
Styles with a {cuda}, {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
hardware, as discussed in "Section_accelerate"_Section_accelerate.html
of the manual. The accelerated styles take the same arguments and
should produce the same results, except for round-off and precision
issues.
These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL,
KOKKOS, USER-OMP and OPT packages, respectively. They are only
enabled if LAMMPS was built with those packages. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
You can specify the accelerated styles explicitly in your input script
by including their suffix, or you can use the "-suffix command-line
switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can
use the "suffix"_suffix.html command in your input script.
See "Section_accelerate"_Section_accelerate.html of the manual for
more instructions on how to use the accelerated styles effectively.
[Mixing]:
The {thole} pair style does not support mixing. Thus, coefficients
for all I,J pairs must be specified explicitly.
The {lj/cut/thole/long} pair style does support mixing. Mixed coefficients
are defined using
\begin\{equation\} \alpha_\{ij\} = \sqrt\{\alpha_i\alpha_j\}\end\{equation\}
\begin\{equation\} a_\{ij\} = \frac 1 2 (a_i + a_j)\end\{equation\}
[Restrictions:]
These pair styles are part of the USER-DRUDE package. They are only
@ -108,12 +170,17 @@ style"_dihedral_charmm.html if the latter has non-zero 1-4 weighting
factors. This is because the {thole} pair style does not know which
pairs are 1-4 partners of which dihedrals.
The {lj/cut/thole/long} pair style should be used with a "Kspace solver"_kspace_style.html
like PPPM or Ewald, which is only enabled if LAMMPS was built with the kspace
package.
[Related commands:]
"fix drude"_fix_drude.html, "fix
langevin/drude"_fix_langevin_drude.html, "fix
drude/transform"_fix_drude_transform.html, "compute
temp/drude"_compute_temp_drude.html
"pair_style lj/cut/coul/long"_pair_lj_cut_coul_long
[Default:] none

File diff suppressed because one or more lines are too long