lammps/doc/html/pair_multi_lucy_rx.html

367 lines
19 KiB
HTML

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>pair_style multi/lucy/rx command &mdash; LAMMPS documentation</title>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/sphinxcontrib-images/LightBox2/lightbox2/css/lightbox.css" type="text/css" />
<link rel="top" title="LAMMPS documentation" href="index.html"/>
<script src="_static/js/modernizr.min.js"></script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-nav-search">
<a href="Manual.html" class="icon icon-home"> LAMMPS
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul>
<li class="toctree-l1"><a class="reference internal" href="Section_intro.html">1. Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_start.html">2. Getting Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_commands.html">3. Commands</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_packages.html">4. Packages</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_accelerate.html">5. Accelerating LAMMPS performance</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_howto.html">6. How-to discussions</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_example.html">7. Example problems</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_perf.html">8. Performance &amp; scalability</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_tools.html">9. Additional tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_modify.html">10. Modifying &amp; extending LAMMPS</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_python.html">11. Python interface to LAMMPS</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_errors.html">12. Errors</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_history.html">13. Future and history</a></li>
</ul>
</div>
&nbsp;
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="Manual.html">LAMMPS</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="Manual.html">Docs</a> &raquo;</li>
<li>pair_style multi/lucy/rx command</li>
<li class="wy-breadcrumbs-aside">
<a href="http://lammps.sandia.gov">Website</a>
<a href="Section_commands.html#comm">Commands</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="pair-style-multi-lucy-rx-command">
<span id="index-0"></span><h1>pair_style multi/lucy/rx command</h1>
<div class="section" id="syntax">
<h2>Syntax</h2>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">multi</span><span class="o">/</span><span class="n">lucy</span><span class="o">/</span><span class="n">rx</span> <span class="n">style</span> <span class="n">N</span> <span class="n">keyword</span> <span class="o">...</span>
</pre></div>
</div>
<ul class="simple">
<li>style = <em>lookup</em> or <em>linear</em> = method of interpolation</li>
<li>N = use N values in <em>lookup</em>, <em>linear</em> tables</li>
</ul>
</div>
<div class="section" id="examples">
<h2>Examples</h2>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">multi</span><span class="o">/</span><span class="n">lucy</span><span class="o">/</span><span class="n">rx</span> <span class="n">linear</span> <span class="mi">1000</span>
<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">multibody</span><span class="o">.</span><span class="n">table</span> <span class="n">ENTRY1</span> <span class="n">h2o</span> <span class="n">h2o</span> <span class="mf">7.0</span>
<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">multibody</span><span class="o">.</span><span class="n">table</span> <span class="n">ENTRY1</span> <span class="n">h2o</span> <span class="mi">1</span><span class="n">fluid</span> <span class="mf">7.0</span>
</pre></div>
</div>
</div>
<div class="section" id="description">
<h2>Description</h2>
<p>Style <em>multi/lucy/rx</em> is used in reaction DPD simulations, where the coarse-grained
(CG) particles are composed of <em>m</em> species whose reaction rate kinetics are determined
from a set of <em>n</em> reaction rate equations through the <a class="reference internal" href="fix_rx.html"><span class="doc">fix rx</span></a> command.
The species of one CG particle can interact with a species in a neighboring CG particle
through a site-site interaction potential model. Style <em>multi/lucy/rx</em> computes the
site-site density-dependent force following from the many-body form described in
<a class="reference internal" href="#moore"><span class="std std-ref">(Moore)</span></a> and <a class="reference internal" href="#warren"><span class="std std-ref">(Warren)</span></a> as</p>
<img alt="_images/pair_multi_lucy.jpg" class="align-center" src="_images/pair_multi_lucy.jpg" />
<p>which consists of a density-dependent function, A(rho), and a radial-dependent weight
function, omegaDD(rij). The radial-dependent weight function, omegaDD(rij), is taken
as the Lucy function:</p>
<img alt="_images/pair_multi_lucy2.jpg" class="align-center" src="_images/pair_multi_lucy2.jpg" />
<p>The density-dependent energy for a given particle is given by:</p>
<img alt="_images/pair_multi_lucy_energy.jpg" class="align-center" src="_images/pair_multi_lucy_energy.jpg" />
<p>See the supporting information of <a class="reference internal" href="#brennan"><span class="std std-ref">(Brennan)</span></a> or the publication by <a class="reference internal" href="#moore"><span class="std std-ref">(Moore)</span></a>
for more details on the functional form.</p>
<p>An interpolation table is used to evaluate the density-dependent energy (Integral(A(rho)drho) and force (A(rho)).
Note that the pre-factor to the energy is computed after the interpolation, thus the Integral(A(rho)drho will
have units of energy / length^4.</p>
<p>The interpolation table is created as a pre-computation by fitting cubic splines to
the file values and interpolating the density-dependent energy and force at each of <em>N</em> densities.
During a simulation, the tables are used to interpolate the density-dependent energy and force as
needed for each pair of particles separated by a distance <em>R</em>. The interpolation is done in
one of 2 styles: <em>lookup</em> and <em>linear</em>.</p>
<p>For the <em>lookup</em> style, the density is used to find the nearest table entry, which is the
density-dependent energy and force.</p>
<p>For the <em>linear</em> style, the density is used to find the 2 surrounding table values from
which the density-dependent energy and force are computed by linear interpolation.</p>
<p>The following coefficients must be defined for each pair of atoms
types via the <a class="reference internal" href="pair_coeff.html"><span class="doc">pair_coeff</span></a> command as in the examples
above.</p>
<ul class="simple">
<li>filename</li>
<li>keyword</li>
<li>species1</li>
<li>species2</li>
<li>cutoff (distance units)</li>
</ul>
<p>The filename specifies a file containing the tabulated density-dependent
energy and force. The keyword specifies a section of the file.
The cutoff is an optional coefficient. If not specified, the outer cutoff in the
table itself (see below) will be used to build an interpolation table
that extend to the largest tabulated distance. If specified, only
file values up to the cutoff are used to create the interpolation
table. The format of this file is described below.</p>
<p>The species tags define the site-site interaction potential between two
species contained within two different particles.
The species tags must either correspond to the species defined in the reaction
kinetics files specified with the <a class="reference internal" href="fix_rx.html"><span class="doc">fix rx</span></a> command
or they must correspond to the tag &#8220;1fluid&#8221;, signifying interaction
with a product species mixture determined through a one-fluid approximation.
The interaction potential is weighted by the geometric average of the
concentrations of the two species. The coarse-grained potential
is stored before and after the reaction kinetics solver is applied, where
the difference is defined to be the internal chemical energy (uChem).</p>
<hr class="docutils" />
<p>The format of a tabulated file is a series of one or more sections,
defined as follows (without the parenthesized comments):</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># Density-dependent function (one or more comment or blank lines)</span>
</pre></div>
</div>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">DD</span><span class="o">-</span><span class="n">FUNCTION</span> <span class="p">(</span><span class="n">keyword</span> <span class="ow">is</span> <span class="n">first</span> <span class="n">text</span> <span class="n">on</span> <span class="n">line</span><span class="p">)</span>
<span class="n">N</span> <span class="mi">500</span> <span class="n">R</span> <span class="mf">1.0</span> <span class="mf">10.0</span> <span class="p">(</span><span class="n">N</span><span class="p">,</span> <span class="n">R</span><span class="p">,</span> <span class="n">RSQ</span> <span class="n">parameters</span><span class="p">)</span>
<span class="p">(</span><span class="n">blank</span><span class="p">)</span>
<span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">25.5</span> <span class="mf">102.34</span> <span class="p">(</span><span class="n">index</span><span class="p">,</span> <span class="n">density</span><span class="p">,</span> <span class="n">energy</span><span class="o">/</span><span class="n">r</span><span class="o">^</span><span class="mi">4</span><span class="p">,</span> <span class="n">force</span><span class="p">)</span>
<span class="mi">2</span> <span class="mf">1.02</span> <span class="mf">23.4</span> <span class="mf">98.5</span>
<span class="o">...</span>
<span class="mi">500</span> <span class="mf">10.0</span> <span class="mf">0.001</span> <span class="mf">0.003</span>
</pre></div>
</div>
<p>A section begins with a non-blank line whose 1st character is not a
&#8220;#&#8221;; blank lines or lines starting with &#8220;#&#8221; can be used as comments
between sections. The first line begins with a keyword which
identifies the section. The line can contain additional text, but the
initial text must match the argument specified in the pair_coeff
command. The next line lists (in any order) one or more parameters
for the table. Each parameter is a keyword followed by one or more
numeric values.</p>
<p>The parameter &#8220;N&#8221; is required and its value is the number of table
entries that follow. Note that this may be different than the <em>N</em>
specified in the <a class="reference internal" href="#"><span class="doc">pair_style multi/lucy/rx</span></a> command. Let
Ntable = <em>N</em> in the pair_style command, and Nfile = &#8220;N&#8221; in the
tabulated file. What LAMMPS does is a preliminary interpolation by
creating splines using the Nfile tabulated values as nodal points. It
uses these to interpolate the density-dependent energy and force at Ntable different
points. The resulting tables of length Ntable are then used as
described above, when computing the density-dependent energy and force.
This means that if you want the interpolation tables of
length Ntable to match exactly what is in the tabulated file (with
effectively no preliminary interpolation), you should set Ntable =
Nfile, and use the &#8220;RSQ&#8221; parameter. This is because the
internal table abscissa is always RSQ (separation distance squared),
for efficient lookup.</p>
<p>All other parameters are optional. If &#8220;R&#8221; or &#8220;RSQ&#8221; does
not appear, then the distances in each line of the table are used
as-is to perform spline interpolation. In this case, the table values
can be spaced in <em>density</em> uniformly or however you wish to position table
values in regions of large gradients.</p>
<p>If used, the parameters &#8220;R&#8221; or &#8220;RSQ&#8221; are followed by 2 values <em>rlo</em>
and <em>rhi</em>. If specified, the density associated with each density-dependent
energy and force value is computed from these 2 values (at high accuracy), rather
than using the (low-accuracy) value listed in each line of the table.
The density values in the table file are ignored in this case.
For &#8220;R&#8221;, distances uniformly spaced between <em>rlo</em> and <em>rhi</em> are
computed; for &#8220;RSQ&#8221;, squared distances uniformly spaced between
<em>rlo*rlo</em> and <em>rhi*rhi</em> are computed.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">If you use &#8220;R&#8221; or &#8220;RSQ&#8221;, the tabulated distance values in the
file are effectively ignored, and replaced by new values as described
in the previous paragraph. If the density value in the table is not
very close to the new value (i.e. round-off difference), then you will
be assigning density-dependent energy and force values to a different density,
which is probably not what you want. LAMMPS will warn if this is occurring.</p>
</div>
<p>Following a blank line, the next N lines list the tabulated values.
On each line, the 1st value is the index from 1 to N, the 2nd value is
r (in density units), the 3rd value is the density-dependent function value
(in energy units / length^4), and the 4th is the force (in force units). The
density values must increase from one line to the next.</p>
<p>Note that one file can contain many sections, each with a tabulated
potential. LAMMPS reads the file section by section until it finds
one that matches the specified keyword.</p>
<hr class="docutils" />
<p><strong>Mixing, shift, table, tail correction, restart, rRESPA info</strong>:</p>
<p>This pair style does not support mixing. Thus, coefficients for all
I,J pairs must be specified explicitly.</p>
<p>The <a class="reference internal" href="pair_modify.html"><span class="doc">pair_modify</span></a> shift, table, and tail options are
not relevant for this pair style.</p>
<p>This pair style writes the settings for the &#8220;pair_style multi/lucy/rx&#8221; command
to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>, so a pair_style command does
not need to specified in an input script that reads a restart file.
However, the coefficient information is not stored in the restart
file, since it is tabulated in the potential files. Thus, pair_coeff
commands do need to be specified in the restart input script.</p>
<p>This pair style can only be used via the <em>pair</em> keyword of the
<a class="reference internal" href="run_style.html"><span class="doc">run_style respa</span></a> command. It does not support the
<em>inner</em>, <em>middle</em>, <em>outer</em> keywords.</p>
</div>
<hr class="docutils" />
<div class="section" id="restrictions">
<h2>Restrictions</h2>
<blockquote>
<div>none</div></blockquote>
</div>
<div class="section" id="related-commands">
<h2>Related commands</h2>
<p><a class="reference internal" href="pair_coeff.html"><span class="doc">pair_coeff</span></a></p>
<p><strong>Default:</strong> none</p>
<hr class="docutils" />
<p id="warren"><strong>(Warren)</strong> Warren, Phys Rev E, 68, 066702 (2003).</p>
<p id="brennan"><strong>(Brennan)</strong> Brennan, J Chem Phys Lett, 5, 2144-2149 (2014).</p>
<p id="moore"><strong>(Moore)</strong> Moore, J Chem Phys, 144, 104501 (2016).</p>
</div>
</div>
</div>
</div>
<footer>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright 2013 Sandia Corporation.
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'./',
VERSION:'',
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="_static/sphinxcontrib-images/LightBox2/lightbox2/js/jquery-1.11.0.min.js"></script>
<script type="text/javascript" src="_static/sphinxcontrib-images/LightBox2/lightbox2/js/lightbox.min.js"></script>
<script type="text/javascript" src="_static/sphinxcontrib-images/LightBox2/lightbox2-customize/jquery-noconflict.js"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.StickyNav.enable();
});
</script>
</body>
</html>