Numerical Linear Algebra with Applications, Vol. 4(5), 425–437 (1997)

An Inexact Inverse Iteration for Large Sparse Eigenvalue Problems

Yu-Ling Lai1, Kun-Yi Lin2 and Wen-Wei Lin2

1Department of Mathematics, National Chung-Cheng University, Chia-Yi 621, Taiwan

2Institute of Applied Mathematics, National Tsing-Hua University, Hsinchu 300, Taiwan

In this paper, we propose an inexact inverse iteration method for the computation of the eigenvalue with the smallest modulus and its associated eigenvector for a large . The linear systems of the traditional inverse iteration are solved with accuracy that depends on the eigenvalue with the second smallest modulus and iteration numbers. We prove that this approach preserves the linear convergence of inverse iteration. We also propose two practical formulas for the accuracy bound which are used in actual implementation. © 1997 by John Wiley & Sons, Ltd.

Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) (No. of Figures: 3 No. of Tables: 2 No. of Refs: 17)

KEY WORDS inexact inverse iteration; linear convergence; large eigenvalue problem

1. Introduction

The numerical computation of eigenvalues of large matrices is a problem of major im- portance in many engineering and scientific applications. Eigenvalue calculations arise in structural dynamics, quantum chemistry, nuclear engineering and so forth. Consequently, it goes without saying that the eigenvalue problem is essential in applied . Inverse iteration [10,17] is one of the most widely used algorithms for solving large eigenvalue problems when only a specified eigenpair is required. The global convergence property is the major advantage of this method. Inverse iteration consists of two major steps. One is to generate a sequence of vectors by solving linear systems with some scheme, the other is to ‘normalize’ the vector in the sequence generated by the previous step. For simplicity, we call the process for generating these vectors the ‘outer iteration’. There are two

CCC 1070–5325/97/050425–13 $17.50 Received September 1996 ©1997 by John Wiley & Sons, Ltd. Revised January 1997 426 Yu-Ling Lai, Kun-Yi Lin and Wen-Wei Lin ways to solve linear systems, i.e., direct methods and iterative methods. In this paper we are concerned with large sparse matrices. Hence, iterative methods would be more appropriate to solve these linear systems than direct methods. We call the process for generating the vectors by any for solving the linear system, the ‘inner iteration’. No doubt, the greatest computational cost of inverse iteration is solving the linear systems in the inner iteration process. Our numerical experience indicates that the residual in the outer iteration seldom varies much even if there is a small error made in the inner iteration. It should be stressed that this was also observed by Morgan and Scott in [9]. This important and interesting message motivates us to foster a concept of ‘relaxation’—the core idea in this paper. Namely, the concept is to try to reduce computational costs by controlling the tolerance in each inner-loop process. It is known that inverse iteration with a fixed shift has linear convergence. To accelerate the convergence rate, inverse iteration with variant shifts or Rayleigh quotient iteration (RQI) [10,15,17] has been developed and proven to be mathematically equivalent to Newton’s method [11]. Therefore, it is locally quadratically convergent. It is natural also to incorporate the concept of inexact inversion to the inverse iteration with variant shifts or RQI. However, when the approximate eigenvalue is close to the desired eigenvalue, the shifted matrix is very ill-conditioned. Thus, any iterative method applied to the linear systems may converge very slowly due to the large condition number. On the other hand, subspace approaches, including methods of Lanczos, Arnoldi and Davidson, can be viewed as accelerated inverse iteration. The idea of inexact inversion in combination with the subspace method has been studied in [2,3,8,9,13]. Especially, in [13] Sleijpen and Van der Vorst have shown that the Jacobi–Davidson method is an inexact Newton process [4] when the approximate solutions of approximate systems are used. Thus, in this paper, we focus on finding a good stopping tolerance for the inner iteration of inverse iteration. This may help the readers to design good strategies for the inexact inversion in the Jacobi–Davidson method as well as other subspace methods. This paper is organized as follows. In Section 2, we propose an inexact inverse iteration and prove the relaxation technique preserves the linear convergence property of inverse iteration. In Section 3, two practical formulas for the stopping tolerance are presented. Gen- eralized inexact inverse iteration algorithms for solving generalized eigenvalue problems are discussed. Finally, we present some numerical experiments and conclusions in Section 4.

