17  Eigenvalue Problems and the QR Algorithm

The eigenvalue problem \(\bA\bv = \lambda\bv\) seeks the invariant directions of a linear operator. Along an eigenvector \(\bv\), the action of the matrix \(\bA\) reduces to scalar multiplication by \(\lambda\). Eigenvalues govern the long-term stability of dynamical systems, the resonant frequencies of vibrating structures, the convergence rates of iterative solvers, and the low-dimensional structure of data in principal component analysis.

In introductory algebra, eigenvalues are introduced as the roots of the characteristic polynomial \(p(\lambda) = \det(\bA - \lambda \bI) = 0\). In numerical computing, however, computing eigenvalues via characteristic polynomials is strictly avoided. By Abel’s Impossibility Theorem, no closed-form radical formula exists for \(n \geq 5\), meaning all eigenvalue algorithms must be iterative. Furthermore, polynomial root-finding is notoriously ill-conditioned, whereas matrix eigenvalue algorithms can be executed with backward stability.

17.1 Theoretical Foundations: Multiplicity and Schur Form

NoteDefinition: Eigenvalues and Eigenvectors

Let \(\bA \in \fR^{n \times n}\). A nonzero vector \(\bv \in \fC^n\) is an eigenvector of \(\bA\) associated with the eigenvalue \(\lambda \in \fC\) if \[ \begin{align} \bA\bv = \lambda\bv. \end{align} \] The set of all eigenvalues \(\sigma(\bA) = \{\lambda_1, ..., \lambda_n\}\) is the spectrum of \(\bA\).

NoteDefinition: Algebraic and Geometric Multiplicity

Let \(\lambda\) be an eigenvalue of \(\bA\).

  1. The algebraic multiplicity \(\mu_a(\lambda)\) is the multiplicity of \(\lambda\) as a root of \(\det(\bA - z\bI) = 0\).

  2. The geometric multiplicity \(\mu_g(\lambda) = \dim \mathcal{N}(\bA - \lambda\bI)\) is the maximum number of linearly independent eigenvectors associated with \(\lambda\).

It is always true that \(1 \leq \mu_g(\lambda) \leq \mu_a(\lambda)\). If \(\mu_g(\lambda) < \mu_a(\lambda)\) for any eigenvalue, the matrix is termed defective and cannot be diagonalized.

NoteTheorem: Schur Decomposition

Every square matrix \(\bA \in \fC^{n \times n}\) is unitarily similar to an upper triangular matrix: \[ \begin{align} \bA = \bQ\bT\bQ^*, \end{align} \] where \(\bQ \in \fC^{n \times n}\) is unitary (\(\bQ^*\bQ = \bI\)) and \(\bT \in \fC^{n \times n}\) is upper triangular. The diagonal entries of \(\bT\) are precisely the eigenvalues of \(\bA\).

We proceed by induction on \(n\). For \(n=1\), the result is trivial. Assume the theorem holds for matrices of order \(n-1\). Let \(\lambda_1\) be an eigenvalue of \(\bA\) with normalized eigenvector \(\bv_1\) (\(\|\bv_1\|_2 = 1\)). Construct an orthonormal basis for \(\fC^n\) starting with \(\bv_1\), forming the unitary matrix \(\bU_1 = \begin{pmatrix} \bv_1 & \bW \end{pmatrix}\). Computing the similarity transform yields \[ \begin{align} \bU_1^* \bA \bU_1 = \begin{pmatrix} \bv_1^* \\ \bW^* \end{pmatrix} \begin{pmatrix} \bA\bv_1 & \bA\bW \end{pmatrix} = \begin{pmatrix} \lambda_1 \bv_1^*\bv_1 & \bv_1^*\bA\bW \\ \lambda_1 \bW^*\bv_1 & \bW^*\bA\bW \end{pmatrix} = \begin{pmatrix} \lambda_1 & \bw^T \\ \bzero & \bA_1 \end{pmatrix}, \end{align} \] where \(\bA_1 = \bW^*\bA\bW \in \fC^{(n-1) \times (n-1)}\). By the induction hypothesis, there exists a unitary matrix \(\bQ_1\) such that \(\bQ_1^* \bA_1 \bQ_1 = \bT_1\) is upper triangular. Setting \(\bQ = \bU_1 \begin{pmatrix} 1 & \bzero \\ \bzero & \bQ_1 \end{pmatrix}\) yields the complete triangularization \(\bQ^*\bA\bQ = \bT\).

NoteTheorem: Spectral Theorem for Hermitian and Real Symmetric Matrices

If \(\bA \in \fR^{n \times n}\) is real symmetric (\(\bA = \bA^T\)), then all eigenvalues of \(\bA\) are real, and \(\bA\) is orthogonally diagonalizable: \[ \begin{align} \bA = \bQ\boldsymbol{\Lambda}\bQ^T = \sum_{i=1}^n \lambda_i \bq_i \bq_i^T, \end{align} \] where \(\bQ = [\bq_1, ..., \bq_n]\) is a real orthogonal matrix whose columns are orthonormal eigenvectors.

17.2 Power Iteration and Shifted Inverse Iteration

When only a single dominant eigenvalue or an eigenvalue closest to a target frequency is required, vector iterations provide rapid, memory-efficient solutions.

NoteDefinition: Power Iteration

