. Aachen, EU Regional School Series – February 18, 2013

Introduction to Domain Decomposition Methods

Alfio Quarteroni

Chair of Modeling and Scientific Computing Mathematics Institute of Computational Science and Engineering Ecole´ Polytechnique F´ed´erale de Lausanne

MOX – Modeling and Scientific Computing Mathematics Department Politecnico di Milano

1 MOTIVATION

DD can be used in the framework of any discretization method for PDEs (FEM, FV, FD, SEM) to make their algebraic solution more efficient on parallel computer platforms

DDM allow the reformulation of a boundary-value problem on a partition of the computational domain into subdomains ⇒ very convenient framework for the solution of heterogeneous or multiphysics problems, i.e. those that are governed by differential equations of different kinds in different subregions of the computational domain.

2 THE IDEA

The computational domain Ω where the bvp is set is subdivided into two or more subdomains in which problems of smaller dimension are to be solved. Parallel solution algorithms may be used. There are two ways of subdividing the computational domain: with disjoint subdomains with overlapping subdomains

Ω2 Ω2

Ω1 Γ2 Γ1 Ω Ω1 Γ

Correspondingly, different DD algorithms will be set up.

3 AN HISTORICAL REMARK

The classical “logo” of DDM is [http://www.ddm.org/]

Why this symbol? What does it mean?

We have to go back to a work of 1869 by Hermann Schwarz...

4 ...who wanted to establish the existence of harmonic functions with prescribed boundary values on regions with non-smooth boundaries:

−#u = f in Ω u = g on ∂Ω ! where

Ω ∂Ω

Schwarz’s idea: split Ωinto two elementary subdomains:

Ω2

Ω Ω1 Γ2 Γ1

and set up a suitable iterative method passing information between the subproblems. 5 MODERN EXAMPLES OF SUBDIVISIONS

6 REFERENCES

B.F. Smith, P.E. Bjørstad, W.D. Gropp (1996) Domain Decomposition Cambridge University Press, Cambridge.

A. Quarteroni and A. Valli (1999) Domain Decomposition Methods for Partial Differential Equations Oxford Science Publications, Oxford.

A. Toselli and O.B. Widlund (2005) Domain Decomposition Methods – Algorithms and Theory Springer-Verlag, Berlin and Heidelberg.

7 CLASSICAL ITERATIVE DD METHODS

8 MODEL PROBLEM

Consider the model problem: find u :Ω→ R s.t.

Lu = f in Ω u =0 on∂Ω ! L is a generic second order elliptic operator.

The weak formulation reads:

1 find u ∈ V = H0 (Ω): a(u, v)=(f , v) ∀v ∈ V

where a(·, ·)isthebilinearformassociatedwithL.

9 SCHWARZ METHODS Consider a decomposition of Ωwith overlap:

Ω2

Ω Ω1 Γ2 Γ1

(0) Given u2 on Γ1,fork ≥ 1:

(k) Lu1 = f in Ω1 (k) (k−1) solve  u1 = u2 on Γ1  (k)  u1 =0 on∂Ω1 \ Γ1

 (k) Lu2 = f in Ω2 (k) k u solve  u( ) = 1 on Γ  2 (k−1) 2  & u1  (k) u2 =0 on∂Ω2 \ Γ2.   10 Choice of the trace on Γ2: (k) if u1 ⇒ multiplicative Schwarz method

(k−1) if u1 ⇒

We have two elliptic bvp with Dirichlet conditions in Ω1 and Ω2,andwe (k) (k) wish the two sequences {u1 } and {u2 } to converge to the restrictions of the solution u of the original problem:

(k) (k) limk→∞ u = u and limk→∞ u = u . 1 |Ω1 2 |Ω2

The Schwarz method applied to the model problem always converges, with a rate that increases as the measure |Γ12| of the overlapping region Γ12 increases.

11 Example Consider the model problem

−u$$(x)=0 a < x < b, u(a)=u(b)=0, ! where Ω2

abγ2 γ1

Ω1

The solution is u =0.Weshowafewiterationsofthemethod: (0) u2 (1) u1 u(1) (2) 2 u1 (2) u2

abγ2 γ1 Clearly, the method converges with a rate that reduces as the length of the interval (γ2,γ1)getssmaller. 12 Remark

The Schwarz method requires at each iteration the solution oftwo subproblems of the same kind as those of the original problem.

The boundary conditions of the initial problem remain unchanged.

Dirichlet-type boundary conditions are imposed across the interfaces.

13 NONOVERLAPPING DECOMPOSITION We partition now the domain Ωin two disjoint subdomains:

Ω2

Ω Ω1 Γ

The following equivalence result holds. Theorem The solution u of the model problem is such that u = ui for i =1, 2, |Ωi where ui is the solution to the problem

Lui = finΩi ui =0 on ∂Ωi \ Γ ! with interface conditions

∂u1 ∂u2 u1 = u2 and = on Γ ∂nL ∂nL

14 ∂/∂nL is the conormal derivative. Example The problem −div (µ∇u)=f in Ω u =0 on∂Ω ! is equivalent to −div (µi ∇ui )=fi in Ωi u =0 on∂Ωi   u1 = u2 on Γ  ∂u ∂u  µ 1 = µ 2 on Γ 1 ∂n 2 ∂n   Remark The proof of the theorem can be done using the weak formulationofthe problem. We refer to Lemma 1.2.1 in [QV99].

15 DIRICHLET-NEUMANN METHOD

(0) Given u2 on Γ, for k ≥ 1solvetheproblems:

(k) Lu1 = f in Ω1 (k) (k−1)  u1 = u2 on Γ  (k)  u1 =0 on∂Ω1 \ Γ

 (k) Lu2 = f in Ω2 ∂u(k) ∂u(k)  2 = 1 on Γ  ∂nL ∂nL  (k) u2 =0 on∂Ω2 \ Γ   The equivalence theorem guarantees that when the two sequences (k) (k) {u1 } and {u2 } converge, their limit will be necessarily the solution to the exact problem. The DN algorithm is therefore consistent. However, its convergence is not always guaranteed.

16 Example Let Ω= (a, b), γ ∈ (a, b), L = −d 2/dx 2 and f =0.Ateveryk ≥ 1the DN algorithm generates the two subproblems: (k) $$ −(u1 ) =0 a < x <γ (k) (k−1)  u1 = u2 x = γ  (k)  u1 =0 x = a  (k) $$ −(u2 ) =0 γ(a + b)/2:  (0) u2 (0) u2

u(2) γ a+b 2 ab2

a+b γ ab2

(1) (1) 17 u2 u2 AvariantoftheDNalgorithmcanbesetupbyreplacingthe Dirichlet condition in the first subdomain by

(k) (k−1) (k−1) u1 = θu2 +(1− θ)u1 on Γ using a relaxation parameter θ>0. In such a way it is always possible to reduce the error between two subsequent iterates.

In the previous example, we can easily verify that, by choosing

(k−1) u1 θopt = − (k−1) (k−1) u2 − u1 the algorithm converges to the exact solution in a single iteration.

More in general, there exists a suitable value 0 <θmax < 1suchthat the DN algorithm converges for any possible choice of the relaxation parameter θ in the interval (0,θmax ).

18 NEUMANN-NEUMANN ALGORITHM Consider again a partition of Ωinto two disjoint subdomains and denote by λ the (unknown) value of the solution u on their interface Γ:

λ = ui on Γ(i =1, 2)

Consider the following iterative algorithm: for any given λ(0) on Γ, for k ≥ 0andi =1, 2, solve the following problems: (k+1) Lui = f in Ωi (k+1) (k)  ui = λ on Γ  (k+1)  ui =0 on∂Ωi \ Γ (k+1) Lψi  =0 inΩi ∂ψ(k+1) ∂u(k+1) ∂u(k+1)  i = 1 − 2 on Γ  ∂n ∂n ∂n  (k+1) ψi =0 on∂Ωi \ Γ with   (k+1) (k) (k+1) (k+1) λ = λ − θ σ1ψ1|Γ − σ2ψ2|Γ

where θ is a positive acceleration parameter,' while σ1 and( σ2 are two positive coefficients. 19 ROBIN-ROBIN ALGORITHM

For every k ≥ 0solvethefollowingproblems:

(k+1) u1 = f in Ω1 (k+1)  u1 =0 on∂Ω1 \ Γ  ∂u(k+1) ∂u(k)  1 + γ u(k+1) = 2 + γ u(k) on Γ ∂n 1 1 ∂n 1 2  then 

(k+1) Lu2 = f in Ω2 (k+1)  u2 =0 on∂Ω2 \ Γ  ∂u(k+1) ∂u(k+1)  2 + γ u(k+1) = 1 + γ u(k+1) on Γ ∂n 2 2 ∂n 2 1  (0) where u2 is assigned and γ1, γ2 are non-negative acceleration parameters that satisfy γ1 + γ2 > 0. (k) (k+1) Aiming at parallelization, we could use u1 instead of u1 .

20 THE STEKLOV-POINCAREINTERFACE´ EQUATION

21 MULTI-DOMAIN FORMULATION OF POISSON PROBLEM AND INTERFACE CONDITIONS

We consider now the model problem:

−#u = f in Ω u =0 on∂Ω. ! For a domain partitioned into two disjoint subdomains,wecanwritethe

equivalent multi-domain formulation (ui = u|Ωi , i =1, 2):

−#u1 = f in Ω1 u1 =0 on∂Ω1 \ Γ   −#u2 = f in Ω2  u =0 on∂Ω \ Γ  2 2   u1 = u2 on Γ ∂u ∂u  1 = 2 on Γ.   ∂n ∂n   22 Remark

On the interface Γwe have the normal unit vectors n1 and n2:

Ω1 n1 Γ

n2 Ω2

There holds: n1 = −n2 on Γ.

We denote n = n1 so that ∂ ∂ ∂ = = − on Γ. ∂n ∂n1 ∂n2

23 THE STEKLOV-POINCAREOPERATOR´

Let λ be the unknown value of the solution u on the interface Γ:

λ = u|Γ

Should we know a priori the value λ on Γ,wecouldsolvethefollowing two independent boundary-value problems with Dirichlet condition on Γ (i =1, 2): −#wi = f in Ωi w =0 on∂Ω \ Γ  i i  wi = λ on Γ. 

24 With the aim of obtaining the value λ on Γ, let us split wi as follows

∗ 0 wi = wi + ui ,

∗ 0 where wi and ui represent the solutions of the following problems (i =1, 2): ∗ −#wi = f in Ωi ∗ wi =0 on∂Ωi ∩ ∂Ω  ∗  wi =0 on Γ and  0 −#ui = 0 in Ωi 0 ui =0 on∂Ωi ∩ ∂Ω  0  ui = λ on Γ. 

25 ∗ The functions wi depend solely on the source data f ∗ ⇒ wi = Gi f where Gi is a linear continuous operator

0 ui depend solely on the value λ on Γ 0 ⇒ ui = Hi λ where Hi is the so-called harmonic extension operator of λ on the domain Ωi .

∗ 0 We have that ui = wi + ui (i =1, 2) ∂w ∂w ⇔ 1 = 2 on Γ ∂n ∂n ∂ ∂ ⇔ (w ∗ + u0)= (w ∗ + u0)onΓ ∂n 1 1 ∂n 2 2 ∂ ∂ ⇔ (G f + H λ)= (G f + H λ)onΓ ∂n 1 1 ∂n 2 2 ∂H ∂H ∂G ∂G ⇔ 1 − 2 λ = 2 − 1 f on Γ. ∂n ∂n ∂n ∂n ) * ) * 26 We have obtained the Steklov-Poincar´e equation for the unknown λ on the interface Γ: Sλ = χ on Γ S is the Steklov-Poincar´e pseudo-differential operator:

