next up previous
Next: 2.2 Parallelization with Explicit Up: 2 Parallel Implementation of Previous: 2 Parallel Implementation of

2.1 GMRES Preconditioned by Standard Iterative Methods

The most popular form of GMRES is based on the modified Gram-Schmidt orthogonalization, e.g. [8]. In our algorithm we use GMRES to solve the system of equations resulting from the finite element procedures applied within the Taylor-Galerkin formulation of flow problems. For better convergence properties we do not solve the original system of equations A*x=b (with A the global stiffnes matrix, x the vector of unknown degrees of freedom and b the global load vector), but the preconditioned system M-1*A*x=M-1*b. The GMRES algorithm looks as follows:


set an initial guess x0
repeat until convergence
		 compute residual of preconditioned problem:
		 r0 = M-1 ( A x0 - b )  (*)
		 normalize  residual:
		 $\bar{r}_0 = r_0 / \Vert r_0 \Vert $ 
		 for i=1,2,...,k 
		 		 compute matrix-vector product:
		 		 $\hat{r}_i = M^{-1} A \bar{r}_{i-1}$ (*)
		 		 orthonormalize $\hat{r}_i$ wrt all previous $\bar{r}_j,
j=1, $ 
		 		 ..,i-1 by modified Gram-Schmidt procedure
		 		 obtaining $\bar{r}_i$ 
		 solve GMRES minimization problem
		 check convergence, if attained leave GMRES 

The steps marked with (*) in the GMRES diagram can be performed without forming explicitly the global stiffnes matrix by using either the block Gauss-Seidel or the block Jacobi algorithm [6] as a preconditioner. Each choice corresponds to a particular form of the preconditioning matrix M.


next up previous
Next: 2.2 Parallelization with Explicit Up: 2 Parallel Implementation of Previous: 2 Parallel Implementation of
Joanna Plazek, Jacek Kitowski, Krzysztof Banas