QUALITY
Quality Measures for Pointsets in M dimensions
QUALITY is a library of MATLAB routines, using double
precision arithmetic, which compute 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;
Related Data and Programs:
QUALITY is also available in
a C++ version and
a FORTRAN90 version.
TABLE_QUALITY is an interactive program
which can analyze a dataset that is stored in a file. This program
is available in
TET_MESH
is a MATLAB library which includes some quality measures for
tetrahedral meshes.
TRIANGULATION
is a MATLAB library which includes some quality measures for
triangulations.
Reference:
-
David Field,
Qualitative Measures for Initial Meshes,
International Journal of Numerical Methods in Engineering,
Volume 47, 2000, pages 887-906.
-
Max Gunzburger,
Uniformity Measures for Point Samples in Hypercubes,
PDF version.
-
D P Hardin, Edward Saff,
Discretizing Manifolds via Minimum Energy Points,
Notices of the AMS,
Volume 51, Number 10, November 2004, pages 1186-1194.
PDF version.
-
Per-Olof Persson, Gilbert Strang,
A Simple Mesh Generator in MATLAB,
SIAM Review,
Volume 46, Number 2, pages 329-345, June 2004.
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.out,
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.