tet_mesh_rcm, an Octave code which computes the reverse Cuthill-McKee (RCM) reordering for nodes in a tetrahedral mesh ("tet mesh").
The user supplies a node file and a tetrahedron file, containing the coordinates of the nodes, and the indices of the nodes that make up each tetrahedron. Either 4-node or 10-node tetrahedrons may be used.
The program reads the data, computes the adjacency information, carries out the RCM algorithm to get the permutation, applies the permutation to the nodes and tetrahedrons, and writes out new node and tetrahedron files that correspond to the RCM permutation.
Note that the node file would normally contain exactly 3 values on each line, namely the X, Y and Z coordinates of the nodes. However, this is not necessary. Extra information can be included on each line, for instance, a "W" coordinate. Each line should include the same number of items, but all will be permuted correctly together. The program does not actually need to know the coordinates of the nodes, so in fact, ANY data (as long as it is real numeric data) associated with the nodes can be listed in the node file, and will be correctly permuted.
tet_mesh_rcm 'prefix'where 'prefix' is the common file prefix:
The computer code and data files described and made available on this web page are distributed under the MIT license
tet_mesh_rcm is available in a C++ version and a Fortran90 version and a MATLAB version and an Octave version.
mesh_bandwidth, an Octave code which returns the geometric bandwidth associated with a mesh of elements of any order and in a space of arbitrary dimension.
quad_mesh_rcm, an Octave code which computes the reverse cuthill-mckee (rcm) reordering for nodes in a mesh of 4-node quadrilaterals.
rcm, an Octave code which carries out reverse cuthill-mckee computations.
tet_mesh, an Octave code which works with tet meshes.
tet_mesh_boundary, an Octave 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_display, an Octave code which can read in the node and tetra files defining a tet mesh and display a wireframe image.
tet_mesh_l2q, an Octave code which converts a linear to quadratic 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, an Octave code which converts a quadratic (10-node) to linear (4-node) tetrahedral mesh.
tet_mesh_quality, an Octave code which computes the quality of a tetrahedral mesh.
tet_mesh_refine, an Octave code which can refine a tet mesh.
tet_mesh_tet_neighbors, an Octave code which computes the tetrahedron-to-tetrahedron adjacency information.
tet_mesh_volumes, an Octave code which computes the volume of each tetrahedron in a tet mesh;
triangulation_rcm, an Octave code which applies the reverse cuthill-mckee reordering to a triangulation of 2d data.