A Schur Complement Preconditioner Method for the Active Set

A Schur Complement Preconditioner Method for the Active Set Strategy
of Contact Elasticity with Friction
P. Lacasse and M. Fortin
Département de mathématiques et de statistique,
Université Laval,
Québec, Canada.
Abstract
Contact mechanic problems, especially when friction is involved, are
still very challenging. In realistic industrial problems, they result in huge
non linear systems that must be solved while taking into account the
complexity of the frictional contact. In this paper, an iterative solver is
proposed with various specialized preconditioners allowing to solve these
linear systems in a totally iterative manner. The resulting solver uses
much less memory than more classical ones and is also very efficient in
terms of CPU time and this, for the same final precision. Large threedimensional problems can thus be solved very efficiently.
1
Introduction
Numerical approximation of frictional contact problems leads to many theoretical and numerical difficulties. In the last few years, attention has been given to
geometrical detection of contact and the related projections (see Hartmann et
al. [18] and Poulios and Renard [25]). Formulations have also received a great
deal of attention and new variants of augmented Lagrangian formulations are
actively developed to circumvent regularity and/or convergence issues (see Popp
et al. [24]).
Despite their theoretical qualities, most formulations are limited by linear
algebra issues. Systems arising from the linearization of the optimality conditions have no special structures that would allow the use of generic iterative
solvers. Direct solver requires large amounts of memory and are prone to bad
scaling and are therefore prohibitive for large 2D problems and, of course, for
most realistic 3D ones.
Very few articles focus on the performances and limitations of the different methods on very fine meshes in complex geometries. Interesting work has
been done to implement generic algebraic iterative solvers, notably multigrid
preconditioners for contact problems as proposed in Huëber et al. [19]. It has
been pointed out that inexact resolution of the linear systems is a key factor to
improve the speed of the non-linear resolution. However, even when efficiency is
the main focus, results on meshes with very high number of degrees of freedom
(DOF) are seldom shown. CPU times and memory requirements are also rarely
mentioned.
For piecewise quadratic discretizations of elasticity problems, a special kind
of multigrid preconditioner can be obtained when using hierarchical bases. Usual
1
piecewise quadratic Lagrangian functions are replaced by a combination of a
piecewise linear functions plus a quadratic correction (see El maliki and coworkers [13, 14]). This opens the possibility to efficiently use the solution of the
system associated to a linear discretization as a preconditioner for the quadratic
discretization system. In El maliki et al. [11], the authors use this hierarchical
preconditioner (HP) for unilateral contact elasticity problems without friction.
They present results that focus on the size of the mesh and show that iterative
solvers are able to solve problems with much more degrees of freedom.
The present work goes one (crucial) step further and considers frictional
contact problems. To enforce Coulomb’s law of friction, together with the nonpenetration condition, it is now usual to use augmented Lagrangian techniques
as in Fortin and Glowinski [17]. Compared to penalization techniques, augmented Lagrangian methods tend to increase robustness by stabilizing Newton’s
method.
In this paper, the additional unknowns used as Lagrange multipliers represent a Neumann boundary condition on the contacting surfaces. They constitute
a tridimensional vector field defined with the natural Cartesian coordinates on
the non-deformed body. In contrast, a large part of the contact mechanics
community uses the so called “convected curvilinear coordinates”. These coordinates, well described in Laursen [21], enforce a separation between the normal
and tangential parts of the multiplier. When the displacement is updated, the
normal and tangential vectors are also updated and the multiplier is convected
together with the deformed body.
In the second section of this paper, a classical elasticity problems in displacement only and mixed (displacement-pressure) formulations is presented. The
different discretizations are introduced and followed by the Schur’s complement
factorization in section 3. This factorization will play a leading role in the construction of imbricated preconditioners. In section 4, details are given about the
discretizations of contact and frictional laws. This is where the notations and
the matrices that are used in the main part of this paper are defined. The specific preconditioner for the frictional contact problem is described in section 5.
Numerical results are finally presented and discussed in section 6.
2
Elasticity problems
This paper is mainly interested in large deformation problems of non linear
materials. A displacement-only formulation using a Neo-Hookean compressible
material is first considered. Then, an incompressible Mooney-Rivlin material in
mixed formulation is presented (see Chamberland et al. [8]).
2.1
Displacement only formulation
Neo-Hookean compressible materials all share a strain energy function µ2 (I1 − 3)
as defined in Ogden [23]. Following Wriggers [31], a particular Neo-Hookean
2
x= X+ ~u(X)
Ω
X
x
ω
Γ
γ
Figure 1: Notations
material is defined where the potential energy function is given by
µ
Λ 2
Λ
Ψ = (I1 − 3) + (J − 1) −
+µ ,
2
4
2
where µ and Λ are called Lamé’s coefficients. Other authors (see Bonet
and Wood [6] for example) use different potential energy functions for NeoHookean materials. The elasticity problem consists in minimizing this energy
under appropriate boundary conditions.
The initial and current configurations are denoted as Ω and ω while their
respective boundaries are denoted Γ and γ . The initial material particle
is located in Ω at the point X which moves to the new position in ω at
x = x(X, t). The displacement from X to x can be expressed as ~u = ~u(X, t) =
x(X, t) − X, the deformation gradient tensor F of this transformation is given
∂x
by F =
= I + ∇X ~u and its determinant det F is denoted J . Note that
∂X
∇X stands for the gradient with respect to the variable X. The Cauchy-Green
tensor is then defined as C = F > · F and its principal invariants I1 , I2 and
I3 are given by :
I1 = C : I,
I2 =
1 2
(I1 − C : C),
2
I3 = det(C) = J 2 .
The boundary Γ of this domain is composed of (at least) two parts: ΓD
where Dirichlet conditions are given and ΓN where Neumann conditions ~λ are
imposed. The weak formulation on the initial configuration Ω can be written
as a nonlinear problem,
Z
Z
Z
~λ · ~v
(F · S) : ∇X ~v =
~r · ~v +
(1)
Ω
Ω
ΓN
∂Ψ
for any ~v in a proper functional space and where S = 2 ∂C
is the second
Piola-Kirchoff stress tensor. More details on the formulation can be found in [8].
3
2.2
Mixed formulation for nearly incompressible materials
We are also interested in the simulation of incompressible materials, and more
particularly rubberlike materials. It is well known that displacement-only formulations are inadequate. As the material becomes more and more incompressible, the conditioning of the linearized system becomes higher and higher. As
a consequence, iterative solvers are ineffective and even with direct solvers, the
usual locking phenomena may occur when the bulk modulus κ becomes large.
It is then convenient to split the second Piola-Kirchoff tensor into a volumic
part and an isochoric part:
S = S 0 − pJC −1
(2)
where p is the pressure which is defined by:
p = −κ(J − 1) .
As κ increases, the material becomes more and more incompressible. For a
Mooney-Rivlin hyperelastic material, the energy functional is given by:
2 1
1 −
−
Ψ = µ10 I3 3 I1 + µ01 I3 3 I2 + κ(J − 1)2
2
where µ10 and µ01 are material parameters. Consequently,
1
2
−1/3
−2/3
S 0 = 2µ10 I3
I − I1 C −1 + 2µ01 I3
I1 I − C − I2 C −1 .
3
3
The mixed formulation can now be written as:
Z
 Z
