The QR algorithm is one of the most important, widely used, and successful tools in technical computation. Four variants of the algorithm are in the mathematical core of MATLAB®. They compute the eigenvalues of real symmetric matrices, eigenvalues of real nonsymmetric matrices, eigenvalues of pairs of complex matrices, and singular values of general matrices. These functions are used, in turn, to find zeros of polynomials, solve special linear systems, assess stability, and perform many other tasks in various toolboxes.
In this article from 1995, Cleve Moler provides a closer look at the QR algorithm, the MATLAB implementation of the algorithm, and efforts directed at improving convergence without sacrificing accuracy or applicability.