Given an initial vector \(\bv^{(0)}\) with \(\|\bv^{(0)}\|_2 = 1\), power iteration generates successive approximations via \[ \begin{align} \bw^{(k)} = \bA \bv^{(k-1)}, \qquad \bv^{(k)} = \frac{\bw^{(k)}}{\|\bw^{(k)}\|_2}, \qquad \lambda^{(k)} = (\bv^{(k)})^T \bA \bv^{(k)}. \end{align} \] If the dominant eigenvalue satisfies \(|\lambda_1| > |\lambda_2| \geq ... \geq |\lambda_n|\) and the initial vector has a nonzero component along the dominant eigenvector \(\bq_1\), then \(\bv^{(k)}\) converges to \(\bq_1\) at the linear rate \[ \begin{align} \|\bv^{(k)} - (\pm \bq_1)\|_2 = O\left( \left| \frac{\lambda_2}{\lambda_1} \right|^k \right). \end{align} \]

NoteDefinition: Inverse Iteration with Shifts

To compute the eigenvalue closest to a target scalar \(\sigma \in \fC\), power iteration is applied to the shifted and inverted operator \((\bA - \sigma \bI)^{-1}\): \[ \begin{align} (\bA - \sigma \bI) \bw^{(k)} = \bv^{(k-1)}, \qquad \bv^{(k)} = \frac{\bw^{(k)}}{\|\bw^{(k)}\|_2}. \end{align} \] The eigenvalues of \((\bA - \sigma \bI)^{-1}\) are \((\lambda_i - \sigma)^{-1}\). The eigenvalue of \(\bA\) closest to \(\sigma\) becomes the dominant eigenvalue of the shifted operator, accelerating convergence to the linear rate \(|\lambda_J - \sigma| / |\lambda_K - \sigma|\), where \(\lambda_J\) is the closest eigenvalue and \(\lambda_K\) is the second closest.

NoteDefinition: Rayleigh Quotient Iteration (RQI)

For symmetric matrices, updating the shift dynamically to the current Rayleigh quotient \(\sigma_k = (\bv^{(k)})^T \bA \bv^{(k)}\) yields Rayleigh Quotient Iteration. At each step, we solve \[ \begin{align} (\bA - \sigma_k \bI) \bw^{(k+1)} = \bv^{(k)}, \qquad \bv^{(k+1)} = \frac{\bw^{(k+1)}}{\|\bw^{(k+1)}\|_2}, \qquad \sigma_{k+1} = (\bv^{(k+1)})^T \bA \bv^{(k+1)}. \end{align} \] For symmetric matrices, RQI converges cubically: the number of correct decimal digits triples at each iteration once the iterate enters the asymptotic regime.

17.3 The Practical QR Algorithm

The standard method for computing the complete spectrum of a dense matrix is the QR algorithm with shifts.

NoteDefinition: Basic QR Iteration

The unshifted QR iteration computes a sequence of orthogonally similar matrices:

  1. Initialize \(\bA_0 = \bA\).

  2. For \(k = 0, 1, 2, ...\): \begin{enumerate}

  3. Compute the QR factorization: \(\bA_k = \bQ_k \bR_k\).

  4. Recombine the factors in reverse order: \(\bA_{k+1} = \bR_k \bQ_k = \bQ_k^T \bA_k \bQ_k\).

\end{enumerate} Because \(\bA_{k+1}\) is orthogonally similar to \(\bA_k\), all iterates share identical eigenvalues. As \(k \to \infty\), \(\bA_k\) converges to the upper triangular Schur form \(\bT\).

NoteTheorem: Practical Shifted QR Algorithm on Hessenberg Forms

To make the QR algorithm computationally efficient, standard numerical libraries implement two essential enhancements:

  1. Preliminary Hessenberg Reduction: The matrix \(\bA\) is pre-transformed to upper Hessenberg form \(\bH_0 = \bQ_0^T \bA \bQ_0\) using Householder reflectors in \(O(n^3)\) operations once. Subsequent QR steps preserve the Hessenberg structure and require only \(O(n^2)\) flops using Givens rotations.

  2. Wilkinson Shifts: At each step, a shift \(\mu_k\) is chosen as the eigenvalue of the trailing \(2 \times 2\) submatrix of \(\bH_k\) closest to \(h_{nn}\): \[ \begin{align} \bH_k - \mu_k \bI = \bQ_k \bR_k, \qquad \bH_{k+1} = \bR_k \bQ_k + \mu_k \bI. \end{align} \] The shift accelerates subdiagonal convergence to cubic order for symmetric matrices and quadratic order for nonsymmetric matrices. When the subdiagonal entry satisfies \(|h_{n,n-1}| \leq \varepsilon_{\text{mach}}(|h_{nn}| + |h_{n-1,n-1}|)\), \(h_{nn}\) is decoupled as a converged eigenvalue and the matrix is deflated.

WarningExercise
  1. Compute the dominant eigenvalue and eigenvector of \(\bA = \begin{pmatrix} 3 & 1 \\ 1 & 3 \end{pmatrix}\) by hand using two steps of power iteration starting with \(\bv^{(0)} = (1, 0)^T\).

  2. Apply one step of unshifted QR iteration to \(\bA = \begin{pmatrix} 2 & 1 \\ 1 & 2 \end{pmatrix}\). Compute the QR factors explicitly and show that the off-diagonal entries decrease.

  3. Let \(\bA = \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix}\). Show that unshifted QR iteration fails to converge because the factors oscillate indefinitely. Explain how introducing a shift resolves this cycle.