0

(F
·
S
)
:
∇
~
v
dV
−
pJF −> : ∇X ~v dV =

X

 Ω
Ω




Z
2.3
Discretization
Ω
(J − 1)q dV
+
Z
Ω
1
pq dV
κ
=
Z
ΓN
~λ·~v dA +
Z
Ω
~r ·~v dV
0
(3)
Let the domain Ω be decomposed into a mesh consisting of hexahedra and
tetrahedra in the three-dimensional case (triangles or quadrangles in 2D). In
displacement-only formulation, a quadratic discretization for the displacement
will be used which is second order in space. The Taylor-Hood discretization
(piecewise quadratic for the displacement and linear for the pressure) is also
used for the mixed formulation which is second order for both the displacement
and the pressure. This choice of elements satisfies the inf-sup condition discussed
in details in Boffi et al. [3] provided some restriction on the mesh are respected.
The numerical advantages of these discretizations are discussed in [8].
4
Over this mesh, a basis of scalar functions (ϕui ) is defined for Lagrange
polynomial interpolation of degree two. At each of the Nv vertices and each
of the Nm mid-side nodes j of the mesh, the displacement has three degrees of
freedom (uj,1 , uj,2 , uj,3 ) associated with three basis functions (~
ϕuj,1 , ϕ
~ uj,2 , ϕ
~ uj,3 )
such that
ϕ
~ uj,1 = ϕuj , 0, 0
ϕ
~ uj,2 = 0, ϕuj , 0
ϕ
~ uj,3 = 0, 0, ϕuj
and
~u =
N
X
uj,1 ϕ
~ uj,1 + uj,2 ϕ
~ uj,2 + uj,3 ϕ
~ uj,3
(4)
j=1
The global vector of unknowns is then
~u = (u1,1 , u1,2 , u1,3 , u2,1 , u2,2 , u2,3 , · · · , uN,1 , uN,2 , uN,3 )
>
,
where N = Nv + Nm is the total number of nodes of the mesh. For the
displacement-only formulation (1), starting from an initial estimate of the solution, a correction δ~u is calculated, solution of the following linear system that
needs to be solved at each Newton’s step:
Aδ~u = ru
where ru is the residual. One particularity of the present approach is the use
of a hierarchical basis for the quadratic discretization in the sense that the
displacement is splitted into a linear part and a quadratic correction
~u = ~ul + ~uq
. The rigidity matrix is also splitted accordingly
All Alq
A=
.
Aql Aqq
(5)
The reason for this splitting will be made clear later on.
For the mixed formulation (3), the pressure is also discretized by piecewise
linear polynomials with basis (ϕpk ). At each vertex k of the mesh, the pressure
has one degree of freedom and
p=
Nv
X
pk ϕpk
k=1
with p = (pk ) = (p1 , p2 , p3 , · · · , pNv ) .
After linearization of system (3), the following matrix system has to be
solved at each Newton’s step:
ru
δ~u
A
Bp >
=
(6)
rp
δp
Bp − κ1 Mp
>
where the displacement and pressure residuals are defined as usual. Note that
the matrix A in the above system has still the form (5).
5
3
Schur complement preconditioner
Many of the problems considered in this paper involve a matrix M of the general
form
δx
A B1
rx
=
.
(7)
δy
B2 D
ry
{z
}
|
M
In symmetric situations, the matrices B1 and B2 are transposed from each other.
The inverse of M can be factorized under the form:
−1
A
0
I −B1
I
0
I
0
−1
M =
(8)
0
I
0
I
0 S −1
−B2 A−1 I
where the matrix S is called the Schur complement and is given by S =
D − B1 A−1 B2 . For obvious reasons, the Schur complement matrix cannot be
computed exactly since it would require computing explicitly the inverse matrix
A−1 .
The above factorization can however be used as a preconditioner if reasonable
approximations of the inverse S, denoted S̃ −1 , and of the inverse of A (Ã−1 )
can be found. The operator
−1
I
0
I
0
I −B1
Ã
0
P=
(9)
0
I
0
I
0 S̃ −1
−B2 Ã−1 I
is then a good candidate for a preconditioner. In fact, this factorization opens
the door to a large number of possible preconditioners that can be used in
different circumstances.
3.1
Hierarchical preconditioner
For system (5) (A = All , B1 = Alq , B2 = Aql and D = Aqq ), in order to
exploit the hierarchical decomposition of the displacement, and following [14],
the preconditioner
I
0
I
0
HP(A) =
(10)
0 SSOR(Aqq )
−Aql LU (All ) I
is used which is obtained by setting the first two leftmost matrices in (9) to
the identity. In this specific case, a LU solver can be used for the linear part
All and a single iteration of SSOR on Aqq as an approximation of the Schur
complement. Remember that this is only a preconditioner. This will be used
each time a system involves a matrix of the form (5).
3.2
Mixed preconditioner
The mixed displacement-pressure linear system (6) is also of the general form (7)
with A = A, B = Bp> , B2 = Bp and D = − κ1 Mp . A second level is possible
6
since the matrix A is itself of the form (5) and the Schur complement strategy
can be used on two different levels. The following mixed preconditioner
HP(A) 0
I
0
I −Bp >
MHP(A) =
, (11)
0
I
0 SSOR(αMp )
0
I
can be used which is obtained by setting to the identity the rightmost matrix
in (9). In this case, the Schur complement is Sp = − κ1 Mp − Bp A−1 Bp > . As
proposed in [15], Sp is approximated by a mass matrix Mp on which a single iteration of SSOR is applied. Convergence
will be
improved
if the mass matrix is
1
1
multiplied by an appropriate coefficient α = − µ10 + κ
as suggested in [12].
A−1 is replaced by the hierarchical preconditioner previously described. It is
easily seen that the Schur complement preconditioner is applied on two levels.
4
Contact problems
In standard elasticity problems, the pressure on the external surface is known
and is imposed as a Neumann boundary condition. For contact problems however, the pressure on the contacting surface becomes an additional unknown
and has to be computed in such a way that the solution of the elasticity problem satisfies all contact laws on this surface. The contact laws imposed in this
work are separated into normal and tangential parts. The normal part is the
non-penetration condition of the contacting body, while the tangential part is
Coulomb’s law for frictional contact. It is therefore natural to decompose force
vectors on the surface into normal and tangential parts.
4.1
Normal gap and non-penetration condition
For each point x1 of a potentially contacting surface, the normal gap gn is
defined as the distance between x1 and the closest point on the opposite surface
located at point x2 . If x1 penetrates the opposite surface, the gap is defined
as negative as in Figure 2. In order to express a weak formulation of the non-
ω1
x1
x1
ω1
gn (x) < 0
gn (x) > 0
x2
x2
ω2
ω2
(A) Distance between surfaces
(B) Interpenetration
Figure 2: Normal gap
penetration condition, the discrete space of scalar multipliers Mλ is used on
7
λ
the boundary, with piecewise linear Lagrange
basis (ϕi ) and the positive cone
+
of normal multipliers Mλ = {ηn ∈ Mλ ηn (x) ≥ 0, ∀x ∈ Γ}. As functions
of Mλ are piecewise linear, one may verify that ηn ∈ Mλ + by simply looking
at its nodal values: ηn = (ηn i ) ≥ 0. The weak non-penetration condition on a
displacement ~vR can now be formulated by hgn , ηn iL2 (Γ) ≥ 0 for each ηn ∈ Mλ + .
λ
λ
Let gc
n i = Γ gn ϕi be the mean normal gap with respect to ϕi . The basis
λ
functions ϕi being positive, the weak condition is equivalent to impose gc
ni ≥ 0
for each i. The nodal vector of all those mean normal gaps is denoted gc
n
= (c
gn i ).
It is possible to enforce the non-penetration condition using a scalar multiplier in the normal direction. However, a vectorial multiplier is rather introduced
that will act like a Neumann boundary condition. Let consider the discrete space
3
(Mλ ) of three-dimensional functions with a basis composed similarly to (4):
~λ =
M
X
λj,1 ϕ
~ λj,1 + λj,2 ϕ
~ λj,2 + λj,3 ϕ
~ λj,3
j=1
The global vector of all these nodal values is also denote ~λ = (~λi ).
To apply this pressure, a master-slave formulation is employed. For each
pair of contacting surfaces, one side is chosen as the slave and the other is the
master. The multiplier is only defined on the slave surface, but it pushes on
both surfaces. To define how the multiplier acts on both surfaces, two matrices
are defined: B int and B ext .
int
The entries Bi,j
of the interior matrix B int , form a 3 × 3 block defined by
Z
ϕ
~ λi,α · ϕ
~ uj,β
α, β ∈ {1, 2, 3} ,
ΓN
and represent the action of the multiplier on the slave surface. The exterior
ext
matrix B ext has entries Bi,j
also forming a 3 × 3 block defined by
Z
ϕ
~ λi,α (X1 ) · ϕ
~ uj,β (X2 )
α, β ∈ {1, 2, 3} ,
Γ
They in turn represent the action of the multiplier on the opposite master
surface. The structure of this second matrix is special as it depends on the
projection of contacting points. It therefore depend on the displacement ~v and
must be recomputed each time the geometry is updated. With this notation,
Z ~λ · ~v (X1 ) − ~v (X2 ) = ~v · (B int − B ext )>~λ = ~v · B >~λ .
Γ
The multiplier ~λ enforcing the non-penetration is subject to two additional
conditions: it is only allowed to push (not to pull) and it cannot push where
no contact occurs. This means that its normal component has to be positive.
This condition is imposed at each node i, so a nodal normal ~ni needs to be
8
defined. It could be done in many ways and it has to be done carefully since ~ni
has to be a continuous function of the displacement ~u. It is now assumed that
node i is located at point x1 and is projected on its opposite surface onto the
point x2 , then one might try to use −~n(x2 ) to define the normal at x1 . When
considering contact against a discretized domain (a mesh), ~n(x2 ) will typically
not be a continuous function of ~u.
A smoothed outward-normal at x1 is preferred. It can obtained by a L2 3
projection of ~n(x1 ) onto (Mλ ) which requires the solution of a linear system
c
~1 where
of the form M~λ~n = n
Z
Z
c
M~λi,j =
ϕ
~ λi,α · ϕ
~ λj,β
and n
~1 =
ϕ
~ λi,α · ~n(x1 ) α, β ∈ {1, 2, 3}
Γ
Γ
With this choice of nodal normals ~ni , the multiplier are separated as
~λi = λni~ni + ~λti
(12)
and two vectors are defined λn = (λni ) and ~λt = (~λti ). The normal conditions
at each node i can now be summarized:

λni ≥ 0

gc
(13)
ni ≥ 0
 ~
λi = 0 or gc
ni = 0
which are referred to as the Kuhn-Tucker conditions.
Two kinds of nodes can be distinguished: with contact (active) and without
(inactive). The state of each node is therefore another unknown of the problem.
The restriction matrix to contacting nodes is denoted RC and RSC = I − RC
is the restriction matrix to non-contacting nodes. The matrix RC is diagonal
with 1 at entry (i, i) if the node i is active, and 0 otherwise. If, when defining
RC , nodes are set active when λni > 0 and inactive when gc
n i > 0, then the
Kuhn-Tucker conditions are simplified to:
RC gc
n = 0.
(14)
RSC ~λ = 0
This matricial formulation will be helpful to define the preconditioner. In
the same way, two projection matrices are defined, In and It . Both are blockdiagonal, having a 3 × 3 block at entry i. In operates the normal projection at
node i with a block matrix given by ~ni ⊗ ~ni . It operates in turn the tangential
projection and its entry at node i is given by I − ~ni ⊗ ~ni , so that I = In + It . A
matrix will also be needed to calculate the dot product with the nodal normal.
This matrix, P~n , has a 1 × 3 block at entry i defined by the normal ~ni . With
these definitions, λn = P~n~λ, ~λt = It~λ and ~λ = P~n > λn + ~λt .
4.2
Tangential gap and Coulomb’s law
In a dynamical formulation, Coulomb’s law imposes the alignment of the tangential part of the surface pressure with the relative velocity of the contacting
9
γ1p
xp1
x1
γ1
x2
γ2
xp2
γ2p
Figure 3: Relative displacement
points, which should be defined by a Lie derivative. It is however not uncommon
to align the surface pressure with a simpler definition of the relative displacement between contacting particles. At time t = T , suppose that x1 and x2
are contacting points (then x1 = x2 in IR3 ). Let x1 , x2 ∈ γ 1 , γ 2 be respectively the images at t = T of X1 and X2 , that is x1 (T ) = X1 + v(X1 , T ) and
x2 (T ) = X2 + v(X2 , T ). For a time discretization, suppose that tp = T − ∆t
is the previous time step. At this time, the points x1 and x2 were located at
position xp1 = X1 + ~u(X1 , tp ) and xp2 = X2 + ~up (X2 , tp ). Using a backward first
order approximation, one can approximate their relative velocity by:
p
p
x
−
x
−
x
−
x
1
2
1
2
◦
.
v(x1 , t) ≈
∆t
In Coulomb’s law, two different states can be distinguised for contacting
◦
points: sticking and sliding. Sticking points have a null relative velocity, v(x1 , t) =
0, while sliding ones satisfy, for a given frictional coefficient µ , the relation
σ~t = −µσn
◦
v(x1 ,t)
◦
|v(x1 ,t)|
.
The time step ∆t can be eliminated in both equations, allowing to work with
a relative displacement instead of a relative velocity. This relative displacement
is illustrated in Figure 3 as the difference between the blue dashed vectors.
Furthermore, in the time-continuous case, the relative velocity is tangential to
the surface. In order to keep this property, the projection operator I − ~n ⊗ ~n is
applied to define the tangential relative displacement:
p
p
~gt (x1 ) = I − ~n ⊗ ~n
x1 − x2 − x1 − x2
.
By assuming that the displacement is the solution of the elasticity problem
~ = Js σ~n where Js is the surface Jacobian and Π
for a given ~λ, then ~λ ≈ ΠN
10
is the first Piola-Kirchoff tensor (see [6]). The scalar Js can now be simplified
to set the time discretization of the Coulomb’s law as:

~gt = 0
if |~λt | < µλn
~
g
t
~λt = −µλn
otherwise.
|~gt |
For the space discretization, a weak version of Coulomb’s law is imposed.
To do this, the finite dimensional space of scalar multiplier Mλ is still used to
define the mean relative displacement at node i
Z b
~g i =
(15)
(x1 − x2 ) − (xp1 − xp2 ) ϕλi .
Γ
The tangential gap is defined by keeping the tangential part of the relative
displacement
~gbt i = I − ~ni ⊗ ~ni ~b
gi ,
(16)
which leads to

b

~gt i = 0
if |~λti | < µλni
~gbt i

~λti = −µλni b
|~gt |
otherwise.
(17)
i
Note that the normal ~ni is evaluated at the node i and not at each integration
point to ensure that ~gbt i is exactly perpendicular to this normal.
Here again, sticking and slipping nodes are separated. The restriction matrix
to active (sticking) nodes is denoted RA and RG is the restriction matrix to
active (slipping) nodes (so that RC = RA + RG ). The way in which the contact
state is defined, especially when the approximation (~u, ~λ) has not yet converged,
is crucial for the convergence of any algorithm and it will be scrutinized later.
The conditions are now


 RA~gbt = 0
(18)
~gbt
~

 RG λt = −RG µλn b
|~gt |
where −µλn
−µλni
4.3
~gbt i
.
|~gbt |
~gbt
has to be understood as the vector whose components are
|~gt |
i
Augmented Lagrangian formulation of Coulomb’s law
The extreme non-linearity of the optimality conditions (18) might prevent Newton’s iterations to converge. Indeed, for a sliding node where |~gbt | is close to zero,
11
a small variation of the displacement can cause a huge variation in orientation
of the tangential part of the multiplier. To avoid this, a damping procedure
is employed inspired by an augmented Lagrangian method similar to the one
introduced in Alart and Curnier [1], except that the augmentation is used only
in the tangential direction, and only for sliding nodes. In practice, it only affects
the tangential optimality condition of sliding nodes. At each linear resolution,
the tangential multiplier, instead of being aligned with the tangential relative
displacement, is aligned with the augmented tangential multiplier:
(~λt + rt~gbt )
.
RG~λt = −RG µλn
|~λt + rt~gbt |
(19)
In the sequel, the augmented tangential multiplier is denoted as ~λati = ~λti +rt~gbt i .
Since RC gc
gbt is not penalized, the elasticity matrix A is not altered.
n or RA~
This is important for this iterative solver since it may not behave well with
penalized matrices. The choice of the regularization parameter rt must still be
addressed. If it is too small, the tangential multiplier will not move enough
and it will never be perfectly aligned with ~gbt . If it is too large, there is no
regularization.
Instead of using a fixed value for this parameter, a method similar to the one
presented in Zavarise and Wriggers [33] can be applied, where it is suggested to
increase the parameter when the residual is small enough. We prefer a variation
of this idea based on the following heuristic. If the parameter is too small, ~λt will
be slowly rotating in the same direction. On the other hand, if the parameter
rt is too large, the tangential multiplier will oscillate or behave chaotically.
p
p
This can be assessed by computing the dot product (δ~λt /|δ~λt |)·(δ~λt /|δ~λt |)
between two consecutive corrections. If it is almost one (say > 0.8), the parameter is increased by a given factor (say 20). If it is far from one (say < 0.3),
the parameter is decreased by the same factor. This simple method gives good
results, and it can also be used with any form of penalization or augmented
Lagrangian method.
4.4
Linearization
Both normal and tangential contact conditions are non-linear. To apply a SQP
method, the prior approximation (~u, ~λ) by (~u + δ~u, ~λ + δ~λ) is updated. For this
linearization, the contact states RC , RSC , RA , RG are kept fixed. They will be
updated after each linear resolution.
First consider the system of normal conditions (14). Let i be a non contacting
node, then
~λi + δ~λi = 0 .
If i is now a contacting node, then
X
gc
(∂~uj gc
uj = 0 .
ni +
n i )δ~
j
12
(20)
(21)
The derivative of the normal gap gn is given by ~n2 = ~n(x2 ), so that
Z
Z
Z
λ
λ u
∂~uj,β gc
=
∂
g
ϕ
=
ϕ
ϕ
~
(X
)
·
~
n
−
ϕλi ϕ
~ uj,β (X2 ) · ~n2 .
ni
n i
1
2
~
uj,β
i j,β
Γ
Γ
Γ
Let Bn = (Bni,j ) with Bni,j a 1 × 3 block given by (∂~uj,β gc
n i ) for β ∈ {1, 2, 3}.
In the cantilever case has been neglected. In some situations, a slave point
x1 may be such that it does not have any valid projection point x2 on the master
surface. Such a slave point does not define
R a valid value of gn and itR does not
contribute to the integral. The integral Γ is, de facto, an integral ΓC where
ΓC is the surface effectively projected on the master surface. This surface ΓC
is indeed a function of the displacement ~u and it should be
R linearized as well
leading to an integral on the boundary of the contact zone ∂ΓC .
Consider now the system of tangential conditions (18). Let i be a sticking
node, then
X
~gbt i +
(∂~uj ~gbt i )δ~uj = 0 .
(22)
j
The derivative of this tangential displacement is a bit tricky, as it involves
the projection x2 which depends on the displacement of both sides of the contact surface. The derivative of the tangential projection should also be taken
into account, which depends on the regularization chosen for the normal ~ni .
Whatever the result of this careful calculation is, it is put into the matrix Bt
whose i, j entry is a 3 × 3 block Bti,α,j,β = (I − ~ni ⊗ ~ni )∂~uj,β ~gbt i,α . It should
be noted that the normal component of this derivative has been explicitely removed. In implementation, a somewhat simplified form of this derivative can
be used: Bt = It B
Let i be now a sliding node, the linearization of (19) is therefore given by:
− λni I − (~ni ⊗ ~λi ) + µλni
|
~
−~
λa
ti ⊗λi
|~
λa
|
ti
!
~λa
~λa ti
⊗ ti
(~ni · ~b
g i )I + (~ni ⊗ ~b
gi )
(∂~uj ~ni )δ~uj
|~λati | |~λati |
{z
}
(1)
!
~λa
~λa
I − ti ⊗ ti
I − ~ni ⊗ ~ni (∂~uj ~b
g i )δ~uj
|~λati | |~λati |
{z
}
µλni +
I−
|~λa |
+
ti
µλni
|~λati |
|
(2)
~λa ⊗ ~ni + (I − ~ni ⊗ ~ni ) + µ ti
δ~λi
|
{z
}
|~λati |
| {z }
(3)
(4)
−~λati ~
≈ µλni
− λt
|~λati |
|
{z
}
(5)
13
(23)
In this formula, the different terms have the following signification:
• The first term (1) is the variation of ~λti caused by the variation of the
normal. In the numerical simulations presented is this work, this term has
been neglected.
• The second term (2) is the angular correction. When ~u changes, the sliding
direction also changes and ~λti has to stay aligned. The matrix of those
terms is denoted I ⊥T Bt .
• The third term (3) is indeed δ~λti and will contribute to a matrix It on the
diagonal of the system.
• The fourth term (4) is the elongation of ~λti caused by δλni to fulfill
Coulomb’s law, and its corresponding matrix is denoted E C .
• The last term (5) is the initial residual that should become null at convergence.
4.5
Determination of contact state
After each linear resolution, the contact state is updated. Of course, for the
final solution, the contact state is uniquely defined by Coulomb’s law. For
intermediate states however, it must be done carefully since a bad determination
could lead to oscillations. To stabilize this contact state, it is preferable to use
both gaps (c
gn and ~gbt ), and the multiplier.
A schematic version of this implementation can be exposed as a finite state
machine :
Figure 4: Contact state machine.
14
Each node starts at state “inactive”. From there, the following conditions
will cause a change of state :
A : gc
gbt i | > µc
gn i - Inactive node starts sliding.
n i < 0 and |~
B : gc
gbt i | ≤ µc
gn i - Inactive node becomes sticky.
n i < 0 and |~
C : gc
n i > 0 and λni ≤ 0 - Active node becomes inactive.
D : ~gbt i · ~λti > 0 - Sliding node becomes sticky.
E : |~λti | > si - Sticking node starts sliding.
The exact procedure for determining the contact status is subject to fine
tuning. Each inequality might be added with an appropriate ε, that has to be
small enough according to the convergence criteria. The focus of this paper being
on the linear preconditioner, these non-linear difficulties will not be elaborated
here.
5
Solution strategy
The global linear system solved at each Newton’s step is composed of the elasticity equation (6) and the linearization of the contact conditions (20), (21) and
Coulomb’s law (22), (23). Written in matrices formulation, this gives:
Aδup = rup
(24)
RC Bn δ~u = −RC gc
n
RA Bt δ~u = −RA~gbt
(26)
RSC δ~λ = −RSC ~λ
RG
~gbt
It + E C δ~λ + I ⊥T It Bδ~u = −~λt − µλn~n
|~gbt |
(25)
(27)
(28)
System (24) is only a more compact form of system (6). The boundary conditions (25)-(28) are complementary. In order to write the global system, those
equations are summed together. Before doing this, the non-penetration condition (25) must be converted into a vectorial condition in the normal direction:
RC P~n > Bn δ~u = −P~n > RC gc
n
15
(29)
The following global linear system is finally obtained that has to be solved
each Newton’s iteration:
!
!
A
−B>
δup
=
RC P~n > Bn + RA + RG I ⊥T Bt RSC + RG It + E C
δ~λ

