TABLE_LATINIZE
Force a Dataset to be a Latin Hypercube


TABLE_LATINIZE is a MATLAB program which allows the user to specify a file of data to be read in and adjusted to form a Latin hypercube.

The data in the file represents N points in M-dimensional space.

The algorithm is actually very simple. In each spatial dimension, the point coordinates are sorted, and then replaced by the appropriate values for a Latin hypercube. In particular, if there are four points, then in every coordinate, the four points will be assigned values of 1/8, 3/8, 5/8 and 7/8 (in some order). The hope is that if the initial dataset has some nice dispersion property, then the resulting adjusted dataset will inherit some of this dispersion as well; in particular, more dispersion than typically seen in an arbitrary Latin hypercube.

TABLE_LATINIZE expects the input data file to be in the simple TABLE format.

Usage:

table_latinize ( 'file.txt' )
reads the user's data file file.txt and writes a "latinized" version which will be called file.latin.txt.

Licensing:

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages:

TABLE_LATINIZE is available in a C++ version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

LATINIZE, a MATLAB library which is used by TABLE_LATINIZE.

TABLE, a data directory which contains an explanation and examples of the TABLE format.

Reference:

  1. 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 3-4, 2007, pages 729-743,

Source Code:

Examples and Tests:

CVT_02_00010 is a set of 10 CVT points in 2D:

CVT_03_00007 is a set of 7 CVT points in 3D:

CVT_03_00056 is a set of 56 CVT points in 3D:

CVT_07_00100 is a set of 100 CVT points in 7D:

You can go up one level to the MATLAB source codes.


Last revised on 08 August 2009.