Iterative Methods for Sparse Linear Systems

Similar documents
Notes on PCG for Sparse Linear Systems

AMS526: Numerical Analysis I (Numerical Linear Algebra) Lecture 23: GMRES and Other Krylov Subspace Methods; Preconditioning

The amount of work to construct each new guess from the previous one should be a small multiple of the number of nonzeros in A.

Iterative methods for Linear System

Iterative methods for Linear System of Equations. Joint Advanced Student School (JASS-2009)

SOLVING SPARSE LINEAR SYSTEMS OF EQUATIONS. Chao Yang Computational Research Division Lawrence Berkeley National Laboratory Berkeley, CA, USA

AMS526: Numerical Analysis I (Numerical Linear Algebra)

Solving Sparse Linear Systems: Iterative methods

Solving Sparse Linear Systems: Iterative methods

Summary of Iterative Methods for Non-symmetric Linear Equations That Are Related to the Conjugate Gradient (CG) Method

FEM and sparse linear system solving

Chapter 7 Iterative Techniques in Matrix Algebra

Iterative Methods for Linear Systems of Equations

Lecture 18 Classical Iterative Methods

9.1 Preconditioned Krylov Subspace Methods

The Conjugate Gradient Method

Iterative Methods for Solving A x = b

The Lanczos and conjugate gradient algorithms

1 Extrapolation: A Hint of Things to Come

On the influence of eigenvalues on Bi-CG residual norms

Conjugate gradient method. Descent method. Conjugate search direction. Conjugate Gradient Algorithm (294)

Krylov Space Methods. Nonstationary sounds good. Radu Trîmbiţaş ( Babeş-Bolyai University) Krylov Space Methods 1 / 17

6.4 Krylov Subspaces and Conjugate Gradients

M.A. Botchev. September 5, 2014

Lab 1: Iterative Methods for Solving Linear Systems

Comparison of Fixed Point Methods and Krylov Subspace Methods Solving Convection-Diffusion Equations

KRYLOV SUBSPACE ITERATION

Parallel Numerics, WT 2016/ Iterative Methods for Sparse Linear Systems of Equations. page 1 of 1

Last Time. Social Network Graphs Betweenness. Graph Laplacian. Girvan-Newman Algorithm. Spectral Bisection

Solving Symmetric Indefinite Systems with Symmetric Positive Definite Preconditioners

Jordan Journal of Mathematics and Statistics (JJMS) 5(3), 2012, pp A NEW ITERATIVE METHOD FOR SOLVING LINEAR SYSTEMS OF EQUATIONS

Topics. The CG Algorithm Algorithmic Options CG s Two Main Convergence Theorems

Preface to the Second Edition. Preface to the First Edition

DELFT UNIVERSITY OF TECHNOLOGY

A short course on: Preconditioned Krylov subspace methods. Yousef Saad University of Minnesota Dept. of Computer Science and Engineering

Iterative Methods and Multigrid

4.8 Arnoldi Iteration, Krylov Subspaces and GMRES

Steady-State Optimization Lecture 1: A Brief Review on Numerical Linear Algebra Methods

OUTLINE ffl CFD: elliptic pde's! Ax = b ffl Basic iterative methods ffl Krylov subspace methods ffl Preconditioning techniques: Iterative methods ILU

ITERATIVE METHODS FOR SPARSE LINEAR SYSTEMS

A DISSERTATION. Extensions of the Conjugate Residual Method. by Tomohiro Sogabe. Presented to

Applied Mathematics 205. Unit V: Eigenvalue Problems. Lecturer: Dr. David Knezevic

Stabilization and Acceleration of Algebraic Multigrid Method

Chapter 7. Iterative methods for large sparse linear systems. 7.1 Sparse matrix algebra. Large sparse matrices

Algorithms that use the Arnoldi Basis

Lecture Note 7: Iterative methods for solving linear systems. Xiaoqun Zhang Shanghai Jiao Tong University

