LATIN_CENTER
Latin Squares in M dimensions


LATIN_CENTER is a MATLAB library which makes Latin Center Squares for sampling.

A Latin square is a selection of one point from each row and column of a square matrix or table. In M dimensions, the corresponding item is a set of N points, where, in each dimension, there is exactly one point whose coordinates are in a given "column" or range of values. To emphasize the use of higher dimensions, these objects are sometimes called Latin hypersquares.

Once a particular Latin square has been chosen, if we select the center point of each subsquare, we have a Latin Center Square dataset.

Here is an image of a Latin centered grid with spatial dimension M = 2 and number of points N = 10.

Related Data and Programs:

CVT is a MATLAB library of routines which computes elements of a Centroidal Voronoi Tessellation.

FAURE is a MATLAB library of routines which computes elements of a Faure quasirandom sequence.

GRID is a MATLAB library of routines which computes elements of a grid dataset.

HALTON is a MATLAB library of routines which computes elements of a Halton quasirandom sequence.

HAMMERSLEY is a MATLAB library of routines which computes elements of a Hammersley quasirandom sequence.

HEX_GRID is a MATLAB library of routines which computes elements of a hexagonal grid dataset.

IHS is a MATLAB library of routines which computes elements of an improved distributed Latin hypercube dataset.

LATIN_CENTER is also available in a C++ version. and a FORTRAN90 version.

LATIN_CENTER is a dataset directory which contains a number of examples of datasets created by LATIN_CENTER.

LATIN_CENTER_DATASET is an interactive MATLAB program which allows the user to define, compute and save to a file a Latin center dataset.

LATIN_EDGE is a MATLAB library of routines which computes elements of a Latin Hypercube dataset, choosing edge points.

LATIN_RANDOM is a MATLAB library of routines which computes elements of a Latin Hypercube dataset, choosing points at random.

LCVT is a MATLAB library of routines which computes a latinized Centroidal Voronoi Tessellation.

NIEDERREITER2 is a MATLAB library of routines which computes elements of a Niederreiter quasirandom sequence with base 2.

SOBOL is a MATLAB library of routines which computes elements of a Sobol quasirandom sequence.

UNIFORM is a MATLAB library of routines which computes elements of a uniform pseudorandom sequence.

VAN_DER_CORPUT is a MATLAB library of routines which computes elements of a van der Corput quasirandom sequence.

Reference:

  1. Paul Bratley, Bennett Fox, Linus Schrage,
    A Guide to Simulation,
    Springer Verlag, pages 201-202, 1983.
  2. C J Colbourn, J H Dinitz,
    CRC Handbook of Combinatorial Design,
    CRC, 1996.
  3. Bennett Fox,
    Algorithm 647:
    Implementation and Relative Efficiency of Quasirandom Sequence Generators,
    ACM Transactions on Mathematical Software,
    Volume 12, Number 4, pages 362-376, 1986.
  4. M D McKay, W J Conover, R J Beckman,
    A Comparison of Three Methods for Selecting Values of Input Variables in the Analysis of Output From a Computer Code,
    Technometrics,
    Volume 21, pages 239-245, 1979.
  5. Albert Nijenhuis, Herbert Wilf,
    Combinatorial Algorithms,
    Academic Press, 1978, second edition,
    ISBN 0-12-519260-6.
  6. Herbert Ryser,
    Combinatorial Mathematics,
    Mathematical Association of America, 1963.

Source Code:

Examples and Tests:

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


Last revised on 01 September 2005.