k k
k k
k k
k p p
p
,
where is a constant. Usually 2, because the iteration with 2 can only jump over one root, which would be detected by a sign change in p.
There are essentially two approaches to calculate eigenvalues, transformation and iterative methods.
8.4. Matrix transformation methods
The standard approach for the numerical solution of the eigenproblem is to reduce the matrix involved to some simpler form, which yields the eigenvalues and eigenvectors directly, for instance, for symmetric matrices, the diagonal form.
The idea is to make the transformation with orthogonal operators as often as possible, in order to reduce the effect of perturbations [8.4].
Unsymmetric matrices do not in general have an orthonormal set of eigenvectors but they can be transformed to Schur form. Any matrix can be transformed to upper triangular form
T by a unitary similarity transformation
U H A U T . (8.15) The diagonal elements of
T are the eigenvalues of
A . The columns of
U are Schur vectors. If
A were symmetric,
T would be diagonal.Matrices are usually first transformed to upper Hessenberg form or tridiagonal form, then the subdiagonal elements are zeroed by iteration methods.
Transformation methods can be used when it is possible to store the whole matrix in one array in the computer and when all eigenvalues are required.
MATLAB [8.5] and LAPACK [8.6] give transformation methods as their primary choice and can handle dense matrices of not too large order.
The recognition that matrices could be reduced, by orthogonal transformations, in a finite number of steps, to some special reduced form that lends itself more efficiently to further computations was a very important step in the solution of eigenproblems [8.1]. In particular, a symmetric matrix can be reduced to tridiagonal form by Jacobi-rotations, provided that these rotations are
restricted to annihilate entries of
A outside its tridiagonal part. This was suggested by Givens in 1954.In 1958 Householder discovered that complete columns of
A could be reduced to zero, outside the tridiagonal part, by the more efficient Householder reflections (section 8.4.2). His method has become the method of choice for the reduction of matrices to tridiagonal form on serial computers.Thus for eigenproblems, a symmetric matrix can be reduced by a finite number of orthogonal similarity transformations to tridiagonal form, and unsymmetric matrices can be transformed to upper Hessenberg form (a matrix which is zero below the subdiagonal).
By 1960, the eigenvalue problem for a symmetric tridiagonal matrix was solved in ANSYS [8.7] by using the Sturm sequence property for successive subdeterminants. The corresponding eigenvectors were computed by inverse iteration. A complete and thorough analysis for the Givens and Householder reductions and for the use of Sturm sequences, is given in Wilkinson’s book [8.8], which was the bible of numerical linear algebra for a long time.
A superior technique for determining the complete set of eigenvalues and eigenvectors is the QR method. It became the method of choice for symmetric problems after the publication of Parlett’s book [8.9]. The key idea came from Rutishauser with his construction of a related algorithm, called LR, in 1958. After 1980, the Householder-QR-inverse iteration sequence of methods has been used for dense matrices of order up to a few thousands [8.1].
8.4.1 The eigenvalue decomposition
Let 1,2,...,n be the eigenvalues of a matrix
A , let
x 1, x 2,...,
x n be a set of corresponding eigenvectors, let
Λ denote the nn diagonal matrix with the
S on the diagonal, and let
X denote the nn matrix whose j-th column is
x j. Then
A X X
Λ (8.16) and, if the eigenvectors are linearly independent,
X 1 exists, and
A X
Λ
X 1. (8.17) This is known as the eigenvalue decomposition of the matrix
A . With non-singular
X , equation (8.16) becomes
X 1 A X
Λ , (8.18)known as a similarity transformation.
So
A is transformed to diagonal form by a similarity transformation.Usually this cannot be made in a single step. Transforming techniques for symmetric matrices make a sequence of similarity transformations until a diagonal form (8.18) is reached, showing all the eigenvalues and eigenvectors.
8.4.2 Householder reflections
Formally, a Householder reflection is a matrix of the form
H I
u u T /h, (8.19) where
u is any nonzero vector and h
u T u /2. The resulting matrix is both symmetric,
H T H , and orthogonal,
H T H I . Hence
H 1
H T H .The matrix
H is called a reflection matrix, because the vector
H
w is the reflection of the vector
w in the plane to which
u is orthogonal.The real symmetric matrix
B in equation (8.7) is reduced to a symmetric tridiagonal matrix
A using orthogonal similarity transformations:
y
H
z , (8.20)
B H
z
H
z ,
H 1 B H
z z ,
A
z z , (8.21) where
A H 1 B H H B H . (8.22) The similarity transformation
H B H eliminates the elements in the j-th row of
B to the left of the subdiagonal and the symmetrical elements in the j-th column.This was the basis of the subroutine TRED1 in EISPACK [8.10].
8.4.3 Sturm sequence and bisection
For the eigenproblem (8.21), the characteristic equation in determinantal form is
Let det0 1 and consider the determinants marked off by dotted lines
be evaluated easily by the recurrence relationship (8.24). This is known as a Sturm sequence and has the property that the number of distinct real roots of detn with an algebraic value less than b is equal to the number of changes of sign in it.
If, for b, we have
then below b there are two eigenfrequencies.
When one of the determinants has a value of zero, it is given the sign of the previous determinant in the sequence.
For a tridiagonal symmetric matrix it is thus possible to determine the number of eigenvalues with an algebraic value less than LB and UB, respectively.
Their difference is the number of eigenvalues in the interval (LB, UB).
Given the number, they may be located by a systematic search procedure.
Each subinterval enclosing an eigenvalue in (LB, UB) is shrunk using a bisection process until the endpoints are close enough to be accepted as an eigenvalue. The result is an ordered set of eigenvalues within (LB, UB). The corresponding eigenvectors are determined using inverse iteration.
Identical eigenvalues are perturbed slightly in an attempt to obtain independent eigenvectors. These perturbations are not recorded in the eigenvalue array [8.11].
8.4.4 Partial Schur decomposition
The problem of finding the eigenvectors of a matrix
A can be reduced to computing the eigenvectors of a triangular matrix using a Schur decomposition.Denoting
Xk
x 1, x 2,...,
x k
and
Θk diag
1,2,...,k
, the individual relations
A x k k
x k can be combined in
A Xk Xk
Θk . (8.25) For a selected set of k (e.g.: largest) eigenvalues of
A , there is a partial Schur decomposition [8.12]
A Uk Uk Tk , (8.26) where
Tk is upper triangular.
Uk is orthogonal and its columns are Schur vectors of
A . The diagonal elements of
T are eigenvalues of k
A . By appropriate choice of
Uk they may be made to appear in any specified order. The Schur matrix
Tk has an eigendecomposition
Tk Sk Sk
Θk , (8.27)where
Sk is the upper triangular matrix of the eigenvectors of
T , and k
Θk isthe diagonal matrix of the eigenvalues from equation (8.25). It turns out that the eigenvector matrix