∂ ∂ 2 ∂ Sµ = H1µ − H2µ = Hi µ ∂n ∂n ∂ni i +=1 χ is a linear functional which depends on f :

∂ ∂ 2 ∂ χ = G2f − G1f = − Gi f . ∂n ∂n ∂ni i +=1 The operator ∂ S : µ → S µ = (H µ) i =1, 2, i i ∂n i i ,Γ , is called local Steklov-Poincar´eoperator,(Dirichlet-to-Neumann) , which operates between the trace space

1/2 Λ={µ : ∃v ∈ V s.t. µ = v|Γ} = H00 (Γ) and its dual Λ$. 27 Example To provide an example of the operator S,weconsiderasimple1D problem. Let Ω= (a, b) ⊂ R as illustrated below. We split Ωin two nonoverlapping subdomains. In this case the interface Γreducestothepointγ ∈ (a, b)andtheSteklov-Poincar´eoperatorS becomes dH dH 1 1 Sλ = 1 − 2 λ = + λ dx dx l l ) * ) 1 2 * where l1 = γ − a et l2 = b − γ. λ

H1λ H2λ

l1 l2

abΩ1 γ Ω2

28 EQUIVALENCE BETWEEN THE DD SCHEMES AND CLASSICAL ITERATIVE METHODS

29 The DN method can be reinterpreted as a preconditioned Richardson method for the solution of the Steklov-Poincar´einterface equation:

(k) (k−1) (k−1) PDN (λ − λ )=θ(χ − Sλ )

The preconditioning operator is PDN = S2 = ∂(H2µ)/∂n2.

The NN method can also be interpreted as a preconditioned Richardson algorithm

(k) (k−1) (k−1) PNN (λ − λ )=θ(χ − Sλ )

−1 −1 −1 with PNN =(σ1S1 + σ2S2 ) .

30 The Robin-Robin algorithm is equivalent to the following alternating direction (ADI) algorithm:

(k) (k−1) (γ1IΛ + S1)µ1 = χ +(γ1IΛ + S2)µ2 , (k) (k−1) (γ2IΛ + S2)µ2 = χ +(γ2IΛ + S1)µ1 ,

$ where IΛ :Λ→ Λ here denotes the Riesz isomorphism between the Hilbert space Λand its dual Λ$.

At convergence (for a convenient choice of γ1 and γ2), we have µ1 = µ2 = λ.

31 FINITE ELEMENT APPROXIMATION: MULTI-DOMAIN FORMULATION

32 Consider the Poisson problem:

−#u = f in Ω u =0 on∂Ω ! Its weak formulation reads

find u ∈ V : a(u, v)=F(v) ∀v ∈ V

1 where V = H0 (Ω),

a(v, w)= ∇v ·∇w ∀v, w ∈ V -Ω and F(v)= fv ∀v ∈ V . -Ω

33 Suppose that Ωis split into two nonoverlapping subdomains and consider a uniform triangulation Th of Ω, conforming on Γ:

Ω1

Γ

Ω2

34 The Galerkin finite element approximation of the Poisson problem reads:

find uh ∈ Vh : a(uh, vh)=F(vh) ∀vh ∈ Vh (1) where

0 P Vh = {vh ∈ C (Ω): vh|K ∈ r r ≥ 1, ∀K ∈Th, vh =0on∂Ω}

Nh is the space of finite element functions of degree r with basis {ϕi }i=1. The Galerkin approximation (1) is equivalent to:

find uh ∈ Vh : a(uh,ϕi )=F(ϕi ) ∀i =1,...,Nh. (2)

