I would like to diagonalise a matrix $M$ of the form
$$ M = \left(\begin{matrix} M_{11}&\ldots&M_{1n}\\ \vdots&\ddots&\vdots\\ M_{n1}&\ldots&M_{nn} \end{matrix}\right), $$ where each element $M_{ij}$ is a square diagonal matrix itself and, in general, $M_{ij}\neq M_{ji}$, i.e. $M$ is not symmetric.
Of course, I can consider $M$ just like any other matrix and diagonalise it numerically, but I am wondering whether the peculiar structure of the matrix would allow for a less brute-force approach.
Here are some first observations from numerical simulations. I generate a matrix by populating the diagonals with standard normal random variables. For three blocks and rank ten for each block we get:
The matrix of eigenvectors shows some structure but none that I can easily interpret:
From larger simulations, the number of nonzero real elements of the eigenvector matrix is equal to the number of nonzero elements in $M$, i.e. the number of blocks squared times the rank of each block. The number of nonzero imaginary elements does not appear to be constant for a given block rank and number of blocks, but it is linearly related to the block rank.

