File Exchange

image thumbnail

LATSQ

version 1.1 (1.86 KB) by

(randomized) Latin Square

7 Downloads

Updated

View License

M = LATSQ(N) creates a latin square of size N-by-N containing the numbers 1 to N. N should be a positive integer. M is also known as the (backward shifted) circulant matrix of the vector 1:N.

[M, R] = LATSQ(N) also returns a randomized latin square in R.
 
A latin square of size N is a N-by-N matrix filled with N different numbers in such a way that each number occurs exactly once in each row and exactly once in each column. They have applications in the design of experiments.
More information: http://en.wikipedia.org/wiki/Latin_square

Example:
[M,R] = latsq(4) % ->
 % M is unrandomized
 % 1 2 3 4
 % 2 3 4 1
 % 3 4 1 2
 % 4 1 2 3
 % R is randomized
 % 2 3 1 4
 % 3 4 2 1
 % 4 1 3 2
 % 1 2 4 3
 
Note that "sort(ballatsq(N),1-2)" will return 1:N in each column-row.

See also MAGIC, GALLERY,
     BALLATSQ, CIRCULANT, SLM (File Exchange)

Latest version: 1.4 (feb 2009)

Comments and Ratings (2)

Owen Brimijoin

Miguel Nacenta

Updates

1.1

updated hellp

fixed minor spelling errors

MATLAB Release
MATLAB 6.5 (R13)
Acknowledgements

Inspired: latin cube

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video