35 We partition the nodes of the triangulation as follows: (1) {xj , 1 ≤ j ≤ N1} nodes in subdomain Ω1

(2) {xj , 1 ≤ j ≤ N2} nodes in subdomain Ω2

(Γ) {xj , 1 ≤ j ≤ NΓ} nodes on the interface Γ, and we split the basis functions accordingly: (1) (1) ϕj functions associated to the nodes xj

(2) (2) ϕj functions associated to the nodes xj

(Γ) (Γ) ϕj functions associated to the nodes xj on the interface.

36 Example

(1) Ω1 xj

(Γ) Γ xj

(2) Ω2 xj

37 Problem (2) can be equivalently rewritten as:

(1) (1) a(uh,ϕi )=F(ϕi ) ∀i =1,...,N1 (2) (2) (3) find uh ∈ Vh :  a(uh,ϕj )=F(ϕj ) ∀j =1,...,N2  (Γ) (Γ)  a(uh,ϕk )=F(ϕk ) ∀k =1,...,NΓ.

We introduce the bilinear form on Ωi :

ai (v, w)= ∇v ·∇w ∀v, w ∈ V , i =1, 2, -Ωi the space i 1 Vh = {v ∈ H (Ωi ):v =0on∂Ωi \ Γ} (i =1, 2) (i) and let u = uh (i =1, 2). h |Ωi Then, problem (3) can be written equivalently as: (1) 1 (2) 2 find uh ∈ Vh , uh ∈ Vh s.t.

(1) (1) (1) a1(uh ,ϕi )=F1(ϕi ) ∀i =1,...,N1 (2) (2) (2)  a2(uh ,ϕj )=F2(ϕj ) ∀j =1,...,N2 (4)  a (u(1),ϕ(Γ)| )+a (u(2),ϕ(Γ)| )  1 h k Ω1 2 h k Ω2  (Γ) (Γ) = F1(ϕ |Ω1 )+F2(ϕ |Ω2 ) ∀k =1,...,NΓ. k k 38   Remark Problem (4) corresponds to the finite element approximation of the multi-domain formulation of the Poisson problem:

−#u1 = f in Ω1 u1 =0 on∂Ω1 \ Γ  −#u2 = f in Ω2   u2 =0 on∂Ω2 \ Γ   u1 = u2 on Γ ∂u ∂u 1 = 2 on Γ.   ∂n ∂n   (i) The condition u1 = u2 on Γis satisfied by definition of uh .

39 We can write:

N1 N2 (1) (1) (2) (2) uh(x)= uh(xj )ϕj (x)+ uh(xj )ϕj (x) j j +=1 +=1 NΓ (Γ) (Γ) + uh(xj )ϕj (x), j +=1 and we substitute this expression in (4) to obtain...

40 N1 NΓ  (1) (1) (1) (Γ) (Γ) (1) (1) uh(xj )a1(ϕj ,ϕi )+ uh(xj )a1(ϕj ,ϕi )=F1(ϕi ) ∀i =1,...,N1  % %  j=1 j=1     N2 NΓ  u x (2) a (2) (2) u x (Γ) a (Γ) (2) F (2) i N  h( j ) 2(ϕj ,ϕi )+ h( j ) 2(ϕj ,ϕi )= 2(ϕi ) ∀ =1,..., 2  % %  j=1 j=1   NΓ (Γ) (Γ) (Γ) (Γ) (Γ)  uh(x ) a1(ϕ ,ϕ )+a2(ϕ ,ϕ )  % j & j i j i '  j=1  N N  1 2  u x (1) a (1) (Γ) u x (2) a (2) (Γ)  + h( j ) 1(ϕj ,ϕi )+ h( j ) 2(ϕj ,ϕi )  % %  j=1 j=1  F (Γ) F (Γ) i N  = 1(ϕi |Ω1 )+ 2(ϕi |Ω2 ) ∀ =1,..., Γ. 

41 A bit of algebra...

N1 NΓ  (1) (Γ) (1) uh(xj )(A11)ij + uh(xj )(A1Γ)ij = F1(ϕi ) ∀i =1,...,N1  % %  j=1 j=1     N2 NΓ  u x (2) A u x (Γ) A F (2) i N  h( j )( 22)ij + h( j )( 2Γ)ij = 2(ϕi ) ∀ =1,..., 2  % %  j=1 j=1   NΓ (Γ) (1) (2)  uh(x ) (A )ij + (A )ij  % j & ΓΓ ΓΓ '  j=1   N1 N2  u x (1) A u x (2) A  + h( j )( Γ1)ij + h( j )( Γ2)ij  % %  j=1 j=1  F (Γ) F (Γ) i N  = 1(ϕi |Ω1 )+ 2(ϕi |Ω2 ) ∀ =1,..., Γ. 

42 A bit of algebra... [continued]

N1 NΓ  u1(A11)ij + uΓ(A1Γ)ij = f1 ∀i =1,...,N1  % %  j=1 j=1     N2 NΓ   u2(A22)ij + uΓ(A2Γ)ij = f2 ∀i =1,...,N2  % %  j=1 j=1   NΓ (1) (2)  uΓ (A )ij +(A )ij  % & ΓΓ ΓΓ '  j=1   N1 N2   + u1(AΓ1)ij + u2(AΓ2)ij  % %  j=1 j=1  (Γ) (Γ) i N  = f1 + f2 ∀ =1,..., Γ. 

43 ... so that we obtain the algebraic form:

A11u1 + A1Γλ = f1 A22u2 + A2Γλ = f2 (5)  (1) (2) (Γ) (Γ)  AΓ1u1 + AΓ2u2 + AΓΓ + AΓΓ λ = f1 + f2 ' (  or 

A11 0 A1Γ u1 f1 0 A A u = f (6)  22 2Γ   2   2  AΓ1 AΓ2 AΓΓ λ fΓ       (1) (2) (Γ) (Γ) where we denoted AΓΓ = AΓΓ + AΓΓ and fΓ = f1 + f2 . ' (

44 THE SCHUR COMPLEMENT SYSTEM

45 Since λ represents the unknown value of u on Γ, its finite element correspondent is the vector λ of the values of uh at the interface nodes. By Gaussian elimination, we can obtain a new reduced system inthesole unknown λ:

Matrices A11 and A22 are invertible since they are associated with two homogeneous Dirichlet boundary-value problems for the Laplace operator:

−1 −1 u1 = A11 (f1 − A1Γλ)andu2 = A22 (f2 − A2Γλ) . (7)

From the third equation we obtain:

(1) −1 (2) −1 AΓΓ − AΓ1A11 A1Γ + AΓΓ − AΓ2A22 A2Γ λ = 2' ( ' (3−1 −1 fΓ − AΓ1A11 f1 − AΓ2A22 f2.

46 Setting

(i) −1 Σ=Σ1 +Σ2 with Σi = AΓΓ − AΓi Aii AiΓ (i =1, 2) and −1 −1 χΓ = fΓ − AΓ1A11 f1 − AΓ2A22 f2 we obtain the Schur complement system

Σλ = χΓ

Σ and χΓ approximate S and χ.

Σistheso-calledSchur complement of A with respect to u1 and u2.

Σi are the Schur complements related to the subdomains Ωi (i =1, 2).

47 Remark

After solving the Schur complement system in λ,thanksto(7)we can compute u1 and u2.

This is equivalent to solving two Poisson problems in the subdomains Ω1 and Ω2 with the Dirichlet boundary condition (i) u = λh (i =1, 2) on the interface Γ. h |Γ

48 PROPERTIES OF THE SCHUR COMPLEMENT Σ

The Schur complement Σinherits some of the properties of A:

if A is singular, so is Σ;

if A (respectively, Aii )issymmetric,thenΣ(respectively,Σi )is symmetric too;

if A is positive definite, so is Σ.

Moreover, concerning the condition number,wehave

κ(A) . Ch−2

κ(Σ) . Ch−1

49 FOR THE SCHUR COMPLEMENT SYSTEM

50 The iterative methods that we have illustrated are equivalent to preconditioned Richardson methods for the Schur complementsystem with preconditioners:

for the DN algorithm: Ph =Σ2

for the ND algorithm: Ph =Σ1

−1 −1 −1 for the NN algorithm: Ph =(σ1Σ1 + σ2Σ2 )

−1 for the RR algorithm: Ph =(γ1 + γ2) (γ1I +Σ1)(γ2I +Σ2)

51 All these preconditioners are optimal in the sense of the following definition.

Definition ApreconditionerPisoptimal for a matrix A ∈ RN×N if the condition number of P−1Aisboundeduniformly with respect to the dimension N of A. In particular, we have

−1 κ(Σi Σ) = O(1) (i =1, 2)

−1 −1 κ((σ1Σ1 + σ2Σ2 )Σ) = O(1)

for all σ1,σ2 > 0

52 NONOVERLAPPING METHODS IN THE CASE OF MORE THAN TWO SUBDOMAINS

53 MULTI-DOMAIN FORMULATION FOR M > 2 SUBDOMAINS

We generalize now the nonoverlapping methods to the case of a domain ΩsplitintoM > 2subdomains:

Ωi (i =1,...,M)suchthat Ωi = Ω Γi = ∂Ωi \ ∂Ω 4 Γ= Γi . Ω 4 Plotmesh 1

0.8

0.6

0.4 Γik2 Γik1 0.2

0

Y − Axis Ωi −0.2

−0.4 Γik4 Γik3 −0.6

−0.8

−1 −1 −0.5 0 0.5 1 X − Axis 54 At the differential level, we have the equivalent multi-domain formulation:

−#ui = f in Ωi (i =1,...,M) u = u on Γ −#u = f in Ω i k ik ⇔  ∂ui ∂uk u =0 on∂Ω  = on Γik !  ∂ni ∂ni ui =0 on∂Ωi ∩ ∂Ω   where Γik = ∂Ωi ∩ ∂Ωk /= ∅. 

55 FINITE ELEMENT APPROXIMATION

Considering a conforming finite element approximation,weobtain the linear system:

A A u f II I Γ I = I (8) A I A λ f ) Γ ΓΓ *) * ) Γ *

where uI is the vector of unknowns in the internal nodes and λ is the vector of unknowns on Γ: λ = uΓ.

The submatrix AII associated to the internal nodes is block-diagonal:

A11 0 ... 0 . . 0 .. . A =   II . .  . .. 0     0 ... 0 A   MM   

AI Γ is a banded matrix (interactions with local interfaces). 56 Remark

On each subdomain Ωi the matrix

Aii AiΓ Ai = A i A ) Γ Γi Γi * represents the local stiffness matrix associated to a Neumannproblem.

57 THE SCHUR COMPLEMENT SYSTEM

Since AII is non-singular, from (8) we can derive

−1 uI = AII (fI − AI ΓuΓ)(9)

By eliminating uI from (8), we get

−1 AΓΓλ = fΓ − AΓI AII (fI − AI Γλ)

that is −1 −1 AΓΓ − AΓI AII AI Γ λ = fΓ − AΓI AII fI . (10) Denoting 7 8 −1 Σ=AΓΓ − AΓI AII AI Γ and −1 χΓ = fΓ − AΓI AII fI we obtain the Schur complement system in the multi-domain case

(11) Σλ = χΓ

58 Example 0

Γ1 5 Γ 4 10 Γ2 Γ Γ 2 3 15 Γc

Γ3 Γc 20

Γ 25 1 Γ4

30 0 5 10 15 20 25 30 nz = 597 On the left, decomposition of Ω= (0, 1) × (0, 1) into four square subdomains. On the right, sparsity pattern of the Schur complement matrixarisingfromthe decomposition depicted on the left. Remark The local Schur complements are defined as

−1 Σi = AΓi Γi − AΓi i Aii AiΓi so that Σ=RT Σ R + ...RT Σ R Γ1 1 Γ1 ΓM M ΓM where RΓi is the restriction from the skeleton Γto the boundary of Ωi . 59 ASIMPLEALGORITHM

To compute a FE approximation of the solution u of the Poisson problem

−#u = f in Ω u =0 on∂Ω ! we can do the following steps:

1 solve the Schur complement system

Σλ = χΓ

to compute λ on the whole interface Γ; 2 solve AII uI = fI − AI Γλ i.e., M independent problems of reduced dimension

i i Aii uI = g (i =1,...,M)

possibly in parallel.

60 ESTIMATE OF THE CONDITION NUMBER

The following estimate can be proved for the condition number of the Schur complement matrix Σ: there exists a constant C > 0, independent of h and H such that

Hmax κ(Σ) ≤ C 2 hHmin

where Hmax and Hmin are the maximal and minimal diameters of the subdomains, respectively.

61 NUMERICAL RESULTS

We consider the model problem

−∆u = f in Ω= (0, 1) × (0, 1) u =0 on∂Ω !

We decompose Ωinto M square regions Ωi of characteristic dimension H M such that ∪i=1Ωi = Ω:

Γ4 Γ2 Γ3 Γc

Γ1

(Decomposition of Ω= (0, 1) × (0, 1) into four square subdomains)

62 Condition number of Σ: κ(Σ) H =1/2 H =1/4 H =1/8 h=1/8 9.77 14.83 25.27 h=1/16 21.49 35.25 58.60 h=1/32 44.09 75.10 137.73 h=1/64 91.98 155.19 290.43

1 1 Notice the dependence on and . h H

63 The Schur complement Σis dense.

If we use iterative solvers to solve the Schur complement system

Σλ = χΓ it is not convenient from the point of view of memory usage to explicitly compute the elements of Σ.

We need only to compute the product ΣxΓ for any given vector xΓ.

64 For example, in the conjugate gradient method:

a) Choose a starting solution λ0

b) Compute r0 = χΓ − Σλ0, p0 = r0 For k ≥ 0untilconvergence,Do

(pk , rk ) c) αk = (Σpk , pk ) d) λk+1 = λk + αk pk e) rk+1 = rk − αk Σpk (Σpk , rk+1) f) βk = (Σpk , pk ) g) pk+1 = rk+1 − βk pk EndFor

65 SCHUR COMPLEMENT MULTIPLICATION BY A VECTOR T We can define the restriction and prolongation operators RΓi and RΓi that act on the vector of the interface nodal values. Recalling that −1 Σ=Σ1 + ...+ΣM with Σi = AΓi Γi − AΓi i Aii AiΓi we can use the following fully parallel algorithm.

Given xΓ,computeyΓ =ΣxΓ as follows:

a) Set yΓ = 0 For i =1,...,M Do in parallel:

b) xi = RΓi xΓ

c) zi = AiΓi xi −1 d) zi ← Aii zi

e) sum to the global vector yΓi ← AΓi Γi xΓ − AΓi i zi y T y f) sum to the global vector Γ ← RΓi Γi

EndFor 66 Before using for the first time the Schur complement matrix, an off-line startup phase is required:

For i =1,...,M Do in parallel:

a) Built the matrix Ai b) Reorder Ai as

Aii AiΓi Ai = A i A ) Γi Γi Γi *

and extract the submatrices Aii , AiΓi , AΓi i and AΓi Γi c) Compute the LU or Cholesky factorization of Aii EndFor

67 SCALABILITY

Definition

A Ph of Σ is said to be scalable if the condition number −1 of the preconditioned matrix Ph Σ is independent of the number of subdomains.

