"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c

:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)

:line

compute voronoi/atom command :h3

[Syntax:]

compute ID group-ID voronoi/atom :pre

ID, group-ID are documented in "compute"_compute.html command
voronoi/atom = style name of this compute command :ul

[Examples:]

compute 1 all voronoi/atom :pre

[Description:]

Define a computation that calculates the Voronoi tesselation of the
atoms in the simulation box.  The tesselation is calculated using
all atoms in the simulation, but non-zero values are only stored
for atoms in the group.

Two quantites per atom are calculated by this compute.  The first is
the volume of the Voronoi cell around each atom.  Any point in an
atom's Voronoi cell is closer to that atom than any other.  The second
is the number of faces of the Voronoi cell, which is also the number
of nearest neighbors of the atom in the middle of the cell.

The Voronoi calculation is performed by the freely available "Voro++
package"_voronoi, 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.

:link(voronoi,http://math.lbl.gov/voro++)

IMPORTANT NOTE: 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
"pair_style"_pair_style.html interactions.  The cutoff can be set
explicitly via the "communicate cutoff"_communicate.html command.

IMPORTANT NOTE: The Voro++ package performs its calculation in 3d.
This should still work for a 2d LAMMPS simulation, to effectively
compute Vornoi "areas", so long as the z-dimension of the box is
roughly the same (or smaller) compared to the separation of the atoms.
Typical values for the z box dimensions in a 2d LAMMPS model are -0.5
to 0.5, which satisfies the criterion for most "units"_units.html
systems.  Note that you define the z extent of the simulation box for
2d simulations when using the "create_box"_create_box.html or
"read_data"_read_data.html commands.

[Output info:]

This compute calculates a per-atom array with 2 columns.  The first
column is the Voronoi volume, the second is the neighbor count, as
described above.  These values can be accessed by any command that
uses per-atom values from a compute as input.  See "Section_howto
15"_Section_howto.html#howto_15 for an overview of LAMMPS output
options.

The Voronoi cell volume will be in distance "units"_units.html cubed.

[Restrictions:]

This compute is part of the VORONOI package.  It is only enabled if
LAMMPS was built with that package.  See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.

[Related commands:]

"dump custom"_dump.html

[Default:] none
