triangulation_triangle_neighbors, a Fortran90 code which computes the three neighboring triangles of each triangle in a triangulation.
The user supplies a node file and a triangle file, containing the coordinates of the nodes, and the indices of the nodes that make up each triangle. Either 3-node or 6-node triangles may be used.
The code reads the data, computes the triangle neighbor information, and writes out the information to a file. In cases where one side of a triangle has no triangle neighbor, a value of -1 is assigned.
The triangle neighbor array is useful if the triangulation has to be searched to find the triangle containing a given point. It is also useful when analyzing the bandwidth of the adjacency matrix, or of a finite element matrix derived from the triangulation.
triangulation_triangle_neighbors prefixwhere prefix is the common prefix for the node and triangle files, and will also be used to name the output file:
The information on this web page is distributed under the MIT license.
triangulation_triangle_neighbors is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave version.
triangulation_triangle_neighbors_test
mesh_bandwidth, a Fortran90 code which returns the geometric bandwidth associated with a mesh of elements of any order and in a space of arbitrary dimension.
mesh_to_xml, a Fortran90 code which reads information defining a 1D, 2D or 3D mesh, namely a file of node coordinates and a file of elements defined by node indices, and creates a corresponding XML file for input to DOLFIN or FENICS.
neighbors_to_metis_graph, a Fortran90 code which reads a triangle mesh neighbor file created by triangulation_triangle_neighbors() and writes a modified version of the same data suitable for input to the mesh partitioning code METIS.
rcm, a Fortran90 code which carries out reverse Cuthill-McKee computations.
table_delaunay, a Fortran90 code which triangulates a set of nodes whose coordinates are stored in a file.
tet_mesh_rcm, a Fortran90 code which applies the reverse Cuthill-McKee reordering to a tetrahedral mesh of nodes in 3D.
triangle, a C code which computes a triangulation of a geometric region.
triangulation, a Fortran90 code which carries out various operations on order 3 ("linear") or order 6 ("quadratic") triangulations.
triangulation_boundary_nodes, a Fortran90 code which reads data defining a triangulation, determines which nodes lie on the boundary, and writes their coordinates to a file.
triangulation_corner, a Fortran90 code which patches triangulations so that no triangle has two sides on the boundary.
triangulation_delaunay_discrepancy, a Fortran90 code which measures the amount by which a triangulation fails the local Delaunay test;
triangulation_display_opengl, a C++ code which reads files defining a triangulation and displays an image using Open GL.
triangulation_histogram, a Fortran90 code which computes histograms of data over a triangulation.
triangulation_l2q, a Fortran90 code which reads data defining a 3-node triangulation and generates midside nodes and writes out the corresponding 6-node triangulation.
triangulation_mask, a Fortran90 code which takes an existing triangulation and deletes triangles and their corresponding nodes as requested by the user.
triangulation_order3, a directory which contains a description and examples of order 3 triangulations.
triangulation_order6, a directory which contains a description and examples of order 6 triangulations.
triangulation_orient, a Fortran90 code which reads data defining a triangulation, makes sure that every triangle has positive orientation, and if not, writes a corrected triangle file.
triangulation_plot, a Fortran90 code which reads data defining a triangulation and creates a PostScript image of the nodes and triangles.
triangulation_q2l, a Fortran90 code which reads data defining a 6-node triangulation, and subdivides each triangle into 4 3-node triangles, writing the resulting triangulation to a file.
triangulation_quad, a Fortran90 code which estimates the integral of a function over a triangulated region.
triangulation_quality, a Fortran90 code which reads data defining a triangulation and computes a number of quality measures.
triangulation_rcm, a Fortran90 code which can reorder the nodes of a triangulation so that the bandwidth of the associated adjacency matrix is reduced.
triangulation_refine, a Fortran90 code which refines a triangulation.
trig_to_neib, a C code which reads "NODE" and "ELE" files (a format prescribed by triangle) describing a triangulation, and produces a file defining the neighbor triangles of each element; the code can also produce information about the Voronoi diagram. The code is by Lili Ju.