Iterative methods using scalable preconditioners allow henceforth to achieve convergence rates independent of the subdomain number.

Remark General strategy:

M −1 T −1 T −1 Ph = RΓi Pi,h RΓi + RΓ PH RΓ i +=1

where Pi,h is a suitable preconditioner for the local Schur complement Σi .Thelasttermisthecoarse-scalecorrection.

68 NEUMANN-NEUMANN PRECONDITIONER The Neumann-Neumann preconditioner for more subdomains reads:

M NN −1 T ∗ (Ph ) = RΓi Di Σi Di RΓi i +=1 ∗ −1 −1 where Σi is either Σi or an approximation of Σi .

Di is a diagonal matrix of positive weights

d1 . Di =  ..  d  n    dj is the number of subdomains that share the j-th node. We have the following estimate:

H 2 κ (PNN )−1Σ ≤ CH−2 1+log h h ) * 7 8 69 Remark

The presence of Di and RΓi only entails matrix-matrix multiplications. −1 Applying Σi may be done using local inverses: if q is a vector whose components are the nodal values on Γi ,then

−1 −1 T Σi q =[0, I ]Ai [0, I ] q In particular, the matrix-vector multiplication

internal 0 nodes .    .  0      boundary nodes   q          −1 Ai 9 :; < corresponds to the solution of a Neumann problem in Ωi :

−#wi =0 inΩi ∂wi & = q in Γi ∂n 70 Example NN −1 Condition number of (Ph ) Σ: NN −1 κ((Ph ) Σ) H =1/2 H =1/4 H =1/8 H =1/16 h =1/16 2.55 15.20 47.60 - h =1/32 3.45 20.67 76.46 194.65 h =1/64 4.53 26.25 105.38 316.54 h =1/128 5.79 31.95 134.02 438.02

NN Convergence history of the conjugate gradient using Ph as a preconditioner and h =1/32:

Convergence history using P NN 0 10

−1 10

−2 10

−3 10

H=1/8 −4 10 scaled residual H=1/4

−5 10 H=1/2

−6 10

−7 10 0 2 4 6 8 10 12 14 16 Conjugate gradient iterations 71 BALANCED NEUMANN-NEUMANN PRECONDITIONER

The Neumann-Neumann preconditioner of the Schur complement system is not scalable.

Asubstantialimprovementcanbeachievedbyaddingacoarsegrid correction:

BNN −1 NN −1 (Ph ) Σ=P0 +(I − P0) (PH ) Σ (I − P0)

T −1 7 T 8 where P0 = R0 Σ0 R0ΣandΣ0 = R0ΣR0 , R0 being the restriction from Γonto the coarse level skeleton. This is called balanced Neumann-Neumann preconditioner.

We can prove that

H 2 κ (PBNN )−1Σ ≤ C 1+log h h ) * 7 8 72 Example

BNN −1 κ((Ph ) Σ) H =1/2 H =1/4 H =1/8 H =1/16 h =1/16 1.67 1.48 1.27 - h =1/32 2.17 2.03 1.47 1.29 h =1/64 2.78 2.76 2.08 1.55 h =1/128 3.51 3.67 2.81 2.07

73 CONCLUDING REMARKS

From the numerical results that we have presented, we can conclude with the following remarks:

even if better conditioned with respect to A,Σisill-conditioned,and therefore a suitable preconditioner must be applied

the Neumann-Neumann preconditioner can be satisfactory applied using a moderate number of subdomains, while for larger M, NN −1 κ((Ph ) Σ) >κ(Σ)

the balancing Neumann-Neumann preconditioner is almost optimally scalable and therefore recommended for partitions with a large number of subdomains

74 FETI (Finite Element Tearing & Interconnecting) METHODS

75 THE MODEL PROBLEM

We consider the variable coefficient elliptic problem:

−div(ρ∇u)=f in Ω, (12) & u =0 on∂Ω,

+ where ρ is piecewise constant, ρ = ρi ∈ R in Ωi .

We denote by Hi = diam(Ωi )thesizeofthei-th subdomain Ωi for i =1,...,M.

76 Domain Ω, its boundary ∂Ω, skeleton Γ, subdomain Ωi ,anditsboundary ∂Ωi .

77 THE FINITE ELEMENT SPACES

We introduce: the space of traces of finite element functions on the boundaries h ∂Ωi ,sayWi = W (∂Ωi ),

M the product space of the previous trace spaces, say W =Πi=1Wi ,

a subspace of continuous traces across the skeleton Γ, say W ⊂ W .

We denote by Ωih the nodes in Ωi ,by∂Ωih the nodes on ∂Ωi ,by=∂Ωh the nodes on ∂Ω, and by Γh the nodes on the skeleton Γ.

78 Finite element degrees of freedom on the boundary (∂Ωh), on the skeleton (Γh), in the subdomain (Ωih), and on its boundary (∂Ωih).

79 THE SCALING COUNTING FUNCTIONS

Let us introduce the following scaling counting functions:

1 x ∈ ∂Ωih ∩ (∂Ωh \ Γh),

 γ γ δi (x)= ρ (x) /ρ (x) x ∈ ∂Ωih ∩ Γh,  j∈Nx j i  '> 0elsewhere( ,   ∀x ∈ Γh ∪ ∂Ωh,where:γ ∈ [1/2, +∞)andNx is the set of indices of the subregions having x on their boundaries.

Then we set:

−1 δ (x)ifδi (x) /=0, † i δi (x)(=pseudo inverses)= & 0ifδi (x)=0.

80 THE FINITE ELEMENT APPROXIMATION

Based on the finite element approximation of the model problem (12), let us consider the local Schur complements:

(i) −1 Σi = AΓΓ − AΓ,Ωi AΩi ,Ωi AΩi ,Γ, i =1,... M, for which: T T Σ=RΓ1 Σ1RΓ1 + ...+ RΓM ΣM RΓM ,

where RΓi is a restriction operator, that is a rectangular matrix of zeros and ones that map values on Γonto those on Γi , i =1,...,M.The matrices Σi are positive semi-definite.

We indicate the interface nodal values on ∂Ωi as ui ,andweset u =(u1,...,uM ), the local load vectors on ∂Ωi as χi and we set χ∆ =(χ1,...,χM ). Finally, we set:

Σ∆ = diag(Σ1,...,ΣM ),

ablockdiagonalmatrix.

81 THE REDUCED FEM PROBLEM

The original FEM problem,whenreducedtotheinterfaceΓ,reads:

1 Find u ∈ W s.t. J(u)=5Σ u, u6−5χ , u6→min, 2 ∆ ∆ (13)   BΓu = 0.  The reduced problem (13) admits a unique solution iff Ker{Σ∆}∩Ker{BΓ} =0,thatisifΣ∆ is invertible on Ker(BΓ).

The matrix BΓ is not unique,sothatweshouldimposecontinuity when u belongs to more than one subdomain; BΓ is made of {0, −1, 1} since it enforces interfaces continuity constraints at interfaces nodes. Remark We are using the same notation W to denote the finite element space trace and that of their nodal values at points of Γh.

82 THE CHOICE OF THE MATRIX BΓ In 2D, there is a little choice on how to write the constraint of continuity at a point sitting on an edge,therearemanyoptionsforavertex point. For the edge node we only need to choose the sign, whereas for a vertex node, e.g. one common to 4 subdomains, a minimum set of three constraints can be chosen in many different ways to assure continuity at the node in question.

Continuity constraints enforced by 3(non-redundant)conditionson the

left, by 6(redundant)conditionson the right. 83 THE REDUCED FEM PROBLEM WITH LAGRANGE MULTIPLIERS

We reformulate the reduced problem (13) by introducing suitable Lagrange multipliers:

T Find (u, λ) ∈ W × U s.t. Σ∆u + BΓ λ = χ∆, (14) & BΓu = 0.

Because of the inf-sup (LBB) condition,thecomponentλ of the solution T to (14) is unique up to an additive vector of Ker(BΓ ), so we choose U = range(BΓ).

84 Let the matrix R = diag R(1),...,R(M) be made of null-space elements of Σ . (E.g. R(i) corresponds to the rigid body motions of Ω ,incaseof ∆ 7 8 i linear elasticity operator.) R is a full column rank matrix.

The solution of the first equation of the reduced problem (14) exists iff T χ∆ − BΓ λ ∈ range(Σ∆), a limitation that will be resolved by introducing asuitableprojectionoperatorP.Then,

† T T u =Σ∆(χ∆ − BΓ λ)+Rα if χ∆ − BΓ λ ⊥ Ker(Σ∆),

† where α is an arbitrary vector and Σ∆ apseudoinverseofΣ∆.

85 Substituting u into the second equation of the reduced problem (14) yields: † T † (15) BΓΣ∆BΓ λ = BΓΣ∆χ∆ + BΓRα.

† T † Let us set F = BΓΣ∆BΓ and d = BΓΣ∆χ∆. Then choose PT to be a suitable projection matrix, e.g. T T −1 T P = I − G(G G) G ,withG = BΓR. We obtain: PT Fλ = PT d,

T T & G λ = e (= R χ∆).

86 ONE-LEVEL FETI METHOD

The original one-level FETI method is a CG method in the space V applied to: T T P Fλ = P d , λ ∈ λ0 + V ,

T with an initial λ0 s.t. G λ0 = e.Here

V = {λ ∈ U : 5λ, BΓz6 =0, z ∈ Ker(Σ∆)}

is the so-called space of admissible increments, Ker(G T )=range(P) and:

$ T V = {µ ∈ U : 5µ, BΓz6Q =0, z ∈ Ker(Σ∆)} = range(P ).

87 FETI PRECONDITIONERS

The original, most basic FETI preconditioner is:

−1 T M (i) (i)T Ph = BΓΣ∆BΓ = i=1 B Σi B .

It is called a Dirichlet preconditioner>since its application to a given vector involves the solution of M independent Dirichlet problems, one in every subdomain. The coarse space in FETI consists of the nullspace on each substructure.

88 In case BΓ has full row rank (i.e. the constraints are linearly independent and there are no redundant Lagrange multipliers), a better preconditioner can be defined as follows:

−1 −1 T −1 −1 −1 T −1 T −1 Ph =(BΓD BΓ ) BΓD Σ∆D BΓ (BΓD BΓ ) , where ?D is a block diagonal matrix with positive entries D = diag D(1),...,D(M) with D(i) adiagonalmatrixwhose † elements are' δi (x)correspondingtothepoint( x ∈ ∂Ωih (recall the scaling counting functions).

89 Remark −1 T Since BΓD BΓ is block-diagonal,itsinversecanbeeasily computed by inverting small blocks whose size is nx ,thenumberof Lagrange multipliers used to enforce continuity at point x.

The matrix D,thatoperatesonelementsoftheproductspaceW , −1/2 can be regarded as a scaling from the right of BΓ by D .With this choice:

−1 T 2 K2(PPh P F) ≤ C(1 + log(H/h)) , where K2(·)isthespectral? condition number and C is a constant independent of h, H, γ and the values of the ρi .

90 FETI-DP (Dual Primal FETI) METHODS

91 OVERVIEW OF THE FETI-DP METHODS

The FETI-DP method is a domain decomposition method that enforces equality of the solution at subdomains interfaces by Lagrange multipliers except at subdomains corners, which remain primal variables.

The first mathematical analysis of the method was provided by Mandel and Tezaur (2001).

The method was further improved by enforcing the equality of averages across the edges or faces on subdomain interfaces. This is important for parallel scalability.

92 FINITE ELEMENT SPACES

We consider a 2D case for simplicity. We introduce a space W s.t. W ⊂ W ⊂ W for which we have continuity of the primal variables at subdomain vertices. We write W as: @ = @

W = WΠ ⊕ W∆, @ where: @ = @ WΠ ⊂ W is the space of continuous interface functions that vanish at all nodal points of Γh except at the subdomain vertices. WΠ is given= in= terms of the vertex variables and the averages of the values over the individual edges of the set of interface nodes Γh. = M W∆ is the direct sum of local subspaces W∆,i : W∆ = i=1 W∆,i , where W ⊂ W consists of local functions on ∂Ω that vanish at ∆,i i i A the@ vertices of Ωi and have zero average@ on each@ individual edge.@ @

93 FINITE ELEMENT SPACES

According to this space splitting:

the continuous degrees of freedom associated with the subdomain vertices and with the subspace WΠ are called primal (Π);

those (that are potentially discontinuous= across Γ) that are associated with the subspaces W∆,i and with the interior of the subdomain edges are called dual (∆). @ The subspace WΠ,togetherwiththeinteriorsubspace,definesthe subsystem which is fully assembled, factored, and stored in each iteration step. =

94 THE SCHUR COMPLEMENT

All unknowns of the subspace WΠ as well as the interior variables are eliminated to obtain a new Schur complement Σ∆. = We consider the following procedure. B Let A denote the stiffness matrix obtained by restricting M h h diag (A1,...,AM )from i=1 W (Ωi )toW (Ω) (these spaces now refer to subdomains,B not their boundaries). A Then A is no longer block diagonal because@ of the coupling that now exists between subdomains that share a common vertex. B

95 According to the previous space decomposition, A can be split as:

AII AI Π AI ∆ B T A = AI Π AΠΠ AΠ∆ .  T T  AI ∆ AΠ∆ A∆∆ B   The subscript I refers to the internal degrees of freedom of the subdomains, Πto those associated to the subdomains vertices,and∆to those of the interior of the subdomains edges.

The matrices AII and A∆∆ are block diagonal (one block per subdomain).

Any non-zero entry of AI ∆ represents a coupling between degrees of freedom associated with the same subdomain.

96 Degrees of freedom of the space W for one-level FETI (left) and those of the space W for one-level FETI-DP (right) in the case of primal vertices only. @

97 Upon eliminating the variables of the I and Πsets, a Schur complement associated with the variables of the ∆sets (interior and edges) is obtained as follows:

−1 A A A Σ=A − AT AT II I Π I ∆ . ∆∆ I ∆ Π∆ AT A A I I Π ΠΠ J I Π∆ J G H B

Correspondingly we obtain a reduced right hand side χ˜ ∆.

98 THE REDUCED FEM PROBLEM

By indicating with u∆ ∈ W∆ the vector of degrees of freedom associated with the edges, similarly to what done in (13) for FETI, the finite element problem can be reformulated@ as a reduced minimization problem with constraints given by the requirement of continuity across all of Γ:

1 Find u ∈ W : J(u )=5Σu , u 6−5χ˜ , u 6→min, ∆ ∆ ∆ 2 ∆ ∆ ∆ ∆   @ B∆u∆ = 0. B  (16) The matrix B∆ is made of {0, −1, 1} as it was for BΓ. Remark The constraints associated with the vertex nodes are dropped since they are assigned to the primal set. Remark Since all the constraints refer to edge points, no distinction needs to be made between redundant and non-redundant constraints and Lagrange multipliers. 99 THE REDUCED FEM PROBLEM WITH LANGRANGE MULTIPLIERS

A saddle point formulation of (16), similar to (14), can be obtained by introducing a set of Lagrange multipliers λ ∈ V = range(B∆).

Indeed, since A is s.p.d., so is Σ: by eliminating the subvectors u∆ we obtain the reduced system: B B F∆λ = d∆, (17)

