An algorithm for calculation of the Jordan canonical form of a matrix
Jordan canonical forms are used extensively in the literature on control systems. However, very few methods are available to compute them numerically. Most numerical methods compute a set of basis vectors in terms of which the given matrix is diagonalized when such a change of basis is possible. Here, a simple and efficient method is suggested for computing the Jordan canonical form and the corresponding transformation matrix. The method is based on the definition of a generalized eigenvector, and a natural extension of Gauss elimination techniques.