Based on my understanding for the unitary and isometry matrices is that unitary matrix is a square matrix whose columns (equivalently, rows) form an orthonormal basis, means that $U*U’ = U’*U = I$ where I is the unity matrix , * is multiplication operation and ' is the transpose operation. On the other hand, isometry matrix only has columns which form an orthonormal basis and it’s not necessary to be square, that means that only $U*U’ = I$
My question is how can I construct random isometry matrix ? either in matlab or theoretically in mathematics. Or in other words, is it possible to construct non-square unitary matrix ?
Best Answer
Here is a way to construct a random isometry "portrait" matrix in Matlab with $r \ge c$.
Take a random array $r \times c$ and apply it the "orth" operator which is a kind of Gram-Schmidt orthonormalization: