Professional Documents
Culture Documents
Calculation of The Eigenvalues of A Symmetric Tridiagonal Matrix by The Method of Bisection (1962)
Calculation of The Eigenvalues of A Symmetric Tridiagonal Matrix by The Method of Bisection (1962)
C a l c u l a t i o n o f the e i g e n v a l u e s o f a s y m m e t r i c t r i d i a g o n a l
matrix b y the m e t h o d o f bisection
Contributed by
J. H. WILKINSON
1. Theoretical background
1.1. The Sturm sequence property
This m e t h o d ~3] is based on the following theorem.
Given a s y m m e t r i c tridiagonal m a t r i x with diagonal elements q to c, and
off-diagonal elements b1 to b~_ 1 with bi~=0, then for any n u m b e r ~, define
the sequence /o (~),/1 (~) . . . . . /~ (~) by the relations
/o (~) = 1, (1)
/1(~) = ( q - z), (2)
li (~) = (ci - ~)/~-i (a) - b~_i/~- 2 (~)- (3)
Associate a sign with each of t h e / i (~t) as follows. If [i (3,)=~=0 then this sign is
the true sign of /i ()I). If /i (~)= 0 we take its sign to be the opposite of that
o f / i - 1 (~). With this interpretation the number, A (~), o~ agreements in sign between
consecutive members o~ the sequence is equal to the number o/ eigenvalues strictly
greater than ~.
A few c o m m e n t s are in order. The condition bi =~0 considerably simplifies
the s t a t e m e n t of the theorem. I t ensures t h a t there are no true multiple eigen-
values and t h a t no two consecutive m e m b e r s of the sequence are both zero.
The sign a t t a c h e d to a zero /i (~) ( i < n) is u n i m p o r t a n t provided we keep the
same sign when comparing /i-1(~) with /i(~) and/~(~) with /i+1 (~), and hence
we can regard all zero values as positive for values of i from t to n - - 1 . For
i = n however we m u s t have a strict interpretation of the rule.
The theorem m a y be applied to u n s y m m e t r i c tridiagonal matrices with
upper off-diagonal elements a i and lower off-diagonal elements bi provided
a i b i > O for all i. We merely replace bi_ 1 in (3) b y ai_ 1 bi_ 1 .
so t h a t
A(ho)>=r; A(go)<r. (5)
Then in T bisection steps we can locate ~iin an interval (h i gi) of width (go -- ho)/2r
as follows.
Suppose in i steps we have established that
A (hi) _-->r; A (gi) < r, (6)
g i - hi= (go- h0)/2'. (7)
I n the ( i + 0 - t h step we compute AE 89 ~. T h e n :
if A[ 89 l__>r we take h i + l _- -1~ E g i + h i ] , . gi+l=-gi, (8)
if A[ 89 we take gi+l= 89 h~+l=-hi. (9)
In either ease we have
(g~§ - h,§ = ~ (g~- h,) (10)
and
A(hi+l)>=r; A(gi+l)<r (tt)
so that ~ is in the interval (hi+l, gi+l)
Values h 0 and go satisfying (4) and (5) are given b y
h o = -- norm go = + norm (t 2)
where norm is the infinity norm of the tridiagonal matrix.
2. Applicability
The procedure is designed for a symmetric tridiagonal matrix, which m a y
be the direct sum of any n u m b e r of symmetric tridiagonal matrices or even
degenerate into a diagonal matrix.
3. F o r m a l p a r a m e t e r list
Since the location of each eigenvalue is achieved virtually independently of
the others, two variants of the procedure have been designed to compute:
a) The eigenvalues lying between gu and go.
b) The mr eigenvalues lying to the right of e and the ml eigenvalues lying
to the left of e.
The vector c is the diagonal and the vector b the subdiagonal of a symmetric
tridiagonal matrix of order n, t is the number of bisection steps, norm is the
infinity norm of the tridiagonalmatrix, gamma the square of the relative machine
precision. The m l eigenvalues are stored in wEl ~. . . . . w~ml~ in decreasing
order.
4. Algol p r o g r a m s
procedure tridibisection l (c, b, n, gu, go, t, gamma) result: (w, norm, ml) ;
vQlue n, gu, go, t, gamma;
integer n, t, m l ;
real gu, go, gamma, norm;
array c, b, w;
364 Handbook Series Linear Algebra
f o r k := t stepl until ml do
begin d,=d+t ;
g:=go; h ,=gu;
forj := t s t e p I until t do
begin lambda ,-- (g + h)/2;
sturms sequence;
ifal>~ d then h := lambda else g := lambda
end j;
Ek] ,= (g + k)/2
end k;
noeigenvalue: end;
pEI] =o;
lambda := e;
sturms sequence; c o m m e n t Determination of the re-
quired range of the eigen-
value subscripts;
d l ,= a l - - mr; d2 = a l + ml;
if d l < 0 t h e n d l = 0;
ifd2>=n + t then d2 ,= n;
d=dl; m l .'= 0;
for k , = d l step t until d2 - - t do
begin d = d + t ;
g ,= norm; h : = - - norm;
for]" := t step t until t do
begin lambda := (g + h)/2 ;
sturms sequence;
if al >~ d t h e n h ,= lambda e l s e g ,-- lambda
end/';
m l ,= m l + t ;
w ~ml] ,= (g + h)/2
end k
end;
5. Organizational a n d n o t a t i o n a l details
To facilitate computation, the quantities Pi+l given by the squares of the
off-diagonal elements bi are computed.
and b i = l (i = t to 20) has two eigenvalues which differ by one part in t015.
Although the bisection procedure is not as fast as some alternative techniques
it is very accurate and its speed and accuracy are unaffected by dense clusters
of eigenvalues. An upper bound for the error in any computed eigenvalue of
J. H. WILKINSON:Method of bisection for a symmetric tridiagonal matrix 367
8. Test results
The procedure was tested on the Z 22 and Siemens 2002 in the Institute
for Applied Mathematics at Mainz and a second test was performed on the
E R M E T H in the Institute for Applied Mathematics of the Eidgen6ssische
Technisehe Hochschule at Ztirich.
We computed on Siemens 2002 with T = 35 and g a m m a = t0 -30 the eigen-
values of the two tridiagonal matrices which were the test results in the article
"HouSEHOLDER'S method for symmetric matrices".
References
[1] W'ILKINSON, J. H. : Error analysis of floating-point computation. Numer. Math.
2, 319 (1960).
[2] BAUER, F. L.: Sequential reduction to tridiagonal form. J. Soc. Indust. Appl.
Math. 7, 108--113 (t959).
[31 GIVENS,W.: Numerical computation of the characteristic values of a real sym-
metric matrix. Oak Ridge National Laboratory, Report ORNL-1574.