TRIANGULATION_T3_TO_T4
Convert T3 Mesh to T4 Mesh


TRIANGULATION_T3_TO_T4, a MATLAB program which reads information describing a triangulation of a set of points using 3-node "T3" triangles, and creates a 4-node "T4" triangulation.

The same number of triangles are used, but each triangle is given one extra node at the centroid. The coordinates of these nodes are determined by averaging the coordinates of the vertices of the triangles.

The input and output files use the simple TABLE format; comment lines begin with a "#" character. Otherwise, each line of the file contains one set of information, either the coordinates of a node (for a node file), or the indices of nodes that make up a triangle, (for a triangle file).

The input file prefix_nodes.txt contains the node information for the 3-node triangulation. Each data line contains the X and Y coordinates of a single node.

The input file prefix_elements.txt contains the triangle information for the 3-node triangulation. Each line contains the indices of three nodes that form a triangle, in counterclockwise order.

The output file prefix_t4_nodes.txt contains the node information for the 4-node triangulation. It begins with the node information from prefix_nodes.txt, followed by the coordinates of the new nodes.

The output file prefix_t4_triangles.txt contains the triangle information for the 4-node triangulation. There are exactly as many triangles as before, but now each triangle uses four nodes. Each line of the file contains the indices of 4 nodes that form the triangle. The first three indices are the vertices, in counterclockwise order. The fourth index is the centroid node..

Usage:

triangulation_t3_to_t4 ( 'prefix' )
where 'prefix' is the common filename prefix:

Licensing:

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages:

TRIANGULATION_T3_TO_T4 is available in a C++ version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

FEM_BASIS_T3_DISPLAY, a MATLAB program which displays a basis function associated with a 4-node triangle "T3" mesh.

FEM_BASIS_T4_DISPLAY, a MATLAB program which displays a basis function associated with a 4-node triangle "T4" mesh.

MESH_TO_XML, a MATLAB program 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.

TABLE_DELAUNAY, a FORTRAN90 program which triangulates nodes whose coordinates are stored in a file.

TRIANGLE, a C program which computes a triangulation of a geometric region.

TRIANGULATION, a MATLAB library which carries out various operations on order 3 ("linear") or order 6 ("quadratic") triangulations.

TRIANGULATION_BOUNDARY_EDGES, a MATLAB program which reads data defining a triangulation, determines which edges lie on the boundary, organizes them into connected components, and writes this information to a file.

TRIANGULATION_BOUNDARY_NODES, a MATLAB program which reads data defining a triangulation, determines which nodes lie on the boundary, and writes their coordinates to a file.

TRIANGULATION_CORNER, a MATLAB program which patches triangulations so that no triangle has two sides on the boundary.

TRIANGULATION_DELAUNAY_DISCREPANCY, a MATLAB program which measures the amount by which a triangulation fails the local Delaunay test;

TRIANGULATION_DISPLAY_OPENGL, a C++ program which reads files defining a triangulation and displays an image using Open GL.

TRIANGULATION_HISTOGRAM, a MATLAB program which computes histograms of data over a triangulation.

TRIANGULATION_L2Q, a MATLAB program which reads data defining a 3-node triangulation and refines it to a 6-node triangulation.

TRIANGULATION_MASK, a MATLAB program 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_ORDER4, a directory which contains a description and examples of order 4 triangulations.

TRIANGULATION_ORIENT, a MATLAB program 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 MATLAB program which reads data defining a triangulation and creates a PostScript image of the nodes and triangles.

TRIANGULATION_QUAD, a MATLAB program which estimates the integral of a function over a triangulated region.

TRIANGULATION_QUALITY, a MATLAB program which reads data defining a triangulation and computes a number of quality measures.

TRIANGULATION_RCM, a MATLAB program which reads data defining a triangulation, determines an ordering of the nodes that will reduce the bandwidth of the adjacency matrix, and writes the new triangulation information to a file.

TRIANGULATION_REFINE, a MATLAB program which reads data defining a triangulation, replaces each triangle by four congruent smaller ones, and writes the new triangulation information to a file.

triangulation_t3_to_t4_test

TRIANGULATION_TRIANGLE_NEIGHBORS, a MATLAB program which reads data defining a triangulation, determines the neighboring triangles of each triangle, and writes that information to a file.

Reference:

  1. Marc deBerg, Marc Krevald, Mark Overmars, Otfried Schwarzkopf,
    Computational Geometry,
    Springer, 2000,
    ISBN: 3-540-65620-0.
  2. Joseph ORourke,
    Computational Geometry,
    Second Edition,
    Cambridge, 1998,
    ISBN: 0521649765,
    LC: QA448.D38.

Source Code:


Last revised on 11 April 2019.