rup



b

~gt 
 −RC P~n > gc
~
gbt + RG −~λt − µλn~n
n − RSC λ − RA~
|~gbt |
at


 .

(30)
which is again of the form (7). The Schur complement preconditioner strategy
will also be used at this third level.
For coarse and simple meshes, the global linear system can be solved using a
LU factorization and it might be the better choice. However, when the number
of unknowns increases, the memory requirement and solution time of direct
solvers become prohibitive. Instead of solving the linear system up to machine
precision, an alternative is to compute an approximation of the solution that
reduces the residual norm sufficiently to ensure convergence, as demonstrated in
Dembo et al. [10]. Such methods are referred to as inexact Newton’s methods.
In Chan and Jackson [9] and in Fortin and Fortin [16], Krylov space methods
are used as inexact Newton’s methods. It is stressed out that the actual storage
of the Jacobian matrix is not needed, but only its action on some vectors, as
long as the preconditioner does not need the matrix. This is possible because
the product of the Jacobian matrix against a vector is a directional derivative,
which can be approximated using a finite difference:
Jv ≈
F (v) − F (v + w)
.
For practical considerations, we chose not to explore this avenue and the
main reason is that the computation of F (v + w) at each Krylov iteration
would be too expensive. For complex non-linear material laws, the calculation
of the residual is more expensive than the product against the Jacobian matrix.
Calculating or even approximating the residual F (v + w) on the contacting
surfaces would also require an update of the geometry and a projection for all
integration points. Furthermore, the class of preconditioners that do not make
use of the actual matrix is limited and excludes the ones that best performed
in our tests.
Other authors (see Brown and Saad [7] or Scott and Fenves [29] for instance)
use Krylov spaces to accelerate Newton’s method. Usually, some minimization
or least square problem is solved to improve the convergence rate. Those techniques are interesting but whichever the choice of Krylov-Newton method is, it
will rely heavily on the effectiveness of the preconditioner.
The implementation of generic preconditioners has been the object of many
interesting papers in the past few years. The most notable one, Incomplete LU
16
factorization (ILU in Meijerink and Van der Vorst [22]), is the default preconditioner for Krylov methods in the linear algebra library (PETSc [2]) on which this
implementation relies. The idea of removing the less important entries from the
matrix, as simple as it may look, inspired a lot of algorithms. In Saad [26], ILUT
uses a dual dropping strategy to control storage cost. ILUM, (Multi-elimination
ILU described in Saad [27]) uses independent set ordering to improve its parallelism. In Saad et al. [28], it is combined with domain decomposition and
multi-level techniques. Different algebraic and geometric multigrid preconditioners have also been described in the literature, such as those in Wohlmuth
and Krause [30] or in Boffy and Venner [4].
Without specific knowledge of the properties of the linear system to solve,
those generic preconditioners have nevertheless proved to be effective in a wide
range of problems. However, in the tests conducted here, using a GMRES
with an ILU factorization was far from being sufficient. To obtain a better
preconditioner, the nature of each equation defining the system need to be
taken into account.
5.1
Global preconditioner
As already mentioned, the global system (30) is a special case of the generic
problem (7). The matrix A is the rigidity matrix of the elasticity problem (of
the form (5) or (6)). The upper-right matrix B1 = −B > is the matrix that apply
the multiplier as a Neumann
boundary condition. The lower-left matrix B2 =
RC P~n > Bn + RA + RG I ⊥T Bt defines the contact and frictional laws
imposed
on the displacement. Finally, the diagonal matrix D = RSC + RG It + E C
defines the contact and frictional laws imposed on the multiplier.
A preconditioner of the form (9) is thus needed. In this case, the Schur
complement is defined by
Sg =RSC + RG It + E C
+ RC P~n > Bn + RA + RG I ⊥T Bt A−1 B > .
(31)
A good approximation of this operator is crucial to achieve an appropriate
convergence. Each zone of contact are considered separately:
• On RSC , the residual is a priori zeroed.
• On RA , the contact condition is equivalent to a Dirichlet condition on
the displacement for rigid-deformable contact. For deformable-deformable
contact it is equivalent to the continuity condition used in domain decomposition. Thus, the Schur complement is the inverse of the SteklovPoincaré operator and is relatively well approximated by a mass matrix.
• On RG , the normal and tangential conditions are considered separately.
In the normal direction, it is a Dirichlet (or continuity) condition on the
displacement and it is approximated by a mass matrix, but a scalar one.
17
With the matrices previously defined, a dot product with the normal is
performed by multiplying the residual by P~n . Then, the inverse of the mass
matrix Mλn is applied, the result is redirected in the normal direction by
P~n > . In the tangential direction however, the condition is imposed on the
multiplier. It is enforced by an identity matrix to which the elongation
caused by the normal correction to satisfy the Coulomb’s law is summed
using the matrix E C .
Together, this gives the following operator:
−1
S˜g =RSC − It + (In + E C )P~n > RG Mλn −1 P~n RG − RA M~λ −1 RA .
(32)
An approximation Ã−1 of the inverse of the rigidity matrix A of linear or nonlinear elasticity, or A for incompressible problems, is also needed. In the section 3, details have been given of the preconditioner use for this part. However,
any other good approximation can be used. Using the factorization (9), the
preconditioner of the global system is given by:
P=
MHP(A) 0
0
I
I
0
B>
I
I
I
0
0
S˜g
−1
0
− RC P~n > Bn + RA + RG I ⊥T Bt MHP(A) I
!
. (33)
A more detailed algorithm expliciting all the above matrix operations is given
in Lacasse [20].
6
Numerical exemples
As already mentioned, this work is concerned with large deformation problems
of non linear materials. Numerical results will therefore be presented for NeoHookean (compressible) and Mooney-Rivlin (incompressible) materials. Some
numerical results using a linear material are also presented for validation purposes and to test the contact algorithm without the additional difficulty due to
the non linearity of the material.
6.1
Shallow ironing
For the sake of comparison, the ironing problem described in references [18, 25,
31] and in Yastrebov [32] will be considered. In this problem, depicted in Figure 5, a deformable indenter is inched downwards (by a Dirichlet boundary condition) onto a deformable slab. Both objects are modeled by the Neo-Hookeen
material defined in section 2.1 with Poisson’s coefficient ν = 0.32. The indenter has a Young’s modulus E = 6.896 GPa, while the slab is 10 times softer
18
.2 1.2
.2
.75
Figure 5: A deformable indenter is pushed downwards onto a less rigid slab.
with a Young’s modulus E = 0.6896 GPa. Lamé’s coefficients in section 2.1 are
recovered using the formula µ = E/(2(1 + ν)) and Λ = Eν/((1 + ν)(1 − 2ν)).
Computation of the force needed on the top of the indenter to impose this
movement can be done in at least five different ways that will now be described.
The Piola-Kirchhoff stress tensor can be Rintegrated on the top of the indenter
~ . The same results should be
in the non-deformed configuration. F~1 = ΓD ΠN
P
obtained by summing the nodal reactions on ΓD (F~2 = ΓD nodal reactions).
Another way to compute the required force is to integrate on the contact
surface instead of the Dirichlet surface. The force applied on the bottom should
compensate the one applied on the top. On the contact zone the multiplier,
which is defined
on the slave surface ΓS , approximate the contact pressure and
R
give F~3 = ΓS ~λ. Moreover, the same result should be obtained by integrating
R
~ or on the master
the surface pressure either on the slave surface F~4 = ΓS ΠN
R
~.
surface F~5 = − ΓM ΠN
As noted in [32] and [25], every different author gets different values and
so do we. First, note that the computation of F~3 and the sum of the nodal
reactions F~2 give identical results up to the convergence criterion. These results
could then be compared with those of F~4 and F~5 .
Looking at Figure 6, one may realize that the force applied on the slave
surface is slightly higher than the one applied on the master surface on the
first (coarse) mesh. The computation have been made on three other meshes
obtained by successively dividing the edges in two thus multiplying the number
of elements by four. It is clearly seen that all three integrals converge to the
same value when refining the mesh.
From these meshes, it is possible to estimate a convergence rate. Using the
solution on the most refined mesh as the “exact” solution, the error on the
displacement for the first three meshes was computed. The linear convergence
in L2 -norm achieved is explanable by the singularities of the solution. As can
be observed in Figure 7, the error peaks at the ends of the contact zone where
19
R
λ
RΓS x
λ
R ΓS y
− ΓM (ΠN )y
R
(Π )
RΓM N x
(Π
)
RΓS N y
(ΠN )x
ΓS
4
108 N
3
2
4
3
2
1
0
1
0
0.5
1
time
1.5
2
Original mesh (418 quadrangles).
3
2
2
1
1
0
0.5
1
time
1.5
2
Second refined mesh (6688 quadrangles).
0.5
1
time
1.5
0
0
0.5
1
time
1.5
the solution is singular, preventing optimal rate of convergence.
Crossed tubes
Let now consider another classical example described in [25]. It consists of two
similar tubes, with an inner radius of 11.2 mm, a thickness of 0.8 mm and a
length of 100 mm. A Neo-Hookean material is used for both tubes with a Poisson’s coefficient ν = 0.3 and Young’s modulus E = 10 GPa for the upper tube
and E = 100 GPa for the lower tube. They are placed perpendicularly, one
centered at origin around the z-axis while the other is centered at (0, 0, 24) and
aligned with the x-axis. Initial configuration is depicted in Figure 8. The com20
2
Third refined mesh (26752 quadrangles).
Figure 6: Comparison between F~3 , F~4 and F~5 to compute the x and y components of the reaction force.
6.2
2
4
3
0
0
First refined mesh (1672 quadrangles).
4
108 N
0
Figure 7: Difference (amplified by a factor 100) between the displacements on
the meshes with 6 688 and 107 008 quadrangles. The error is mainly located at
the ends of the contacting zone.
putational domain is reduced to one fourth of the initial geometry by symmetry
considerations.
The tubes are pressed together by imposing a Dirichlet condition at their
extremities, the upper one being lowered by 0.5 mm at each step. 80 quasi-static
steps are performed, so that the extremities of the upper tube are lowered by a
total of 40 mm. A regular structured mesh was used with only two (quadratic)
elements in the thickness, 24 elements on the half circumference and 16 on the
half length.
Figure 8: Two deformable tubes. Only one fourth of the geometry is meshed.
As can be seen in Figure 9, the deformation and the von Mises stress seems
satisfying and qualitatively similar to those in reference [25]. No clear interpenetration can be seen and the stress is smooth. A more quantitative comparison
is needed. In Figure 10, the contacting zone and the multiplier ~λ are presented
on the original mesh and on a refined mesh (obtained by two successive edge
subdivision). The difference is noticeable. Clearly, the initial mesh was inadequate. The contacting zone was poorly captured and the same is true for the
21
von Mises stress (MPa)
0
1500
Figure 9: Crossed tubes at time t = 80.
multiplier. On the refined mesh, a singular layer can be observed which is barely
visible on the original one. The total contact force varies by only 4%, but its
distribution is significantly modified.
A better representation of the contacting forces would still require more
elements, at least on the boundary of the contact region. Mesh adaptation (e.g.
Bois et al. [5]) would certainly be helpful for that purpose.
Original mesh
~λ = 26.77 MPa
Γ y
R
Figure 10: Contacting zone and multiplier ~λ.
22
Edges divided twice
R
~λ = 27.97 MPa
Γ y
3000
4000
6.3
Bloc with strips
A more difficult test case coming from the tire industry will now be considered.
A piece of rubber 50 mm long, 50 mm large and 16 mm heigh is sculpted
with strips, as illustrated in figures 11 and 12. It is compressed against a rigid
plane ground. Note that auto-contact may also occurs between the strips. The
deformation is applied in two distinct phases where the upper surface of the
block is maintained by a homogeneous Dirichlet condition. The ground is first
raised 0.375 mm per time step without friction (µ = 0). In the second phase,
the frictional coefficient is set to µ = 0.3 and the ground moves backward by
1.5 mm per time step. Each phase consists of 4 time steps.
This computation is first performed with a linear material with Young’s
modulus E = 1.0 and Poisson’s coefficient ν = 0.3. Another computation will be
done afterward using a Mooney-Rivlin material. For this simulation, computing
times and memory consumption are analyzed. For many applications, memory
is the main bottleneck. Direct solution of a linear system, even a symmetric
one using Cholesky factorization, requires large memory. Use of swap memory
is prohibitively expensive in computing time. It is reasonable to say that if the
problem does not hold in memory, it cannot be done. Of course, the actual
results depend on specific implementation and hardware, so the precise values
are of little interest. However their behavior when mesh size increases are of
particular concerns.
For the computing time, two values are calculated. The total time includes
everything: data reading, geometrical computation, matrix assembly, linear resolution, exportation, etc. This is the real time spent by the process. Being
mainly concerned with preconditioners, the specific time used for the solution
of linear systems should also be measured. Three meshes are considered, obtained by successive subdivision of the coarser one and described in table 1.
Undeformed
Deformed
Figure 11: Bloc with strips. Linear elastic model.
The results in table 2 show the advantage of this iterative method against a
direct solver. For the coarser mesh, with 9 714 tetrahedra, the gain in speed in
the linear system is negligible when compared to the total computing time. The
gain in memory is more noticeable, but it is yet so important at this level. For
the second mesh, with 77 712 tetrahedra, the difference in speed and memory
23
Blue elements are not in contact, gray are sliding and red are sticking.
Figure 12: Contact between pairs of strips.
Vertices
2 654
16 916
119 123
Tetrahedra
9 714
77 712
621 696
dof ~u
50 748
357 369
2 670 783
dof ~λ
3 771
12 507
45 171
Table 1: Specifications of the meshes
Total
time
SchurMHP
GlobalLU
227,4s
253,3s
SchurMHP
GlobalLU
2 345s
6 605s
SchurMHP
GlobalLU
35 021s
—
Time per
Total
linear solve
memory
9 714 tetrahedra
1,25s
266,0Mb
2,13s
683,1Mb
77 712 tetrahedra
11,9s
1 675Mb
65,2s
7 444Mb
621 696 tetrahedra
181s
12 845Mb
—
—
Table 2: Execution time: linear elastic model
24
Newton’s
iterations
57
51
82
75
112
—
usage is now huge. Finally, with 621 696 tetrahedra, the computer used for those
tests was not able to allocate enough memory for a direct solver. Those results
confirm that use of iterative solvers is feasible for frictional contact elasticity.
For the last example, an incompressible Mooney-Rivlin material is now considered. The coefficients of the model were set to µ10 = 1.0, µ01 = 0.1 and a
bulk modulus of κ = 100. A mixed displacement-pressure (with a Taylor-Hood
P2 − P1 element) is therefore added to the formulation. This is a much more
difficult problem due to the incompressibility condition and the non linearity of
the material. For this reason, a smaller total vertical displacement of 0.4 mm
(1.5 mm in the linear elastic model) is imposed.
For each of the meshes, the number of additional degrees of freedom (for
the pressure) is equal to the number of vertices. Results with this material,
presented in table 3, also confirm the effectiveness of this iterative solver.
Total
time
SchurHP
GlobalLU
185s
230s
SchurHP
GlobalLU
2 014s
4 378s
SchurHP
GlobalLU
21 620s
—
Time per
Total
linear solve
memory
9 714 tetrahedra
1,10s
279Mb
2,51s
764Mb
77 712 tetrahedra
19,8s
1 663Mb
81,8s
8 592Mb
621 696 tetrahedra
192s
11 270Mb
—
—
Newton’s
iterations
35
34
42
41
59
—
Table 3: Execution time: Mooney-Rivlin model
7
Conclusions
This paper proposed a preconditioner for efficiently solving linear systems arising from the linearization of elasticity problems with frictional contact. This
preconditioner was built upon a specific discretization making use of a vectorial multiplier in Euclidean basis. This process could be adapted to other discretizations, as long as the normal and tangential conditions (non-penetration
and Coulomb’s law) are kept separated. The use of Euclidean projection in the
determination of contact, instead of ray-casting, is also an optional choice.
A part of this preconditioner is based on a hierarchical preconditioner and
is specific to the quadratic basis, but this is not a limitation. Any good preconditioner could be used for the elasticity system. However, the few empirical
tests conducted here led to the conclusion that for this range of meshes, the
hierarchical preconditioner performs very well. For much larger systems, even
the linear-linear part of the rigidity matrix will become too large for a direct
25
solver and will need its own preconditioner. Applying multigrid or domain decomposition preconditioner on the linear part is probably a good candidate for
further scaling.
We were also interested in the non-linear behaviour of this problem. The division by ~gbt is an important difficulty and it was proposed to use a regularization
of Coulomb’s law that does not alter the conditioning of the elasticity system.
Although similar to an augmented Lagrangian method, this regularization does
not change the final solution of the non-linear system.
This solver has been first tested with a shallow ironing problem previously
studied in several papers. It was noticed that the resulting contacting force for
this example was significantly from those found in the literature. Using this
iterative solver, an approximation for the original discretization was calculated,
but also with refined meshes. These successive solutions converged to a solution
and it would be interesting to compare with other software to further validate
the present formulation.
The second test, two crossed tubes, also gave qualitatively good results.
One can observes a large difference between the contact pressures computed on
the coarse and fine meshes. For some simulations, not only the total force is
important, but also the distribution of the pressure, and the size and shape of
the contact area. In these cases, it is clearly very important to use a fine mesh,
at least in the vicinity of the contacting zone, stressing out the importance of a
fast solver.
With the last simulation, the speed of this iterative solver has been measured
and compared with a direct solver. For small meshes, the performance gain was
clear. For the intermediate mesh with around 370K degrees of freedom, the gain
observed with the iterative solver compared to a direct solver is impressive, not
to mention the gain in memory consumption.
Acknowledgements
The authors wish to acknowledge the financial support of the Natural Sciences
and Engineering Research Council of Canada (NSERC).
References
[1] P. Alart and A. Curnier. A mixed formulation for frictional contact problems prone to Newton like solution methods. Computer Methods in Applied
Mechanics and Engineering, 92:353–375, 1991.
[2] S. Balay, S. Abhyankar, M. F. Adams, J. Brown, P. Brune, K. Buschelman, V. Eijkhout, W. D. Gropp, D. Kaushik, M. G. Knepley, L. C.
McInnes, K. Rupp, B. F. Smith, and H. Zhang. Petsc web page, 2014.
http://www.mcs.anl.gov/petsc.
26
[3] D. Boffi, F. Brezzi, and M. Fortin. Mixed Finite Element Methods and
Applications, volume 44 of Springer Series in Computational Mathematics.
Springer, Berlin, Heidelberg, 2013.
[4] H. Boffy and C. H. Venner. Multigrid numerical simulation of contact
mechanics of elastic materials with 3D heterogeneous subsurface topology.
Tribol Int, 92:233–245, 2015.
[5] R. Bois, M. Fortin, and A. Fortin. A fully optimal anisotropic mesh adaptation method based on a hierarchical error estimator. Computer Methods
in Applied Mechanics and Engineering, 209-212:12–27, 2012.
[6] J. Bonet and D. R. Wood. Nonlinear Continuum Mechanics for Finite
Element Analysis. Cambridge, 1997.
[7] P.N. Brown and Y. Saad. Hybrid Krylov methods for nonlinear systems of
equations. SIAM J. Sci. Stat. Comput., 11:450–481, 1990.
[8] É. Chamberland, A. Fortin, and M. Fortin. Comparison of the performance
of some finite element discretizations for large deformation elasticity problems. Comp. & Struct., 88(11-12):664–673, 2010.
[9] T.F. Chan and K.R. Jackson. Nonlinearly preconditioned Krylov subspace
methods for discrete Newton algorithms. SIAM J. Sci. Stat. Comput.,
5:533–542, 1984.
[10] R. S. Dembo, S. C. Eisenstat, and T. Steihaug. Inexact Newton methods.
SIAM J. Numer. Anal., 19:400–408, 1982.
[11] A. El maliki, M. Fortin, J. Deteix, and A. Fortin. Preconditioned iteration for saddle-point systems with bound constraints arising in contact problems. Computer Methods in Applied Mechanics and Engineering,
254(0):114–125, 2013.
[12] A. El maliki, M. Fortin, N. Tardieu, and A. Fortin. Iterative solver for
3D linear and nonlinear elasticity problems: Displacement and mixed formulations. Int. J. Numerical Methods in Engineering, 83(13):1780–1802,
2010.
[13] A. El maliki and R. Guénette. Efficient preconditioning techniques for
finite-element quadratic discretization arising from linearized incompressible Navier-Stokes equations. International Journal for Numerical Methods
in Fluids, 63(12):1394–1420, 2010.
[14] A. El maliki, R. Guénette, and M. Fortin. An efficient hierarchical preconditioner for quadratic discretizations of finite element problems. Numerical
Linear Algebra with Applications, 18(5):789–803, 2011.
[15] C. Elman, D.J Silvester, and Wathen A.J. Finite Elements and Fast Iterative Solvers: with Applications in Incompressible Fluid Dynamics. Oxford
University Press, 2005.
27
[16] A. Fortin and M. Fortin. A preconditioned generalized minimal residual
algorithm for the numerical solution of viscoelastic fluid flows. Journal of
Non-Newtonian Fluid Mechanics, 36:277–288, 1990.
[17] M. Fortin and R. Glowinski. Augmented Lagrangian methods: applications
to the numerical solution of boundary-value problems, volume 15 of Studies
in Mathematics and its Applications. North-Holland, Amsterdam, 1983.
[18] S. Hartmann, J. Oliver, R. Weyler, J.C. Cante, and J.A. Hernandez.
A contact domain method for large deformation frictional contact problems. part 2: Numerical aspects. Comput. Methods Appl. Mech. Engrg.,
198:2607–2631, 2009.
[19] S. Hüeber, A. Matei, and Barbara I. Wohlmuth. Efficient algorithms for
problems with friction. SIAM J. Sci. Comput., 29(1):70–92, 2007.
[20] P. Lacasse. Résolution du contact frottant déformable-déformable par lagrangien augmenté et GCR préconditionné. PhD thesis, Département de
mathématiques et de statistique, Université Laval, Québec, 2014. In french.
[21] T. A. Laursen. Computational Contact and Impact Mechanics. Springer,
Berlin, 2002.
[22] J. A. Meijerink and H. A. van der Vorst. An iterative solution method
for linear systems of which the coefficient matrix is a symmetric m-matrix.
Math. Comp., 31:148–162, 1977.
[23] R. W. Ogden. Non-Linear Elastic Deformations. Wiley & Sons, 1984.
[24] A. Popp, B.I. Wohlmuth, M.W. Gee, and W.A. Wall. Dual quadratic
mortar finite element methods for 3D finite deformation contact. SIAM J
Sci Comput, 34(4):B421–B446, 2012.
[25] K. Poulios and Y. Renard. An unconstrained integral approximation of
large sliding frictional contact between deformable solids. Computers &
Structures, 153:75–90, 2014.
[26] Y. Saad. ILUT: A dual threshold incomplete ILU preconditioner. Numer.
Linear Algebra Appl., (1):387–402, 1994.
[27] Y. Saad. ILUM: A multi-elimination ILU preconditioner for general sparse
matrices. SIAM J. Sci. Comput., 17:830–847, 1996.
[28] Y. Saad, M. Sosonkina, and J. Zhang. Domain decomposition and multilevel type techniques for general sparse linear systems. Domain Decomposition Methods, 10:174–190, 1998.
[29] M.H. Scott and G.L. Fenves. A Krylov subspace accelerated Newton algorithm. ASCE Structures Congress, 2003.
28
[30] B. I. Wohlmuth and R. H. Krause. Monotone multigrid methods on nonmatching grids for nonlinear multibody contact problems. SIAM J. Sci.
Comput., 25(1):324–347, 2003.
[31] P. Wriggers. Computational Contact Mechanics. Springer, Berlin, Heidelberg, 2006.
[32] V. A. Yastrebov. Computational contact mechanics: geometry, detection
and numerical techniques. PhD thesis, MINES ParisTech, 2011. Paris,
France.
[33] G. Zavarise and P. Wriggers. A superlinear convergent augmented Lagrangian procedure for contact problems. Eng. Comput., 16(1):88–119,
1999.
29