98. Abstract In this paper we discuss the efficiency of two preconditioners (incomplete factorization and coarse/fine factorization) to solve non symmetric and ill- ...
Computational Mechanics 16 (1995) 98-1o5 9 Springer-Verlag 1995
Solution of frictional contact problems using ILU and coarse/fine preconditioners P. Alart, F. Leben
98
Abstract In this paper we discuss the efficiency of two preconditioners (incomplete factorization and coarse/fine factorization) to solve non symmetric and ill-conditioned linear systems arising from the resolution of frictional contact problems. Mixed formulation is introduced and generalized Newton method is reviewed. We describe a multilevel interpolation adapted to the coarse/fine preconditioner. Numerical examples are proposed to show strong and weak points associated to both methods and optimal approximations are given to improve their efficiency.
gradient methods and to incomplete factorization. In section 3, we describe the numerical features of multilevel preconditioner. Finally, in section 4, test problems are presented (square test, calumet test); feasibility is shown; efficiency is discussed and comparison between the two preconditioners is done. 2 Mechanical and mathematical summary
2.1 Contact and friction In the following, only a 2D discretized body is considered Introduction In structural analysis problems, frictional contact phenomena and the mechanical laws are written for one node. Unilateral contact and friction laws are given by multivalued relationships are involved. These problems are difficult to formulate and between static and kinematic variables expressed with respect even more to solve because they are governed by multivalued to a local frame noted (t, n). Their graphs are drawn in the tribological laws and some numerical resolutions can lead to Fig. 1. The normal contact distance of the node from the obstacle unsymmetric operators. This last disadvantage becomes crucial is denoted d~, fit is the tangential slip increment, 2, and 2 t are for very large problems involving three dimensional the normal and tangential components of the contact nodal discretization and time evolution. force. The adopted contact and friction laws derive from This paper shows how to use a simple mixed formulation together with an efficient preconditioned generalized conjugate pseudo- (i.e. non-differentiable) potentials, i.e. two similar inclusions hold, gradient algorithm coupled with a multilevel interpolation technique when dealing with frictional contact problems. dn~8~[~_ ()on) ~tES~Pc(~)(,)~t). (1) The augmented Lagrangian approach given by Alart and Curnier (1991), generates non linear and non-differentiable Generally, ~uDdenotes the indicator function of a convex systems the unknowns of which are node displacements and set D and 8 ~D the subdifferential of this function. Lagrangian multipliers identified with contact forces. The set C (2n) (the section of the Coulomb's cone) is defined The tangent matrix of the system being non-symmetric, as follows with friction coefficient/~,
1
non-positive definite, ill-conditioned and with zeros on the diagonal, generalized conjugate gradient methods introduced
C(,~) = {;~t:II'~tl[ -~ - ~;:~) (;~ __ 0). (2) by Sonnenveld, Wesseling and de Zeeuw are used. Appropriate In the line of a previous paper, based on an augmented preconditioners are necessary. In this paper, two kinds are Lagrangian approach (Alart and Curnier (1991)), the presented: incomplete factorization (see Meijerink and van equilibrium of a discretized elastic body in frictional contact der Vorst (1977), Behie and Forsyth (1983) and Wallis (1983)) with an obstacle is governed by the system of equations: and two-gridfactorization (see Farhat and Sobh (1989)). These solvers are implemented in the context of non-linear multigrid f i # U ) - - F e x ~ + f ( U , 2) = o methods. (3) In section 1, we review the necessary mathematical ?-~(;~-V(u,~3) = o background and we introduce the mixed formulation for F~t(u) and F~ denote the internal and the external forces. frictional contact problem. Section 2 is devoted to conjugate F(u, 2) defines the continuous frictional contact operator which, for single node under consideration, may be written as,
f
Communicated by S. N. Atluri, 3 January 1995
F(u, 2) = proj~_ (a~) n + projc(~oj~ ~)(at),
(4)
P. Alart, F. Lebon Laboratoire de M&anique et G6nie Civil UniversitfiMontpellier 2, Pl. E. Bataillon, 34095 Montpellier Cedex 5 France
where (r~ and a t, called 'augmented' multipliers, are defined as follows,
Correspondence to: P. Alart
a =2n+rdn(u),
at=2t+rcSt(u ).
(5)
i%
i
where 3 ~ ( x i) is the generalized]acobianof • at x ~(Clarke (1982)). Each region of differentiability (linearity in 2D discretisation) of the operator corresponds to a definite contact status for each contact node (gap, stick, forward slip or backward slip). This notion is illustrated in the next section. For a given local status, the generalized Iacobian is reduced to the single classical jacobian matrix. The convergence of the GNM is discussed by Mart and Curnier (1991).
iM
dn
6t
Fig. 1. Unilateral contact and friction laws.
2.3 A simple example To illustrate the non symmetry of the tangent matrix, we present a simple example (see Fig. 2) which involves an elastic body discretized in two finite elements. The contact with friction may be treated by introducing two special contact elements (by analogy with finite elements for the solid). In a symbolic 2.2 manner, these elements are represented by two lines containing Generalized Newton Method (GNM) two nodes: one belongs to the deformable body, the last node The algorithms usually applied to augmented Lagrangian with an arbitrary position contains the contact force problems in optimisation (e.g. Uzawa's scheme) are stable but very slow because they are based on an alternate treatment components as its degrees of freedom. The GNM leads to solve successively linear systems. The of the primal and dual variables. We prefer to treat of both variables simultaneously through Newton's method. Firstly matrix of each system is determined by the contact status it is useful to split the system of Eqs. (3) in two parts involving (i.e. the region of linearity of the contact operator F). For this example we have 42 = 16 regions which correspond to all the pair x = (u, 2), say a differentiable part G and a non differentiable one i f , combinations of two local (or nodal) status among the four ones given before. The system to solve for the following global G (x) + ~ ( x ) = 0 (6) status, backward slip for the first contact element and forward slip for the second element, is given in the Table 1. Here:
In order to handle the whole contact area of the discretized body, ~_ (respectively C()~))must be replaced by the cartesian product ~ [ (resp. CP(2,)),where p is the number of eventual contact nodes.
2.4 Multilevel i n t e r p o l a t i o n
]-Fim( u ) -- Fext- ]
G(x)=G(u,;O=
-!2
As proposed in a former paper by Alart and Lebon (1993), the Newton method is initialized through an interpolation
J'
F(u, 2) ] =
/
+
r
J
Newton method may be extended to continuous nondifferentiable equations such as (6) in the form
~N
(Ki-~- ]i)--1 (G(xi) Jr-~(Xi)),
X i+l = X i-
K i= c~G(xi),
4 (7)
]ie0y(xi),
k
k2 + #r
k13
k14
+#
k12
t(22+ r
k23
k24
1
k13
k23
k3~
k3~-/zr
k~4
k2~
k34
k44+r
+#
Fig. 2. Elementary discretized example.
Table 1. Linear system Ax = b in the case (slip - , slip + )
Au12 -# 1
--1/r
+#/r
/~u21 Au22 A23I
1
A232 -# 1
- -
l/r
--/l/r
A241 A242
=
99
9 Elastic coarse nodes Multiplier coarse nodes I Elastic fine nodes
Initialisation
0)
Eo
Coarse grid solution
>
@ Multiplier fine nodes
Interpolation on fine grid
LT_.._ ~
I Newton loop on fine 9dd
1/4 100
1/4
Tangent matrix computation I
Fig. 3. Interpolation for elastic and contact nodes. Solver
from a coarser mesh. An example of this is given in Fig. 3. We consider the coarse (resp. fine) mesh M H (resp. Mh). M~ is obtained by a local or global splitting of a triangle into four regular ones. The displacements and the multipliers are interpolated by two different operators P and Q as follows: Uh=PU/_/
and
(8)
,~h=Q)L/_/.
Uh(X) = U~(X)
if
x~M~
(9)
Uh(X) =I(uH(xl) +UH(X2))
if
x$M H
(10)
2h(X) = 89
if
x~M H
(11)
if
x6M H
(12)
if
x6M~
2h(X) = 88
+2n(X2))
CGS with Incomplete LU preconditioner
g >s .s _~
or CGS with Coarse/Fine preconditioner
Fig. 4. Multilevel Generalized Newton method.
The idea of the conjugate gradient squared method, defined by Sonnenveld, Wesseling and de Zeeuw (1985), is to construct a polynomial S, minimizing a special norm ((SJA) r~176 m under the condition S,(0) = 1. The resulting algorithm verifies the condition r k+l = (Sk+,)2(A) r ~
x = 89 + x2),xl, x2sMH
(13)
The displacements are intrinsic. The multipliers, representing contact force components, depend on the mesh. But their sum is independant of the mesh. In short, the non-linear problem is solved on the coarse mesh using the GNM. The solution is interpolated on the fine grid and generates the initial value for the GNM on the fine mesh. This procedure is very efficient in accelerating the Newton method. Usually, the difficulty for the Newton method is to find the contact status on the contact surface. When the status are found, convergence is quadratic and even single step in 2D case, because the operator is piecewise linear. Multilevel interpolation gives a very good approximation of these status on the fine grid. Then, the convergence of the method is improved. The algorithm is summarized in Fig. 4.
If the conjugate gradient method converges then the conjugate gradient squared method converges twice as fast. The following algorithm is obtained:
Initialization x~
n
r ~ = b - Ax ~ DO = r ~
q0=r ~ Iterations
For
k = 0,1 . . . .
3 Conjugate gradient squared method (CGS)
yk = Aqk
3.1 Without preconditioner
xk+l ~- X k + o~k(pk + pk -- o~kyk)
C~k = (r ~ rk)/(r~ y k)
For large and sparse matrices A, it is attractive to use generalized conjugate gradient method to solve the Eq. (7). A general form of this kind of method is given by: xk+l=xk-~-o~kp k
and
p k = T k ( A ) r~ with
(15)
r~
~
and r k +1 = r k _ c~kA(pk + pk _ akyk) Bk+l = (r ~ rk+l)/(r ~, r k) p k +l -~ rk+l + flk+l (pk _ ekyk)
(14) and T. is a polynomial of degree n in A. We have r k§ = b - Ax k+l = S~+l (A) r ~ where Sn is a polynomial of degree n. Remark that the polynomial S. verifies Sn(0) = 1.
qk + l = pk .~_ fik + l (pk __ ekyk + ]~k+l qk)
3.2 Incomplete factorization preconditioner (ILU/CGS) Preconditioning techniques are necessary to accelerate iterative methods. Different methods have been proposed (see for example Dupont, Kendall and Rachford (1968), Concus, Golub and Meurant (1982), Hughes, Ferencz and Hallqnist (1987) or Joly (1990)). Traditionally, these methods are based on lacobi, block Jacobi, SOR iterations, incomplete factorizations or element-by element constructions. If C denotes the preconditioner matrix, the preconditioned conjugate gradient squared method is written:
Remark 2 An incomplete LU factorization can be used as a smoother for multigrid method or as an iterative solver: LUx k+l = b + (LU
- A)Xk+l.
4 Coarse/finepreconditioner Farhat and Sobh (1989) have introduced a coarse/fine preconditioner for very ill-conditioned finite element problems. In this paper, we generalize this algorithm to our non-symmetric systems.
101
4.1 The standard form (CF/CGS)
Initialization
The basic idea is to assume that A has been obtained through the refinement of a coarser mesh. The resulting matrix on the coarse mesh is denoted A , . The matrix A is splitted into four parts according to the mesh level, index c referes to coarse level a n d f to the fine one, say:
xOE_Rn r ~ = b -- Ax ~ z ~ = C it~ pO=rO
qO = r 0
LA4A.A"
Iterations For
A block factorization of matrix A gives:
k = 0, 1. . . .
yk = C -1Aq~]
A4
~ = (z ~ zk)l(z~ y k)
I
"
The part A - A 6Aff~Afc of this matrix corresponds to the condensation of the fine nodes. As proposed by Farhat and Sobh (1989), this matrix may be approximated by the "coarse matrix" A . . As the matrices A . and A - A fA~ ~ Arc coincide for one bar element, we postulate a coarse/fine preconditioner for the conjugate gradient squared method:
x~+~ = x k + ~k(pk + pk _ ~ y k ) and r ~ +~ = r k _ ~ A ( p k
A~ -- Acf AfT1Af~
+ p k _ ~kyk)
~k+I~---C-lrk+l ]
c >L%
fl~+~ = (z ~ zk+~)l(z ~ z ~)
pk+l = zk+l _j_ ilk+' (pk -- O{kyk)
LIE:
(19)
At each iteration of the preconditioned conjugate gradient squared, we have to solve twice such a system z ~ = C -1 r k (see algorithm of section 3.2). For the coarse/fine preconditioner this linear system is written:
and
qk+l = pk _]_~k + l (pk __ ~kyk + fik +~qk) For the kind of matrix considered here, numerical experiments have shown the efficiency of incomplete factorization. Incomplete LU decomposition have been introduced as preconditioner by Meijernik and van der Vorst (1977) and generalized by Behie and Forsyth (I983) and Wallis (1983). Let P0 c N x N, be the set representing the matrix sparsity of A:(i,j)~P o if and only if A 0 # 0 . The incomplete LU factorization of level n of the matrix A is defined recursively by:
Lq = 0 and U~j = 0 i f ( i , j ) ~ P , and (LU)~j =A~j if(i,j)~P~.
[AAfff0Acc,][I0 AfflAfc]~Zf~ : I J[Zc] {if}"
(20)
The vectors rf and r~ are the fine and coarse parts of the vector &. The solution z k is divided into fine and coarse vectors respectively zs and z c. The system (20) is splitted into two sub-systems:
[AAl{ttf}={rrfc}. ;c
(21)
(16) LU is an approximation of A (LId = A +R~) and P~+I is the set representing the sparsity of the matrix LId. Numerical results will be shown in section 4. The solution of the lower block triangular system is: Remark 1 If the level n of the factorization is equal to the bandwidth of the matrix A, a complete factorization LU of the matrix A is achieved.
A 4 t f + A ,t~=r c
(23)
and the solution of the upper block triangular system is obtained by solving:
I zf+AfflAfczc=tf (z c = t~
(24)
The process is summarized in the following formulae:
102
[A~ !
Aff tf = rf A.,t, = r~ -- Acf tf Aff zf= rf-- Afc Z~
x[!
A12 A22
0 0
00
--l/r0
8# 7 1
(27)
8#/r
then
Al2
0
8/2
]
A21
A2z + A21 AI2/A22
0
1 + e#A2JA22
0 0
~#
l
[An (25)
P=
- llr 8#1r +
1
8#A2JA2z/ I
0
c~2fi+ 1/A22 ]
We have to solve sequentially three sub-systems and to multiply twice a matrix by a vector9 The matrix A , is already factorized thanks to the previous coarse mesh solution To get zero on the fourth diagonal term (r + 1/A22= (multilevel interpolation). The splitting in (17) is easy to obtain we postulate: using sparse storage9 c~= lift = - - 1/A22. 4.2 For a local stick status, the matrix is written: The successiveoverrelaxedform (SORCF/CGS) The coarse/fine preconditioner requires to solve two subsystems with the matrix Ar Different methods for these problems could be used. As shown in section 5, AHis usually Azl Azz 0 better conditioned than the matrix A. It is possible to compute A = the exact solution using conjugate gradient squared method without a preconditioner. As well-known for multigrid methods 1 0 (see for example Hackbusch (1985) or Lebon (1989)), the With the same notations, the decomposition yields: matrix A~ only contains the high frequencies of the problem. Then, the solution could be reached using only a small number of iterations. It is possible to define the matrix P as (L + D*) D * - I ( U + D*). Matrices L and U are the lower and P= the upper part of the matrix Aff. Matrix D* is a generalized 1 0 c~ 0 0 0 fi diagonal of Aybecause of the possible zeros on the true diagonal D of Aff. For the elastic nodes, L equals U r and D* equals D. 0 1 0 ? 0 0 0 It becomes more complicated for the contact nodes. The matrix P could be used either as a preconditioner of Affor as an approximation of Ar 0 A22 0 X We give two examples of the matrices L, U and D* for one 0 0 c~ elastic node and its associated multiplier node in the case of slip status and in the case of stick status. 0 0 0 ?A A local slip matrix, with ~ equal to _+ 1 for forward and backward slip, is written:
(28) 0)
(29)
rAil A121
(30)
Ll0 0o
lax1 i A22 0] 0 00][1/Ali A 0 1/,2 0 0
[A11A121
A12
0
Aff= Az~ A22
0
f
Azl
l~
P=
gl# 1 (26)
0
e/~r and A2z =
?26 + I/A22
To obtain zeros on the two last diagonals (c~2fl+ I/A. = 0 and ?26 + l/A= = 0), the simple choice is: Kz2+ r (see Table 1).
:100:1[! 00 i] Azl A22 ~# 1
11A22 0
0
--l/r 0
1
(32)
We define P = (L + D*)D*-I(U +D*) with Aff= P + R. We get:
~00
i
i
8#1 --llro 8#/rl'O _]
with At2 = K21+
p=
I
All A12 1 A21 A22+ A21A12/A22 A21/All
(31)
k 0
0 0
--r 0
fi
-= lift
= - 1/A n
and
? = 1/6 = - 1/A22.
(33)
As an attempt to improve this technique, a relaxation parameter denoted by e)(0 < co