Page MenuHomec4science

compute_voronoi_atom.html
No OneTemporary

File Metadata

Created
Tue, May 21, 00:56

compute_voronoi_atom.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 voronoi/atom 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"/>
<link rel="up" title="Computes" href="computes.html"/>
<link rel="next" title="compute xrd command" href="compute_xrd.html"/>
<link rel="prev" title="compute vcm/chunk command" href="compute_vcm_chunk.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">
<p class="caption"><span class="caption-text">User Documentation</span></p>
<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>
<p class="caption"><span class="caption-text">Index</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="tutorials.html">Tutorials</a></li>
<li class="toctree-l1"><a class="reference internal" href="commands.html">Commands</a></li>
<li class="toctree-l1"><a class="reference internal" href="fixes.html">Fixes</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="computes.html">Computes</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="compute_ackland_atom.html">compute ackland/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_angle.html">compute angle command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_angle_local.html">compute angle/local command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_angmom_chunk.html">compute angmom/chunk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_basal_atom.html">compute basal/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_body_local.html">compute body/local command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_bond.html">compute bond command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_bond_local.html">compute bond/local command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_centro_atom.html">compute centro/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_chunk_atom.html">compute chunk/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_cluster_atom.html">compute cluster/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_cna_atom.html">compute cna/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_com.html">compute com command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_com_chunk.html">compute com/chunk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_contact_atom.html">compute contact/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_coord_atom.html">compute coord/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_damage_atom.html">compute damage/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_dihedral.html">compute dihedral command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_dihedral_local.html">compute dihedral/local command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_dilatation_atom.html">compute dilatation/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_dipole_chunk.html">compute dipole/chunk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_displace_atom.html">compute displace/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_dpd.html">compute dpd command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_dpd_atom.html">compute dpd/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_erotate_asphere.html">compute erotate/asphere command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_erotate_rigid.html">compute erotate/rigid command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_erotate_sphere.html">compute erotate/sphere command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_erotate_sphere_atom.html">compute erotate/sphere/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_event_displace.html">compute event/displace command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_fep.html">compute fep command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_group_group.html">compute group/group command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_gyration.html">compute gyration command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_gyration_chunk.html">compute gyration/chunk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_heat_flux.html">compute heat/flux command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_hexorder_atom.html">compute hexorder/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_improper.html">compute improper command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_improper_local.html">compute improper/local command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_inertia_chunk.html">compute inertia/chunk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_ke.html">compute ke command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_ke_atom.html">compute ke/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_ke_atom_eff.html">compute ke/atom/eff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_ke_eff.html">compute ke/eff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_ke_rigid.html">compute ke/rigid command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_meso_e_atom.html">compute meso/e/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_meso_rho_atom.html">compute meso/rho/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_meso_t_atom.html">compute meso/t/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_msd.html">compute msd command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_msd_chunk.html">compute msd/chunk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_msd_nongauss.html">compute msd/nongauss command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_omega_chunk.html">compute omega/chunk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_orientorder_atom.html">compute orientorder/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_pair.html">compute pair command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_pair_local.html">compute pair/local command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_pe.html">compute pe command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_pe_atom.html">compute pe/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_plasticity_atom.html">compute plasticity/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_pressure.html">compute pressure command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_property_atom.html">compute property/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_property_chunk.html">compute property/chunk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_property_local.html">compute property/local command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_rdf.html">compute rdf command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_reduce.html">compute reduce command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_reduce.html#compute-reduce-region-command">compute reduce/region command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_rigid_local.html">compute rigid/local command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_saed.html">compute saed command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_slice.html">compute slice command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_contact_radius.html">compute smd/contact/radius command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_damage.html">compute smd/damage command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_hourglass_error.html">compute smd/hourglass/error command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_internal_energy.html">compute smd/internal/energy command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_plastic_strain.html">compute smd/plastic/strain command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_plastic_strain_rate.html">compute smd/plastic/strain/rate command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_rho.html">compute smd/rho command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_tlsph_defgrad.html">compute smd/tlsph/defgrad command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_tlsph_dt.html">compute smd/tlsph/dt command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_tlsph_num_neighs.html">compute smd/tlsph/num/neighs command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_tlsph_shape.html">compute smd/tlsph/shape command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_tlsph_strain.html">compute smd/tlsph/strain command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_tlsph_strain_rate.html">compute smd/tlsph/strain/rate command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_tlsph_stress.html">compute smd/tlsph/stress command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_triangle_mesh_vertices.html">compute smd/triangle/mesh/vertices</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_ulsph_num_neighs.html">compute smd/ulsph/num/neighs command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_ulsph_strain.html">compute smd/ulsph/strain command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_ulsph_strain_rate.html">compute smd/ulsph/strain/rate command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_ulsph_stress.html">compute smd/ulsph/stress command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_smd_vol.html">compute smd/vol command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_sna_atom.html">compute sna/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_sna_atom.html#compute-snad-atom-command">compute snad/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_sna_atom.html#compute-snav-atom-command">compute snav/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_stress_atom.html">compute stress/atom command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_tally.html">compute force/tally command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_tally.html#compute-heat-flux-tally-command">compute heat/flux/tally command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_tally.html#compute-pe-tally-command">compute pe/tally command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_tally.html#compute-pe-mol-tally-command">compute pe/mol/tally command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_tally.html#compute-stress-tally-command">compute stress/tally command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp.html">compute temp command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp.html#compute-temp-kk-command">compute temp/kk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_asphere.html">compute temp/asphere command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_body.html">compute temp/body command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_chunk.html">compute temp/chunk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_com.html">compute temp/com command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_cs.html">compute temp/cs command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_deform.html">compute temp/deform command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_deform_eff.html">compute temp/deform/eff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_drude.html">compute temp/drude command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_eff.html">compute temp/eff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_partial.html">compute temp/partial command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_profile.html">compute temp/profile command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_ramp.html">compute temp/ramp command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_region.html">compute temp/region command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_region_eff.html">compute temp/region/eff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_rotate.html">compute temp/rotate command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_temp_sphere.html">compute temp/sphere command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_ti.html">compute ti command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_torque_chunk.html">compute torque/chunk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_vacf.html">compute vacf command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_vcm_chunk.html">compute vcm/chunk command</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">compute voronoi/atom command</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#syntax">Syntax</a></li>
<li class="toctree-l3"><a class="reference internal" href="#examples">Examples</a></li>
<li class="toctree-l3"><a class="reference internal" href="#description">Description</a></li>
<li class="toctree-l3"><a class="reference internal" href="#restrictions">Restrictions</a></li>
<li class="toctree-l3"><a class="reference internal" href="#related-commands">Related commands</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="compute_xrd.html">compute xrd command</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="pairs.html">Pair Styles</a></li>
<li class="toctree-l1"><a class="reference internal" href="bonds.html">Bond Styles</a></li>
<li class="toctree-l1"><a class="reference internal" href="angles.html">Angle Styles</a></li>
<li class="toctree-l1"><a class="reference internal" href="dihedrals.html">Dihedral Styles</a></li>
<li class="toctree-l1"><a class="reference internal" href="impropers.html">Improper Styles</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><a href="computes.html">Computes</a> &raquo;</li>
<li>compute voronoi/atom 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 class="rst-footer-buttons" style="margin-bottom: 1em" role="navigation" aria-label="footer navigation">
<a href="compute_xrd.html" class="btn btn-neutral float-right" title="compute xrd command" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="compute_vcm_chunk.html" class="btn btn-neutral" title="compute vcm/chunk command" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="compute-voronoi-atom-command">
<span id="index-0"></span><h1>compute voronoi/atom 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="n">voronoi</span><span class="o">/</span><span class="n">atom</span> <span class="n">keyword</span> <span class="n">arg</span> <span class="o">...</span>
</pre></div>
</div>
<ul>
<li><p class="first">ID, group-ID are documented in <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> command</p>
</li>
<li><p class="first">voronoi/atom = style name of this compute command</p>
</li>
<li><p class="first">zero or more keyword/value pairs may be appended</p>
</li>
<li><p class="first">keyword = <em>only_group</em> or <em>surface</em> or <em>radius</em> or <em>edge_histo</em> or <em>edge_threshold</em>
or <em>face_threshold</em> or <em>neighbors</em> or <em>peratom</em></p>
<pre class="literal-block">
<em>only_group</em> = no arg
<em>occupation</em> = no arg
<em>surface</em> arg = sgroup-ID
sgroup-ID = compute the dividing surface between group-ID and sgroup-ID
this keyword adds a third column to the compute output
<em>radius</em> arg = v_r
v_r = radius atom style variable for a poly-disperse Voronoi tessellation
<em>edge_histo</em> arg = maxedge
maxedge = maximum number of Voronoi cell edges to be accounted in the histogram
<em>edge_threshold</em> arg = minlength
minlength = minimum length for an edge to be counted
<em>face_threshold</em> arg = minarea
minarea = minimum area for a face to be counted
<em>neighbors</em> value = <em>yes</em> or <em>no</em> = store list of all neighbors or no
<em>peratom</em> value = <em>yes</em> or <em>no</em> = per-atom quantities accessible or no
</pre>
</li>
</ul>
</div>
<div class="section" id="examples">
<h2>Examples</h2>
<pre class="literal-block">
compute 1 all voronoi/atom
compute 2 precipitate voronoi/atom surface matrix
compute 3b precipitate voronoi/atom radius v_r
compute 4 solute voronoi/atom only_group
compute 5 defects voronoi/atom occupation
compute 6 all voronoi/atom neighbors yes
</pre>
</div>
<div class="section" id="description">
<h2>Description</h2>
<p>Define a computation that calculates the Voronoi tessellation of the
atoms in the simulation box. The tessellation is calculated using all
atoms in the simulation, but non-zero values are only stored for atoms
in the group.</p>
<p>By default two per-atom quantities are calculated by this compute.
The first is the volume of the Voronoi cell around each atom. Any
point in an atom&#8217;s Voronoi cell is closer to that atom than any other.
The second is the number of faces of the Voronoi cell. This is
equal to the number of nearest neighbors of the central atom,
plus any exterior faces (see note below). If the <em>peratom</em> keyword
is set to &#8220;no&#8221;, the per-atom quantities are still calculated,
but they are not accessible.</p>
<hr class="docutils" />
<p>If the <em>only_group</em> keyword is specified the tessellation is performed
only with respect to the atoms contained in the compute group. This is
equivalent to deleting all atoms not contained in the group prior to
evaluating the tessellation.</p>
<p>If the <em>surface</em> keyword is specified a third quantity per atom is
computed: the Voronoi cell surface of the given atom. <em>surface</em> takes
a group ID as an argument. If a group other than <em>all</em> is specified,
only the Voronoi cell facets facing a neighbor atom from the specified
group are counted towards the surface area.</p>
<p>In the example above, a precipitate embedded in a matrix, only atoms
at the surface of the precipitate will have non-zero surface area, and
only the outward facing facets of the Voronoi cells are counted (the
hull of the precipitate). The total surface area of the precipitate
can be obtained by running a &#8220;reduce sum&#8221; compute on c_2[3]</p>
<p>If the <em>radius</em> keyword is specified with an atom style variable as
the argument, a poly-disperse Voronoi tessellation is
performed. Examples for radius variables are</p>
<pre class="literal-block">
variable r1 atom (type==1)*0.1+(type==2)*0.4
compute radius all property/atom radius
variable r2 atom c_radius
</pre>
<p>Here v_r1 specifies a per-type radius of 0.1 units for type 1 atoms
and 0.4 units for type 2 atoms, and v_r2 accesses the radius property
present in atom_style sphere for granular models.</p>
<p>The <em>edge_histo</em> keyword activates the compilation of a histogram of
number of edges on the faces of the Voronoi cells in the compute
group. The argument <em>maxedge</em> of the this keyword is the largest number
of edges on a single Voronoi cell face expected to occur in the
sample. This keyword adds the generation of a global vector with
<em>maxedge</em>+1 entries. The last entry in the vector contains the number of
faces with with more than <em>maxedge</em> edges. Since the polygon with the
smallest amount of edges is a triangle, entries 1 and 2 of the vector
will always be zero.</p>
<p>The <em>edge_threshold</em> and <em>face_threshold</em> keywords allow the
suppression of edges below a given minimum length and faces below a
given minimum area. Ultra short edges and ultra small faces can occur
as artifacts of the Voronoi tessellation. These keywords will affect
the neighbor count and edge histogram outputs.</p>
<p>If the <em>occupation</em> keyword is specified the tessellation is only
performed for the first invocation of the compute and then stored.
For all following invocations of the compute the number of atoms in
each Voronoi cell in the stored tessellation is counted. In this mode
the compute returns a per-atom array with 2 columns. The first column
is the number of atoms currently in the Voronoi volume defined by this
atom at the time of the first invocation of the compute (note that the
atom may have moved significantly). The second column contains the
total number of atoms sharing the Voronoi cell of the stored
tessellation at the location of the current atom. Numbers in column
one can be any positive integer including zero, while column two
values will always be greater than zero. Column one data can be used
to locate vacancies (the coordinates are given by the atom coordinates
at the time step when the compute was first invoked), while column two
data can be used to identify interstitial atoms.</p>
<p>If the <em>neighbors</em> value is set to yes, then
this compute creates a local array with 3 columns. There
is one row for each face of each Voronoi cell. The
3 columns are the atom ID of the atom that owns the cell,
the atom ID of the atom in the neighboring cell
(or zero if the face is external), and the area of the face.
The 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. More specifically, the array can be accessed by a
<a class="reference internal" href="dump.html"><span class="doc">dump local</span></a> command to write a file containing
all the Voronoi neighbors in a system:</p>
<pre class="literal-block">
compute 6 all voronoi/atom neighbors yes
dump d2 all local 1 dump.neighbors index c_6[1] c_6[2] c_6[3]
</pre>
<p>If the <em>face_threshold</em> keyword is used, then only faces
with areas greater than the threshold are stored.</p>
<hr class="docutils" />
<p>The Voronoi calculation is performed by the freely available <a class="reference external" href="http://math.lbl.gov/voro++/">Voro++ package</a>, written by Chris Rycroft at UC Berkeley and LBL,
which must be installed on your system when building LAMMPS for use
with this compute. See instructions on obtaining and installing the
Voro++ software in the src/VORONOI/README file.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">The calculation of Voronoi volumes is performed by each
processor for the atoms it owns, and includes the effect of ghost
atoms stored by the processor. This assumes that the Voronoi cells of
owned atoms are not affected by atoms beyond the ghost atom cut-off
distance. This is usually a good assumption for liquid and solid
systems, but may lead to underestimation of Voronoi volumes in low
density systems. By default, the set of ghost atoms stored by each
processor is determined by the cutoff used for
<a class="reference internal" href="pair_style.html"><span class="doc">pair_style</span></a> interactions. The cutoff can be set
explicitly via the <a class="reference internal" href="comm_modify.html"><span class="doc">comm_modify cutoff</span></a> command. The
Voronoi cells for atoms adjacent to empty regions will extend into
those regions up to the communication cutoff in x, y, or z. In that
situation, an exterior face is created at the cutoff distance normal
to the x, y, or z direction. For triclinic systems, the exterior face
is parallel to the corresponding reciprocal lattice vector.</p>
</div>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">The Voro++ package performs its calculation in 3d. This will
still work for a 2d LAMMPS simulation, provided all the atoms have the
same z coordinate. The Voronoi cell of each atom will be a columnar
polyhedron with constant cross-sectional area along the z direction
and two exterior faces at the top and bottom of the simulation box. If
the atoms do not all have the same z coordinate, then the columnar
cells will be accordingly distorted. The cross-sectional area of each
Voronoi cell can be obtained by dividing its volume by the z extent of
the simulation box. Note that you define the z extent of the
simulation box for 2d simulations when using the
<a class="reference internal" href="create_box.html"><span class="doc">create_box</span></a> or <a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> commands.</p>
</div>
<p><strong>Output info:</strong></p>
<p>By default, this compute calculates a per-atom array with 2
columns. In regular dynamic tessellation mode the first column is the
Voronoi volume, the second is the neighbor count, as described above
(read above for the output data in case the <em>occupation</em> keyword is
specified). These values can be accessed by any command that uses
per-atom values from a compute as input. See <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">Section 6.15</span></a> for an overview of LAMMPS output
options. If the <em>peratom</em> keyword is set to &#8220;no&#8221;, the per-atom array
is still created, but it is not accessible.</p>
<p>If the <em>edge_histo</em> keyword is used, then this compute generates a
global vector of length <em>maxedge</em>+1, containing a histogram of the
number of edges per face.</p>
<p>If the <em>neighbors</em> value is set to yes, then this compute calculates a
local array with 3 columns. There is one row for each face of each
Voronoi cell.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">Some LAMMPS commands such as the <a class="reference internal" href="compute_reduce.html"><span class="doc">compute reduce</span></a> command can accept either a per-atom or
local quantity. If this compute produces both quantities, the command
may access the per-atom quantity, even if you want to access the local
quantity. This effect can be eliminated by using the <em>peratom</em>
keyword to turn off the production of the per-atom quantities. For
the default value <em>yes</em> both quantities are produced. For the value
<em>no</em>, only the local array is produced.</p>
</div>
<p>The Voronoi cell volume will be in distance <a class="reference internal" href="units.html"><span class="doc">units</span></a> cubed.
The Voronoi face area will be in distance <a class="reference internal" href="units.html"><span class="doc">units</span></a> squared.</p>
</div>
<div class="section" id="restrictions">
<h2>Restrictions</h2>
<p>This compute is part of the VORONOI package. It is only enabled if
LAMMPS was built with that package. See the <a class="reference internal" href="Section_start.html#start-3"><span class="std std-ref">Making LAMMPS</span></a> section for more info.</p>
</div>
<div class="section" id="related-commands">
<h2>Related commands</h2>
<p><a class="reference internal" href="dump.html"><span class="doc">dump custom</span></a>, <a class="reference internal" href="dump.html"><span class="doc">dump local</span></a></p>
<p><strong>Default:</strong> <em>neighbors</em> no, <em>peratom</em> yes</p>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="compute_xrd.html" class="btn btn-neutral float-right" title="compute xrd command" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="compute_vcm_chunk.html" class="btn btn-neutral" title="compute vcm/chunk command" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<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>

Event Timeline