I want to draw a matrix $A\in \mathbb{R}^{n\times k}$ uniformally at random from the Stiefel manifold $\mathbb{V}\_k(\mathbb{R}^n)$, that is from the collection of all $n\times k$ matrices $A$ such that $A^TA=I\_{k\times k}$.
Is this true that generating a matrix $X\in\mathbb{R}^{n\times n}$ with iid standard normal entries $\mathcal{N}(0,1)$, performing a svd decomosition $X=U\Lambda V^H$ and taking the first $k$ vectors of $U$, correspond to sampling $\mathbb{V}\_k(\mathbb{R}^n)$ uniformally at random?



Is svd of a Gaussian iid matrix corresponds to Haar measure on the Stiefel manifold?
Yes, this is correct; the probability distribution of $X=U\Lambda V^\top$ is
$$P(X)\propto \exp\left(-\tfrac{1}{2}\,{\rm tr}\,XX^\top\right)=\exp\left(-\tfrac{1}{2}\,{\rm tr}\,\Lambda^2\right),$$
so it is independent of the orthogonal matrices $U$,$V$. These are therefore distributed uniformly in $O(n)$, and identifying $A$ with the first $k$ columns of $U$ will generate a uniformly distributed $A$ in $\mathbb{V}\_k(\mathbb{R}^n)$.


An alternative approach, which does not require you to perform a SVD, is to orthonormalize the first $k$ columns of $X$ and place these in $A$.


