TRIANGULATION_QUALITY
Interactive Program for
Triangulation Quality


TRIANGULATION_QUALITY is a MATLAB program, using double precision arithmetic, which computes and prints a variety of quality measures for a given triangulation of a set of points in 2D.

The triangulation is defined by a node file containing the coordinates of nodes, and a triangle file containing sets of 3 or 6 node indices.

The quality measures computed include:

Each quality measure is defined as the minimum of its value over all the triangles; the maximum and best possible value is 1, and the minimum and worst possible value is 0.

Related Data and Programs:

TABLE_DELAUNAY is an interactive executable FORTRAN90 program for the triangulation of a set of nodes whose coordinates are stored in a file.

TRIANGLE is an executable C program which computes a triangulation of a geometric region.

TRIANGULATION is a MATLAB library of routines for carrying out various operations on order 3 ("linear") or order 6 ("quadratic") triangulations.

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

TRIANGULATION_DISPLAY_OPEN_GL is an executable C++ program which reads files defining a triangulation and displays an image using Open GL.

TRIANGULATION_L2Q is an executable MATLAB program that reads data defining a 3-node triangulation and generates midside nodes and writes out the corresponding 6-node triangulation.

TRIANGULATION_MASK is an executable MATLAB program, which takes an existing triangulation and deletes triangles and their corresponding nodes as requested by the user.

TRIANGULATION_ORDER3 is a directory contains a description and examples of order 3 triangulations.

TRIANGULATION_ORDER6 is a directory contains a description and examples of order 6 triangulations.

TRIANGULATION_ORIENT is an executable MATLAB program that reads data defining a triangulation, makes sure that every triangle has positive orientation, and if not, writes a corrected triangle file.

TRIANGULATION_PLOT is an executable MATLAB program that reads data defining a triangulation and creates a PostScript image of the nodes and triangles.

TRIANGULATION_Q2L is an executable MATLAB program that reads data defining a 6-node triangulation, and subdivides each triangle into 4 3-node triangles, writing the resulting triangulation to a file.

TRIANGULATION_QUALITY is also available in a C++ version and a FORTRAN90 version..

TRIANGULATION_RCM is an executable MATLAB program that 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 is an executable MATLAB program that reads data defining a triangulation, replaces each triangle by four congruent smaller ones, and writes the new triangulation information to a file.

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

Usage:

triangulation_quality ( 'node_file', 'triangle_file' )
reads the node and triangle information, computes the quality measures, and prints them.

Reference:

  1. Marc deBerg, Marc Krevald, Mark Overmars, Otfried Schwarzkopf,
    Computational Geometry,
    Springer, 2000,
    ISBN: 3-540-65620-0.
  2. David Field,
    Qualitative Measures for Initial Meshes,
    International Journal of Numerical Methods in Engineering,
    Volume 47, 2000, pages 887-906.
  3. Max Gunzburger,
    Uniformity Measures for Point Samples in Hypercubes,
    PDF version.
  4. Joseph ORourke,
    Computational Geometry,
    Second Edition,
    Cambridge, 1998,
    ISBN: 0521649765,
    LC: QA448.D38.
  5. Per-Olof Persson, Gilbert Strang,
    A Simple Mesh Generator in MATLAB,
    SIAM Review,
    Volume 46, Number 2, pages 329-345, June 2004.

Tar File:

A GZIP'ed TAR file of the contents of this directory is available. This is only done as a convenience for users who want ALL the files, and don't want to download them individually. This is not a convenience for me, so don't be surprised if the tar file is somewhat out of date.

Source Code:

Examples and Tests:

ELL is a set of nodes in an L-shaped region, which have been arranged into an order 3 triangulation.

DOUBLE_HEX is a set of nodes in an square region, with two hexagonal holes, which have been arranged into an order 6 triangulation.

You can go up one level to the MATLAB source codes.


Last revised on 30 December 2006.