2. Inexact inverse iteration

Throughout this paper, we use the abbreviation ‘INVIT’ to denote the so called ‘inverse iteration’. In this section, we aim at finding a good stopping tolerance for the inner iteration of INVIT such that the computational cost can be much reduced and the convergence behaviour of the outer iteration of INVIT will not be affected too much. For this, we propose the following algorithm.

Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) © 1997 by John Wiley & Sons, Ltd An Inexact Inverse Iteration for Large Sparse Eigenvalue Problems 427

Algorithm 2.1. Inexact INVIT: given a tolerance TOL,ε0 1and a linear functional `. = For k 0, 1, = ··· Solve Avk 1 uk until Avk 1 uk εk + = k + − k≤ βk 1 `(vk 1) + = + uk 1 vk 1/βk 1 + = + + rk 1 Auk 1 uk 1/βk 1 + = + − + + Compute εk 1 + If rk 1 λn >0. = n = | |≥ ≥| −| | | λn 1 M Let u αizi, ρ and X M.If αn > ,βk 0 and εk 0 λn 1 − 2 1 ρ 1 = i 1 =| − | k k = | | − 6= + = 1 = k 1 Pfor all k in Algorithm 2.1, then + β λ i 1 i n 1 = | − |

Q zn 1 lim uk and lim βk k = `(zn) k = λn →∞ →∞ Proof Let dk 1 Avk uk 1. Since dk 1 2 εk 1, we write dk 1 ξk 1yk 1, where − = − − k − k ≤ − − = − − ξk 1 εk 1 and yk 1 2 1. Thus, we get − ≤ − k − k = 1 1 vk A− uk 1 A− dk 1 = − + − By induction on k, we have the formula

k 1 1 k k k 1 − 1 vk [A− u0 A− d0 β1A− + d1 ( βi)A− dk 1] = k 1 + + +···+ − i −1 βi i 1 = Y= 1 : Q wk (2.1) = πk 1 − k k k j 1 j where wk A− u0 πj 1A− + − dj 1 and πj i 1 βi. (Note that π0 1.) It = + j 1 − − = = = yields P= Q k k k j 1 A− u0 πj 1A− + − dj 1 vk + j 1 − − wk uk = (2.2) = `(v ) = Pk = `(w ) k k k j 1 k `(A− u0 πj 1A− + − dj 1) + j 1 − − = n P (j) (j) Let yj δi zi. It is readily proved that δi

© 1997 by John Wiley & Sons, Ltd. Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) 428 Yu-Ling Lai, Kun-Yi Lin and Wen-Wei Lin

n (j) ξj δi zi, the following two equations are derived. i 1 P= n n k k k λn k A u α λ− z λ α ( ) z (2.3) − 0 i i i n− i λ i = i 1 = i 1 i X= X= k k n k j 1 k j 1 (j 1) πj 1A− + − dj 1 πj 1 λi− + − ξj 1δi − zi − − − − j 1 = j 1 i 1 X= X= X= k n k λn k 1 j j 1 (j 1) λn− πj 1 ( ) + − λn− ξj 1δi − zi. (2.4) − λ − = j 1 i 1 i X= X= From (2.2), (2.3) and (2.4) it follows that

n k n k λn k λn k 1 j j 1 (j 1) λ ( α ( ) z π ( ) λ − ξ δ − z ) n− i λi i j 1 λi + − n j 1 i i i 1 + j 1 − i 1 − uk = = = = Pn Pk Pn k λn k λn k 1 j j 1 (j 1) λ− `( α ( ) z π ( ) λ − ξ δ − z ) n i λi i j 1 λi + − n j 1 i i i 1 + j 1 − i 1 − = = = n P P P α ( λn )kz (k) (k) i λi i 1 2 i 1 + + = (2.5) = Pn `( α ( λn )kz (k) (k)) i λi i 1 2 i 1 + + P= where k (k) j 1 (j 1)  : πj 1λn− ξj 1δn − zn 1 − − = j 1 X= and k n 1 (k) − λn k 1 j j 1 (j 1)  : πj 1 ( ) + − λn− ξj 1δi − zi 2 − λ − = j 1 i 1 i X= X= Since ρ<1, we get