Introduction to Iterative Solvers of Linear Systems

Preliminary/Qualifying Exam in Numerical Analysis (Math 502a) Spring 2012

Krylov Space Solvers

Lecture 11: CMSC 878R/AMSC698R. Iterative Methods An introduction. Outline. Inverse, LU decomposition, Cholesky, SVD, etc.

AMS526: Numerical Analysis I (Numerical Linear Algebra)

CME342 Parallel Methods in Numerical Analysis. Matrix Computation: Iterative Methods II. Sparse Matrix-vector Multiplication.

ITERATIVE METHODS BASED ON KRYLOV SUBSPACES

Multigrid absolute value preconditioning

Residual iterative schemes for largescale linear systems

AMS526: Numerical Analysis I (Numerical Linear Algebra for Computational and Data Sciences)

Contents. Preface... xi. Introduction...

Introduction to Scientific Computing

Course Notes: Week 1

On the Preconditioning of the Block Tridiagonal Linear System of Equations

IDR(s) Master s thesis Goushani Kisoensingh. Supervisor: Gerard L.G. Sleijpen Department of Mathematics Universiteit Utrecht

From Stationary Methods to Krylov Subspaces

FEM and Sparse Linear System Solving

Krylov Subspace Methods that Are Based on the Minimization of the Residual

Splitting Iteration Methods for Positive Definite Linear Systems

Numerical Methods I Non-Square and Sparse Linear Systems

Preconditioning Techniques Analysis for CG Method

Notes on Some Methods for Solving Linear Systems

Some minimization problems

A Method for Constructing Diagonally Dominant Preconditioners based on Jacobi Rotations

Preconditioned Conjugate Gradient-Like Methods for. Nonsymmetric Linear Systems 1. Ulrike Meier Yang 2. July 19, 1994

Lecture 17 Methods for System of Linear Equations: Part 2. Songting Luo. Department of Mathematics Iowa State University

PETROV-GALERKIN METHODS

Lecture 8: Fast Linear Solvers (Part 7)

4.6 Iterative Solvers for Linear Systems

AMS526: Numerical Analysis I (Numerical Linear Algebra)

DELFT UNIVERSITY OF TECHNOLOGY

AMSC 600 /CMSC 760 Advanced Linear Numerical Analysis Fall 2007 Krylov Minimization and Projection (KMP) Dianne P. O Leary c 2006, 2007.

Algebra C Numerical Linear Algebra Sample Exam Problems

Institute for Advanced Computer Studies. Department of Computer Science. Iterative methods for solving Ax = b. GMRES/FOM versus QMR/BiCG

An advanced ILU preconditioner for the incompressible Navier-Stokes equations

Numerical Methods - Numerical Linear Algebra

Linear Solvers. Andrew Hazel

1 Conjugate gradients

arxiv: v4 [math.na] 1 Sep 2018

Numerical Methods in Matrix Computations

Charles University Faculty of Mathematics and Physics DOCTORAL THESIS. Krylov subspace approximations in linear algebraic problems

Fast iterative solvers

Iterative methods for positive definite linear systems with a complex shift

Recycling Bi-Lanczos Algorithms: BiCG, CGS, and BiCGSTAB

On prescribing Ritz values and GMRES residual norms generated by Arnoldi processes

IDR(s) as a projection method

Dense Matrices for Biofluids Applications

The flexible incomplete LU preconditioner for large nonsymmetric linear systems. Takatoshi Nakamura Takashi Nodera

Recent computational developments in Krylov Subspace Methods for linear systems. Valeria Simoncini and Daniel B. Szyld

9. Iterative Methods for Large Linear Systems

Bindel, Fall 2016 Matrix Computations (CS 6210) Notes for

College of William & Mary Department of Computer Science

Computational Linear Algebra

Introduction and Stationary Iterative Methods

Transcription:

Iterative Methods for Sparse Linear Systems Luca Bergamaschi e-mail: berga@dmsa.unipd.it - http://www.dmsa.unipd.it/ berga Department of Mathematical Methods and Models for Scientific Applications University of Padova Iterative Methods p.1/31

Discretized diffusion equation After discretization in the space, the PDE is converted in a system of ODEs like P u t = Hu + b where P = I in FD discretization. Stiffness matrix H is symmetric definite negative, capacity or mass matrix P is symmetric positive definite. Finally discretization in time transforms the system of ODEs to a linear system of size equal to the number of gridpoints to be solved at each time step. Time discretization divides the time interval (0,T] into subintervals of length t i so that solution in time is computed at t k = P k i=1 i and uses Finite Differences to approximate the time derivative. For example applying the implicit Euler method (u u(t k+1) u(t k ) t k ). (I + t k H)u(t k+1 ) = t k P u(t k ) + t k b Iterative Methods p.2/31

Eigenvalues and condition number of the Laplacian The 2D FD discretization of the Laplace equation takes a general form (in the case x = y = h): H = 1 h 2 0 B @ S I I S I......... I S I I S 1 C A where S = 0 B @ 4 1 1 4 1......... 1 4 1 1 4 1 C A Eigenvalues of S and hence those of H are explicitly known: λ j,k (H) = 4 «jπh h 2 sin2 + 4 «kπh 2 h 2 sin2, j, k =1,..., n x = 1 2 h 1 Iterative Methods p.3/31

Eigenvalues and condition number of the Laplacian Theorem. The smallest and largest eigenvalues of H behave like: λ n =2π 2 + O(h 2 ),λ 1 =8h 2 + O(1). Proof. λ n = 8 «πh h 2 sin2 = 8 2 h 2 (hπ/2+o(h3 )) 2 =2π 2 + O(h 2 ). λ 1 = 8 «nx πh h 2 sin2 = 8 π 2 h 2 sin2 2 πh «= 2 = 8 «πh h 2 cos2 = 8 2 h (1 2 O(h2 )) 2 =8h 2 + O(1). Corollary. The condition number of H behaves like κ(h) = 4 π 2 h 2 + O(1) (κ(h) = 3d π d h 2 when Ω R d ) Corollary. The number of iteration of the CG for solving Hx = b is proportional to 8 < n 1D discretizations h 1 = n 2D discretizations. : 3 n 3D discretizations Iterative Methods p.4/31

Iterative methods on the diffusion equations Again stationary iterative methods 1. Jacobi iteration. x k+1 = D 1 (L + U)x k + D 1 b = E J x k + q J. 2. Gauss-Seidel iteration. x k+1 = (D + L) 1 Ux k +(D + L) 1 b = E GS x k + q GS 3. Acceleration of Gauss-Seidel = SOR method depending on ω R. x k+1 = (D+ωL) 1 ((1 ω)d ωu) x k +ω(d+ωl) 1 b = E SOR x k +q SOR Theorem. (Young & Varga). If all the eigenvalues of the Jacobi iteration matrix are real then 1. λ(e GS )=λ(e J ) 2 2. If in addition ρ(e J ) < 1 then there is an optimal value of ω: 2 ω opt = 1+ p 1 ρ(e J ). 2 3. ρ(e SOR (ω opt )) = ω opt 1 Iterative Methods p.5/31

Iterative method for the diffusion equation Recall H = 1 h 2 0 B @ S I I S I......... I S I I S 1 C A where S = 0 B @ 4 1 1 4 1......... Since D = diag(h) = 4h 2 I, then eigenvalues of E J = I D 1 A are ««jπh kπh λ j,k (E) = 1 sin 2 sin 2 2 2 1 4 1 1 4 1 C A λ max (E J ) 1 π2 h 2 2 «λ max (E GS ) 1 π2 h 2 2 1 π 2 h 2 2 λ max (E SOR ) 2 1+πh 1 1 2πh Iterative Methods p.6/31

