Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
L
lammps
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
multiscale
lammps
Commits
43a8d254
Commit
43a8d254
authored
11 years ago
by
sjplimp
Browse files
Options
Downloads
Patches
Plain Diff
git-svn-id:
svn://svn.icms.temple.edu/lammps-ro/trunk@10393
f3b2605a-c512-4ea7-a41b-209d697bcdaa
parent
60984291
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
doc/compute_voronoi_atom.html
+85
-15
85 additions, 15 deletions
doc/compute_voronoi_atom.html
doc/compute_voronoi_atom.txt
+83
-17
83 additions, 17 deletions
doc/compute_voronoi_atom.txt
with
168 additions
and
32 deletions
doc/compute_voronoi_atom.html
+
85
−
15
View file @
43a8d254
...
@@ -13,33 +13,103 @@
...
@@ -13,33 +13,103 @@
</H3>
</H3>
<P><B>
Syntax:
</B>
<P><B>
Syntax:
</B>
</P>
</P>
<PRE>
compute ID group-ID voronoi/atom
<PRE>
compute ID group-ID voronoi/atom
keyword arg
</PRE>
</PRE>
<UL><LI>
ID, group-ID are documented in
<A
HREF =
"compute.html"
>
compute
</A>
command
<UL><LI>
ID, group-ID are documented in
<A
HREF =
"compute.html"
>
compute
</A>
command
<LI>
voronoi/atom = style name of this compute command
<LI>
voronoi/atom = style name of this compute command
<LI>
keyword =
<I>
only_group
</I>
or
<I>
surface
</I>
or
<I>
radius
</I>
or
<I>
edge_histo
</I>
or
<I>
edge_threshold
</I>
or
<I>
face_threshold
</I>
<PRE>
<I>
only_group
</I>
= no args
<I>
surface
</I>
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
<I>
radius
</I>
arg = v_r
v_r = radius atom style variable for a poly-disperse voronoi tessellation
<I>
edge_histo
</I>
arg = maxedge
maxedge = maximum number of voronoi cell edges to be accounted in the histogram
<I>
edge_threshold
</I>
arg = minlength
minlength = minimum length for an edge to be counted
<I>
face_threshold
</I>
arg = minarea
minarea = minimum area for a face to be counted
</PRE>
</UL>
</UL>
<P><B>
Examples:
</B>
<P><B>
Examples:
</B>
</P>
</P>
<PRE>
compute 1 all voronoi/atom
<PRE>
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
</PRE>
</PRE>
<P><B>
Description:
</B>
<P><B>
Description:
</B>
</P>
</P>
<P>
Define a computation that calculates the Voronoi tesselation of the
<P>
Define a computation that calculates the Voronoi tessel
l
ation of the
atoms in the simulation box. The tesselation is calculated using
atoms in the simulation box. The tessel
l
ation is calculated using
all
all
atoms in the simulation, but non-zero values are only stored
atoms in the simulation, but non-zero values are only stored
for atoms
for atoms
in the group.
in the group.
</P>
</P>
<P>
T
wo quantites per atom are calculated by this compute.
The first is
<P>
By default t
wo quantit
i
es per atom are calculated by this compute.
the volume of the Voronoi cell around each atom. Any
point in an
The first is
the volume of the Voronoi cell around each atom. Any
atom's Voronoi cell is closer to that atom than any other.
The second
point in an
atom's Voronoi cell is closer to that atom than any other.
is the number of faces of the Voronoi cell, which is also
the number
The second
is the number of faces of the Voronoi cell, which is also
of nearest neighbors of the atom in the middle of the cell.
the number
of nearest neighbors of the atom in the middle of the cell.
</P>
</P>
<HR>
<P>
If the
<I>
only_group
</I>
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
<I>
surface
</I>
keyword is specified a third quantity per atom is
computed: the voronoi cell surface of the given atom.
<I>
surface
</I>
takes
a group ID as an argument. If a group other than
<I>
all
</I>
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 "reduce sum" compute on c_2[3]
</P>
<P>
If the
<I>
radius
</I>
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>
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
<I>
edge_histo
</I>
keyword activates the compilation of a histogram of
number of edges on the faces of the voronoi cells in the compute
group. The argument maxedge 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
maxedge+1 entries. The last entry in the vector contains the number of
faces with with more than maxedge 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
<I>
edge_threshold
</I>
and
<I>
face_threshold
</I>
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>
<HR>
<P>
The Voronoi calculation is performed by the freely available
<A
HREF =
"http://math.lbl.gov/voro++"
>
Voro++
<P>
The Voronoi calculation is performed by the freely available
<A
HREF =
"http://math.lbl.gov/voro++"
>
Voro++
package
</A>
, written by Chris Rycroft at UC Berkeley and LBL,
package
</A>
, written by Chris Rycroft at UC Berkeley and LBL,
which must be installed on your system when building LAMMPS for use
which must be installed on your system when building LAMMPS for use
with this compute. See instructions on obtaining and installing
with this compute. See instructions on obtaining and installing
the
the
Voro++ software in the src/VORONOI/README file.
Voro++ software in the src/VORONOI/README file.
</P>
</P>
...
@@ -56,7 +126,7 @@ explicitly via the <A HREF = "communicate.html">communicate cutoff</A> command.
...
@@ -56,7 +126,7 @@ explicitly via the <A HREF = "communicate.html">communicate cutoff</A> command.
</P>
</P>
<P>
IMPORTANT NOTE: The Voro++ package performs its calculation in 3d.
<P>
IMPORTANT NOTE: The Voro++ package performs its calculation in 3d.
This should still work for a 2d LAMMPS simulation, to effectively
This should still work for a 2d LAMMPS simulation, to effectively
compute Vornoi "areas", so long as the z-dimension of the box is
compute Vor
o
noi "areas", so long as the z-dimension of the box is
roughly the same (or smaller) compared to the separation of the atoms.
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
Typical values for the z box dimensions in a 2d LAMMPS model are -0.5
to 0.5, which satisfies the criterion for most
<A
HREF =
"units.html"
>
units
</A>
to 0.5, which satisfies the criterion for most
<A
HREF =
"units.html"
>
units
</A>
...
...
This diff is collapsed.
Click to expand it.
doc/compute_voronoi_atom.txt
+
83
−
17
View file @
43a8d254
...
@@ -10,33 +10,99 @@ compute voronoi/atom command :h3
...
@@ -10,33 +10,99 @@ compute voronoi/atom command :h3
[Syntax:]
[Syntax:]
compute ID group-ID voronoi/atom :pre
compute ID group-ID voronoi/atom keyword arg :pre
ID, group-ID are documented in "compute"_compute.html command
ID, group-ID are documented in "compute"_compute.html command :ulb,l
voronoi/atom = style name of this compute command :ul
voronoi/atom = style name of this compute command :l
keyword = {only_group} or {surface} or {radius} or {edge_histo} or {edge_threshold} or {face_threshold} :l
{only_group} = no args
{surface} 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
{radius} arg = v_r
v_r = radius atom style variable for a poly-disperse voronoi tessellation
{edge_histo} arg = maxedge
maxedge = maximum number of voronoi cell edges to be accounted in the histogram
{edge_threshold} arg = minlength
minlength = minimum length for an edge to be counted
{face_threshold} arg = minarea
minarea = minimum area for a face to be counted :pre
:ule
[Examples:]
[Examples:]
compute 1 all voronoi/atom :pre
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 :pre
[Description:]
[Description:]
Define a computation that calculates the Voronoi tesselation of the
Define a computation that calculates the Voronoi tessellation of the
atoms in the simulation box. The tesselation is calculated using
atoms in the simulation box. The tessellation is calculated using all
all atoms in the simulation, but non-zero values are only stored
atoms in the simulation, but non-zero values are only stored for atoms
for atoms in the group.
in the group.
By default two quantities 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.
:line
If the {only_group} 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.
If the {surface} keyword is specified a third quantity per atom is
computed: the voronoi cell surface of the given atom. {surface} takes
a group ID as an argument. If a group other than {all} is specified,
only the voronoi cell facets facing a neighbor atom from the specified
group are counted towards the surface area.
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 "reduce sum" compute on c_2\[3\]
If the {radius} keyword is specified with an atom style variable as
the argument, a poly-disperse voronoi tessellation is
performed. Examples for radius variables are
variable r1 atom (type==1)*0.1+(type==2)*0.4
compute radius all property/atom radius
variable r2 atom c_radius :pre
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.
The {edge_histo} keyword activates the compilation of a histogram of
number of edges on the faces of the voronoi cells in the compute
group. The argument maxedge 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
maxedge+1 entries. The last entry in the vector contains the number of
faces with with more than maxedge edges. Since the polygon with the
smallest amount of edges is a triangle, entries 1 and 2 of the vector
will always be zero.
The {edge_threshold} and {face_threshold} 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.
Two quantites per atom are calculated by this compute. The first is
:line
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++
The Voronoi calculation is performed by the freely available "Voro++
package"_voronoi, written by Chris Rycroft at UC Berkeley and LBL,
package"_voronoi, written by Chris Rycroft at UC Berkeley and LBL,
which must be installed on your system when building LAMMPS for use
which must be installed on your system when building LAMMPS for use
with this compute. See instructions on obtaining and installing
with this compute. See instructions on obtaining and installing
the
the
Voro++ software in the src/VORONOI/README file.
Voro++ software in the src/VORONOI/README file.
:link(voronoi,http://math.lbl.gov/voro++)
:link(voronoi,http://math.lbl.gov/voro++)
...
@@ -53,7 +119,7 @@ explicitly via the "communicate cutoff"_communicate.html command.
...
@@ -53,7 +119,7 @@ explicitly via the "communicate cutoff"_communicate.html command.
IMPORTANT NOTE: The Voro++ package performs its calculation in 3d.
IMPORTANT NOTE: The Voro++ package performs its calculation in 3d.
This should still work for a 2d LAMMPS simulation, to effectively
This should still work for a 2d LAMMPS simulation, to effectively
compute Vornoi "areas", so long as the z-dimension of the box is
compute Vor
o
noi "areas", so long as the z-dimension of the box is
roughly the same (or smaller) compared to the separation of the atoms.
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
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
to 0.5, which satisfies the criterion for most "units"_units.html
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment