2010 Volume 2 Pages 119-122
We propose a novel algorithm to compute a Jordan basis (JB) for an arbitrarily given square matrix. The algorithm is based on the fact that a JB for a linear transformation $f$ is obtained by extending a JB for the restriction of $f$ to its range $R(f)$. The main ingredient of the algorithm is singular value decomposition, and that ensures backward-stability of the algorithm. To enhance the practical utility, we also introduce an automatic mechanism into the algorithm such that it outputs all possible Jordan structures close to the exact one of the input matrix.