LATINIZE\
Force a Dataset to be a Latin Hypercube {#latinize-force-a-dataset-to-be-a-latin-hypercube align=”center”}
=======================================
LATINIZE is a C++ library which adjusts an M dimensional dataset of
N points so that it forms a Latin hypercube.
On output, each row of the table will have the properties that:
- the minimum and maximum row values are the same as on input;
- the row contains N evenly spaced values between the minimum and
maximum.
- in each row, the elements retain their ordering.
Licensing: {#licensing align=”center”}
The computer code and data files described and made available on this
web page are distributed under the GNU LGPL
license.
Languages {#languages align=”center”}
LATINIZE is available in a C
version and a C++
version and a FORTRAN77
version and a FORTRAN90
version and a MATLAB
version.
BOX_BEHNKEN, a C++
library which computes a Box-Behnken design, that is, a set of arguments
to sample the behavior of a function of multiple parameters;
LATIN_CENTER, a C++
library which computes Latin Square datasets by choosing the center of
each square.
LATIN_EDGE, a C++ library
which computes Latin Square datasets by choosing the edge of each
square.
LATIN_RANDOM, a C++
library which computes Latin Square datasets by choosing a random point
of each square.
TABLE, a data format which is used to
store the input and output files used by the program.
TABLE_LATINIZE, a
C++ program which allows the name of the data file to be specified on
the command line.
Reference: {#reference align=”center”}
- 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.
- 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: {#source-code align=”center”}
Examples: {#examples align=”center”}
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:
List of Routines: {#list-of-routines align=”center”}
- CH_CAP capitalizes a single character.
- CH_EQI is true if two characters are equal, disregarding case.
- CH_TO_DIGIT returns the integer value of a base 10 digit.
- FILE_COLUMN_COUNT counts the columns in the first line of a
file.
- FILE_NAME_EXT_SWAP replaces the current “extension” of a file
name.
- FILE_ROW_COUNT counts the number of row records in a file.
- I4_MAX returns the maximum of two I4’s.
- I4_MIN returns the minimum of two I4’s.
- R8MAT_DATA_READ reads the data from an R8MAT file.
- R8MAT_HEADER_READ reads the header from an R8MAT file.
- R8MAT_LATINIZE “latinizes” a real table dataset.
- R8MAT_PRINT prints an R8MAT.
- R8MAT_PRINT_SOME prints some of an R8MAT.
- R8MAT_TRANSPOSE_PRINT prints an R8MAT, transposed.
- R8MAT_TRANSPOSE_PRINT_SOME prints some of an R8MAT,
transposed.
- R8MAT_WRITE writes an R8MAT file.
- R8VEC_SORT_HEAP_INDEX_A does an indexed heap ascending sort
of an R8VEC.
- S_LEN_TRIM returns the length of a string to the last
nonblank.
- S_TO_R8 reads an R8 from a string.
- S_TO_R8VEC reads an R8VEC from a string.
- S_WORD_COUNT counts the number of “words” in a string.
- TIMESTAMP prints the current YMDHMS date as a time stamp.
You can go up one level to the C++ source codes.
Last revised on 23 January 2012.