latsq - Latin Square
M = latsq(N) creates a latin square of size N-by-N containing
the numbers 1 to N. N should be a positive integer.
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. The output M is also known as the (backward shifted)
circulant matrix of the vector 1:N.
Examples:
M = latsq(4) % ->
% 1 2 3 4
% 2 3 4 1
% 3 4 1 2
% 4 1 2 3
% latin square of categories
C = {'goat','cabbage','wolf'}
idx = latsq(numel(C))
M = C(idx)
% Randomized latin square
V = randperm(6)
M = V(latsq(numel(V)))
See also magic, gallery,
ballatsq, circulant, slm (file Exchange)
More information: http://en.wikipedia.org/wiki/Latin_square
Cite As
Jos (10584) (2024). latsq(N) (https://www.mathworks.com/matlabcentral/fileexchange/12315-latsq-n), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Acknowledgements
Inspired: latin cube
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.