k k j 1 (j 1) j 1 πj 1λn− ξj 1δn − πj 1λn− Mξj 1 − − − − j 1 | |≤j 1| | X= X= k j 1 1 πj 1λn− M ≤ | − | · j 1 j 1 i −1 βiλn 1 X= = | − | k Q1 ρk M M ρj 1 M − as k (2.6) − 1 ρ 1 ρ = j 1 = · → →∞ X= − − It follows that

(k)  converges to czn for some constant c as k (2.7) 1 →∞

Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) © 1997 by John Wiley & Sons, Ltd An Inexact Inverse Iteration for Large Sparse Eigenvalue Problems 429

M It is noted that c 1 ρ. On the other| hand,|≤ because−

k n 1 (k) − λn k 1 j j 1 (j 1)  2 πj 1 ( ) + − λn− ξj 1δi − zi 2 2 − λ − k k ≤ j 1 | |·ki 1 i k X= X= k n 1 j 1 k 1 j − (j 1) πj 1λn− ρ + − ξj 1 δi − zi 2 − − ≤ j 1 | |· · i 1| |·k k X= X= k j 1 k 1 j (n 1)M πj 1λn− ρ + − εj 1 − − ≤ − j 1 | |· X= k (n 1)M ρk (n 1)Mkρk 0ask (2.8) = − j 1 = − → →∞ X= we obtain that (k) 0ask .Moreover, it is clear that 2 → →∞ n n 1 λ − λ α ( n )kz α z α ( n )kz α z as k (2.9) i λ i n n i λ i n n i 1 i = + i 1 i → →∞ X= X= M From (2.7), (2.8), (2.9) and the fact that αn c 0 because of the assumption αn > 1 ρ M + 6= | | − and c 1 ρ, we conclude that | |≤ − αnzn czn zn lim uk + (2.10) k = `(αnzn czn) = `(zn) →∞ + 1 Next, we want to prove that lim βk . From (2.1) we have k = λn →∞ `(wk) βk `(vk) and πk `(wk) (2.11) = = πk 1 = − From (2.11), (2.3) and (2.4) we have

1 `(wk) 1 βk | − λn |=|`(wk 1) − λn | − n k n k λnk λn k 1 j j 1 (j 1) λ( α()`(z ) π ( ) λ − ξ δ − `(z )) n− iλi i j 1 λi + − n j 1 i i i1 + j 1 − i 1 − 1 P= P= P= =| n k 1 n − λn | k 1 λn k 1 − λn k j j 1 (j 1) λ− + ( α ( ) `(z ) π ( ) λ − ξ δ − `(z )) n i λi − i j 1 λi − n j 1 i i i 1 + j 1 − i 1 − P= P= P= For simplicity, we define the long term in the denominator as

n k 1 n λn k 1 − λn k j j 1 (j 1) ck 1 : αi( ) − `(zi) πj 1 ( ) − λn− ξj 1δi − `(zi) − λ − λ − = i 1 i + j 1 i 1 i X= X= X=

© 1997 by John Wiley & Sons, Ltd. Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) 430 Yu-Ling Lai, Kun-Yi Lin and Wen-Wei Lin

Then 1 βk | − λn | n k n λn k λn k 1 j j 1 (j 1) α ( ) `(z ) π ( ) λ − ξ δ − `(z ) i λi i j 1 λi + − n j 1 i i 1 i 1 + j 1 − i 1 − P= P= P= = λn | ck 1 | | − n k 1 n λn k 1 − λn k j j 1 (j 1) α ( ) `(z ) π ( ) λ − ξ δ − `(z ) i λi − i j 1 λi − n j 1 i i i 1 + j 1 − i 1 − P= P= P= − ck 1 | n − n 1 λn k λn k 1 λn k 1 (k 1) αi(( ) ( ) − )`(zi) πk 1 ( )λn− ξk 1δi − `(zi) λ c λ λ − λ − ≤ n k 1 {| i 1 i − i |+| i 1 i | | − | X= X= k 1 n − λn k 1 j λn k j j 1 (j 1) πj 1( (( ) + − ( ) − )λn− ξj 1δi − `(zi)) − λ λ − +| j 1 i 1 i − i |} X= X= Now, consider the three terms on the right-hand side of the last inequality. It is obvious that

