9
INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN ENGINEERING, VOL. 28, 1715-1 723 (1989) A COARSE/FINE PRECONDITIONER FOR VERY ILL-CONDITIONED FINITE ELEMENT PROBLEMS CHARBEL FARHAT AND NABIL SOBH Department of Aerospace bnqineeriny Siienceb und Cenler jor Space Slructures and C ontrols, UnirwWy of Colorado ut Boulder. Boulder, CO 80309-0429. US A SUMMARY We consider the problem of applying the conjugate gradient method to solve ill-conditioned large algebraic systems of equations resulting from the finite element discretization of some three-dimensional boundary value problems. We present an effective preconditioner for such systems based on a multigrid technique. We assess its performance with examples borrowed from large flexible aerospace structures. 1. INTRODUCTION The conjugate gradient method (CG) of Hestnes and Stiefel' is becoming the most popular iterative technique for solving large sparse positive definite systems of linear equations Ku=f (1) It can be shown that, if K(K)= ]1KI/ ~ ~ K - ' ~ ~ is the condition number of K, and u('() is the approximate solution to (1) at step k, the rate of convergence of C G is given by where IIdk)/lK = (u(k)tKuik))'"2 is the energy norm of u(~)'. Clearly, CG can be very effective in solving (1) if K(K) is very small-that is, if K is well conditioned. Unfortunately, this is not the case for many systems of equations arising from the finite element discretization of three-dimensional boundary value problems. For example, systems arising from the analysis of large flexible space structures exhibit a condition number K(K) which typically varies between lo5 and 10". An important way around this difficulty is to precondition K-that is, to find a preconditioner matrix P satisfying K(P- ' K) + 1. Then, one focuses on solving the preconditioned system P - ' Ku = P- f rather than on solving the original system of equations Ku = f, Traditionally, finite element analysts have borrowed their preconditioners from numerical analy~ts."~ Examples include Jacobi and SOR iterations and incomplete Cholesky factorizations. The Jacobi or block Jacobi iteration5 corresponds to preconditioning K with P = D, where D is the main diagonal or a block diagonal of K. This preconditioner is effective when K is diagonally dominant, which is seldom the case in systems arising from finite element formulations. The incomplete Cholesky factorization attempts to bridge direct and iterative methods. If K = C'C is the Cholesky factorization of K, P is chosen as C*'C*, where C* is the restriction of C to a prescribed sparsity (for example, the sparsity of K). In other words, fill-in is not accumulated while 0029-5981/89/071715~9$O5.00 0 1989 by John Wiley & Sons, Ltd. Received 1 Ju1,v 1988 Revised 22 Notjemher 1988

A coarse/fine preconditioner for very ill-conditioned finite element problems

Embed Size (px)

Citation preview

Page 1: A coarse/fine preconditioner for very ill-conditioned finite element problems

INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN ENGINEERING, VOL. 28, 1715-1 723 (1989)

A COARSE/FINE PRECONDITIONER FOR VERY ILL-CONDITIONED FINITE ELEMENT PROBLEMS

CHARBEL FARHAT AND NABIL SOBH

Department of Aerospace bnqineeriny Siienceb und Cenler j o r Space Slructures and C ontrols, U n i r w W y of Colorado ut Boulder. Boulder, CO 80309-0429. U S A

SUMMARY

We consider the problem of applying the conjugate gradient method to solve ill-conditioned large algebraic systems of equations resulting from the finite element discretization of some three-dimensional boundary value problems. We present an effective preconditioner for such systems based on a multigrid technique. We assess its performance with examples borrowed from large flexible aerospace structures.

1. INTRODUCTION

The conjugate gradient method (CG) of Hestnes and Stiefel' is becoming the most popular iterative technique for solving large sparse positive definite systems of linear equations

K u = f (1)

It can be shown that, if K(K)= ]1KI/ ~ ~ K - ' ~ ~ is the condition number of K, and u('() is the approximate solution to (1) at step k, the rate of convergence of CG is given by

where IIdk)/lK = (u(k)tKuik))'"2 is the energy norm of u(~) ' . Clearly, CG can be very effective in solving (1) if K(K) is very small-that is, if K is well conditioned. Unfortunately, this is not the case for many systems of equations arising from the finite element discretization of three-dimensional boundary value problems. For example, systems arising from the analysis of large flexible space structures exhibit a condition number K(K) which typically varies between lo5 and 10". An important way around this difficulty is to precondition K-that is, to find a preconditioner matrix P satisfying K(P- ' K) + 1. Then, one focuses on solving the preconditioned system P - ' K u = P- f rather than on solving the original system of equations Ku = f,