−1 T −1 where F∆ = B∆Σ B∆ and d∆ = B∆Σ χ˜ ∆.

Remark B B −1 T Once λ is found, u∆ = Σ (˜χ∆ − B∆ λ) ∈ W∆,whiletheinterior variables uI and the vertex variables uΠ are obtained by back-solving the system associated with AB. @

B 100 AFETI-DPPRECONDITIONER

A preconditioner for F is introduced as done for FETI (in case of non-redundant Lagrange multipliers):

−1 −1 T −1 −1 −1 T −1 T −1 P∆ =(B∆D∆ B∆ ) B∆D∆ S∆∆D∆ B∆ (B∆D∆ B∆ ) .

(i) D∆ is a diagonal scaling matrix with blocks D∆ :eachoftheir diagonal elements corresponds to a Lagrange multiplier thatenforces continuity between the nodal values of some wi ∈ Wi and wj ∈ Wj † at some point x ∈ Γh and it is given by δj (x);

S∆∆ = diag (Σ1,∆∆,...,ΣM,∆∆) with Σi,∆∆ being the restriction of the local Schur complement Σi to W∆,i ⊂ Wi .

@

101 Remark When using the conjugate gradient method for the preconditioned system: −1 −1 P∆ F∆λ = P∆ d∆, in contrast with one level FETI methods we can use an arbitraryinitial guess λ0.

We have a condition number that scales polylogarithmically, that is:

−1 2 K2(P∆ F∆) ≤ C(1 + log(H/h)) , where C is independent of h, H,γ and the values of the ρi .

102 COMPARISON OF FETI AND FETI-DP METHODS

FETI-DP algorithms do not require the characterization of the kernels of local Neumann problems (as required by one-level FETI methods), because the enforcement of the additional constraints in each iteration always makes the local problems nonsingular and at the same time provides an underlying coarse global problem.

FETI-DP methods do not require the introduction of a scaling matrix Q,whichentersintheconstructionofacoarsesolverfor one-level FETI algorithms.

One-level FETI methods are projected conjugate gradient algorithms that cannot start from an arbitrary initial guess. In contrast, FETI-DP methods are standard preconditioned conjugate algorithms and can therefore employ an arbitrary initial guess λ0.

103 BDDC (Balancing Domain Decomposition with Constraints) METHODS

104 AQUICKVIEWOFBDDCMETHODS

The BDDC method was introduced by Dohrmann (2003) as a simpler primal alternative to the FETI-DP domain decomposition method.

The name BDDC was coined by Mandel and Dohrmann because it can be understood as further development of the balancing domain decomposition method.

BDDC is used as a preconditioner for the conjugate gradient method.

105 AspecificversionofBDDCischaracterizedbythechoiceofcoarse degrees of freedom,whichcanbevaluesatthecornersofthe subdomains, or averages over the edges of the interface between the subdomains.

One application of the BDDC preconditioner combines the solution of local problems on each subdomain with the solution of a global coarse problem with the coarse degrees of freedom as the unknowns. The local problems on different subdomains are completely independent of each other, so the method is suitable for parallel computing.

106 GENERAL FORM OF BDDC PRECONDITIONERS

ABDDCpreconditionerreads:

−1 T −1 PBDDC = RDΓΣ RDΓ,

B B B where RΓ : W → W is a restriction matrix, RDΓ is a scaled variant of RΓ † with scale factor δi (featuring the same sparsity pattern of RΓ). B = @ B T B This scaling is chosen in such a way that RΓRDΓ is a projectionB (then it coincides with its square). B B

107 ALGEBRAIC FORM OF SCHWARZ ITERATIVE METHODS

108 ALGEBRAIC FORM OF SCHWARZ METHODS FOR FE DISCRETIZATION Let Au = f be the system associated to the finite element approximation of the Poisson problem. We still assume that Ωis decomposed in two overlapping subdomains Ω1 and Ω2. We denote by Nh the total number of interior nodes of Ω, and by n1 and n2 the interior nodes of Ω1 and Ω2: Nh ≤ n1 + n2 The stiffness matrix A contains two submatrices,sayA1 and A2, which correspond to the local stiffness matrices associated to the Dirichlet problems in Ω1 and Ω2: n1

A1

A Nh

A2

n2 109 MULTIPLICATIVE SCHWARZ METHOD (0) Consider the multiplicative method:givenu2 on Γ1,fork ≥ 1:

Lu(k) = f in Ω u(k) 1 1 Ω1 (k) (k−1) AΩ1 AΓ1 (k) = f1 u = u on Γ1 ⇔ u  1 2 K Γ1 L  (k) 7 (k) (k−81)  u1 =0 on∂Ω1 \ Γ1 u = u Γ1 Ω2|Γ1  Lu(k) = f in Ω u(k) 2 2 Ω2 (k) (k) AΩ2 AΓ2 (k) = f2 u = u on Γ2 ⇔ u  2 1 K Γ2 L  (k) 7 (k) (k)8  u2 =0 on∂Ω2 \ Γ2 u = u Γ2 Ω1|Γ2 

Ω2

Ω1 Γ2 Γ1

110 We find: A u(k) = f − A u(k−1) Ω1 Ω1 1 Γ1 Γ1

A u(k) = f − A u(k) Ω2 Ω2 2 Γ2 Γ2

u(k−1) or, equivalently, by adding and subtracting Ωi :

u(k) = u(k−1) + A−1(f − A u(k−1) − A u(k−1)) Ω1 Ω1 Ω1 1 Ω1 Ω1 Γ1 Γ1

u(k) = u(k−1) + A−1(f − A u(k−1) − A u(k)) Ω2 Ω2 Ω2 2 Ω2 Ω2 Γ2 Γ2

Remark This method can be seen as a block Gauss-Seidel method to solvethe system A A u f Ω1 Γ1 Ω1 = 1 A A u f ) Γ2 Ω2 *) Ω2 * ) 2*

111 If there is no direct coupling between the matrices assembled on opposite sides of Γ1 and Γ2: A =0 and A =0 Ω2\Ω1 Ω1\Ω2

Ω2

Ω1 Γ2 Γ1

then, formally, we can write

A = A = A Γ1 (Ω\Ω1)\(Ω2\Ω1) (Ω\Ω1) so that A u(k−1) = A u(k−1) Γ1 Γ1 (Ω\Ω1) (Ω\Ω1) Proceeding in a similar way also for the second equation, we finally obtain:

(k) (k−1) −1 (k−1) (k−1) u = u + A (f1 − AΩ u − A u ) Ω1 Ω1 Ω1 1 Ω1 (Ω\Ω1) (Ω\Ω1) (k) (k−1) −1 (k−1) (k) uΩ = uΩ + AΩ (f2 − AΩ2 uΩ − A(Ω\Ω2)u ) 2 2 2 2 (Ω\Ω2) 112 In compact form we can write

−1 (k+ 1 ) (k) A 0 (k) u 2 = u + Ω1 f − Au 00 ) * 7 8 (k+1) (k+ 1 ) 00 (k+ 1 ) u = u 2 + −1 f − Au 2 0 AΩ ) 2 * ' (

Let Ri be the (rectangular) restriction matrix that returns the vector of coefficients in the interior of Ωi :

u u = R u =(I 0) Ωi Ωi i u ) Ω\Ω1 * Then, we obtain:

(k+ 1 ) (k) T T −1 (k) u 2 = u + R1 (R1AR1 ) R1 f − Au

(k+1) (k+ 1 ) T T −1 7 8(k+ 1 ) u = u 2 + R2 (R2AR2 ) R2 f − Au 2 ' (

113 Define, for i =1, 2

T T −1 Qi = Ri (Ri ARi ) Ri

We get

(k+ 1 ) (k) (k) u 2 = u + Q1 f − Au