n λ λ α (( n )k ( n )k 1)`(z ) 0 (2.12) i λ λ − i | i 1 i − i |→ X= and n n λn k 1 (k 1) λn k 1 1 πk 1 ( )λn− ξk 1δi − `(zi) πk 1 ( )λn− k 1 M`(zi) λi λi πk 1 λn 1 − | − i 1 − |≤| − i 1 − | − | | n= = (2.13) P k P ρ M`(zi) 0 ≤ i 1 | |→ P= Furthermore,

k 1 n − λn k 1 j λn k j j 1 (j 1) πj 1( (( ) + − ( ) − )λn− ξj 1δi − `(zi)) − λ λ − | j 1 i 1 i − i | X= X= k 1 n − λn k 1 j λn k j j 1 1 πj 1( (( ) + − ( ) − )λn− M`(zi)) − λ λ j 1 ≤|j 1 i 1 i − i πj 1 λn 1 − | X= X= − | − | k 1 n − λ λ ( ( n )k 1 j ( n )k j ρj 1M `(z ) ) λ + − λ − − i ≤ j 1 i 1 | i − i | | | X= X= k 1 n − k j j 1 ( 2ρ − ρ − M `(zi) ) ≤ j 1 i 1 · · | | X= X= k 1 n n − k 1 k 1 2ρ − M( `(zi) ) 2(k 1) ρ − M( `(zi) ) 0 (2.14) = j 1 · i 1 | | = − · · i 1 | | → X= X= X= (k) Now, we want to estimate the term 1/ λnck 1 .Ask , from (2.7) and (2.8),  and | − | →∞ 1

Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) © 1997 by John Wiley & Sons, Ltd An Inexact Inverse Iteration for Large Sparse Eigenvalue Problems 431

(k) 2 converge to 0 and czn, respectively, thus