Iterative methods on the diffusion equations What about CG? Asymptotically the reduction factor is µ = κ 1 κ +1 where κ(h) = 4 π 2 h 2. Hence µ 2 1 hπ =1 2hπ +1 2 hπ 2+hπ 1 πh Asymptotic behaviour: method error reduction factor type Jacobi 1 5h 2 sharp Gauss-Seidel 1 10h 2 sharp SOR with ω opt 1 6h sharp SD (no precond) 1 5h 2 tight CG (no precond) 1 3h tight Iterative Methods p.7/31

Some results 2D discretization of the diffusion equation by FD, with h =0.005, tol = 10 8 Results: Method iterations CPU time comments Jacobi 100000 262.01 r k > 10 6 Gauss Seidel 62207 186.36 SOR 817 2.68 ω =1.969 ω opt SOR 1819 5.98 ω =1.95 SOR 1207 3.91 ω =1.98 CG 357 1.61 no prec CG 146 1.38 IC(0) prec 2D discretization of the diffusion equation by FD, with h =0.0025, tol = 10 8 Results Method iterations CPU time comments SOR 1614 73.16 ω =1.984 ω opt CG 702 34.48 no prec CG 244 22.84 IC(0) prec Iterative Methods p.8/31

Results and Comments Results with h =0.00125, tol = 10 8 Method iterations CPU time comments SOR 3572 605.40 ω =1.992 ω opt CG 1380 345.04 no prec CG 451 199.35 IC(0) prec Comments Theoretically SOR(ω opt ) is the fastest method with CG very close. ω opt is always very difficult to assess. Bounds on SOR is sharp while that on CG is tight. CG can be preconditioned while SOR can not. CG better than the estimates also when eigenvalues are spread into the spectral interval. Dependence of condition number on h 2 (and the number of iterations on h 1 ) only alleviated by preconditioning. SOR is dramatically dependent on ω. Solving the FD-discretized diffusion equation, it takes advantage on the a priori knowledge of the spectral interval. Iterative Methods p.9/31

Iterative methods for general systems PCG is expected to converge only on spd matrices. Why? One reason is that for non spd matrices it is impossible to have at the same time orthogonality and a minimization property by means of a short term recurrence. PCG at iteration k minimizes the error on a subspace of size k and constructs an orthogonal basis using a short-term recurrence. Extensions of PCG for general nonsymmetric matrices: 1. PCG method applied to the (spd) system A T Ax = A T b (Normal equations). This system is often ill-conditioned. It is the case of symmetric matrices where κ(a T A)=κ(A 2 ) = (κ(a)) 2. Also difficult to find a preconditioner if A T A could not be explicitly formed. 2. Methods that provide orthogonality + minimization by using a long-term recurrence (GMRES) 3. Methods that provide (bi) orthogonality. Examples: BiCG, BiCGstab 4. Methods that provide some minimization properties. Examples: QMR, TFQMR. Iterative Methods p.10/31

