TABLE_QUALITY is a MATLAB program which reads a data file containing the coordinates of N points in an M dimensional region, and computes some measures of the quality of dispersion of the points.
The program assumes that the pointset lies in the unit hypercube. However, it is easy to modify the program to handle other regions. A single routine, named sample_routine, is required to return sample points in the region. To handle a different region, simply modify this routine, and rebuild the program. One other built-in routine is already available, for sampling the unit sphere.
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 quality measures computed include:
The program also prints:
The input data file is assumed to be in the simple TABLE format.
table_quality 'file.txt'where
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
TABLE_QUALITY is available in a C++ version and a FORTRAN90 version and a MATLAB version.
DIAPHONY, a MATLAB program which reads a file of N points in M dimensions and computes its diaphony, a measure of point dispersion.
QUALITY, a MATLAB library which provides most of the routines used by TABLE_QUALITY.
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.
CVT_02_00100 is a set of 100 CVT points in 2D.
CVT_07_00010 is a set of 10 CVT points in 7D.
DEGEN_02_00130 is a set of 130 points in 2D which involve a degenerate triangulation.
HALTON_02_00100 is a set of 100 Halton points in 2D.
You can go up one level to the MATLAB source codes.