forked from lijiext/lammps
320 lines
18 KiB
HTML
320 lines
18 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>compute property/local command — 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 & 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 & 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>
|
||
|
|
||
|
</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> »</li>
|
||
|
|
||
|
<li>compute property/local 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="compute-property-local-command">
|
||
|
<span id="index-0"></span><h1>compute property/local command</h1>
|
||
|
<div class="section" id="syntax">
|
||
|
<h2>Syntax</h2>
|
||
|
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="nb">property</span><span class="o">/</span><span class="n">local</span> <span class="n">input1</span> <span class="n">input2</span> <span class="o">...</span>
|
||
|
</pre></div>
|
||
|
</div>
|
||
|
<ul class="simple">
|
||
|
<li>ID, group-ID are documented in <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> command</li>
|
||
|
<li>property/local = style name of this compute command</li>
|
||
|
<li>input = one or more attributes</li>
|
||
|
</ul>
|
||
|
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">possible</span> <span class="n">attributes</span> <span class="o">=</span> <span class="n">natom1</span> <span class="n">natom2</span> <span class="n">ntype1</span> <span class="n">ntype2</span>
|
||
|
<span class="n">patom1</span> <span class="n">patom2</span> <span class="n">ptype1</span> <span class="n">ptype2</span>
|
||
|
<span class="n">batom1</span> <span class="n">batom2</span> <span class="n">btype</span>
|
||
|
<span class="n">aatom1</span> <span class="n">aatom2</span> <span class="n">aatom3</span> <span class="n">atype</span>
|
||
|
<span class="n">datom1</span> <span class="n">datom2</span> <span class="n">datom3</span> <span class="n">dtype</span>
|
||
|
<span class="n">iatom1</span> <span class="n">iatom2</span> <span class="n">iatom3</span> <span class="n">itype</span>
|
||
|
</pre></div>
|
||
|
</div>
|
||
|
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">natom1</span><span class="p">,</span> <span class="n">natom2</span> <span class="o">=</span> <span class="n">IDs</span> <span class="n">of</span> <span class="mi">2</span> <span class="n">atoms</span> <span class="ow">in</span> <span class="n">each</span> <span class="n">pair</span> <span class="p">(</span><span class="n">within</span> <span class="n">neighbor</span> <span class="n">cutoff</span><span class="p">)</span>
|
||
|
<span class="n">ntype1</span><span class="p">,</span> <span class="n">ntype2</span> <span class="o">=</span> <span class="nb">type</span> <span class="n">of</span> <span class="mi">2</span> <span class="n">atoms</span> <span class="ow">in</span> <span class="n">each</span> <span class="n">pair</span> <span class="p">(</span><span class="n">within</span> <span class="n">neighbor</span> <span class="n">cutoff</span><span class="p">)</span>
|
||
|
<span class="n">patom1</span><span class="p">,</span> <span class="n">patom2</span> <span class="o">=</span> <span class="n">IDs</span> <span class="n">of</span> <span class="mi">2</span> <span class="n">atoms</span> <span class="ow">in</span> <span class="n">each</span> <span class="n">pair</span> <span class="p">(</span><span class="n">within</span> <span class="n">force</span> <span class="n">cutoff</span><span class="p">)</span>
|
||
|
<span class="n">ptype1</span><span class="p">,</span> <span class="n">ptype2</span> <span class="o">=</span> <span class="nb">type</span> <span class="n">of</span> <span class="mi">2</span> <span class="n">atoms</span> <span class="ow">in</span> <span class="n">each</span> <span class="n">pair</span> <span class="p">(</span><span class="n">within</span> <span class="n">force</span> <span class="n">cutoff</span><span class="p">)</span>
|
||
|
<span class="n">batom1</span><span class="p">,</span> <span class="n">batom2</span> <span class="o">=</span> <span class="n">IDs</span> <span class="n">of</span> <span class="mi">2</span> <span class="n">atoms</span> <span class="ow">in</span> <span class="n">each</span> <span class="n">bond</span>
|
||
|
<span class="n">btype</span> <span class="o">=</span> <span class="n">bond</span> <span class="nb">type</span> <span class="n">of</span> <span class="n">each</span> <span class="n">bond</span>
|
||
|
<span class="n">aatom1</span><span class="p">,</span> <span class="n">aatom2</span><span class="p">,</span> <span class="n">aatom3</span> <span class="o">=</span> <span class="n">IDs</span> <span class="n">of</span> <span class="mi">3</span> <span class="n">atoms</span> <span class="ow">in</span> <span class="n">each</span> <span class="n">angle</span>
|
||
|
<span class="n">atype</span> <span class="o">=</span> <span class="n">angle</span> <span class="nb">type</span> <span class="n">of</span> <span class="n">each</span> <span class="n">angle</span>
|
||
|
<span class="n">datom1</span><span class="p">,</span> <span class="n">datom2</span><span class="p">,</span> <span class="n">datom3</span><span class="p">,</span> <span class="n">datom4</span> <span class="o">=</span> <span class="n">IDs</span> <span class="n">of</span> <span class="mi">4</span> <span class="n">atoms</span> <span class="ow">in</span> <span class="n">each</span> <span class="n">dihedral</span>
|
||
|
<span class="n">dtype</span> <span class="o">=</span> <span class="n">dihedral</span> <span class="nb">type</span> <span class="n">of</span> <span class="n">each</span> <span class="n">dihedral</span>
|
||
|
<span class="n">iatom1</span><span class="p">,</span> <span class="n">iatom2</span><span class="p">,</span> <span class="n">iatom3</span><span class="p">,</span> <span class="n">iatom4</span> <span class="o">=</span> <span class="n">IDs</span> <span class="n">of</span> <span class="mi">4</span> <span class="n">atoms</span> <span class="ow">in</span> <span class="n">each</span> <span class="n">improper</span>
|
||
|
<span class="n">itype</span> <span class="o">=</span> <span class="n">improper</span> <span class="nb">type</span> <span class="n">of</span> <span class="n">each</span> <span class="n">improper</span>
|
||
|
</pre></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="section" id="examples">
|
||
|
<h2>Examples</h2>
|
||
|
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">local</span> <span class="n">btype</span> <span class="n">batom1</span> <span class="n">batom2</span>
|
||
|
<span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">local</span> <span class="n">atype</span> <span class="n">aatom2</span>
|
||
|
</pre></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="section" id="description">
|
||
|
<h2>Description</h2>
|
||
|
<p>Define a computation that stores the specified attributes as local
|
||
|
data so it can be accessed by other <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. If the input attributes refer
|
||
|
to bond information, then the number of datums generated, aggregated
|
||
|
across all processors, equals the number of bonds in the system.
|
||
|
Ditto for pairs, angles, etc.</p>
|
||
|
<p>If multiple input attributes are specified then they must all generate
|
||
|
the same amount of information, so that the resulting local array has
|
||
|
the same number of rows for each column. This means that only bond
|
||
|
attributes can be specified together, or angle attributes, etc. Bond
|
||
|
and angle attributes can not be mixed in the same compute
|
||
|
property/local command.</p>
|
||
|
<p>If the inputs are pair attributes, the local data is generated by
|
||
|
looping over the pairwise neighbor list. Info about an individual
|
||
|
pairwise interaction will only be included if both atoms in the pair
|
||
|
are in the specified compute group. For <em>natom1</em> and <em>natom2</em>, all
|
||
|
atom pairs in the neighbor list are considered (out to the neighbor
|
||
|
cutoff = force cutoff + <a class="reference internal" href="neighbor.html"><span class="doc">neighbor skin</span></a>). For <em>patom1</em>
|
||
|
and <em>patom2</em>, the distance between the atoms must be less than the
|
||
|
force cutoff distance for that pair to be included, as defined by the
|
||
|
<a class="reference internal" href="pair_style.html"><span class="doc">pair_style</span></a> and <a class="reference internal" href="pair_coeff.html"><span class="doc">pair_coeff</span></a>
|
||
|
commands.</p>
|
||
|
<p>If the inputs are bond, angle, etc attributes, the local data is
|
||
|
generated by looping over all the atoms owned on a processor and
|
||
|
extracting bond, angle, etc info. For bonds, info about an individual
|
||
|
bond will only be included if both atoms in the bond are in the
|
||
|
specified compute group. Likewise for angles, dihedrals, etc.</p>
|
||
|
<p>For bonds and angles, a bonds/angles that have been broken by setting
|
||
|
their bond/angle type to 0 will not be included. Bonds/angles that
|
||
|
have been turned off (see the <a class="reference internal" href="fix_shake.html"><span class="doc">fix shake</span></a> or
|
||
|
<a class="reference internal" href="delete_bonds.html"><span class="doc">delete_bonds</span></a> commands) by setting their bond/angle
|
||
|
type negative are written into the file. This is consistent with the
|
||
|
<a class="reference internal" href="compute_bond_local.html"><span class="doc">compute bond/local</span></a> and <a class="reference internal" href="compute_angle_local.html"><span class="doc">compute angle/local</span></a> commands</p>
|
||
|
<p>Note that as atoms migrate from processor to processor, there will be
|
||
|
no consistent ordering of the entries within the local vector or array
|
||
|
from one timestep to the next. The only consistency that is
|
||
|
guaranteed is that the ordering on a particular timestep will be the
|
||
|
same for local vectors or arrays generated by other compute commands.
|
||
|
For example, output from the <a class="reference internal" href="compute_bond_local.html"><span class="doc">compute bond/local</span></a> command can be combined with bond
|
||
|
atom indices from this command and output by the <a class="reference internal" href="dump.html"><span class="doc">dump local</span></a> command in a consistent way.</p>
|
||
|
<p>The <em>natom1</em> and <em>natom2</em>, or <em>patom1</em> and <em>patom2</em> attributes refer
|
||
|
to the atom IDs of the 2 atoms in each pairwise interaction computed
|
||
|
by the <a class="reference internal" href="pair_style.html"><span class="doc">pair_style</span></a> command. The <em>ntype1</em> and
|
||
|
<em>ntype2</em>, or <em>ptype1</em> and <em>ptype2</em> attributes refer to the atom types
|
||
|
of the 2 atoms in each pairwise interaction.</p>
|
||
|
<div class="admonition note">
|
||
|
<p class="first admonition-title">Note</p>
|
||
|
<p class="last">For pairs, if two atoms I,J are involved in 1-2, 1-3, 1-4
|
||
|
interactions within the molecular topology, their pairwise interaction
|
||
|
may be turned off, and thus they may not appear in the neighbor list,
|
||
|
and will not be part of the local data created by this command. More
|
||
|
specifically, this may be true of I,J pairs with a weighting factor of
|
||
|
0.0; pairs with a non-zero weighting factor are included. The
|
||
|
weighting factors for 1-2, 1-3, and 1-4 pairwise interactions are set
|
||
|
by the <a class="reference internal" href="special_bonds.html"><span class="doc">special_bonds</span></a> command.</p>
|
||
|
</div>
|
||
|
<p>The <em>batom1</em> and <em>batom2</em> attributes refer to the atom IDs of the 2
|
||
|
atoms in each <a class="reference internal" href="bond_style.html"><span class="doc">bond</span></a>. The <em>btype</em> attribute refers to
|
||
|
the type of the bond, from 1 to Nbtypes = # of bond types. The number
|
||
|
of bond types is defined in the data file read by the
|
||
|
<a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> command.</p>
|
||
|
<p>The attributes that start with “a”, “d”, “i”, refer to similar values
|
||
|
for <a class="reference internal" href="angle_style.html"><span class="doc">angles</span></a>, <a class="reference internal" href="dihedral_style.html"><span class="doc">dihedrals</span></a>, and
|
||
|
<a class="reference internal" href="improper_style.html"><span class="doc">impropers</span></a>.</p>
|
||
|
<p><strong>Output info:</strong></p>
|
||
|
<p>This compute calculates a local vector or local array depending on the
|
||
|
number of input values. The length of the vector or number of rows in
|
||
|
the array is the number of bonds, angles, etc. If a single input is
|
||
|
specified, a local vector is produced. If two or more inputs are
|
||
|
specified, a local array is produced where the number of columns = the
|
||
|
number of inputs. The vector or array can be accessed by any command
|
||
|
that uses local values from a compute as input. See <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">this section</span></a> for an overview of LAMMPS output
|
||
|
options.</p>
|
||
|
<p>The vector or array values will be integers that correspond to the
|
||
|
specified attribute.</p>
|
||
|
</div>
|
||
|
<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="dump.html"><span class="doc">dump local</span></a>, <a class="reference internal" href="compute_reduce.html"><span class="doc">compute reduce</span></a></p>
|
||
|
<p><strong>Default:</strong> none</p>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
|
||
|
</div>
|
||
|
</div>
|
||
|
<footer>
|
||
|
|
||
|
|
||
|
<hr/>
|
||
|
|
||
|
<div role="contentinfo">
|
||
|
<p>
|
||
|
© 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>
|