TRIANGULATION_QUALITY
Triangulation Quality Measures
TRIANGULATION_QUALITY
is a FORTRAN90 program which
computes and prints 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:
-
Alpha, the minimum angle divided by the maximum possible
minimum angle.
-
Area, the ratio of the minimum area to the maximum area;
-
Q, the triangle shape uniformity measure, twice the
radius of the inscribed circle divided by the radius of the
circumscribed circle;
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.
Usage:
triangulation_quality prefix
where prefix is the common prefix for the node and element files
-
prefix_nodes.txt, the node coordinates;
-
prefix_elements.txt, the element definitions.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
TRIANGULATION_QUALITY is available in
a C++ version and
a FORTRAN90 version and
a MATLAB version.
Related Data and Programs:
DISTMESH,
a MATLAB library which
carries out triangular or tetrahedral mesh generation,
by Per-Olof Persson and Gilbert Strang.
MESH2D,
a MATLAB library which
can automatically create a triangular mesh for a given polygonal region,
by Darren Engwirda.
TET_MESH_QUALITY,
a FORTRAN90 program which
computes quality measures of a tetrahedral mesh.
TRIANGLE,
a C program which
computes a triangulation of a geometric region.
TRIANGULATION,
a FORTRAN90 library which
carries out various operations on order 3 ("linear") or order 6
("quadratic") triangulations.
TRIANGULATION_ORDER3,
a directory which
contains a description and
examples of order 3 triangulations.
TRIANGULATION_ORDER6,
a data directory which
contains a description and
examples of order 6 triangulations.
Source Code:
Examples and Tests:
ELL3 is a set of nodes in an L-shaped region, which have
been arranged into an order 3 triangulation.
HEX_HOLES6 is a set of nodes in an square region, with
two hexagonal holes, which have
been arranged into an order 6 triangulation.
List of Routines:
-
MAIN is the main program for TRIANGULATION_QUALITY.
-
ALPHA_MEASURE determines the triangulated pointset quality measure ALPHA.
-
ARC_COSINE computes the arc cosine function, with argument truncation.
-
AREA_MEASURE determines the area ratio quality measure.
-
BANDWIDTH determines the bandwidth associated with the finite element mesh.
-
CH_CAP capitalizes a single character.
-
CH_EQI is a case insensitive comparison of two characters for equality.
-
CH_TO_DIGIT returns the integer value of a base 10 digit.
-
DTABLE_DATA_READ reads data from a double precision table file.
-
DTABLE_HEADER_READ reads the header from a double precision table file.
-
FILE_COLUMN_COUNT counts the number of columns in the first line of a file.
-
FILE_ROW_COUNT counts the number of row records in a file.
-
GET_UNIT returns a free FORTRAN unit number.
-
I4MAT_TRANSPOSE_PRINT prints an I4MAT, transposed.
-
I4MAT_TRANSPOSE_PRINT_SOME prints some of the transpose of an I4MAT.
-
ITABLE_DATA_READ reads data from an integer table file.
-
ITABLE_HEADER_READ reads the header from an integer table file.
-
Q_MEASURE determines the triangulated pointset quality measure Q.
-
R8MAT_TRANSPOSE_PRINT prints an R8MAT, transposed.
-
R8MAT_TRANSPOSE_PRINT_SOME prints some of an R8MAT, transposed.
-
S_TO_I4 reads an I4 from a string.
-
S_TO_I4VEC reads an I4VEC from a string.
-
S_TO_R8 reads an R8 from a string.
-
S_TO_R8VEC reads an R8VEC from a string.
-
S_WORD_COUNT counts the number of "words" in a string.
-
TIMESTAMP prints the current YMDHMS date as a time stamp.
You can go up one level to
the FORTRAN90 source codes.
Last revised on 21 June 2009.