Traditionally, finite element analysts have borrowed their preconditioners from numerical ana ly~ts . "~ Examples include Jacobi and SOR iterations and incomplete Cholesky factorizations. The Jacobi or block Jacobi iteration5 corresponds to preconditioning K with P = D, where D is the main diagonal or a block diagonal of K. This preconditioner is effective when K is diagonally dominant, which is seldom the case in systems arising from finite element formulations. The incomplete Cholesky factorization attempts to bridge direct and iterative methods. If K = C'C is the Cholesky factorization of K, P is chosen as C*'C*, where C* is the restriction of C to a prescribed sparsity (for example, the sparsity of K). In other words, fill-in is not accumulated while

0029-5981/89/071715~9$O5.00 0 1989 by John Wiley & Sons, Ltd.

Received 1 Ju1,v 1988 Revised 22 Notjemher 1988

Page 2: A coarse/fine preconditioner for very ill-conditioned finite element problems

C. FARHAT AND N. SOBH 1716

factoring K. The drawback of this scheme is that, under general circumstances, the incomplete factorization process can break down. To remedy this, Manteuffe16 introduced the shifted incomplete Cholesky factorization. This is an alternative where one considers the incomplete factorization of the matrix D - [ 1 /( 1 + .)I (D - K) which is close to K, but more nearly diagonally dominant. Yet, one has to find a suitable CI that would prevent the incomplete Cholesky factorization from breaking down.

More recently, the finite element community has been focusing on developing preconditioners that are ‘natural’ to finite element computations. The element-by-element (EBE) preconditioner of Hughes et al. is such an example.’ Basically, P is constructed from the elemental stiffness matrices k(e). This preconditioner has not yet been shown to be effective on inherently ill-conditioned systems as encountered, for example, in the finite element solution of shell problems.8

In this paper, we construct a finite element oriented preconditioner for inherently ill- conditioned two- and three-dimensional systems. In Section 2, we derive our preconditioner from a general approach to incomplete blockwise factorizations. In particular, we bypass expensive Schur complement computations through the simultaneous processing of a coarse and a fine mesh. Next in Section 3 we present a ‘multigrid‘ interpretation of our preconditioned conjugate gradient algorithm. Realistic numerical examples are described in Section 4. Finally, we conclude with future research directions for further improvement of this work.

2. A TWO MESH PRECONDITIONER

Let Mh denote the mesh resulting from the finite element discretization of a spatial region, R (Figure 1). Here, h = (hx, h,, h,) is a generic mesh size that characterizes the discretization process. If K” denotes the stiffness matrix associated with M“, and f denotes the prescribed generalized forces at the nodal points of M”, the problem to be solved is

Khuh = f h

There are three factors which may adversely affect the condition number K(K”): mesh granularity, mesh distorsion and large variations of the ratio of the stiffness coefficients of a given finite element. It is known that the condition number of a finite eIement system of equations increases with a growing number of elements and a decreasing value of h.9 A fine mesh may yield a x(Kh) in excess of lo6. It has also been observed that increasing the aspect ratio of a supported rectangular plate element from 1/1 to 10/1 raises the condition number of the element stiffness

Figure 1. A fine finite clement mesh Mk

Page 3: A coarse/fine preconditioner for very ill-conditioned finite element problems

PRECONDITIONER FOR FE PROBLEMS 1717

matrix from 14 to 31,000.'0 While a 4-node plane stress/plane strain element yields a condition number that varies typically between lo3 and lo5, a very thin shell element may yield a condition number > 10". This is because its membrane stiffness is much greater than its bending stiffness. It is the purpose of this paper to describe a preconditioner for ill-conditioned finite element systems of equations.

Without any loss of generality, we can assume that Mh is obtained through the refinement of a previous mesh, MZh, associated with a coarser discretization of R (Figure 2). In the following, we will refer to M h as the fine mesh, and to MZh as the coarse mesh.

We split the set of nodes in Mh (Figure 3) into two disjoint subsets:

(i) the nodes that are also contained in the coarse mesh MZh (C-nodes); (ii) the nodes that are not attached to any element of MZh (F-nodes).

In the algebraic multigrid (AMG) literature," these subsets are referred to as the C (for coarse) and F (for fine) grid points. Let KZh denote the stiffness matrix associated with M2h.

By numbering first the mathematical unknowns at the F-nodes, then the mathematical unknowns at the C-nodes, we can partition Kh in the following manner:

Figure 2. Refinement of a coarse mesh MZh

F

C F C

Figure 3. C and F finite element nodes

Page 4: A coarse/fine preconditioner for very ill-conditioned finite element problems

1718 C . FARHAT AND N. SOBH

Thc subscripts f and c refer to the F-nodes and C-nodes. The superscript h is there to remind the reader that the stiffnesses are computed using the elements of Mh. In the remainder of this paper, we refer to the above partitioning as thc C/F partitioning.

Remmk. Even though the F-nodes are numbered first, they are created last by the finite clement

Consider the exact blockwise symbolic factorization of the partitioned Kh, program, through interpolation over the C-nodes.

KFf 0 II:, K:;1K:,] ''1 = [K;: K:c - K;: K;; 1 K:,

In a recent paper, Eijkhout" shows that the bewildering variety of blockwise preconditioners can be formulated as stcmming from two degrees of freedom in approximating thc exact factorization of a partitioned matrix. For our partitioning shown above, these two degrees of freedom are:

(i) the approximation K:: = [Ktf] used in forming an approximation to the Schur comp-

(ii) the approximation K:: = [K:f]-', that will be used for solving linear subsystems resulting

Here we select a different approach. In finite element computations, the Schur complement K2c ~ K:: K;; KFc has a physical meaning. Tt corresponds to the static condensation of the degrees of freedom at the F-nodes (Figure 4). Hence, the Schur complement associated with the C/F partitioning is best approximated with the stiffness matrix K2h of the coarse mesh MZh. Note that this global approximation is far more cfficicnt than the local approximation of the quantity [K:f J in the expression Ktc - KF:Kt; 'KFC, both from a computational and a storage viewpoint. This is because the latter approach would still require several solutions of triangular systems and several matrix-vector products and would also destroy the sparsity of K;c by introducing fill-in.

For the sake of simplicity, we consider a bar element to illustrate the Schur complement

lement K!!c - K:E KFf ~ K:c; and

from the incomplete factorization.

approximation (Figure 5). For this example, the fine and coarse stiffnesses are

4 -2 - 2 2 0

-2 0 2 ,=..[-? L

F

Figure 4. Condensing the E' finite element nodes

Page 5: A coarse/fine preconditioner for very ill-conditioned finite element problems

PRECONDITIONER FOR FE PROBLEMS 1719

Figure 5. Bar element

and

and the quantity K:! - K::K:'r KF, is

Clearly, for a single bar element KZh = Ktc -KFLK:c-lKFc. Of course, one should not expect this equality to persist for all types of finite element. However, we expect this approximation to be efficient in all cases.

In this paper, we do not approximate [Kgf]-' when it appears outside the Schur complement. Consequently, we propose the following incomplete factorization as a preconditioner to the system Khuh = f h :

We call the resulting preconditioned conjugate gradient (PCG) algorithm a C/F-PCG scheme.

3 . A MULTIGRID INTERPRETATION

Here we present a 'multigrid' interpretation of the proposed C/F -PCG algorithm. Multigrid algorithms were developed to remedy the fact that most basic relaxation schemes

suffer in the presence of smooth components of the error.13 These techniques work with a series of coarser grids, each obtained by eliminating a set of points of the previous grid. The important point is that smooth modes on a fine grid look less smooth on a coarse grid. This suggests that, when relaxation begins to signal the predominance of smooth error modes, it becomes more efficient to switch to a coarser grid in which error modes appear more oscillatory. In summary, (a) the error equation for the fine grid is projected to the coarse grid, (b) the coarse grid equation is solved approximately and (c) the error is interpolated back to the fine grid and added to the solution there. Recursive application of these three steps characterkes standard multigrid techniques. I4

Ar each iteration k, PCG involves the solution of the system

(3) pZW =

where P is the preconditioner matrix and r(k) = f'h'-Khuh(k) is the residual at the kth iteration. For the C/F preconditioner (2), system (3) becomes [Ek ;2h][o I K:['Kh I "][::]=[$]

Page 6: A coarse/fine preconditioner for very ill-conditioned finite element problems

1720 C. YARHAT AND N. SOBH

where rjk’ and rkk) are respectively the fine (F-nodes) and coarse (C-nodes) components of the residual vector at step k of PCG. System (3) above can be split into

where the vector unknowns zp), zik) are contributions to the kth approximation u”(~) of the problem Khuh = fk and the quantities tik), tc) are intermediate results. Two processes can be distinguished while solving (3) via the above lower and upper triangular systems (3a) and (3b): namely, a coarsening process and an interpolation process, Note that equations (3a) and (3b) are better conditioned than equation (1) because of two reasons, namely: (i) for a given element order and a given aspect ratio, MZh is coarser than Mh, so that KZh is better conditioned than Kh, and (ii) K f , corresponds to the stiffness matrix of a fictitious mesh M*h, obtained by fixing every other nodal point of Mh, so that the lowest mesh frequency of M*h is higher than the lowest mesh frequency of Mh, which also means that K:, is much better conditioned than Kh. Hence, the solution of these equations is less sensitive to round-off errors than the solution of (1).

