The choice of initial vectors for the calculation of the eigenvectors of multiple eigenvalues of a...

2
THE CHOICE OF INITIAL VECTORS CALCULATION OF THE EIGENVECTORS aJ97-8485/86 13.00 + .w 0 1986 psrgsrmm Pmas Ltd. FOR THE OF MULTIPLE EIGENVALUES OF A SYMMETRIC TRI-DIAGONAL MATRIX BY WIELANDT’S ITERATION CHRISTIAN OPITZ Sektion Chemie der Friedrich-Schiller-UniversitXt Jena, DDR-6900 Jena, German Democratic Republic (Received9 July 1984; in revisedform 14 November 1984) Abstract-Initial vectors are needed for the calculation of eigenvectors by the inverse-iteration method. Algorithms for the construction of initial vectors in the degenerate case have been developed. Let T be a symmetric tridiagonal matrix of order N and Xi (i - 1, . , N) its known eigenvalues. In order to find the eigenvector xi of T corresponding to Xi we must carry out two (or more) iterations (T - Xi+&’ = .!‘-I, I 1 (s = 1,2,. . _) (1) Recently the fast and compact subroutine HQRII (Beppu & Ninomiya, 1982) was published which used Eq. (1) as an intermediate step in solving real symmet- ric eigenvalue problems. Let us denote the initial vector xjO’ by v,. In Beppu & Ninomiya (1982), the components u,, of vi are uj, = [{(i - J)N +j)O.6180339 - g]c (2) where t is a real number which customarily ranges from 10e6 to lo-“, and g is an integer chosen so that we have 0 G {(i ~ l)N + j] 0.6180339 - g 5 1 (3) Although the forward substitution in the first step of (1) must always be carried out with this choice of v,, no time is lost since no precautions are needed to avoid overflows during the iterations. We have tested HQRII on the EC 1040 (similar to IBM 360/40) and can compare it with our own procedure by solving eigenvalue problems arising from quantum chemistry. We can certify that HQRII is twice as fast. Unfortu- nately, there are cases with degenerate eigenvalues where the choice of v, given by Eq. (2) fails. A few of the unit matrices with N z 10 are simple examples. We get linearly dependent vectors as solutions. There- fore we will describe our algorithm for the determina- tion of initial vectors in the degenerate case to derive from this a slightly changed version of this algorithm as compensation for in Eq. (2). Suppose& = Am+, = - - . -X,withlsm<nsN. First of all we compute x, by using Wilkinson’s algorithm (Wilkinson, 1962) and create the vector h, defined by h ,m-1 +iap (j - 1,. , N) (4) which is to be updated stepwise for k - m + 1, . . . , n. 1 We take p = 0.005379813.t Thereafter, to find vk in the kth stage: 1. Orthogonalize b*_, with respect to all the eigen- vectors x, (I = m, . . . , k ~ 1) and denote the orthogonalized vector by II~ (pre-orthogonaliza- tion) If I + 1 2 6 > 0 forj=l,....N (5) where 6 - 1Oa5, then take urt as vtr and denote L, by b,. If a component u,, of uI dots not satisfy inequal- ity (5) then select I Xpt,k-1 I = “,“” I Xi.r-l I (6) and form b, by h,k = h,k-, (j-l,... , N;j f pr) (7) h .wk - -b,k-1 (8) Repeat step 1 with bk instead of h,_,, and take uk as initial vector vk. After computation of x1 by Eq. (1) xk is always to be orthonormalized with respect to the vectors xmr. ., xk_, (post-orthogonalization). A few comments on step 3 are necessary. The matrix T, of order 5 with t,, - t,, - a - dip and 111 -0 elsewhere has alldwed this trick. Ts has the eigenvalues h, = --a, x* - x, - x, - 0, X5- 8. The normalized vectors x,, x~, 71 cannot answer the question why the authors Beppu and Ninomiya have taken exactly the value 0.6180339. Every other value of the same magnitude would meet the same purpose. With respect top in Eq. (4) the situation is the same. The only purpose of the summand j . p is to make sure that each component is slightly different from all the other ones.

Transcript of The choice of initial vectors for the calculation of the eigenvectors of multiple eigenvalues of a...

THE CHOICE OF INITIAL VECTORS CALCULATION OF THE EIGENVECTORS

aJ97-8485/86 13.00 + .w 0 1986 psrgsrmm Pmas Ltd.

FOR THE OF MULTIPLE

EIGENVALUES OF A SYMMETRIC TRI-DIAGONAL MATRIX BY WIELANDT’S ITERATION

CHRISTIAN OPITZ Sektion Chemie der Friedrich-Schiller-UniversitXt Jena, DDR-6900 Jena, German Democratic Republic

(Received9 July 1984; in revisedform 14 November 1984)

Abstract-Initial vectors are needed for the calculation of eigenvectors by the inverse-iteration method. Algorithms for the construction of initial vectors in the degenerate case have been developed.

Let T be a symmetric tridiagonal matrix of order N and Xi (i - 1, . , N) its known eigenvalues. In order to find the eigenvector xi of T corresponding to Xi we must carry out two (or more) iterations

(T - Xi+&’ = .!‘-I, I 1 (s = 1,2,. . _) (1)

Recently the fast and compact subroutine HQRII (Beppu & Ninomiya, 1982) was published which used Eq. (1) as an intermediate step in solving real symmet- ric eigenvalue problems. Let us denote the initial vector xjO’ by v,. In Beppu & Ninomiya (1982), the components u,, of vi are

uj, = [{(i - J)N +j)O.6180339 - g]c (2)

where t is a real number which customarily ranges from 10e6 to lo-“, and g is an integer chosen so that we have

0 G {(i ~ l)N + j] 0.6180339 - g 5 1 (3)

Although the forward substitution in the first step of (1) must always be carried out with this choice of v,, no time is lost since no precautions are needed to avoid overflows during the iterations. We have tested HQRII on the EC 1040 (similar to IBM 360/40) and can compare it with our own procedure by solving eigenvalue problems arising from quantum chemistry. We can certify that HQRII is twice as fast. Unfortu- nately, there are cases with degenerate eigenvalues where the choice of v, given by Eq. (2) fails. A few of the unit matrices with N z 10 are simple examples. We get linearly dependent vectors as solutions. There- fore we will describe our algorithm for the determina- tion of initial vectors in the degenerate case to derive from this a slightly changed version of this algorithm as compensation for in Eq. (2).

Suppose& = Am+, = - - . -X,withlsm<nsN. First of all we compute x, by using Wilkinson’s algorithm (Wilkinson, 1962) and create the vector h, defined by

h ,m-1 +iap (j - 1,. , N) (4)

which is to be updated stepwise for k - m + 1, . . . , n.

1

We take p = 0.005379813.t Thereafter, to find vk in the kth stage:

1. Orthogonalize b*_, with respect to all the eigen- vectors x, (I = m, . . . , k ~ 1) and denote the orthogonalized vector by II~ (pre-orthogonaliza- tion) If

I + 1 2 6 > 0 forj=l,....N (5)

where 6 - 1Oa5, then take urt as vtr and denote L, by b,. If a component u,, of uI dots not satisfy inequal- ity (5) then select

I Xpt,k-1 I = “,“” I Xi.r-l I (6)

and form b, by

h,k = h,k-, (j-l,... , N;j f pr) (7)

h .wk - -b,k-1 (8)

Repeat step 1 with bk instead of h,_,, and take uk as initial vector vk.

After computation of x1 by Eq. (1) xk is always to be orthonormalized with respect to the vectors xmr . ., xk_, (post-orthogonalization).

A few comments on step 3 are necessary. The matrix T, of order 5 with

t,, - t,, - a - dip

and

111 -0 elsewhere

has alldwed this trick. Ts has the eigenvalues h, = --a, x* - x, - x, - 0, X5 - 8. The normalized vectors x,, x~,

71 cannot answer the question why the authors Beppu and Ninomiya have taken exactly the value 0.6180339. Every other value of the same magnitude would meet the same purpose. With respect top in Eq. (4) the situation is the same. The only purpose of the summand j . p is to make sure that each component is slightly different from all the other ones.

2 C. OPITZ

and x5 calculated by use of the algorithm (Wilkinson, 1962) are

xT=(-a,a,O,O,O)

x: = (0, 0, b, b, b) where b=Ji-JS

x:= (a,a,O,O,O)

If we start the calculation of x, with h, given by Eq. (4) and form v) performing step 1 we will obtain, after two iterations of Eq. (1),

XT= (O,O, -u,O,u)

If we try to calculate x4 in the same way as x3 then-starting also with h,-we will find after step 1 the initial vector

v:= (1 +p, 1 + 2P,O,O,O)

lying in the subspace spanned by x, and x5. This subspace is orthogonal to the subspace which is spanned by x2, xX, and x+ The iterations (1) cannot correct this shortcoming. Therefore we have added a “consecutive remembr&ce”t of preceding eigenvec- tors to the algorithm for finding vlr.

At first sight it seems possible that two or more of the pi’s are equal to each other. This circumstance could cause the effect shown for v4 of T,. A relevant test would terminate our eigenvalue procedure in this case, but we have not met this case yet.

tStep 3 passes on information about the preceding eigen- vector to the initial vector of the next eigenvector. That means that v* (k = m + 1, . , n) contains information about all the eigenvectors x,, x,,,. _ . , xk_,. This state of affairs I have denoted as “consecutive remembrance” or “back-coupling.”

Finally, let us return to HQRI1.S We substitute Eq. (2) by the following algorithm which is based on v, defined by

v,,,, = (1 + j . lo-‘) 0.6180339 - E

(j= l,...,N) (9)

The kth stage (k = M + 1, . . . , n) consists of the two steps

1. Determine p* so that

under the additional condition that

Upr.k-l Z= o (11)

2. Form V~ by

ujk = v],k-I (j= l,... , N;j + pk) (12)

%k - p”pdz-l (13)

and take vt as initial vector for the calculation of xt. We have added the condition (11) because no pre- orthogonalization is carried out in HQRII. Our exoe- rience show that the above mentioned critical cases are solved correctly.

REFERENCES

Beppu, Y. & Ninomiya, 1. (1982). Compurers & Chemistry 6, 87.

Wilkinson, J. H. (1962), Nuwter. Mark. 4, 368.

$ln the original version of HQRII written by Beppu and Ninimiya, all of the initial vectors v,, v,+~. . , v, are determined by Eq. (2). My change does not consist of the substitution of Eq. (2) by another equation. My change consists of the following: first of all, the vector Y, and only this vector, is created by Eq. (9). All further initial vectors v,,,,,. _ . , v. are generated with the help of the updating algorithm described in Eqs. (10-13).