Math 2.0

Numerical analysis Eigenvalue computations Theorem

Divide-and-conquer eigenvalue algorithm

Builds on Tridiagonal matrixSymmetric matrixDiagonal matrixEigenvalueEigenvectorOrthogonal matrix

Statement

Let T∈ℝn×nT \in \R^{n \times n} be a symmetric tridiagonal matrix with diagonal entries a1,…,ana_1, \dots, a_n and off-diagonal entries b1,…,bn−1b_1, \dots, b_{n-1}, and let 1≤k<n1 \le k < n with β=bk\beta = b_k.

  1. (Splitting.) Let T1T_1 be the leading k×kk \times k block of TT with aka_k replaced by ak−βa_k - \beta, and T2T_2 the trailing (n−k)×(n−k)(n-k) \times (n-k) block with ak+1a_{k+1} replaced by ak+1−βa_{k+1} - \beta. With u=ek+ek+1u = e_k + e_{k+1}, T=(T100T2)+β uuT.T = \begin{pmatrix} T_1 & 0 \\ 0 & T_2 \end{pmatrix} + \beta \, u u^T. If Ti=QiDiQiTT_i = Q_i D_i Q_i^T with QiQ_i orthogonal and DiD_i diagonal, then T=Q(D+βzzT)QTT = Q (D + \beta z z^T) Q^T with Q=diag(Q1,Q2)Q = \mathrm{diag}(Q_1, Q_2), D=diag(D1,D2)D = \mathrm{diag}(D_1, D_2) and z=QTuz = Q^T u.
  2. (Secular equation.) Let D=diag(d1,…,dn)D = \mathrm{diag}(d_1, \dots, d_n) with d1<d2<⋯<dnd_1 < d_2 < \cdots < d_n, let z∈ℝnz \in \R^n have all entries nonzero, and let β>0\beta > 0. Then the eigenvalues of D+βzzTD + \beta z z^T are the nn roots of f(λ)=1+β∑i=1nzi2di−λ,f(\lambda) = 1 + \beta \sum_{i=1}^{n} \frac{z_i^2}{d_i - \lambda}, they satisfy d1<λ1<d2<λ2<⋯<dn<λnd_1 < \lambda_1 < d_2 < \lambda_2 < \cdots < d_n < \lambda_n, and (D−λjI)−1z(D - \lambda_j I)^{-1} z is an eigenvector for λj\lambda_j.

Remarks

Part 1 is a direct check of entries: uuTu u^T has ones exactly in positions (k,k)(k, k), (k,k+1)(k, k+1), (k+1,k)(k+1, k), (k+1,k+1)(k+1, k+1). For part 2, if (D+βzzT)x=λx(D + \beta z z^T) x = \lambda x and λ\lambda is not a did_i, then x=−β(zTx)(D−λI)−1zx = -\beta (z^T x)(D - \lambda I)^{-1} z with zTx≠0z^T x \ne 0, and taking the inner product with zz gives f(λ)=0f(\lambda) = 0. Since f′(λ)=β∑izi2/(di−λ)2>0f'(\lambda) = \beta \sum_i z_i^2/(d_i - \lambda)^2 > 0 and ff goes from −∞-\infty to +∞+\infty between consecutive poles, and from −∞-\infty to 11 after dnd_n, there is exactly one root in each of these nn intervals. For β<0\beta < 0 the interlacing is reversed: λ1<d1<λ2<⋯<λn<dn\lambda_1 < d_1 < \lambda_2 < \cdots < \lambda_n < d_n. If some zi=0z_i = 0 or some did_i coincide, then some did_i is already an eigenvalue and the problem is reduced in size first; this step is called deflation.

The algorithm applies the splitting recursively, solves the small problems directly, and merges with the secular equation. Each root is found by a safeguarded Newton-type iteration on ff in its interval. Computing the eigenvectors in a numerically orthogonal way needs a careful recomputation of zz, due to Gu and Eisenstat.

Going deeper

For a student

Symmetric eigenvalue problems are first reduced to tridiagonal form by orthogonal transformations, so this algorithm handles the core step. It is among the fastest methods when all eigenvalues and eigenvectors are wanted, because deflation is frequent in practice and the merges use matrix multiplication. The interlacing in part 2 is a rank-one analogue of the Cauchy interlacing theorem. The method was proposed by Cuppen in 1981.

Reading path

To understand this page from the ground up, read these 7 pages in order. The foundations come first.

Show the path as a graph
Each page uses the pages above it. The colour of the bar on a box shows how strong the evidence is, and the box also gives it as text. The list has the same pages.
  • no evidence level
  1. Diagonal matrix concept
  2. Eigenvalue concept
  3. Eigenvector concept
  4. Orthogonal matrix concept
  5. Symmetric matrix concept
  6. Tridiagonal matrix concept
  7. Divide-and-conquer eigenvalue algorithm statement

Further reading

  1. Web https://en.wikipedia.org/wiki/Divide-and-conquer_eigenvalue_algorithm
About this page
TagBJE8P9TH88
URIm2://BJE8P9TH88
Kindstatement, theorem
WritingW0 stub
MSC65F15
StatusThis copy of the site has no build data. Run m2 status BJE8P9TH88.
AboutEigenvalue algorithm
UsesTridiagonal matrix, Symmetric matrix, Diagonal matrix, Eigenvalue, Eigenvector, Orthogonal matrix
Same as

Markdown · JSON · Edit on GitHub

What this page needs for W1

  • an inventory row: the row of the inventory that the node accounts for (0 of 1)
  • a source with a locator (0 of 1)

The writing levels say how complete the text of a page is. They do not measure its truth.

What links here

No page links to this page yet.