The coarsening process

The solution of the lower triangular system (3a) is carried out first by solving

KfCtik) Z= rgk) (3al) then

Equation (Jal) is the kth residual equation for the fine mesh, M”. The solution tik) to this residual equation is projected by the operator K:: onto the coarse mesh, M Z h . Finally, equation (3a2) provides the solution tLk) of the residual equation KZhtf) = rLk) -K:i tik) on the coarse grid, MZh.

p:;tr)-t K Z h t L k ) = r i k ) (3a2)

The iriterpolution process

The solution of the upper triangular system (3b) starts by equating zLk), the contribution to ua), to the previously computed solution tLk) of the kth error equation for the coarse mesh. Next, $) is computed by interpolating zLk) over the C-nodes and solving

Kf, - rgk)) = K:, zLk) (3b2) Note that-as in standard multigrid algorithms--the coarsening operator, KF:, is the transpose of the interpolating operator, KFc.

In summary, the C/F--PCG algorithm can be viewed as a multigrid iteration accelerated by the conjugate gradient method.

4. NUMERICAL EXAMPLES

Here we apply C/F-PCG to solve two ill-conditioned three-dimensional finite element problems. We use the same stopping criteria:

lIr(k)llm 6 qllfll,

Page 7: A coarse/fine preconditioner for very ill-conditioned finite element problems

