Random Generation of Binary Orthogonal Matrix of Size n * n with Matlab

3 views (last 30 days)
Dear all...
How can I generate random binary orthogonal matrix of size n * n with matlab?
Regards,

Accepted Answer

Guillaume
Guillaume on 24 Feb 2018
Edited: James Tursa on 22 Mar 2018
I'm not a mathematician so I could be completely wrong but aren't square binary orthogonal matrices just permutations of the rows (or columns) of the identity matrix?
If yes,
m = eye(n);
m = m(randperm(n), :)
This certainly generates random binary orthogonal matrices of size nxn. Whether it can generate all the possible ones, I don't know.

More Answers (1)

javad ebrahimi
javad ebrahimi on 24 Feb 2018
Hi Hiba Basim Alwan
this code can help you: for n=10
C = rand(10)
Y = round(C)
  1 Comment
Guillaume
Guillaume on 24 Feb 2018
That does produce a matrix that is binary and random, but certainly not orthogonal (which is the difficult bit of the question).
randi([0 1], n)
is a simpler way of producing a binary matrix.

Sign in to comment.

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!