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.triangulation
is a dictionary with a list of triangles 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 and is assigned to a defined triangle type.
Example:
mesh_obj = hoomd.mesh.Mesh() mesh_obj.types = ["mesh"] mesh_obj.triangulation = dict(type_ids = [0,0,0,0], triangles = [[0,1,2],[0,2,3],[0,1,3],[1,2,3]])
- triangulation¶
The mesh triangulation. The dictionary has the following keys:
type_ids
((N)numpy.ndarray
ofuint32
): List oftriangle type ids.
triangles
((N, 3)numpy.ndarray
ofuint32
): List of triplets of particle tags which encodes the triangulation of the mesh structure.
Type:
dict
- 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
)
- property type_ids¶
Triangle type ids.
(
Loggable
: category=”sequence”)- Type:
((N)
numpy.ndarray
ofuint32
)