PRECONDlTlONER FOR FE PROBLEMS 1721

for both examples. We report results for values of the tolerance q ranging between 10- (typical for non-linear dynamic analyses) and (typical for linear static analyses).

Three-dimensional nozzle int erseztion problem

The discretization of a jet engine nozAe intersection subjected to pressure loading is shown in Figure 6. A solid brick 8-node element is used for the analyses. This elernelit is h e a r and has eight degrees of freedom per node. The coarse mesh contains 528 elements and delivers 2,790 equations. The fine mesh has 4,224 elements and produces 18,540 equations.

The computed condition number of the fine mesh is I C * ( K ~ ) = 3.80 x lo7. The number of iterations for various tolerances is displayed in Table 1.

Note the very low number of iterations required for convergence of C/F PCG for such an ill- conditioned large problem. For = C/F-PCG was faster than the direct solver.

Figure 6. Finite element mesh for a nozzle

Table 1. Performance results for the nozzle problem

18,540 equations; I C ~ = 3.80 x 107

I 1 0 - 3 1 0 - 4 10-5 10 6 ~ -~~ ~ ~ ~ ~ ~ ~ -

Iterations 17 21 25 28

Page 8: A coarse/fine preconditioner for very ill-conditioned finite element problems

1722 C. FARHAT AND N. SOBH

Three-dimensionul aeroelastic problem

Figure 7 shows the finite element discretization of one half of a flexible aerospace structure. A 4-node shell element is used for the finite element modelling. The flexible structure is solicited by aerodynamic pressure. The coarse mesh includes 663 elements and 4,3 14 equations. The fine mesh results in 2.652 elements and 16.602 equations. It suffers from some severely distorted elements.

The computed condition number for the fine mesh is as high as 2.85 x 10"). The results of analyses similar to the those of the nozzle problem are given in Table 11.

5. CONCLUDING REMARKS

The results presented in Section 4 highlight the superconvergence aspects of the C/F PCG algorithm. In our concluding remarks, we touch on the storage requirements aspects of C/F-PCG.

