I would like to generate normal matrices by an, say python, algorithm, that produces normal matrices distributed evenly in the limit of large n. I would not like to be restricted to Hermitian matrices since I would at some point also need imaginary eigenvalues.
- Anybody can ask a question
- Anybody can answer
- The best answers are voted up and rise to the top
Of course, every normal matrix can be written $$ A = UDU^* $$
where $D$ is diagonal (with the eigenvalues), and $U$ is unitary. Maybe it would work to construct your normal matrices starting with the diagonal form - you can choose exactly the eigenvalues you would like, or at least choose them from a user-determined set of numbers, and then you just need to find a way to generate unitary matrices (in a manner that is satisfactorily "random" for your needs).