I would like to pick a random real normal (i.e. commuting with its transpose) matrix and I wonder if it can be done easily. I thought whether it would be possible to use a similar trick to drawing a symmetric matrix by first generating an arbitrary matrix A, and then setting $A=(A+A^T)/2$. Is there any similar normalization trick for matrices. I'd be grateful for any help.
-
$\begingroup$ "Random" only makes sense when you specify a probability distribution. Which one do you want? There isn't any canonical choice, AFAIK. $\endgroup$– Nate EldredgeCommented Aug 31, 2017 at 20:54
-
$\begingroup$ There are many papers about "random normal matrices". Have you googled this? $\endgroup$– MarcelCommented Aug 31, 2017 at 20:57
-
$\begingroup$ @Marcel --- I presume these papers you are referring to all interpret "normal" as "Gaussian" --- which is a different kettle of fish --- for complex normal matrices I would just draw a random unitary $U$ and a random diagonal matrix $D$ and write $A=UDU^\dagger$ --- no idea how to impose the constraint that $A$ is real... $\endgroup$– Carlo BeenakkerCommented Aug 31, 2017 at 21:07
-
1$\begingroup$ @CarloBeenakker What is the distribution of the coefficients of this? $\endgroup$– Igor RivinCommented Aug 31, 2017 at 22:00
-
1$\begingroup$ @CarloBeenakker no, the papers I mean interpret "normal" in the sense of the question (although I think the ensembles are indeed Gaussian). Also, to make your $A$ real one just draws random orthogonal matrices, no? $\endgroup$– MarcelCommented Aug 31, 2017 at 22:57
1 Answer
Any real normal matrix $M$ can be written as $M=O\,\mathrm{diag}(B_1,\ldots,B_\ell)\,O^t$ where $O$ is orthogonal and where the blocks $B_j$ are either $1\times 1$ real numbers or $2\times2$ matrices of the form: $$ \left[\begin{matrix} a & b \\- b& a\end{matrix}\right],\qquad a\in\mathbb R,\qquad b>0. $$ This provides a way to sample a real $n\times n$ normal matrix whose associated measure has the full space of real normal matrices for support:
$\bullet$ Sample $O$ according to the Haar measure on the $n$-orthogonal group
$\bullet$ Randomly pick the number of blocs which will be of size $2\times 2$ between $0$ and $\lfloor \tfrac n2\rfloor$ uniformly
$\bullet$ Sample each free parameter of the blocks the blocks $B_j$'s according to, say, i.i.d standard Gaussian random variables for the real parameters and exponential $\mathcal E(1)$ random variables for the positive parameters.
-
$\begingroup$ Looks great! Could you give some explanation or reference for the representation? $\endgroup$– DominCommented Sep 5, 2017 at 9:14
-
$\begingroup$ This is just the spectral theorem for real normal operators. Googling this gave me the link below (see for Theorem 7), but there should be some classical textbook available for better references. math.fau.edu/schonbek/LinearAlgebra/lafa13normalspectra.pdf $\endgroup$ Commented Sep 5, 2017 at 15:32