(k+1) (k+ 1 ) ' ((k+ 1 ) u = u 2 + Q2 f − Au 2 ' ( and

(k+1) (k) (k) (k) (k) u = u +Q1 f − Au +Q2 f − A u + Q1 f − Au ' ( 2 ' ' ((3 or, equivalently,

(k+1) (k) (k) u = u +(Q1 + Q2 − Q2AQ1) f − Au 7 8

114 ADDITIVE SCHWARZ METHOD

Proceeding as before, we can prove that the additive Schwarz method can be seen as a block Jacobi method to solve the system

A A u f Ω1 Γ1 Ω1 = 1 A A u f ) Γ2 Ω2 *) Ω2 * ) 2* One iteration of the additive Schwarz method can be written as

(k+1) (k) (k) u = u +(Q1 + Q2)(f − Au )

In the case of a M ≥ 2overlappingsubdomains{Ωi } we have:

M (k+1) (k) (k) u = u + Qi (f − Au ) K i L +=1

115 THE SCHWARZ METHOD AS A PRECONDITIONER

Multiplicative Schwarz method: can be interpreted as a Richardson iterative procedure for Au = f with the multiplicative Schwarz preconditioner

−1 Pms = Q1 + Q2 − Q2AQ1

Pms is not symmetric and can be used within GMRES or BiCGStab iterations. Additive Schwarz method: corresponds to Richardson iterations for Au = f with the additive Schwarz preconditioner

M −1 Pas = Qi K i L +=1

116 The convergence rate for the additive Schwarz method is slower than for the multiplicative Schwarz method. 1 In the case of two subdomains, there is approximately a factor 2 . (This is similar to the classical convergence results for theJacobi and Gauss-Seidel methods)

Pas is not optimal as the condition number blows up if the size of the subdomains reduces: 1 κ(P−1A) ≤ C as δH where C is a constant independent of h, H,andδ, δ being a linear measure of the overlapping region(s) (h ! δ ! H).

117 ALGORITHMIC ASPECTS & NUMERICAL RESULTS

Create overlapping subdomains a) Triangulate the computational domain Ω ⇒Th. ˆ M b) Partition the mesh into M nonoverlapping subdomains {Ωi }i=1. c) Extend every subdomain Ωˆ i by adding all the strips of finite elements of Th within distance δ from Ωˆ i .

Ωˆ 1 Ωˆ 4 Ωˆ 7

Ωˆ 2 Ωˆ 5 Ωˆ 8 Ω5

Ωˆ 3 Ωˆ 6 Ωˆ 9

Start-up phase for the application of Pas T a) On each subdomain Ωi “build” Ri and Ri . b) Build the matrix A corresponding to the FE discretization on Th. T c) On each Ωi form the local submatrices AΩi = Ri ARi .

d) On each Ωi prepare the code to solve a linear system with AΩi :

compute a factorization (LU, ILU, Cholesky...) of AΩi .

118 One-level additive Schwarz preconditioner Pas −1 Given a vector r,computez = Pas r as follows a) set z = 0; For i =1,...,M,doinparallel b) restrict the residual over Ωi \ ∂Ωi : ri = Ri r;

c) solve AΩi zi = ri ; T d) add to the global residual: z ← z + Ri zi . EndFor

Example

−1 κ(Pas A) H =1/2 H =1/4 H =1/8 H =1/16 h =1/16 15.95 27.09 52.08 - h =1/32 31.69 54.52 104.85 207.67 h =1/64 63.98 109.22 210.07 416.09 h =1/128 127.99 218.48 420.04 832.57

119 The main limitation of Schwarz methods is to propagate information only among neighboring subdomains,sinceonly local solves are involved by −1 the application of (Pas ) . −→ We have to introduce a “coarse” global problem over the whole domain to guarantee a mechanism of global communication among all subdomains.

120 TWO-LEVEL SCHWARZ PRECONDITIONERS

As for the Neumann-Neumann method, we can introduce a coarse-grid mechanism that allows for a sudden information diffusion on the whole domain Ω:

consider the subdomains as macro-elements of a new coarse grid TH build a corresponding stiffness matrix AH The matrix T −1 Q0 = RH AH RH represents the coarse level correction for the two-level preconditioner, with RH the restriction operator from the fine to the coarse grid.

The two-level preconditioner Pcas is defined as:

M −1 Pcas = Qi i +=0

121 We can prove that there exists a constant C > 0, independent of both h and H such that

H κ(P−1A) ≤ C 1+ cas δ ) *

If δ is a fraction of H (generous overlap), the preconditioner Pcas is scalable and optimal.

If δ . h,thepreconditioner Pcas is neither scalable or optimal.

Iterations on the original finite element system using Pcas converge with a rate independent of h and H (and therefore of the number of subdomains)

Thanks to the additive structure of the preconditioner, the preconditioning step is fully parallel as it involves the solution of

independent systems, one per each local matrix AΩi .

122 ALGORITHMIC ASPECTS & NUMERICAL RESULTS

Start-up phase to apply Pcas

a) Do the start-up phase for Pas . b) Define a coarse space triangulation T0 with elements of order H and n0 dofs:

n ×N c) Build the restriction operator RH ∈ R 0 h , RH (i, j)=Φi (xj ). Φi is the basis function associated to the coarse grid node i and xj are the coordinates of the fine grid node j. d) Construct the coarse matrix AH ,eitheras T AH (i, j)= ∇Φi ·∇Φj or AH = RH ARH Ω - 123 Two-levels additive Schwarz preconditioner Pcas −1 Given a vector r,computez = Pcas r as follows a) set z = 0; For i =1,...,M,doinparallel b) restrict the residual over Ωi \ ∂Ωi : ri = Ri r;

c) solve AΩi zi = ri ; T d) add to the global residual: z ← z + Ri zi . EndFor −1 e) Compute the coarse-grid contribution zH = AH (RH r); T f) Add to the global residual z ← z + RH zH .

Example

−1 κ(Pcas A) H =1/4 H =1/8 H =1/16 h =1/32 7.03 4.94 - h =1/64 12.73 7.59 4.98 h =1/128 23.62 13.17 7.66 h =1/256 45.33 24.34 13.28

If H/δ = constant,thistwo-levelpreconditioneriseitheroptimaland 124 scalable. Practical indications:

For decompositions with a small number of subdomains, the single level Schwarz preconditioner Pas is very efficient. When the number M of subdomains gets large, using two-level preconditioners becomes crucial. When generating a coarse grid is difficult, other algebraic techniques,likeaggregation,canbeadoptedtodefineAH ,and

H κ(P−1 A) ≤ C 1+ aggre δ ) *

−1 Paggre A H =1/4 H =1/8 H =1/16 h =1/16 13.37 8.87 - h =1/32 26.93 17.71 9.82 h =1/64 54.33 35.21 19.70 h =1/128 109.39 70.22 39.07

125 REFERENCES

126 References Barry Smith, Petter Bjorstad, William Gropp. Domain Decomposition, Parallel Multilevel Methods for Elliptic Partial Differential Equations.CambridgeUniversityPress,1996. Alfio Quarteroni, Alberto Valli. Domain Decomposition Methods for Partial Differential Equations.OxfordSciencePublications,1999. Barbara I. Wholmuth. Discretization Methods and Iterative Solvers Based on Domain Decomposition.Springer,2001. Andrea Toselli, Olof Widlund. Domain Decomposition Methods – Algorithms and Theory.Springer,2004. Clemens Pechstein. Finite and Boundary Element Tearing and Interconnecting Solvers for Multiscale problems.Springer,2013. Alfio Quarteroni. Numerical Models for Differential Problems. Springer, 2012.

Official page of Domain Decomposition Methods www.ddm.org

127