I want to generate a random matrix whose all eigenvalues are equal to one. How can I do it?
I know one method to generate matrices with given eigenvalues is to generate a random orthogonal matrix $Q$ and then construct some diagonal matrix $A$ with desired eigenvalues on the diagonal, then $Q^T A Q$ will be a random matrix with desired eigenvalues. However if I want all eigenvalues equal to 1, then $A$ must be an identity matrix, and then $Q^T A Q$ will also always generate an identity matrix, which is not random at all.

  • $\begingroup$ What conditions do you have on the distribution? Must all such matrices be contained in the support of the distribution, for example? $\endgroup$ – Travis Jul 10 '15 at 10:18
  • $\begingroup$ For $A=(a_{ij})_{i,j=1}^n$ choose $a_{ii}=1$ for all $i$, and $a_{i+1,i} = 0\text{ or }1$ randomly. $\endgroup$ – Mher Jul 10 '15 at 10:24
  • $\begingroup$ "one method to generate matrices with given eigenvalues ...(etc)" applies only to diagonalizable matrices (even more restrictive: normal matrices). But if a diagonalizable matrix has all ones eingevalues, then it's the identity. Then that method is useless here. $\endgroup$ – leonbloy Jul 10 '15 at 21:28

Let $A$ be an upper triangular matrix with $1$s along the diagonal.
If you have a complete set of eigenvectors, then $A$ must be the identity matrix. But an upper triangular matrix with $1$s along the diagonal doesn't have a complete set of eigenvectors.
The eigenvalues are all $1$, and that will still be true for $Q^TAQ$ because $$\det(A-\lambda I)=\det(Q^T(A-\lambda I)Q)=\det(Q^TAQ-\lambda I)$$


The orthogonal matrices have nothing to do here.

Let $N$ be the set of nilpotent $n\times n$ matrices. It is not difficult to show that a generic matrix in $N$ (for instance, a randomly chosen nilpotent matrix is almost surely ...) is similar to $J_n$, the nilpotent Jordan matrix of dimension $n$. Thus we can proceed as follows:

Choose randomly $P=[p_{i,j}]\in M_n(\mathbb{R})$ (for instance the $p_{i,j}$ follow the law $\mathcal{N}(0,1)$ and are independent) ; $P$ is almost surely invertible. Finally, an answer to your question is $P(I_n+J_n)P^{-1}$.

  • $\begingroup$ The reason for orthogonal matrices is computational rather than mathematical. It is much easier to compute transpose than inverse. $\endgroup$ – Sunny88 Jul 11 '15 at 10:57
  • $\begingroup$ @ Sunny 88 , I understand; yet, if you consider $B=Q^TAQ$, then the "angles" between the eigenvectors of $B$ are the same as the "angles" between the eigenvectors of $A$; thus you must also randomize $A$. $\endgroup$ – loup blanc Jul 11 '15 at 12:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.