The GMRES method Given an arbitrary nonzero vector v, a Krylov subspace of dimension m is defined as K m (v) =span `v,av,a 2 v,..., A m 1 v The GMRES (Generalized Minimal RESidual) method finds the solution of the linear system Ax = b by minimizing the norm of the residual r m = b Ax m over all the vectors x m written as x m = x 0 + y, y K m (r 0 ) where x 0 is an arbitrary initial vector and K m is the Krylov subspace generated by the initial residual. First note that the basis of K m is little linearly independent. {r 0,Ar 0,A 2 r 0,..., A m 1 r 0 } Iterative Methods p.11/31

Orthogonalization of the Krylov basis Theorem. If the eigenvalues of A are such that λ 1 > λ 2 then A k λ2 k, r 0 = v 1 + O λ 1 with v1 the eigenvector corresponding to λ 1. To compute a really independent basis for K m we have to orthonormalize such vectors using the Gram-Schmidt procedure. β = r 0, v 1 = r 0 β DO k =1,m 1. w k+1 = Av k 2. DO j =1,k 1 3. h jk = w T k+1 v j 4. w k+1 := w k+1 h jk v j 5. END DO 6. h k+1,k = w k+1 ; v k+1 = w k+1 /h k+1,k END DO Once the Krylov subspace basis is computed, the GMRES method minimizes the norm of the residual onto mx x 0 + K m = x 0 + z i v i (1) j=1 Iterative Methods p.12/31

Minimizing the residual Theorem. The new vectors v k satisfy: Av k = k+1 X j=1 h jk v j, k =1,..., m Proof. In fact from step 4. of the Gram Schmidt algorithm we have w k+1 = Av k kx h jk v j j=1 Now substituting w k+1 = h k+1,k v k+1 we obtain h k+1,k v k+1 = Av k kx h jk v j j=1 and the thesis holds. Iterative Methods p.13/31

Minimizing the residual Now define V m =[v 1, v 2,... v m ] and H m =(h jk ). The statement of the theorem reads AV m = V m+1 H m H m is a rectangular m +1 m matrix. It is a Hessenberg matrix since it has the following nonzero pattern: H m = 0 B @ h 11 h 12... h 21 h 22 h 23... 0 h 32 h 33 h 34 0 0...... 0 0 0 h m,m 1 h mm 0 0 0 0 h m+1,m 1 C A Iterative Methods p.14/31

Minimizing the residual = A V m = V m+1 H m Iterative Methods p.15/31

Minimizing the residual Now we would like to minimize r m among all the x m : or Now x m = x 0 + x m = x 0 + V m z, mx z i v i j=1 z =(z 1,..., z m ) T r m = b Ax m = b A (x 0 + V m z)= = r 0 AV m z = = βv 1 V m+1 H m z = = V m+1 (βe 1 H m z) (2) where e 1 = [1, 0,..., 0] T. Iterative Methods p.16/31

Minimizing the residual Recalling that V T m+1v m+1 = I m+1 : r m = p r T mr m = q = (βe 1 H m z) T Vm+1 T V m+1 (βe 1 H m z)= q = (βe 1 H m z) T (βe 1 H m z)= and hence z = argmin βe 1 H m z. Comments: = (βe 1 H m z) (3) H m has more rows than columns then H m z = βe 1 has (in general) no solutions. Minimization problem z = argmin βe 1 H m z is very small m = 20, 50, 100 as compared to the original size n. Computational solution of this problem will be very cheap. Iterative Methods p.17/31

Least square minimization Any (even rectangular) matrix H can be factorized as a product of an orthogonal matrix Q and an upper triangular matrix R (known as QR factorization. When H is not square the resulting R has as many final zero rows as the gap between rows and columns. Let us now factorize our H m as: H m = QR (computational cost O(m 3 )). Then, in view of the orthogonality of Q: min βe 1 H m z = min Q βq T e 1 Rz = min g Rz where g = βq T e 1. Iterative Methods p.18/31

End of minimization Matrix R takes on the form: R = 0 B @ r 11 r 12... 0 r 22 r 23............ 0 r mm 0 1 C A (4) The solution to min g Rz is simply accomplished by solving Rz = g where R is obtained from R by dropping the last row and g the first m components of g. This last system being square, small, and upper triangular, is easily and cheaply solved. Finally note that min r m = g m+1. Iterative Methods p.19/31

Algorithm ALGORITHM: GMRES Input: x 0, A, b, k max, toll r 0 = b Ax 0,k=0,ρ 0 = r 0,β = ρ 0, v 1 = r 0 β WHILE ρ k > toll b AND k < k max DO 1. k = k +1 2. v k+1 = Av k 3. DO j =1,k h jk = v T k+1v j v k+1 = v k+1 h jk v j END DO 4. h k+1,k = v k+1 5. v k+1 = v k+1 /h k+1,k 6. z k = argmin βe 1 H k z 7. ρ k = βe 1 H k z k END WHILE x k = x 0 + V k z k Iterative Methods p.20/31

Practical GMRES implementations. GMRES is optimal in the sense that it minimizes the residual over a subspace of increasing size (finite termination property). GMRES is a VERY computationally costly method. 1. Storage: It needs to keep in memory all the vectors of Krylov basis. When the number of iterations becomes large (order of hundreds) the storage may be prohibitive. 2. Computational cost. The cost of a Gram-Schmidt orthogonalization increases with the iteration number (O(mn)) so again problems arise when the number of iteration is high. Practical implementations fix a maximum number of vectors to be kept in memory, say p. After p iterations, x p is computed and a new Krylov subspace is begin constructed starting from r p. In this way however, we loose optimality with consequent slowing down of the method. Iterative Methods p.21/31

Convergence Assume for simplicity that A is diagonalizable that is A = V ΛV 1 where Λ is the diagonal matrix of eigenvalues and columns of V are normalized eigenvectors of A. Then r k = min P k Vp k (Λ)V 1 r 0 κ(v ) min P k p k (Λ) r 0 or r k r 0 κ(v ) min P k max p k (λ i ) Matrix V may be ill-conditioned We cannot simply relate convergence of GMRES with the eigenvalue distribution of A. Iterative Methods p.22/31

Preconditioning Also for general systems preconditioning is premultiplying the original system by a nonsingular matrix. Here preconditioning, more than reducing condition number of A is aimed at clustering eigenvalues away from the origin. Common general preconditioners. 1. Diagonal: M = diag( A i ), with A i the ith row of A. 2. ILU decomposition (based on pattern and/or on dropping tolerance). 3. Approximate inverse preconditioners Computational cost. Instead of applying A one should apply M 1 A to a vector (step 2. of algorithm) as t = Av k, Mv k+1 = t Iterative Methods p.23/31

Numerical example Convergence profile (semi-logarithmic plot) of GMRES as applied to a very small (n = 27) matrix with two preconditioners and some choices of the restart parameter. 10 0 10 1 10 2 10 3 10 4 r_k 10 5 10 6 10 7 10 8 10 9 10 10 10 11 10 12 diagonale, nrest=1 diagonale, nrest=10 diagonale, nrest=50 ILU, nrest=1 ILU, nrest=5 0 10 20 30 40 50 numero di iterazioni Iterative Methods p.24/31

Other iterative methods for nonsymmetric systems They are based on a fixed amount of work per iteration (short term recurrence) No a priori theoretical estimates on the error. Possibility of failure (breakdown) that can be alleviated through the use of look-ahead strategies. Iterative Methods p.25/31

The Lanczos method. It is useful to underline connection between symmetric and nonsymmetric problems. 1. GMRES for spd matrices produces a tridiagonal matrix instead of an Hessenberg one (a symmetric Hessenberg is tridiagonal). This means that there is a three-term recurrence which implements Gram-Schmidt orthogonalization on a Krylov subspace generated by an spd matrix. 2. For A spd V T m AV m = T m and it can be proved that the extremal eigenvalues of T m converge quickly to the extremal eigenvalues of A. Moreover there is a strict connection between the Lanczos process and the CG method (entries of T m can be computed from CG iterates). Knowing approximately the largest and the smallest eigenvalues is useful for an appropriate exit test for the CG method (recall 1st lecture on reliability of exit tests). 3. If A is nonsymmetric the two-sided Lanczos method can be employed to construct a biorthogonal basis for the Krylov subspaces corresponding to A and A T by using a short term recurrence. Iterative Methods p.26/31

The Biconjugate Gradient method (BiCG). Based on two-sided Lanczos process: 1. Given an arbitrary cr 0 non orthogonal to r 0, it constructs two sets of vectors v 1,...,v n K(A, r 0 ) and w 1,..., w n K(A T, cr 0 ) s. t. v T i w j =0,i j. In matrix form AV k = V k+1 T k+1,k, A T W k = W k+1 b Tk+1,k, V T k W k = I k 2. Write x m = x 0 + v k y k. From the several choices for vector y k BiCG forces r k = r 0 AV k y k to be orthogonal to W k. This leads to the equation W T k r 0 W T k AV k y k =0 By noticing that W T k AV k = T k and that W T k r 0 = βe 1,β = r 0, equation for y k becomes T k y k = βe 1 3. Practical implementation of BiCG algorithm implicitly performs an LDU factorization of matrix T k (Also CG for spd matrices is equivalent to Lanczos process with LDL T factorization of T k ), Iterative Methods p.27/31

BiCG Algorithm ALGORITHM: BICONJUGATE GRADIENT Input: x 0, cr 0, A, b, k max, tol r 0 = p 0 = b Ax 0,k=0, cp 0 = cr 0 WHILE r k > tol b AND k < k max DO 1. z = Ap k, u = A T cp k 2. α k = rt k cr k z T p k 3. x k+1 = x k + α k p k 4. r k+1 = r k α k z r k+1 = r k α k u 5. β k = rt k+1r k+1 r T k r k 6. p k+1 = r k+1 + β k p k, p k+1 = r k+1 + β k cp k 7. k = k +1 END WHILE Iterative Methods p.28/31

BiCGstab Drawbacks of the BiCG method: 1. Need to implement a matrix vector product also for the transpose of the matrix (this can be a problem: sometimes the matrix is not available explicitly but only the result of its application to a vector) 2. No local minimization property fulfilled in BiCG. This leads to sometimes large oscillations in the convergence profile. First CGS (Conjugate Squared method) avoids using A T then a subsequent improvement: the BiConjugate Gradient stabilized (BiCGstab) method is aimed at avoiding such an erratic behavior trying to produce a residual of the form r k =Ψ k (A)φ k (A)r 0 where Ψ k (z) = ky (1 ω j z) and the ω s are chosen to minimize j=1 r j = (1 ω j A)Ψ j 1 (A)φ j (A)r 0 Iterative Methods p.29/31

BiCGstab ALGORITHM: BICGSTAB Input: x 0, A, b, k max, toll r 0 = b Ax 0,k=0, choose ˆr 0 s. t. ˆr T 0 ˆr 0 0 ρ 0 = α 0 = η 1 = 1; WHILE r k > toll b AND k < k max DO 1. k = k +1 2. ρ k =ˆr T 0 r k 3. β k =(ρ k /ρ k 1 )(α k 1 /η k ) 4. p k = r k + β k (p k 1 η k v k 1 ) 5. v k = Ap k 6. α k = ρ k /ˆr T 0 v k 7. s = r k α k v k 8. t = As 9. η k+1 = s T t/t T t 10. c k+1 = c k + α k p k + η k+1 s 11. r k+1 = s η k+1 t END WHILE Iterative Methods p.30/31

Bibliography Books on iterative methods Anne Greenbaum. Iterative Methods for Solving Large Linear systems. C. T. Kelley. Iterative Methods for Linear and Nonlinear Equations Preconditioning M. Benzi. Preconditioning Techniques for Large Linear Systems: A Survey, Journal of Computational Physics, 182 (2002), pp. 418-477. Conjugate gradient J. R. Shewchuk. An Introduction to the CG method without the agonizing pain. Nonsymmetric linear systems Y. Saad and M. H. Schultz. Gmres: A generalized minimal residual algorithm for solving nonsymmetric linear systems. SIAM J. Sci. Stat. Comput., pages 856 869, (7) 1986. H. A. van der Vorst. Bi-CGstab: A fast and smoothly converging variant of BI-CG for the solution of nonsymmetric linear systems. SIAM J. Sci. Stat. Comput., pages 631 644, (13) 1992. Iterative Methods p.31/31