n λn k 1 (k 1) (k 1) ck 1 αi( ) − `(zi) `( − ) `( − ) αn`(zn) c `(zn) 0 − λ 1 2 = i 1 i + + → + 6= X= Therefore 1/ λnck 1 is bounded above. It follows that | − | 1 lim βk 0. k | − λn |= →∞ This completes the proof. Some important and interesting phenomena from the process of the preceding proof are pointed out below. Remark 1 (i) Since any vector which has a component in the direction of zn multiplied by a large M enough number will satisfy the theorem’s assumption αn > 1 ρ , it is easy to find an initial vector satisfying that assumption. On the other| | hand,− from the proof, it is easily observed that αn c 0 is sufficient for the theorem to be true. In practice, it + 6= is very likely that uk has a component which is not small in the direction zn, it follows that αn c 0 in equation (2.10). Hence, given any initial vector u0, there is a great chance+ for u6=converging to zn . k `(zn) (ii) From (2.6), (2.8) and (2.12)–(2.14), respectively, the sequences uk and βk generated zn λn k { } {1 } by Algorithm 2.1 satisfy that uk O(k ) and βk O((k `(zn) λn 1 λn k − k= | − | | − |= − λn k 1 1) ). So the sequences uk and βk converge linearly. λn 1 − | − | {k } { } (iii) It is observed that the term i 1 βiλn 1 will be monotonically increasing for k 1 = | − | sufficiently large since βk . This implies that εk will decrease to zero. Thus, the λQn linear systems are required→ to be solved more and more accurately when sufficiently many outer iterations have been performed. However, it does not imply that more and more inner iterations will be needed, because at that time, vector vk will be a good initial guess for the next inner loop. (iv) If A is symmetric, then M 1. =

3. Practical implementation and application

Because of the appearance of λn 1 in the expression for εk, the implementation of the algorithm in the previous section− is impractical. In this section, we will first establish an k important relation between βk βk 1 and 1/ i 1 βiλn 1 , and then use it to derive | − − | = | − | two new bounds for εk in which λn 1 is absent. Furthermore, we will present an inexact generalized inverse iteration (GINVIT)− by applyingQ the inexact INVIT to a generalized eigenvalue problem. From the proof of the Theorem 2.1 and the definition of βk, we have that

`(wk) `(wk 1) 1 βk βk 1 − [`(wk) βk 1`(wk 1)] − − = πk 1 − πk 2 = πk 1 − − − − − −

© 1997 by John Wiley & Sons, Ltd. Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) 432 Yu-Ling Lai, Kun-Yi Lin and Wen-Wei Lin

k n λn− (k) λn k 1 (k 1) (k) : D πk 1 ( )λn− ξk 1δi − `(zi) D π 1 − λ − 2 = k 1 ( + i 1 i + ) − X= where n (k) λn k λn k 1 D : αi(( ) βk 1λn( ) − )`(zi) 1 λ − λ = i 1 i − i X= and k 1 n (k) − λn k j λn k j j 1 (j 1) D : πj 1 (( ) − βk 1λn( ) − )λn− ξj 1δi − `(zi) 2 − λ − λ − = j 1 i 1 i − i X= X= Since n (k) λn k 1 λn D 2 − αi( βk 1λn)`(zi) 1 λ λ − k k ≤| n 1| ·i 1| i − | − X=

k 1 n (k) − j 1 λn k j (j 1) D 2 πj 1λn− ξj 1 − (1 βk 1λn)δi − `(zi) 2 − − λ − k k ≤ j 1 | |·| n 1| i 1| − | X= − X= n λn k 1 (j 1) (k 1) − (1 βk 1λn)δi − `(zi) λ − ≤ − | n 1 | · i 1 | − | − X= and n n λn k 1 (k 1) λn k 1 λn (k 1) πk 1( )λn− ξk 1δi − `(zi) − δi − `(zi) − λ − λ λ i 1 | i |≤| n 1| i 1| i | X= − X= we have k λn− λn k 1 βk βk 1 O((k 1) − ) | − − |=|πk 1|· − |λn 1 | − − Thus, λn 1 | | βk βk 1 O k 1| − − |= k 1 i−1 βiλn 1 ! − = | − | By a similar process, we also have Q

λn 1 | | uk uk 1 O k 1k − − k= k 1 i−1 βiλn 1 ! − = | − | Since β approaches 1 for large k, we fairly chooseQ k λn

1 βk βk 1 1 uk uk 1 εk 1 | − − | or εk 1 k − − k (3.1) − ≈ k 1 βk − ≈ k 1 βk − | | − | | Since the values βk, βk 1 and the vectors uk, uk 1 can be computed in each iteration, we + + modify the equation (3.1) a little bit to derive two practical formulas for εk 1 in Algorithm 2.1. For convenience, we denote the following abbreviations: R1-INVIT =+ Algorithm 2.1 1 βk 1 βk with the relaxed bound εk + − 1 k βk 1 + = | + | 1 uk 1 uk R2-INVIT = Algorithm 2.1 with the relaxed bound εk k + − k 1 k βk 1 + = | + |

Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) © 1997 by John Wiley & Sons, Ltd An Inexact Inverse Iteration for Large Sparse Eigenvalue Problems 433

Now we will develop a relaxed version algorithm for solving generalized eigenvalue problems: Ax λBx (3.2) = n n with A, B R × . In the case where B is non-singular, the generalized eigenvalue problem ∈ 1 is mathematically equivalent to the eigenvalue problem B− Ax λx.IfBis singular, we transform (3.2) to the eigenvalue problem (B ηA) 1Ax λx, where= λ λ/(1 ηλ) and − ˜ ˜ η is a small perturbation so that the inverse of−B ηA exists.= In both cases,= the main− results in Section 2 still hold for the generalized inverse− iteration (GINVIT) [11]. We summarize the inexact generalized inverse iteration as follows.

Algorithm 3.1. Inexact GINVIT: given a tolerance TOL, ε0 ε1 1and a linear functional `. ˜ =˜ =

For k 0, 1, = ··· Solve Avk 1 Buk until Avk 1 Buk εk + = k + − k≤˜ βk 1 `(vk 1) + = + uk 1 (vk 1)/βk 1 + = + + 1 βk 1 βk 1 B(uk 1 uk) If k 1, let εk B + − or εk k + − k 1 k βk 1 1 k βk 1 ≥ ˜ + =1 k k·| + | ˜ + = | + | rk Auk Buk 1 1 βk 1 1 + = + − + + If rk 1

For convenience, we use the abbreviations R1-GINVIT and R2-GINVIT to denote Al- B βk 1 βk gorithm 3.1 with the relaxed bound εk k k + − and the relaxed bound εk 1 k βk 1 1 ˜ + = | + | ˜ + = 1 B(uk 1 uk) k + − k, respectively. k βk 1 | + |

4. Numerical experiments and conclusions

In this section, we report on a number of numerical experiments that verify the convergence properties of inexact INVIT as well as inexact GINVIT proposed in this paper. The initial vector u0 was taken to be one with all entries equal to one. For the inner iterations, the BiCGSTAB [16] or the CCSI [6] method was used to solve the linear systems. All tests were performed on a HP735 machine using double precision in Fortran 77. It is noted that two practical error bounds derived in previous sections were used as the stopping criteria for the inner iterations. Since the accuracy of the desired eigenpair depends on the condition number of the matrix that consists of all the eigenvectors, and the experiments were intended to demonstrate how the inexact approach is done without destroying the convergence of the 8 original method, a tolerance TOL 1.0 10− was used as the stopping criterion of the outer iterations for all the following= examples.× It is well known that an appropriate preconditioning incorporated in the iterative solver for the inner iteration may make inexact INVIT as well as INVIT more efficient (see also [9]). First, we present two examples whose linear systems are solved by BiCGSTAB with diagonal and SSOR[1] (with parameter ω 0.8 ) , respectively, to verify the results in Section 2. =

© 1997 by John Wiley & Sons, Ltd. Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) 434 Yu-Ling Lai, Kun-Yi Lin and Wen-Wei Lin

Example 1. (SA3D) Consider the three-dimensional problem [12]:

∂ 1u(x, y, z) ∂x [α(x, y, z)u(x, y, z)] λu(x, y, z) in  − + u(x,y,z)= 0on∂  = where  (0, 1) (0, 1) (0, 1). We take α(x,y,z) 1 and discretize the equations with the central= difference× scheme.× Thus, we obtain the following= matrix A(n), where n is the number of interior mesh points on each side of the unit cube:

Bn I − .. ..  I . .  − . . . A(n)  ......  =    . .   .. .. I   −   IBn  −   with

Cn I 6 a 0 − ......  I . .  b . .  − ...... Bn  ...... ,Cn  ......  =   =   . .   . .   .. .. I   e.. .. a   −     ICn 0 b 6  −       a 1 1/2(n 1) and b 1 1/2(n 1). Note that Cn, Bn and A(n) are matrices of=− dimension+ n, n+2 and n3, respectively.=− − Here,+ we consider n 15. = Example 2. We consider the matrix ‘JPWH991’, which is from the Harwell–Boeing sparse matrix collection [7] and is derived from a circuit physics model [5]. It is of order n 991. Its eigenvalues appear to be real and negative. = The numerical results are shown in Table 1. Figures 1 and 2 show the number of inner iterations for each outer iteration versus the residual in outer iteration for Examples 1 and 2, respectively. In the tables and figures that follow, pairs of integers denote the total numbers of outer and inner iterations, respectively, and percentages denote the ratios of the inner iterations used in inexact algorithms to the inner iterations used in the original algorithm.

Table 1. Numerical results for the matrices SA3D and JPWH991

Matrix Eigenvalue INVIT R1-INVIT R2-INVIT SA3D 0.1162463 (26,358) (25,169) 47.21 % (23,143) 39.94 % JPWH991 0.1206708 (14, 272) (13,91) 33.46 % (12, 88) 32.35 % − The computational cost is roughly measured by the total number of inner iterations. The data in the columns of Table 1 indicate that both relaxation techniques save at least half

Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) © 1997 by John Wiley & Sons, Ltd An Inexact Inverse Iteration for Large Sparse Eigenvalue Problems 435

SA3D: R−INVIT + BiCGSTAB 45

40

35 * INVIT (26,358)

30 o R2−INVIT (23,143)

25

20

15 Number of Inner Iteration

10

5

0 2 0 −2 −4 −6 −8 −10 −10 −10 −10 −10 −10 −10 −10 −Residual

Figure 1. Number of inner iterations for each outer iteration plotted versus residual in outer iteration for the matrix SA3D by INVIT and inexact INVIT using BiCGSTAB

JPWH991: R−INVIT + BiCGSTAB 45

40

35 * INVIT (14,272)

o R2−INVIT (12,88) 30

25

20

15 Number of Inner Iteration

10

5

0 2 0 −2 −4 −6 −8 −10 −10 −10 −10 −10 −10 −10 −10 −Residual

Figure 2. Number of inner iterations for each outer iteration plotted versus residual in outer iteration for the matrix JPWH991 by INVIT and inexact INVIT using BiCGSTAB

the computational cost. The experiments that we have tested indicate that using R2-INVIT saves more inner iterations. From Figures 1 and 2, it is easily seen that INVIT requires many more inner iterations than R2-INVIT when the residual of outer iteration is not small. It is also observed from Table 1 that the relaxation techniques do reduce the number of inner iterations without affecting the outer iteration convergence much for almost the same number of outer iterations required. The following example, which is from nuclear physics, was used to test the generalized eigenvalue problem. Example 3. (Nuclear) A two group neutron flux computation, which is from nodal coupling equations and nodal neutron balance equations, can be formed to be the following generalized eigen-

© 1997 by John Wiley & Sons, Ltd. Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) 436 Yu-Ling Lai, Kun-Yi Lin and Wen-Wei Lin

Table 2. Numerical Results for Nuclear eigenvalue problem

Eigenvalue GINVIT R1-GINVIT R2-GINVIT 0.96720458 (103, 4085) (103, 1687) 41.30% (104,1505) 36.84%

NUCLEAR: GINVIT + CCSI 140

120

* GINVIT (103,4085) 100 o R2−GINVIT (103,1687)

80

60 Number of Inner Iteration 40

20

0 4 2 0 −2 −4 −6 −8 −10 −10 −10 −10 −10 −10 −10 −10 −10 −Residual

Figure 3. Number of inner iterations for each outer iteration plotted versus residual in outer iteration for the Nuclear problem by GINVIT and inexact GINVIT using CCSI

value problem by finite difference discretization [14]:

C 0 ϕ F F ϕ 1 1 λ 1 2 1 SC2 ϕ2 = 00 ϕ2       where C1, C2, S, F1 and F2 are matrices of order 6 075 derived from the coefficients of the ϕ differential equation, and the solution 1 corresponds to the neutron flux. Note that ϕ2   F1, F2 and S are diagonal and both C1 and C2 are seven-band matrices. In nuclear engineering, generalized inverse iteration combined with CCSI (Cyclic Cheby- shev semi-iteration)[6] is often applied to obtain the smallest modulus eigenvalue λn. Thus, in this example, we focus on obtaining λn and CCSI is taken as the linear solver. Since, λn is close to one, we choose 0.9 as the shift. We show the numerical results in Table 2 and the convergence history in Figure 3.

5. Concluding remarks

In this paper, two inexact inverse iterations for solving large sparse (generalized) eigenvalue problems are proposed. It is proved that the relaxation techniques preserve the linear con- vergence property of inverse iteration. A number of numerical experiments are presented to illustrate how attractive and efficient inexact INVIT as well as GINVIT are if BiCGSTAB or CCSI are taken to be the linear solvers for the inner iteration.

Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997) © 1997 by John Wiley & Sons, Ltd An Inexact Inverse Iteration for Large Sparse Eigenvalue Problems 437

Acknowledgements

We are grateful to the referees for many useful suggestions on the structure and content of the paper. In particular, they drew our attention to the references [2,8,9,13,15] which contains the recent work in this area.

REFERENCES

1. O. Axelsson. A survey of preconditioned iterative methods for linear systems of algebraic equations. BIT, 25, 166–187, 1985. 2. M. Crouzeix, B. Philippe and M. Sadkane. The Davidson method. SIAM J. Sci. Comput., 15, 62–76, 1994. 3. R. R. Davidson. The iterative calculation of a few of the lowest eigenvalues and corresponding eigenvectors of large real-symmetric matrices. Comput. Phys., 17, 87–94, 1975. 4. R. S. Dembo, S. C. Eisenstat and T. Steihaug. Inexact Newton methods. SIAM J. Num. Anal., 19, 400–408, 1982. 5. A. M. Erisman, R. G. Grimes, J. G. Lewis, W. G. Poole and H. D. Simon. Evaluation of orderings for unsymmetric sparse matrices. SIAM J. Sci. Stat. Comput., 7, 600–624, 1986. 6. G. H. Golub and C. F. Van Loan. Matrix Computations. Johns Hopkins University Press, Baltimore, 1989. 7. R. G. Grimes, J. G. Lewis and I. S. Duff. User’s guide for the Harwell–Boeing sparse matrix collection. Technical Report MEA-TR-202 R1, Seattle, Washington, 1992. 8. K. Meerbergen and D. Roose. Matrix transformation for computing rightmost eigenvalues of large sparse and non-symmetric eigenvalue problems. IMA J. of , 16, 297–346, 1996. 9. R. B. Morgan and D. S. Scott. Preconditioning the for sparse symmetric eigenvalue problems. SIAM J. Sci. Comput., 14, 585–593, 1993. 10. B. N. Parlett. The Symmetric Eigenvalue Problem. Prentice-Hall, Englewood Cliffs, NJ, 1980. 11. G. Peters and J. H. Wilkinson. Inverse iteration, ill-conditioned equations and Newton’s method. SIAM Review, 21, 339–360, 1979. 12. Y. Saad. Variations on Arnoldi’s method for computing eigenelements of large unsymmetric matrices. Lin. Alg. Appl., 34, 269–295, 1980. 13. G. Sleijpen and H. A. Van der Vorst. A Jacobi–Davidson iterative method for linear eigenvalue problems. SIAM J. Matrix Anal. Appl., 17, 401–425, 1996. 14. K. S. Smith. BWR shutdown margin model in SIMULATE-3. Trans. Am. Nucl., Soc., 61, 369, 1990. 15. D. B. Szyld. Criteria for combining inverse and Rayleigh quotient iteration. SIAM J. Numer. Anal., 25, 1369–1375, 1988. 16. H. A. Van Der Vorst. Bi-CGSTAGB, a fast and smoothly converging variant of Bi-CG for the solution of nonsymmetric linear systems. SIAM J. Sci. Stat. Comput., 13, 631–644, 1992. 17. J. H. Wilkinson. The Algebraic Eigenvalue Problem. Clarendon Press, Oxford, 1965.

© 1997 by John Wiley & Sons, Ltd. Numer. Linear Algebra Appl., Vol. 4, 425–437 (1997)