LATIN_RANDOM is a C library which makes Latin Random Squares.
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.
A Latin Random Square (I just made up this name) is a set of N points, where one point is taken at random from each of the subsquares of a Latin Square. These points may be regarded as an M dimensional quasirandom pointset.
The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.
LATIN_RANDOM is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python 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;
HALTON, a C library which computes elements of a Halton Quasi Monte Carlo (QMC) sequence, using a simple interface.
HAMMERSLEY, a C library which computes elements of a Hammersley Quasi Monte Carlo (QMC) sequence, using a simple interface.
LATIN_RANDOM_DATASET, a C program which computes a Latin Hypercube in M dimensions of N points, randomly placed within their subsquares.
NORMAL, a C library which computes elements of a sequence of pseudorandom normally distributed values.
UNIFORM, a C library which computes uniform random values.
You can go up one level to the C source codes.