I have a collection of matrices $A_1,\ldots,A_n$, and I want to do joint Schur decomposition on them (they all have the same unitary matrices in their decomposition). I couldn't find any implementation of this (I was looking for Python, but I would be happy to find anything at the moment). The closest I found was an implementation that works for two matrices ($n=2$) for Python. Anyone is familiar with how to do that or has a Python/other implementation?
Also, is there more stable algorithms to do joint decomposition to identify the eigenvalues of $n$ matrices simultaneously?
EDIT: My matrices are diagonalizable, so a joint spectral decomposition into eigenvectors and eigenvalues (when the eigenvectors are all the same) would be fine as well.