tet_mesh, a Fortran90 code which constructs, describes, and modifies a mesh of tetrahedrons.
The simplest tet mesh, which we term an order 4 or linear mesh, uses four points to define each tetrahedron. A second type of mesh, known as an order 10 or quadratic mesh, uses ten points.
While an order 4 mesh can naturally be constructed directly from most sets of data points, a mesh of order 10 is not usually constructed directly from the data; at least in the simplest case, one wants the 6 extra nodes to be the midpoints of the sides determined by the 4 vertices.
Thus, an order 10 tet mesh is typically generated in two steps:
MATLAB has a command delaunay3 that can compute the tet mesh for a set of 3D points.
The information on this web page is distributed under the MIT license.
tet_mesh is available in a C++ version and a C++ version and a Fortran90 version and a MATLAB version and an Octave version.
test_tet_mesh, a Fortran90 code which defines a few test regions for the generation of a tet mesh.
tet_mesh_boundary, a Fortran90 code which returns the nodes and faces of the boundary of a tetrahedral mesh, which themselves form a 3D triangular mesh or "TRI_SURFACE".
tet_mesh_l2q, a Fortran90 code which converts a linear to quadratic tet mesh.
tet_mesh_order4, a data directory which contains a description and examples of a tet mesh using order 4 elements.
tet_mesh_order10, a data directory which contains a description and examples of a tet mesh using order 10 elements.
tet_mesh_q2l, a Fortran90 code which converts a quadratic to linear tet mesh.
tet_mesh_quality, a Fortran90 code which computes the quality of a tet mesh.
tet_mesh_rcm, a Fortran90 code which takes a tet mesh and relabels the nodes to reduce the bandwidth of the corresponding adjacency matrix.
tet_mesh_refine, a Fortran90 code which refines a tet mesh.
tet_mesh_tet_neighbors, a Fortran90 code which computes the tetrahedral adjacency information.
tet_mesh_volumes, a Fortran90 code which computes the volume of each tetrahedron in a tet mesh;