LATIN_CENTER_DATASET
Generate Latin Center Square Datasets {#latin_center_dataset-generate-latin-center-square-datasets align="center"}
LATIN_CENTER_DATASET is a C++ program which creates a Latin Center Square dataset.
A Latin square, in M dimensional space, with N points, can be thought of as being constructed by dividing each of the M coordinate dimensions into N equal intervals. The I-th coordinates of the N subsquares are defined by assigning each possible value exactly once to one subsquare. Such a set is called a Latin Square.
If we now select the center point of each subsquare, we have what we will term a "Latin Center Square".
latin_center_dataset m n seed
where
- m is the spatial dimension;
- n is the number of points to generate;
- seed is the initial seed value.
The data is written to the file latin_center_m_n.txt.
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
LATIN_CENTER_DATASET is available in a C++ version and a FORTRAN90 version and a MATLAB version.
FAURE_DATASET, a C++ program which creates a Faure quasirandom dataset;
GRID_DATASET, a C++ program which creates a grid sequence and writes it to a file.
LATIN_CENTER, a C++ library which computes the Latin Center squares requested by LATIN_CENTER_DATASET.
LATIN_CENTER, a dataset directory which contains sample datasets created by LATIN_CENTER_DATASET.
LATIN_EDGE_DATASET, a C++ program which creates a Latin Edge Hypercube dataset;
LATIN_RANDOM_DATASET, a C++ program which creates a Latin Random Hypercube dataset;
NIEDERREITER2_DATASET, a C++ program which creates a Niederreiter quasirandom dataset with base 2;
NORMAL_DATASET, a C++ program which generates a dataset of multivariate normal pseudorandom values and writes them to a file.
SOBOL_DATASET, a C++ program which computes a Sobol quasirandom sequence and writes it to a file.
UNIFORM_DATASET, a C++ program which generates a dataset of multivariate uniform pseudorandom values and writes them to a file.
VAN_DER_CORPUT_DATASET, a C++ program which creates a van der Corput quasirandom sequence and writes it to a file.
- Paul Bratley, Bennett Fox, Linus Schrage,
A Guide to Simulation,
Springer Verlag, pages 201-202, 1983. - CJ Colbourn, JH Dinitz,
CRC Handbook of Combinatorial Design,
CRC, 1996. - 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. - Michael McKay, William Conover, Richard 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. - Albert Nijenhuis, Herbert Wilf,
Combinatorial Algorithms,
Academic Press, 1978, second edition,
ISBN 0-12-519260-6. - Herbert Ryser,
Combinatorial Mathematics,
Mathematical Association of America, 1963.
- latin_center_dataset.cpp, the source code.
- latin_center_2_100.txt, is the file created by the command latin_center_dataset 2 100 12346789.
- MAIN is the main program for LATIN_CENTER_DATASET.
- GET_SEED returns a random seed for the random number generator.
- I4_MAX returns the maximum of two I4's.
- I4_MIN returns the smaller of two integers.
- I4_UNIFORM returns a scaled pseudorandom I4.
- LATIN_CENTER returns center points in a Latin square.
- PERM_UNIFORM selects a random permutation of N objects.
- R4_ABS returns the absolute value of an R4.
- R4_NINT returns the nearest integer to an R4.
- R8MAT_WRITE writes an R8MAT file.
- TIMESTAMP prints the current YMDHMS date as a time stamp.
You can go up one level to the C++ source codes.
Last revised on 15 December 2009.