QUALITY
Quality Measures for Pointsets in M dimensions
QUALITY
is a MATLAB library which
computes some measures of the quality
of dispersion of a set of N points in an M dimensional region.
The region to be analyzed is defined by a single routine which
the user may specify. We will refer to that routine as
sample_routine. This routine is simply required to return
sample points from the region.
The library includes routines for two simple regions, namely
the unit hypercube and the unit hypersphere. If either of these
regions is of interest, then the user simply has to pass the
appropriate name, either sample_hypercube_uniform or
sample_sphere_uniform. For other regions, the user should
write the appropriate version of a sampling routine.
The unit hypercube in M dimensional space is simply the set of
all vectors whose entries are between 0 and 1. It is
a natural abstraction of the unit line segment, the unit square,
and the unit cube, and represents a very simple chunk of M
dimensional space.
The unit hypersphere in M dimensional space is simply the set of
all points whose distance from the origin is 1 or less.
The quality measures computed include:

Alpha, the minimum angle divided by the maximum possible
minimum angle (for triangulated 2D datasets only);

Area, the ratio of the minimum and maximum triangle
areas (for triangulated 2D datasets only);

Beta, the standard deviation of the minimum spacing
between nodes, normalized by the average spacing between nodes;

Chi, the regularity measure;

D, the second moment determinant measure;

E, the Voronoi energy measure;

Gamma, the mesh ratio;

H, the point distribution norm;

Lambda, the COV measure;

Mu, the point distribution ratio;

Nu, the cell volume deviation;

Q, two times the radius of the inscribed circle
divided by the radius of the circumscribed circle
(for triangulated 2D datasets only);

R0, the Riesz S=0 energy;

S, the sphere volume measure.

Tau, the second moment trace measure;
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
QUALITY is available in
a C++ version and
a FORTRAN90 version and
a MATLAB version.
Related Data and Programs:
DIAPHONY,
a MATLAB program which
reads a file of N points in M dimensions and computes its diaphony, a measure
of point dispersion.
STAR_DISCREPANCY,
a C++ program which
reads a TABLE file of M points in N dimensions (presumed to lie in the
unit hypercube) and computes bounds on the star discrepancy,
a measure of dispersion, by Eric Thiemard.
TABLE_QUALITY,
a MATLAB program which
reads a data file and computes the quality of the points.
TET_MESH,
a MATLAB library which
includes some quality measures for
tetrahedral meshes.
Reference:

David Field,
Qualitative Measures for Initial Meshes,
International Journal of Numerical Methods in Engineering,
Volume 47, 2000, pages 887906.

D P Hardin, Edward Saff,
Discretizing Manifolds via Minimum Energy Points,
Notices of the AMS,
Volume 51, Number 10, November 2004, pages 11861194.

PerOlof Persson, Gilbert Strang,
A Simple Mesh Generator in MATLAB,
SIAM Review,
Volume 46, Number 2, pages 329345, June 2004.

Yuki Saka, Max Gunzburger, John Burkardt,
Latinized, Improved LHS, and CVT Point Sets in Hypercubes,
International Journal of Numerical Analysis and Modeling,
Volume 4, Number 34, 2007, pages 729743,
Source Code:
Examples and Tests:

quality_test.m,
calls all the tests for all the datasets.

quality_test_cvt.m,
calls all the tests for the CVT dataset.

quality_test_halton.m,
calls all the tests for the HALTON dataset.

quality_test_sphere.m,
calls all the tests for the SPHERE dataset.

quality_test005.m,
tests ALPHA_MEASURE.

quality_test006.m,
tests AREA_MEASURE.

quality_test007.m,
tests BETA_MEASURE.

quality_test01.m,
tests CHI_MEASURE.

quality_test02.m,
tests D_MEASURE.

quality_test03.m,
tests E_MEASURE.

quality_test04.m,
tests GAMMA_MEASURE.

quality_test05.m,
tests H_MEASURE.

quality_test06.m,
tests LAMBDA_MEASURE.

quality_test07.m,
tests MU_MEASURE.

quality_test08.m,
tests NU_MEASURE.

quality_test085.m,
tests R0_MEASURE.

quality_test09.m,
tests SPHERE_MEASURE.

quality_test10.m,
tests TAU_MEASURE.

quality_test11.m,
tests POINTSET_SPACING.

quality_test_output.txt,
printed output from a run of the test code.

cvt_02_00100.txt,
a set of 100 CVT points in 2D, to be analyzed using
the test code.

halton_02_00100.txt,
a set of 100 Halton points in 2D, to be analyzed using
the test code.

sphere_02_00100.txt,
a set of 100 points in 2D, in the unit sphere.
You can go up one level to
the MATLAB source codes.
Last revised on 09 November 2006.