TABLE_DIAPHONY is a FORTRAN90 program which computes the "diaphony" of an M-dimensional pointset.
The "diaphony" of an M-dimensional pointset is a numeric measure of the uniformity of the dispersion of the points throughout the unit hypercube.
The point sets we are interested in have been generated by a variety of algorithms, and are stored as datasets, of spatial dimension 2, 7 and 16, and sample sizes 10, 100, 1,000 and 10,000. The point set types include:
Regarded as a random variable itself, the diaphony of a set of N points has an expected value of 1/sqrt(N).
For the Halton datasets in 2D, 7D and 16D, here is the table of the number of points versus the diaphony:
| Diaphony(M,N) | M=2D | M=7D | M=16D | 1/Sqrt(N) |
|---|---|---|---|---|
| N=10 | 0.246 | 0.316 | 0.316 | 0.316 |
| N=100 | 0.043 | 0.099 | 0.099 | 0.100 |
| N=1000 | 0.006 | 0.031 | 0.031 | 0.031 |
| N=10000 | 0.001 | 0.009 | 0.009 | 0.001 |
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
The TABLE format is used for the input to this program.
TABLE_BARPLOT_PPMA is a FORTRAN90 program which reads a table file and creates a PPMA bargraph of the data.
TABLE_BORDER is a FORTRAN90 program which can be used to add a border (of zero values) to a table file.
TABLE_COLUMNS is a FORTRAN90 program which can extract specific columns of data from a table file.
TABLE_COLUMNS_PERMUTE is a FORTRAN90 program which permutes the columns of a table file.
TABLE_DELAUNAY is a FORTRAN90 program which computes the Delaunay triangulation of a set of points.
TABLE_DIAPHONY is a FORTRAN90 program which computes the diaphony of a set of points stored in a table file.
TABLE_HISTOGRAM is a FORTRAN90 program which can make a histogram of a set of points stored in a table file.
TABLE_IO is a FORTRAN90 library which supplies the routines used to read the TABLE file.
TABLE_LATINIZE is a FORTRAN90 program which reads a file of points and creates a "latinized" version by adjusting the data.
TABLE_MERGE is a FORTRAN90 program which reads a file of points, and removes duplicates, and points that are close to each other.
TABLE_ORTHONORMALIZE is a FORTRAN90 program which reads a file of points and orthonormalizes the columns.
TABLE_QUALITY is a FORTRAN90 program which reads a file of points and computes the quality of dispersion.
TABLE_READ is a MATLAB program which can read in a TABLE file.
TABLE_RECORD_MATCH is a FORTRAN90 program which can be used to find close records in a table file.
TABLE_SCALE is a FORTRAN90 program which can be used to multiply the entries of a table file by a scale vector.
TABLE_SHIFT is a FORTRAN90 program which can be used to shift the entries of a table file by a shift vector.
TABLE_STATS is a FORTRAN90 program which can read a table file and compute certain statistics.
TABLE_TET_MESH is a FORTRAN90 program which can read a table file of 3D data, and compute a tetrahedral mesh.
TABLE_TOP is a FORTRAN90 program which can read a table file of M-dimensional data and make a table of plots of all pairs of coordinates.
TABLE_UNBORDER is a FORTRAN90 program which can be used to remove the border from a table file.
TABLE_UNIFORM_NOISE is a FORTRAN90 program which can be used to add a uniform noise term to the data in a table file.
TABLE_VORONOI is a FORTRAN90 program which computes information about the Voronoi diagram of the points.
You can go up one level to the FORTRAN90 source codes.