Reputation: 1
I want to Randomly generate i.i.d. Gaussian ensemble A∈R m×n (m<<n) satisfying the transpose of A times A equals the identity matrix with matlab. Thanks!
I found an answer in mathworks, but the size of rows is far less than the size of columns.
A = randn(m, n); % random mxn rows x col
R = orth( A.' ).'; % orthogonal rows
O_Mat = bsxfun(@rdivide, R, sqrt( sum( R.^2, 2 ) ) )`
It CANNOT create a matrix of size d by n with n>d, so more columns than rows, that has orthogonal columns. In addition, what is satisfied here is that the transpose of A multiplied by A is equal to the identity matrix.
Upvotes: 0
Views: 54