An important feature of CG is that it preserves the sparsity of the system matrix, K. As a result, CG exhibits much lower storage demands than direct methods where the triangular factors introduce fill-in. However, when the system of equations is preconditioned, PCG may lose this advantage. The C/F preconditioner as introduced in this paper requires the factorization of both Kff and K2h. We have observed that the storage requirements for the resulting preconditioned conjugate gradient algorithm, C/F-PCG, are dominated by the triangular factor of K&. We have also observed that the subsystem represented by K;, i s better conditioned than Kh. For the aeroelastic problem, we found K ~ ( K : ~ ) = 3.91 x lo5, which is five order magnitude lower than ic2(Kh) = 2.85 x 10". This result is predictable because K:f can be viewed as the stiffness matrix of

Figure 7. Finite element mesh for half a flexible aircraft

Table TI. Performance results for the aeroelastic problem

16,602 equations; K~ = 2.85 x 10" ~ ~ ~ ~~~~

10-3 10-4 10-5 10-6 ~~ -~ ~

'1 ~ ~ ~ _ _

Iterations 16 22 25 32

Page 9: A coarse/fine preconditioner for very ill-conditioned finite element problems

PRECONDITIONER FOR FE PROBLEMS 1723

Mh after all the C-nodes have been fixed. This property of the C/F partitioning can be exploited to reduce the storage requirements of the C/F preconditioner. Since KFf is generally better conditioned than Kh, one could approximate it with its incomplete Cholesky factorization (L + D)D - (L + D)’, where L and D are respectively the lower triangular factor and main diagonal of K&. This approximation involves only triangular and diagonal systems which can be stored in compacted form and solved very quickly. However, our numerical experiments have indicated that, with this approximation, the C/F-PCG algorithm is significantly outperformed by Jacobi- PCG and SSOR-PCG which are not efficient at solving our highly ill-conditioned finite element problems.

Our current efforts are directed towards a good approximation for K:, which will reduce the storage requirements of the C/F-PCG algorithm without severely affecting its superconvergence aspects.

REFERENCES

I . M. R. Hestncs and E. Stiefel, ‘Method of conjugate gradients for solving linear systems’, J . Res. Nut. Bur. Standards, 49,

2. G. H. Golub and C. F. Van Loan, Matrix Computafions, The John Hopkins University Press, Baltimore, Maryland,

3. M. Papadrakakis and M. Yakoumidakis. ‘On the preconditioned conjugate gradient method for solving ( A - -1E)X

4. M. A. Ajiz and A. Jennings, ‘A robust incomplete Choleski-conjugate gradient algorithm’, Int. j . numer. methods eng.,

5. J . K. Reid, ‘On the method of conjugate gradients for the solution of large sparse systems of linear equations’, in J. K.

6. T. A. Manteuffel, ‘Shifted incomplete Cholesky factorization’, Sparse Matrix Proceedings, SIAM, 1978, pp. 41 -61. 7. T. J. R. Hughes, R. M. Fercncz and J. 0. Hallquist, ‘Large-scale vectorized implicit calculations in solid mechanics on a

Cray X-M P/48 utilizing EBE preconditioned conjugate gradients’, Comp. Methods Appl. Mech. Eng.. 61, 2 1 5 248 (1987).

8. T. J. R. Hughes, A. Raefsky, A. Muller, J. M. Winget and 1. Levit, ‘A progress report on EBE solution procedures in solid mechanics’, in Numerical Methodsfor Nonlinear Problems, Volume 2, ed. by C. Taylor, E. Hinton, D. Owen, E. Onate, 1984, pp. 18-26.

409-436 ( 1 952).

1983.

= O’, Int. j . numer. methods eny., 24, 135.5-1366 (1987).

20, 949-966 (1984).

Reid (ed.), Large Sparse Sets of Linear Equations, Academic Press, New York, 1971, pp. 231-254.

9. I. Fried, ‘Condition of finite element matrices generated from nonunilorm meshes’, AIAA d. 10, 219-221 (1972). 10. R. D. Cook, Concepts and Applications of Finite Element Analysis, Wiley, New York, 1974. 11. J. W. Ruge and K. Stuben, ‘Algebraic multigrid, multigrid methods’, in S. F. McCormick (ed.), Frontiers in Applied

12. V. Eijkhout, ‘A general formulation for incomplete blockwise Factorizations’, Comm. Appl. Nutner. Methods, 4, 161-164

13. W. L. Briggs, A Multigrid Tutorial, SIAM, 1987. 14. A. Brandt, ‘Multi-level adaptive solutions to boundary-value problems’, Math. Comp., 31, 333-390 (1 977).

Mathematics, SIAM, 1987, pp. 73-1 30.

(1988).