TET_MESH_TET_NEIGHBORS is a FORTRAN90 program which reads information defining a tet mesh of points in 3D, and determines, for each face of each tetrahedron, the index of the neighboring tetrahedron that shares that face.
The tet mesh is defined by a node file containing the coordinates of nodes, and an element file containing sets of 4 or 10 node indices. For this calculation, though, only the element file is needed.
If a tetrahedron is on the boundary, then one or more of its faces will not be shared by any tetrahedron. Such cases will be indicated by specifying the corresponding neighbor value as -1.
tet_mesh_tet_neighbors prefixwhere prefix is the common file prefix:
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
TET_MESH_TET_NEIGHBORS is available in a C++ version and a FORTRAN90 version and a MATLAB version.
GEOMPACK, a FORTRAN90 library which contains a routine DTRIS3 that can compute the tet mesh for a set of 3D points, as well as the adjacency information.
NEIGHBORS_TO_METIS_GRAPH, a FORTRAN90 program which reads a tet mesh neighbor file created by TET_MESH_TET_NEIGHBORS and writes a modified version of the same data suitable for input to the mesh partitioning program METIS.
TABLE_TET_MESH, a FORTRAN90 program which can compute the tet mesh for a given set of points.
TEST_TET_MESH, a FORTRAN90 library which defines a few test regions for the generation of a tet mesh.
TET_MESH, a FORTRAN90 library which is useful for work with tet meshes.
TET_MESH_BOUNDARY, a FORTRAN90 program 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_DISPLAY, a MATLAB program which can read in the node and tetra files defining a tet mesh and display a wireframe image.
TET_MESH_DISPLAY_OPENGL, a C++ program which reads a tet mesh and displays the nodes and edges using OpenGL.
TET_MESH_L2Q, a FORTRAN90 program which can convert a linear (4-node) tet mesh to a quadratic (10-node) tet mesh.
TET_MESH_ORDER4, a directory which contains a description and examples of a tet mesh using order 4 elements.
TET_MESH_ORDER10, a directory which contains a description and examples of a tet mesh using order 10 elements.
TET_MESH_Q2L, a FORTRAN90 program which can convert a quadratic (10-node) tet mesh to a linear (4-node) tet mesh.
TET_MESH_QUALITY, a FORTRAN90 program which can compute the quality of a tet mesh.
TET_MESH_RCM, a FORTRAN90 program which takes a tet mesh and relabels the nodes to reduce the bandwidth of the corresponding adjacency matrix.
TET_MESH_REFINE, a FORTRAN90 program which can refine a tet mesh.
TET_MESH_TET_NEIGHBORS, a data directory which contains a description and examples of the format for storing information about neighboring tetrahedrons in a tetrahedral mesh.
TET_MESH_VOLUMES, a FORTRAN90 program which computes the volume of each tetrahedron in a tet mesh;
TETRAHEDRON_PROPERTIES, a FORTRAN90 program which computes properties of a given tetrahedron.
TETRAHEDRONS, a dataset directory which contains examples of tetrahedrons;
CUBE is a simple example of 8 nodes in a cube.
You can go up one level to the FORTRAN90 source codes.