hoomd.mesh
Overview
Data structure combining multiple particles into a mesh. |
Details
Triangulated mesh data structure.
The mesh data structure combines particles into a connected triangulated network. The particles act as vertices of the triangulation and are linked with their neighbors in both pairs via mesh bonds and triplets via mesh triangles.
Mesh triangles and mesh bonds
Mesh.triangles
is a list of triangle data that constitutes the
triangulation. Each triangle is defined by a triplet of particle tags.
For a given triangulation HOOMD-blue also constructs a list of mesh bonds
automatically. Each mesh bond is defined by a pair of particle tags. The
corresponding vertex particles share a common edge in the triangulation.
Mesh potentials
In MD simulations different bond potentials can be attached which connect the vertex particles with a bond potential. The mesh data structure is designed so that other potentials (like bending potentials or global conservation potentials) can be implemented later.
See also
See the documentation in hoomd.md.mesh
for more information on how
to apply potentials to the mesh object and in hoomd.md.nlist
on
adding mesh bond exceptions to the neighbor list.
- class hoomd.mesh.Mesh
Data structure combining multiple particles into a mesh.
The mesh is defined by an array of triangles that make up a triangulated surface of particles. Each triangle consists of three particle tags. The mesh object consists of only one mesh triangle type with the default type name “mesh”.
Examples:
mesh = mesh.Mesh() mesh.triangles = [[0,1,2],[0,2,3],[0,1,3],[1,2,3]]
- property bonds
Mesh bonds.
A list of tuples of particle ids which encodes the bonds within the mesh structure.
(
Loggable
: category=”sequence”)- Type
((N, 2)
numpy.ndarray
ofuint32
)
- property triangles
Mesh triangulation.
A list of triplets of particle tags which encodes the triangulation of the mesh structure.
(
Loggable
: category=”sequence”)- Type
((N, 3)
numpy.ndarray
ofuint32
)