# Advanced Finite Element Methods · 2016-12-19 · Advanced Finite Element Methods Eric Sonnendruc...

### Transcript of Advanced Finite Element Methods · 2016-12-19 · Advanced Finite Element Methods Eric Sonnendruc...

Advanced Finite Element Methods

Eric Sonnendrucker, Ahmed RatnaniMax-Planck-Institut fur Plasmaphysik

undZentrum Mathematik, TU Munchen

Lecture notesWintersemester 2015/2016

February 5, 2016

Contents

1 The classical finite element method (FEM) 21.1 Principle of the method . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.2 Basic properties of the Sobolev spaces Hm(Ω), H(div,Ω) and H(div,Ω) . 5

1.2.1 The Sobolev space Hm . . . . . . . . . . . . . . . . . . . . . . . . . 61.2.2 The Sobolev space H(div,Ω) . . . . . . . . . . . . . . . . . . . . . 61.2.3 The Sobolev space H(curl,Ω) . . . . . . . . . . . . . . . . . . . . . 6

1.3 The variational (or weak) form of a boundary value problem . . . . . . . . 61.3.1 Case of homogeneous Dirichlet boundary conditions . . . . . . . . 71.3.2 Case of non homogeneous Dirichlet boundary conditions . . . . . . 81.3.3 Case of Neumann boundary conditions . . . . . . . . . . . . . . . . 8

1.4 Solution of the the variational formulation . . . . . . . . . . . . . . . . . . 91.5 Description of a Finite Element . . . . . . . . . . . . . . . . . . . . . . . . 10

1.5.1 Formal definition of a Finite Element . . . . . . . . . . . . . . . . 101.5.2 C0 Lagrange Finite Elements . . . . . . . . . . . . . . . . . . . . . 111.5.3 C1 Hermite Finite Elements . . . . . . . . . . . . . . . . . . . . . . 131.5.4 H(div,Ω) conforming Finite Elements . . . . . . . . . . . . . . . . 151.5.5 H(curl,Ω) conforming Finite Elements . . . . . . . . . . . . . . . 18

1.6 Change of local basis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191.7 Construction of the Finite Element approximation space . . . . . . . . . . 21

1.7.1 The mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211.7.2 Bases of tangent and cotangent spaces in curvilinear coordinates . 221.7.3 H1 conforming Finite Elements . . . . . . . . . . . . . . . . . . . . 231.7.4 H(curl,Ω) conforming Finite Elements . . . . . . . . . . . . . . . . 251.7.5 H(div,Ω) conforming Finite Elements . . . . . . . . . . . . . . . . 29

1.8 Convergence of the Finite Element method . . . . . . . . . . . . . . . . . 33

2 Non conforming and mixed Finite Element methods 362.1 Variational crimes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362.2 Non conforming Pk finite elements on triangles . . . . . . . . . . . . . . . 382.3 Weak enforcement of Dirichlet boundary conditions . . . . . . . . . . . . . 402.4 Discontinuous Galerkin methods . . . . . . . . . . . . . . . . . . . . . . . 422.5 Saddle-point problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

2.5.1 The theoretical framework . . . . . . . . . . . . . . . . . . . . . . . 432.5.2 Mixed formulation of the Poisson problem . . . . . . . . . . . . . . 44

1

Chapter 1

The classical finite elementmethod (FEM)

1.1 Principle of the method

For solving a problem on a computer that can only store a finite amount of informationa discrete form of the problem is needed. In the Finite Difference method one simplycomputes an approximation of the solution at a finite number of grid points. In theFinite Element method, which is mathematically more involved, the idea is to look forthe solution in a finite dimensional vector space, i.e. for some well chosen vector spaceVh, with basis (ϕi)0≤i≤N−1, the approximate solution has the form

uh(x) =N−1∑i=0

uiϕi(x).

The basis being given, the approximate solution uh is fully determined by its coefficientsui in this basis, which need not be values of uh at some points in the computationaldomain, but can be in some cases.

The question now becomes how to choose Vh and determine the coefficients ui suchthat uh is a good approximation of the solution u of the original problem. Let us consideras a first example the Poisson problem with homogeneous Dirichlet boundary conditions:

−∆u = f, in Ω, u = 0, on ∂Ω. (1.1)

The first idea, introduced by Ritz in his thesis in Gottingen in 1902, was to transform theboundary problem into an equivalent minimisation problem. Indeed, via the Dirichletprinciple (1.1) is equivalent to the minimisation problem

minu∈H1

0 (Ω)

(1

2

∫Ω|∇u(x)|2 dx−

∫Ωf(x)u(x) dx

). (1.2)

We shall need the following Hilbert spaces, defined for a domain Ω ∈ Rd

H1(Ω) = u ∈ L2(Ω), ∇u ∈ (L2(Ω))d, H10 (Ω) = u ∈ H1(Ω), u = 0 on ∂Ω.

The scalar product associated to these Hilbert spaces is

(u, v)1 =

∫Ω∇u(x) · ∇v(x) dx+

∫Ωu(x)v(x) dx.

2

Moreover, we denote by

‖u‖1,Ω =

∫Ω|∇u(x)|2 dx+

∫Ωu(x)2 dx, |u|1,Ω =

∫Ω|∇u(x)|2 dx, ‖u‖0,Ω =

∫Ωu(x)2 dx,

the norm in H1(Ω), the semi-norm in H1(Ω) and the norm in L2(Ω). Then, the originalproblem being transformed into a minimisation problem, it becomes quite natural to lookfor an approximation in a finite dimensional subspace of the function space in which theminimisation problem is posed (in our case H1

0 (Ω)), which means that the minimisationis performed by considering only minima in a finite dimensional subspace. Then if theform of finite dimensional space is chosen such that any function of the original spacecan be approximated to any given tolerance, by a function of the approximation space,we should be able to get a good approximation. Ritz who was actually looking atsolutions for the bilaplacian equation, chose as basis functions for Vh a finite number ofeigenfunctions of his operator.

The standard method to solve a minimisation problem with a cost functional Jdefined on a Hilbert space V , of the form

minu∈V

J [u],

is to solve the associated Euler equation J ′[u] = 0 obtained by computing the Frechetderivative of the functional that we want to minimise. Note that the Frechet derivativegives a rigorous definition of the functional derivative used in physics for functions thatare in a Banach (including Hilbert) space. Consider a functional J from a Hilbert spaceV into R. Its Frechet derivative J ′, assuming it exists, is a linear form on V , whichmeans that it maps any function from V to a scalar. It can be computed using theGateaux formula:

J ′[u](v) = limε→0

J [u+ εv]− J [u]

ε. (1.3)

Let us apply this formula to our problem for which

J [u] =1

2

∫Ω|∇u(x)|2 dx−

∫Ωf(x)u(x) dx.

We have for any v ∈ V = H10 (Ω)

J [u+ εv] =1

2

∫Ω|∇u(x) + εv(x)|2 dx−

∫Ωf(x)(u(x) + εv(x)) dx

=1

2

(∫Ω|∇u(x)|2 dx+ 2ε

∫Ω∇u(x) · ∇v(x) dx+ ε2

∫Ω|∇u(x)|2 dx

)−∫

Ωf(x)u(x) dx− ε

∫Ωf(x)v(x) dx.

From which we deduce, using the Gateaux formula (1.3) that

J ′[u](v) =

∫Ω∇u(x) · ∇v(x) dx−

∫Ωf(x)v(x) dx.

Note that J ′[u] being a linear form on V is defined by applying it to some vector v ∈ V .Finally the solution of our minimisation problem (1.2), is a solution of the Euler equationJ ′[u] = 0 or equivalently J ′[u](v) = 0 for all v ∈ V , which reads∫

Ω∇u(x) · ∇v(x) dx =

∫Ωf(x)v(x) dx ∀v ∈ H1

0 (Ω). (1.4)

3

This is also what is called the variational formulation, or the weak formulation of theoriginal boundary value problem (1.1). Note that this variational formulation expressesin some sense the orthogonality of the residual to the space in which the solution issought. This is more general than Euler equations of minimisation problems as noticedby Galerkin and has a wide range of applications. One can even extend this concept bymaking the residual orthogonal to a different function space, than the one in which thesolution lives. Such methods are called Petrov-Galerkin methods and are beyond thescope of this lecture.

So the principle of the Galerkin (or Ritz-Galerkin) method is to look for a solutionin a finite dimensional subspace Vh ⊂ V of the original space and to use the samevariational formulation (1.4) as the one defining the exact solution, with test functionsalso in Vh to characterise the solution. What remains to be done now is to choose Vhwith good approximation properties. As we will see later, the stability of the Galerkinmethod follows directly from the well-posedness of the variational problem (1.4).

The finite dimensional space Vh is in general defined by its basis functions. Forthose, Ritz used eigenfunctions of the problem. But those are in general cumbersometo compute. Galerkin proposed to use general classes of simple functions, trigonomet-ric functions or polynomials, that are know to be able to approximate any continuousfunction with a finite number of basis functions. Trigonometric polynomials which arelinked to Fourier series are very good in periodic domains, with a few simple extensions.Polynomials enjoy more widespread applications, however to get a good conditioning ofthe linear system that is obtained at the end, care needs to be taken in the choice ofthe basis functions. The monomial basis (1, x, x2, . . . ) has very bad properties. Bestapproximations are provided by the orthogonal Legendre polynomials or by the Cheby-shev polynomials which are used in practice. Note that all the basis functions we havementioned up to now have a global support in the computational domain and thus leadto full matrices in the linear system, which can be computationally expensive. Meth-ods using such bases are actually not known as Finite Element methods but rather asspectral methods.

Another ingredient is needed to define what is known as Finite Element methods.This was introduced by Courant in 1943 [4] and consists in using basis functions witha small support in the computational domain, so that its product with other basisfunctions vanishes for most of the other basis functions leading to a very sparse matrix,i.e. with very few non zero terms, in the linear system, which can be solved veryefficiently on a computer. To this aim, the computational domain is decomposed intosmall elements, in general triangles or quads in 2D and the basis functions are chosento be relatively low order polynomials, on each of these elements. Convergence beingachieved by taking smaller elements like the cells in the Finite Difference method. In 1D afinite element mesh will look like a finite difference mesh. An example of an unstructuredFinite Element mesh in 2D is displayed in Figure 1.1, which shows the great flexibility inparticular to handle complicated boundaries with finite elements, which finite differencesdo not provide. This is a key to its very wide usage.

The article by Gander and Wanner [7] provides a clear and well documented overviewof the historical developments of the Finite Element method. For more technical his-torical developments of the Finite Difference and Finite Element methods on can alsoconsult [10].

In summary, the finite element method consists in looking for a solution of a vari-ational problem like (1.4), in a finite dimensional subspace Vh of the space V where

4

0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35

0.0

0.1

0.2

0.3

0.4

Figure 1.1: Example of a 2D finite element mesh consisting of triangles.

the exact solution is defined. The space Vh is characterised by a basis (ϕ1, . . . , ϕN ) sothat finding the solution of the variational problem amounts to solving a linear system.Indeed, express the trial function uh and the test function uh on this basis:

uh(x) =N∑j=1

ujϕj(x), uh(x) =N∑i=1

uiϕi(x),

and plug these expressions in the variational problem (1.4). This yields

N∑i=1

N∑j=1

uj ui

∫Ω∇ϕi(x) · ∇ϕj(x) dx =

N∑i=1

ui

∫Ωf(x)ϕi(x) dx.

This can be expressed in matrix form, U>h AhUh = U>h bh, which is equivalent to thelinear system AhUh = bh as the previous equality is true for all Uh, where

Uh = (u1, . . . , uN )>, Uh = (u1, . . . , uN )>, bh = (

∫Ωf(x)ϕ1(x) dx, . . . ,

∫Ωf(x)ϕN (x) dx)>

and the matrix Ah is defined by its entries which are

(

∫Ω∇ϕi(x) · ∇ϕj(x) dx)1≤i,j≤N .

1.2 Basic properties of the Sobolev spaces Hm(Ω), H(div,Ω)and H(div,Ω)

In the course of the lecture we shall work with the Sobolev spaces Hm(Ω), H(div,Ω)and H(div,Ω) and recall here there basic properties without proof. For a more detailedpresentation with proofs we refer to Section 2.1. of [3].

5

1.2.1 The Sobolev space Hm

For any integer m ≥ 1, one can define

Hm(Ω) = v ∈ L2(Ω) | Dαv ∈ L2(Ω), |α| ≤ m (1.5)

The most classical second order operator is the Laplace operator, which reads in anarbitrary dimension d (generally d = 1, 2 or 3),

∆u =

d∑i=1

∂2u

∂x2d

.

The classical Green formula for the Laplace operator readsFor essential boundary conditions related with this Green formula we shall define the

spaceH1

0 (Ω) = v ∈ H1(Ω) | v|∂Ω = 0.And other classical operator which comes from elasticity is the bilaplacian operator

∆2 = ∆∆, which is a fourth order operator. The Green formula needed for variationalformulations of PDEs based on the bilaplacian reads∫

Ω∆2u v dx =

∫Ωu∆2v dx +

∫∂Ω

(u∂∆v

∂n− v∂∆u

∂n+ ∆u

∂v

∂n−∆v

∂u

∂n

)dσ (1.6)

H20 (Ω) = v ∈ H1(Ω) | v|∂Ω = 0,

∂v

∂n

∣∣∂Ω

= 0.

1.2.2 The Sobolev space H(div,Ω)∫Ω∇ · u v dx = −

∫Ω

u · ∇v dx+

∫∂Ω

u · ν v dσ (1.7)

1.2.3 The Sobolev space H(curl,Ω)

The Green’s formula that will be useful for variational problems involving the curl op-erator reads ∫

Ωu · ∇ × v =

∫Ω∇× u · v +

∫∂Ω

(u× n) · v ds. (1.8)

1.3 The variational (or weak) form of a boundary valueproblem

The variational form of a boundary value problem contains all its elements, which arethe partial differential equation in the interior of the domain and the boundary condi-tions. There are two very distinct ways to handle the boundary conditions depending onhow they appear when deriving the variational formulation. If they appear on the testfunction they are called essential boundary conditions and need to be included in thespace where the solution is looked for. If they appear on the trial function, which willbe the approximate solution, they can be handled in a natural way in the variationalformulation. Such boundary conditions are called natural boundary conditions. We will

6

see on the examples of Dirichlet and Neumann boundary conditions how this works inpractice.

In order to define the variational formulation, we will need the following Greenformula: For u ∈ H2(Ω) and v ∈ H1(Ω)

−∫

Ω∆u v dx =

∫Ω∇u · ∇v dx−

∫∂Ω

∂u

∂nv dσ. (1.9)

Here H2(Ω) denotes the Hilbert space of the functions whose partial derivatives up tosecond order are in L2(Ω) and ∂u

∂n = ∇u · ν, where ν is the outbound normal at anypoint of the boundary.

Remark 1 Functions in Sobolev spaces are not necessarily continuous and hence theirvalue on the boundary is not naturally defined. In fact, one can define, what is calleda trace on the boundary, by first defining it for sufficiently smooth functions and thenextending it by continuity, typically using a Green’s formula like (1.9). So the Green’sformula also tells us what kind of trace can be defined. For a more detailed descriptionone can consult a classical functional analysis or a Finite Element textbook like forexample [3].

1.3.1 Case of homogeneous Dirichlet boundary conditions

Let f ∈ L2(Ω). Consider the boundary value problem

−∆u = f in Ω, (1.10)

u = 0 on ∂Ω. (1.11)

Assume that u ∈ H2(Ω), multiply (1.10) by v ∈ H1(Ω) and integrate using the Greenformula (1.9), which yields∫

Ω∇u · ∇v dx−

∫∂Ω

∂u

∂nv dσ =

∫Ωfv dx.

Here u does not appear in the boundary integral, so we cannot apply the boundarycondition directly. But in the end u will be in the same function space as the testfunction v, which appears directly in the boundary integral. This is the case of anessential boundary condition. So we take test functions v vanishing on the boundary.We then get the following variational formulation:Find u ∈ H1

0 (Ω) such that∫Ω∇u · ∇v dx =

∫Ωfv dx ∀v ∈ H1

0 (Ω). (1.12)

The solutions of this variational formulation are called weak solutions of the originalboundary value problem. The solutions which are also in H2(Ω) are called strong solu-tions. Indeed we can prove that such a solution is also a solution of the initial boundaryvalue problem (1.10)-(1.11). If u ∈ H2(Ω), the Green formula (1.9) can be used, and asϕ vanishes on the boundary it yields

−∫

Ω∆uϕdx =

∫Ωfϕdx ∀v ∈ H1

0 (Ω).

This implies, as H10 (Ω) is dense in L2(Ω), that −∆u = f in L2(Ω) and so almost

everywhere. On the other hand as u ∈ H10 (Ω), u = 0 on ∂Ω. So u is a strong solution of

(1.10)-(1.11).

7

1.3.2 Case of non homogeneous Dirichlet boundary conditions

Let f ∈ L2(Ω) and u0 ∈ H1(Ω). We consider the problem

−∆u = f in Ω, (1.13)

u = u0 on ∂Ω. (1.14)

As the value of u on the boundary cannot be directly put in the function space if it isnot zero, as else the function space would not be stable by linear combinations, we needto bring the problem back to the homogeneous case. To this aim let u = u − u0. Wethen show as previously that u is a solution of the variational problemFind u ∈ H1

0 (Ω) such that∫Ω∇u · ∇v dx =

∫Ωfv −

∫Ω∇u0 · ∇v dx ∀v ∈ H1

0 (Ω). (1.15)

This is the variational problem that needs to be solved for non homogeneous Dirichletboundary conditions. In practice u0 is only known on the boundary and needs to beextended to the whole domain. For standard finite elements one can pick the degrees offreedom on the boundary to be the projection (or finite element interpolation) of u0 onthe boundary and let the inner degrees of freedom be zero.

1.3.3 Case of Neumann boundary conditions

Let f ∈ L2(Ω) and g ∈ H1(Ω). We consider the problem

−∆u+ u = f in Ω, (1.16)

∂u

∂n= g on ∂Ω. (1.17)

Assuming that u ∈ H2(Ω), we multiply by a test function v ∈ H1(Ω) and integrate usingthe Green formula (1.9), which yields∫

Ω∇u · ∇v dx−

∫∂Ω

∂u

∂nv dσ +

∫Ωuv dx =

∫Ωfv dx.

Replacing ∂u∂n by its value g on the boundary, we obtain the variational formulation

Find u ∈ H1(Ω) such that∫Ω∇u · ∇v dx +

∫Ωuv dx =

∫Ωfv dx +

∫∂Ωgv dσ ∀v ∈ H1(Ω). (1.18)

Let us now show that u is a strong solution of the boundary value problem, providedit is in H2(Ω). As H1

0 (Ω) ⊂ H1(Ω) one can first take only test functions in H10 (Ω). Then

as in the case of homogeneous Dirichlet conditions it follows from the Green formula(1.9) that ∫

Ω(−∆u+ u)ϕdx =

∫Ωfϕdx ∀ϕ ∈ H1

0 (Ω).

This implies, as H10 (Ω) is dense in L2(Ω), that −∆u + u = f in L2(Ω) and so almost

everywhere.

8

It now remains to verify that we have the boundary condition

∂u

∂n= g on ∂Ω.

For that we start from (1.18) and apply the Green formula (1.9), which yields

−∫

Ω∆u v dx+

∫∂Ω

∂u

∂nv dσ +

∫Ωuv dx =

∫Ωfv dx+

∫∂Ωgv dσ ∀v ∈ H1(Ω),

and as −∆u+ u = f , it remains∫∂Ω

∂u

∂nv dσ =

∫∂Ωgv dσ ∀v ∈ H1(Ω),

which yields that ∂u∂n = g on ∂Ω.

1.4 Solution of the the variational formulation

The variational problems we consider in this chapter, as the examples from the previoussection, can be written in the following abstract formFind u ∈ V such that

a(u, v) = l(v) ∀v ∈ V, (1.19)

where V is a Hilbert space, a is a symmetric continuous and coercive bilinear form andl a continuous linear form.

The most convenient tool for provient existence and uniqueness of the solution of avariational problem is the Lax-Milgram theorem that we recall here:

Theorem 1 (Lax-Milgram) Let V a Hilbert space with the norm ‖.‖V . Let a(., .) bea continuous, symmetric and coercive bilinear form on V × V , i.e.

1. (Continuity): there exists C such that for all u, v ∈ V

|a(u, v)| ≤ C‖u‖V ‖v‖V .

2. (Coercivity): there exists a constant α > 0 such that for all u ∈ V

a(u, u) > α‖u‖2V .

Let l(.) a continuous linear form on V , i.e. there exists C such that for all v ∈ V

|l(v)| ≤ C‖v‖V .

Then there exists a unique u ∈ V such that

a(u, v) = l(v) ∀v ∈ V.

To illustrate the use of the Lax-Milgram theorem, let us apply it to the examplesof the previous section. The case of the problem with homogeneous Dirichlet boundaryconditions, yields to the variational formulation (1.12), which fits into the framework ofthe Lax-Milgram theorem with V = H1

0 (Ω), a(u, v) =∫

Ω∇u · ∇v dx, l(v) =∫

Ω fv dx.

9

The continuity of the bilinear form a and the linear form l follows from the Cauchy-Schwarz inequality. a is clearly symmetric and the coercivity is a consequence of thePoincare inequality:

‖u‖0,Ω ≤ C|u|1,Ω ∀u ∈ H10 (Ω), (1.20)

which implies that

a(u, u) = |u|1,Ω ≥1

2|u|1,Ω +

1

2C|u|0,Ω ≥ min(

1

2,

1

2C)‖u‖1,Ω.

The case of Neumann boundary conditions yields the variational formulation (1.18),in which case V = H1(Ω), a is the H1 scalar product which is clearly continuous,symmetric and coercive, and l(v) =

∫Ω fv dx +

∫∂Ω gv dσ, which is a continuous linear

form thanks to the Cauchy-Schwarz inequality and the continuity of the trace.

1.5 Description of a Finite Element

1.5.1 Formal definition of a Finite Element

Let (K,P,Σ) be a triple such that(i) K is a closed subset of Rn of non empty interior,(ii) P is a finite dimensional vector space of functions defined on K,(iii) Σ is a set of linear forms on P of finite cardinal N , Σ = σ1, . . . , σN.

Definition 1 The elements of Σ are called degrees of freedom of the Finite Element.

The degrees of freedom characterise the basis of P associated to the Finite Element.

Definition 2 Σ is said to be P -unisolvent if for any N -tuple (α1, . . . , αN ), there existsa unique element p ∈ P such that σi(p) = αi pour i = 1, . . . , N .

Definition 3 The triple (K,P,Σ) of Rn is called Finite Element of Rn if it satisfies(i), (ii) and (iii) and if Σ is P -unisolvent.

In the definition of a Finite Element, K is the domain on which the Finite Element isdefined, P is the finite dimensional approximation space, and Σ uniquely defines a basisof P , which is needed to build the Finite Element matrices associated to the variationalformulation applied to functions in the Finite Dimensional approximation space. Thisbasis can be either defined through the degrees of freedom or directly by exhibiting anexplicit formula for the basis functions. In this last case the degrees of freedom are notexplicitly needed.

The unisolvence property is needed to establish that the elements of P characterisedby the degrees fo freedom actually form a basis of P . In practice, this is done by firstverifying that the dimension is right, i.e. that the number of degrees of freedom is equalto dimP = N and then by checking either the injectivity or the surjectivity, which bothimply the bijectivity if the dimension is right, of the mapping

P → RN

p 7→ (σ1(p), . . . , σN (p))

This can be formalised in the two following lemmas:

10

Lemma 1 The set Σ is P -unisolvent if and only if the two following properties aresatisfied

(i) dimP = |Σ| (where |Σ| denotes the number of elements in the set Σ).

(ii) σj(p) = 0 for j = 1, . . . , N ⇒ p = 0.

Lemma 2 The set Σ is P -unisolvent if and only if the two following properties aresatisfied

(i) dimP = |Σ| = N .

(ii) There exist N linearly independent functions pi ∈ P, i = 1, . . . , N such thatσj(pi) = δij.

In addition to its local definition, independent of its neighbours, the degrees of free-dom of a Finite Element need to be chosen to allow a natural embedding into the functionspaces in which the variational formulation is defined. In practice for Finite Elementspaces embedded in L2 no continuity is required, for Finite Element spaces embeddedin H1 C0 continuity is required, for Finite Element spaces embedded in H2 C1 continu-ity is required, for Finite Element spaces embedded in H(curl,Ω) C0 continuity of thetangential component is required and for Finite Element spaces embedded in H(div,Ω)C0 continuity of the normal component is required.

We will thus present examples of Finite Elements according to their conformity,i.e. to the space in which they can be naturally embedded. Note that the continuityrequirement is enforced by sharing the degrees of freedom on the interface between twoelements and by making sure that these define uniquely the trace of P on the interface.

Remark 2 Note that not all degrees of freedom on the interface need to be shared betweenthe elements sharing the interface. This needs to be decided when constructing the globalFinite Element space from the reference element.

1.5.2 C0 Lagrange Finite Elements

These are continuous Finite Elements, and the continuity will be enforced by sharingthe degrees of freedom on the interface. Thanks to this continuity property the FiniteElement constructed from those will be included in H1. These elements are called H1

conforming.

1D Lagrange Pk Element Let a, b ∈ R, a < b. Let K = [a, b], P = Pk the set ofpolynomials of degree k on [a, b], Σ = σ0, . . . , σk, where a = x0 < x1 < · · · < xk = bare distinct points and

σk : P → R,p 7→ p(xi).

Moreover Σ is P -unisolvant, using Lemma 2. Indeed the Lagrange polynomials at theinterpolation points x0, x1, . . . , xk which read

lk,i(x) =

∏0≤j≤kj 6=i

(x− xj)

∏0≤j≤kj 6=i

(xi − xj)(1.21)

11

satisfy lk,i(xj) = δi,j , 0 ≤ i, j ≤ k.The fact that the points are all distinct makes the Lagrange interpolation problem

well posed. The first and last point being on the boundary, will correspond to shared de-grees of freedom. The corresponding basis function will be shared with the neighbouringelement.

For low degree polynomials, typically up to three, the degrees of freedom can bechosen uniformly space. For higher degree, the resulting matrices have better prop-erties in particular conditioning if Gauss-Lobatto points are chosen. Note that highorder Lagrange Finite Elements based on Gauss-Lobatto points are often called spectralelements.

The extension from one to multiple dimensions is generally done in two ways. Eitherone builds finite elements based on simplices, or on tensor products of 1D elements.There are other possibilities but they are less classical.

Simplex based Pk Finite Elements. A simplex in n dimensions is the convex hullof n + 1 affine independent points. In 2D this is a non degenerate triangle in 3D atetrahedron. In simplices basis functions are most easily expressed using the barycentriccoordinates associated to the vertices of the simplex, that we shall denote by a0, . . . ,an ∈Rn. The barycentric coordinate, classically denoted by (λi)0≤i≤n, associated to thevertex ai is the affine function with value 1 at ai and 0 at the n other vertices. Moreprecisely, for any point x = (x1, . . . , xn)> ∈ Rn,

λi(x) = αi,0 +n∑l=1

αi,lxl, i = 0, . . . , n. (1.22)

The coefficients (αi,l)0≤l≤n being determined by the relations λi(aj) = δij .Example: Pk in 2D. For 3 non aligned points a1, a2, and a3 in R2 let K be the

triangle defined by a1, a2 and a3. Let P = Pk be the vector space of polynomials ofdegree k in 2D

Pk = Span(xαyβ), (α, β) ∈ N2, 0 ≤ α+ β ≤ k.

The dimension of Pk is (k+1)(k+2)2 . Putting the Lagrange interpolation points on a lattice

with k + 1 points on the edges and then one point less at each level starting from oneedge, we get (k+ 1) + k+ (k− 1) + · · ·+ 1 = (k+ 1)(k+ 2)/2 interpolation points and soalso degrees of freedom, which is the same as the dimension of the space (see Figure 1.2for an example with k = 3). The basis functions can be expressed using the barycentriccoordinates. In our example with k = 3. The three basis functions associated to thethree vertices are (9/2)λi(λi − 1/3)(λi − 2/3), the basis function associated associatedto the point closest to ai on the edge [ai, aj ] is (27/2)λiλj(λi − 1/3). There are sixbasis functions of this form. Finally the basis function associated to the center point is27λ1λ2λ3. We thus find 10 basis functions for P3, whose dimension is 10.

12

We also end up with a total of 6 basis functions, with each basis having a value 1 at its assigned node and avalue of zero at all the other mesh nodes in the element.

Again this has the form

so we can easily determine the coefficients of all 6 basis functions in the quadratic case by inverting the matrixM. Each column of the inverted matrix is a set of coefficients for a basis function.

P3 Cubic ElementsP3 Cubic Elements

In the case of cubic finite elements, the basis functions are cubic polynomials of degree 3 with the designationP3

We now have 10 unknowns so we need a total of 10 node points on the triangle element to determine thecoefficients of the basis functions in the same manner as the P2 case.

Experiment 1Experiment 1In this experiment we will solve Poisson’s equation over a square region using Finite Elements with linear,quadratic and cubic elements and compare the results. We will solve

Similarly, here are the interpolation functions of the nine-node Lagrange element. The nodes in the x-direction are placed at x = , x = 0, and x

= while the the nodes in the y-direction are at y = , y = 0, and y = .

In[28]:=Transpose[HermiteElement1D[-L1,0,L1,0,x]].HermiteElement1D[-L2,0,L2,0,y]

Out[28]=

However, the situation becomes more complicated when you consider the elements whose nodes are not equally spaced in a grid. For example,

you cannot generate the shape functions for triangular elements or the rectangular elements with irregular node locations by using the above

tensor product approach. Here are two examples in which the interpolation functions cannot be generated.

In[29]:=p1=ElementPlot[1,-1,-1,-1,0,3/2,0,0, AspectRatio->1, Axes->True, PlotRange->-2,2,-2,2, NodeColor->RGBColor[0,0,1], DisplayFunction->Identity];

In[30]:=p2=ElementPlot[1,1,1,-1,-1,-1,-1,1,0,0, AspectRatio->1, Axes->True, PlotRange->-2,2,-2,2, NodeColor->RGBColor[0,0,1], DisplayFunction->Identity];

In[31]:=

5.3.2 Triangular Elements

Use the functions TriangularCompleteness, RectangularCompleteness, and ShapeFunction2D to generate interpolation

functions for triangular and general rectangular elements.

First, consider the triangular element with four nodal points and obtain a set of Lagrange-type shape functions, namely c = 0. Do not specify the

minimum number of symmetric terms to be dropped from the full polynomial.

Figure 1.2: (Left) P3 Finite Element, (Right) Q2 Finite Element

Hypercube based Qk Finite Element. Let K be the hypercube of dimension nK =

∏1≤i≤n[ai, bi]. Let P = Qk be the vector space of polynomials of degree k in each

direction:

Qk = Span(xα11 . . . xαn

n ), (α1, . . . , αn) ∈ Nn, 0 ≤ α1, . . . , αn ≤ k.

The degrees of freedom for this element is obtained by choosing k + 1 distinct pointsai = xi,0 < · · · < xi,k = bi in each direction. The corresponding basis functions are theproducts in all directions of all the 1D Lagrange basis functions. The Lagrange basis forQk is (lk,i1(x1) . . . lk,in(xn))0≤i1,...,in≤k, where the lk,ij (xj) denote the 1D Lagrange basisfunctions at the interpolation points xj,0, . . . , xj,k. The dimension of Qk in n dimensionsis (k + 1)n, which is also the number of the basis functions. An example with k = 2 in2D is given in Figure 1.2. Here the dimension of Q2 is nine and the nine basis functionsare lk,i(x)lk,j(y), 0 ≤ i, j ≤ 2.

1.5.3 C1 Hermite Finite Elements

Such elements are H2 conforming and are needed when second order derivatives appearin the variational formulation.

1D Hermite P2k+1 Finite Element. Hermite interpolation on an interval [a, b] con-sists in finding a polynomial p of degree 2k + 1 for k ≥ 1, such that pl(a) and pl(b) aregiven for 0 ≤ l ≤ k. This will enforce C l continuity if all the interface degrees of freedomare shared. To get C1 continuity k = 1 is enough:

Example P3 Hermite element in 1D. This is the simplest possible Hermite FiniteElement. Let a, b ∈ R, a < b. Let K = [a, b], P = P3 the linear space of cubicpolynomials on [a, b], Σ = σ1, σ2, σ3, σ4, with

σ1 : P → R,p 7→ p(a),

σ2 : P → R,p 7→ p(b),

σ3 : P → R,p 7→ p′(a),

σ4 : P → R,p 7→ p′(b).

C1 Finite Elements are much more involved in higher dimensions at least for trianglesand higher dimensional simplices than C0 finite elements. Tensor product constructionscan be obtained from 1D Hermite Finite Elements, however they often have the con-straint that the mapping also needs to be C1, which is not the case for general affinemappings as are standardly used for C0 Lagrange Finite Elements. Let us introduce thesimplex examples on simplest triangle based and quad based C1 finite elements.

13

Triangle P3 Hermite element. K is a non degenerate triangle of vertices (a1,a2,a3),P = P3. So dimP = 10 and so ten degrees of freedom are needed. To enforce C1

continuity, the value and the two components of the gradient need to be fixed on each ofthe three vertices. This amounts to nine degrees of freedom, the tenth can be taken tobe the value at the barycenter of the triangle. This is represented on the left of Figure1.3.

The Bogner-Fox-Schmitt rectangle Q3 Finite element. Taking the tensor prod-uct of two 1D P3 Hermite Finite element. One obtains the Bogner-Fox-Schmitt element,which in addition to the point and two derivative values at each of the four vertices has

also the cross derivative ∂2p∂x∂y as a degree of freedom. The corresponding basis consists of

the products of all possible 1D cubic Hermite basis functions. Its dimension is 4×4 = 16.This is represented on the right of Figure 1.3.

9 $ %

) ↵

. ↵↵

A , 34/ < A

:

"

<

$ 0.= A

9) A A

. ↵↵

A" "

, -4/

) " ,3- 34/

9 A ↵↵ /↵ ,&32/

04

Abbildung 5: Bogner Fox Schmitt - Rechteck

Abbildung 6: Argyris Dreieck

9

Figure 1.3: C1 Finite Elements: (Left) P3 Hermite Finite Element, (Right) Bogner-Fox-Schmitt Finite Element

Discontinuous finite elements

Functions that are only in L2 can be defined piecewise on each cell without any continuityrequirements. Then there is no restriction on the degrees of freedom.

Classical discontinuous Finite Elements are nodal Lagrange elements based on Gausspoints as the quadrature points. Even though their approximation order is lower forthe same number of points it is sometimes convenient to place the degrees of freedomat Gauss-Lobatto points, where one point on each side is on the edge. This makeseasier the computation of edge integrals. However in this case, as the Finite Elementis discontinuous, degrees of freedom on the interface are not shared by neighbouringelements.

Another class of classical discontinuous Finite Elements are modal elements wherethe basis functions are generally taken to be the orthonormal Legendre polynomials(Li)0≤i≤k, which have the advantage of yielding the identity as a mass matrix. Thecorresponding degrees of freedom are σi(p) =

∫p(x)Li(x) dx. Such constructions, where

each element of the basis has a deferent degree, are called hierarchical finite elementsand facilitate what is called the p refinement consisting in obtaining a more accurateapproximation by taking a higher order polynomial rather that refining the grid. Indeedin this case when refining only one basis function needs to be added to the existing onerather than replacing all the basis functions as would be necessary for the previouslyseem Finite Elements where all basis functions have the same degree.

14

1.5.4 H(div,Ω) conforming Finite Elements

The H(div,Ω) space consists of vector fields. Each element as n components in n dimen-sions. Moreover, as we have seen before H(div,Ω) vector fields have a continuous normalcomponent and a discontinuous tangential component. Let us explain how such elementscan be constructed in two dimensions. This can be generalised to higher dimensions.

Tensor product construction. Due to the given continuity requirements a H(div,Ω)conforming Finite Element can be constructed, by defining separately an approximationof the tangential component and of the normal component. In this case K = [−1, 1] ×[−1, 1],

P = p = (px, py)> | px ∈ Qk−1,k, py ∈ Qk,k−1,

whereQm,n = Span(xαyβ, 0 ≤ α ≤ m, 0 ≤ β ≤ n).

For px the degrees of freedom are the Gauss points in x and the Gauss-Lobatto pointsin y, such that px is discontinuous in x and continuous in y. It is the other way for py.This enables arbitrarily high order H(div,Ω) conforming elements.

The Raviart-Thomas (RT) Finite Element. K is a non degenerate triangle ofvertices (a1,a2,a3). For the element of order k + 1, k ≥ 0, denoting by Pk the space ofhomogeneous polynomials of degree k (i.e. all the monomials are exactly of degree k)

P = RTk = (Pk)2 +

(xy

)Pk.

In two dimensions dimPk = (k + 1)(k + 2)/2 and dim Pk = k + 1, so that dimRTk =(k + 1)(k + 3). This yields in particular dimRT0 = 3, dimRT1 = 8, dimRT2 = 15.The degrees of freedom are constructed starting from the edges in order to enforce thecontinuity requirements. This is our first example of moment based degrees of freedom,defined by 1D moments along the edges to enforce continuity and then 2D moments inthe triangle to complete the missing degrees of freedom.

Σ =

p 7→

∫ei

p · νsl ds, 0 ≤ l ≤ k, p 7→∫K

p(x1, x2) · xli dxi, 0 ≤ l ≤ k − 1, i = 1, 2

.

We count here k+ 1 degrees of freedom for each of the three edges, and 2k inner degreesof freedom, which are in total 3(k+ 1) + 2k(k+ 1)/2 = (k+ 1)(k+ 3) which is preciselythe dimension of RTk. To prove the unisolvence it is thus enough to prove that apolynomial which vanishes on all degrees of freedom is necessarily zero. Note thatbecause the monomials in our degrees of freedom are a basis of the polynomial spacesPk(ei), i = 1, 2, 3 and Pk−1(K) respectively this is given by the following lemma:

Lemma 3 Let k ≥ 0, and p ∈ RTk(K) then∫ei

p · ν r ds = 0, ∀r ∈ Pk(ei), (1.23)∫K

p · q dx = 0 ∀q ∈ (Pk−1)2 (1.24)

implies that p = 0.

15

Remark 3 Note that instead of the monomials one can use (1.23) and (1.24) appliedto arbitrary bases of Pk(ei) and (Pk−1)2 respectively.

Proof. Let p ∈ RTk. Then p = q +

(xy

)ψ with q ∈ (Pk)2 and ψ ∈ Pk. Let us first

observe that on any of the three edges ei we have p · ν ∈ Pk(ei), this is obvioulsy thecase for p · ν. On the other hand if (x(s), y(s)) defines a parametrisation of ei, then bydefinition of the normal nx(x(s)− x(s0)) + ny(y(s)− y(s0)) = 0 so that nxx(s) + nyy(s)is constant on ei. It follows that on the edge ei

ν

(xy

)ψ = (nxx+ nyy)ψ.

Then as (nxx+ nyy) is a constant, nxx+ nyy)ψ is a polynomial of degree k like ψ.Now computing the divergence of p we find

∇ · p = ∇ · q + 2ψ +

(xy

)· ∇ψ = ∇ · q + (k + 2)ψ.

Hence ∇ ·p is a polynomial of degree k orthogonal to all polynomials of degree k. Thusit is 0. Then because ∇ · q ∈ Pk−1 it also follows that ψ = 0 and hence p ∈ (Pk)2.

Let us take ϕ ∈ Pk. Then ∇ϕ ∈ (Pk−1)2 and hence using (1.24) we get using aGreen’s formula ∫

Kp · ∇ϕdx = 0 =

∫∂K

p · νϕ ds+

∫K∇ · pϕdx.

As the boundary term vanishes due to (1.23), it follows that∫K ∇ ·pϕdx = 0. This for

all ϕ ∈ Pk.Now in order to conclude we assume that the reference triangle has one edge on x = 0

and one edge on y = 0 and is in the positive quarter plane. The the condition p · ν = 0yields that px = 0 for x = 0, hence px = xψ1 with ψ1 ∈ Pk−1 and py = 0 for y = 0, hencepy = yψ2 with ψ2 ∈ Pk−1. Then taking q = (ψ1, ψ2)> in (1.24), we obtain∫

K(xψ2

1 + yψ22) dx = 0

from which it follows as both terms are positive that they are both zero. So p = 0 whichwas what we needed to prove.

Remark 4 Obviously, the procedure used here to construct the Finite Element, by firstsetting the boundary degrees of freedom to ensure the required continuity and then com-plete with the needed inner degrees of freedom can also be applied to quads.

The Brezzi-Douglas-Marini (BDM) Finite Element. K is a non degenerate tri-angle of vertices (a1,a2,a3). Here P is the full polynomial space in each directionP = BDMk = (Pk)2. As continuity of the normal component is needed on each of thethree faces, these requires at least three degrees of freedom. So and H(div,Ω) conform-ing BDMk element can only be constructed for k ≥ 1 as dimBDM0 = 2. In order todefine the degrees of freedom, we need the following space

Nk = (Pk)2 +

(y−x

)Pk,

16

This space has obviously the same dimension as the corresponding RTk: dimNk =dimRTk = (k + 1)(k + 3). We can now define the degrees of freedom for the BDMk

element: introducing (ψj)0 ≤ j ≤ k a basis of Pk on each edge (this could be themonomials sj as we used for Raviart-Thomas or any other basis), and (ϕj)0≤(k−1)(k+1)

a basis of Nk−2

Σ =

p 7→

∫ei

p · νψj ds, 0 ≤ j ≤ k, i = 1, 2, 3,

p 7→∫K

p ·ϕj dx, 0 ≤ j ≤ (k − 1)(k + 1)

.

We first notice, that the number of degrees of freedom is 3(k + 1) + (k − 1)(k + 1) =(k + 1)(k + 2) = dimP . So that proving that p ∈ P must vanish if all these degrees offreedom are zero is enough to prove unisolvence. Similarly as for the Raviart-Thomaselement this follows from the following:

Lemma 4 Let k ≥ 1, and p ∈ Pk(K)2 then∫ei

p · ν ψ ds = 0, ∀ψ ∈ Pk(ei), (1.25)∫K

p · q dx = 0 ∀q ∈ Nk−2 (1.26)

implies that p = 0.

Proof. Let p ∈ Pk(K)2 verifying (1.25) and (1.26). For any ϕ ∈ Pk−1, we have that∇ϕ ∈ (Pk−2)2 ⊂ Nk−2, hence from (1.26) it follows that∫

Kp · ∇ϕdx = 0 = −

∫K∇ · pϕdx+

∫∂K

p · ν ϕds.

The last term is zero because of (1.25). Then ∇ · p is a polynomial of degree k − 1orthogonal to all polynomials of degree k − 1. Hence it is zero. Thus p = (∂yψ,−∂xψ)for a ψ ∈ Pk+1. Moreover due to (1.25), p · ν = 0 on each edge, this implies that thetangential derivative of ψ on each edge, and so ψ is constant on all the edges. As it isdefined up to a constant, on can choose ψ such that it vanishes on the three edges. Thenintroducing the barycentric coordinates λ1, λ2, λ3 of the triangle, it follows that each λidivides ψ, so that ψ = λ1λ2λ3ψ with ψ ∈ Pk−2.

Let us now take q =

(y−x

)ψ ∈ Nk−2. Then from (1.26) it follows that

∫K

p · q dx =

∫K

(∂yψ−∂xψ

)·(y−x

)ψ dx =

∫Kkλ1λ2λ3ψ

2 dx = 0

which implies that ψ = 0 and thus p = 0, which is the desired result.

Remark 5 The extension to 3D is straightforward, the degrees of freedom stay the same,the triangles being replaced by tetrahedra and the edges being replaced by faces.

17

↵

($ ↵

↵↵

E ) <<EBE# <<EBE

$E# "

E "

" :

↵ $

$ 004= < 7 E

↵↵

E ,--/ 01-3I

< 6 7 &

6 6 >HH ,>H23/

EE>HH )

: 6

E " 6

40

↵

1

> % %

&' @ ↵

<<EBE#

<<EBE# ↵

<<EBE#

( <6E

) A ↵

4F

Figure 1.4: H(div) Finite Elements: (Left) RT1 Raviart-Thomas Element, (Right)BDM2 Brezzi-Douglas-Marini Element

1.5.5 H(curl,Ω) conforming Finite Elements

Recall that for a 3D vector u = (u1, u2, u3)>, the curl is defined by the relation

∇× u =

∂2u3 − ∂3u2

∂3u1 − ∂1u3

∂1u2 − ∂2u1

.

In 2D, there is no dependency on the third coordinate and the curl degenerates into thevector curl of a scalar, for the first two components and the scalar curl of a vector forthe last component:

∇× u =

(curlu3

curl u

)with curlu3 =

(∂2u3

−∂1u3

), u =

(u1

u2

), curl u = ∂1u2 − ∂2u1.

H(curl,Ω) conforming elements have a continuous tangential component. They canthus be simply obtained in 2D by exchanging the two components of the vector in thetensor product case.

For triangles, the natural finite element space, built as the Raviart-Thomas elementis the Nedelec Element defined by K = (a1,a2,a3), a non degenerate triangle,

P = Nk = (Pk)2 +

(y−x

)Pk,

and the degrees of freedom are obtained from the Raviart-Thomas degrees of freedomby replacing the normal ν = (ν1, ν2)> by the tangent τ = (ν2,−ν1). Unisolvence is alsoeasily adapted from the Raviart-Thomas case and is based on the following

Lemma 5 Let k ≥ 0, and p ∈ RTk(K) then∫ei

p · τ r ds = 0, ∀r ∈ Pk(ei), (1.27)∫K

p · q dx = 0 ∀q ∈ (Pk−1)2 (1.28)

implies that p = 0.

18

9 $ %

↵

* #

>HH

>HH

+

4D

9 $ %

↵

* #

>HH

>HH

+

4D

Figure 1.5: H(curl) Finite Elements: (Left) Nedelec Element N0 of order 1, (Right)Brezzi-Nedelec Element N1 of order 2

Remark 6 The extension to 3D for tensor product element is also quite natural byconsidering the components separetely and noticing that in 3D there are two tangentialcomponents and three normal components.

Simplex based H(curl,Ω) Finite Elements, which are constructed on tetrahedra in3D are fundamentally different from their H(div,Ω) counterpart, unlike in 2D whereone could go from one to the other by a simple rotation of the components. There arealso two classes of finite elements, like Raviart-Thomas and Brezzi-Douglas-Marini in2D, which are called respectively Nedelec elements of first type and of second type.

The 3D Nedelec space in which the elements of first type live and which is used todefine the degrees of freedom of the Nedelec elements of second type reads

Nk = (Pk)3 ⊕(x× (Pk)3

)(1.29)

and the degrees of freedom are defined by the following unisolvence lemma

Lemma 6 Let K be a non degenerate tetrahedron, with faces (fi)0≤i≤4, and edges(ei)0≤i≤6 k ≥ 0, and p ∈ Nk(K) then∫

ei

p · τ i r ds = 0, ∀r ∈ Pk(ei), (1.30)∫fi

(p× νi) · s ds = 0, ∀s ∈ (Pk−1(fi))2, (1.31)∫

Kp · q dx = 0 ∀q ∈ (Pk−2)2 (1.32)

implies that p = 0.

We denote here by τ i the unit vector along the edge ei and by νi the outward unit normalon face fi.

1.6 Change of local basis

The local degrees of freedom Σ of a Finite Element defined by (K,P,Σ) can also be usedto compute the element matrices with respect to the matrices corresponding to a simpleror easily computable basis of the same space P of dimension N . This could for example

19

be an orthonormal basis. This allows to compute the matrices once for all in some basisand then to get the matrices in any other basis by just computing the correspondinggeneralised Vandermode matrix as follows.

Let us denote by (φl)0≤l≤N the reference basis in which the element matrices areknown. Let now (pj)0≤j≤N be another basis of the same linear space P associated tothe degrees of freedom (σi)0≤i≤N . Then pj can be expressed in the basis (φl)0≤l≤N :

pj(x) =

N∑l=1

αj,lφl(x). (1.33)

Denoting by p = (p1, . . . , pN )>, φ = (φ1, . . . , φN )> and A = ((αj,l))1≤j,l≤N , this relationcan be written in matrix form

p(x) = Aφ(x).

Applying the linear forms σi to relation (1.33) for 1 ≤ i ≤ N , we get

IN = V A>, (1.34)

where IN is the identity matrix and V = ((σi(φj)))1≤i,j≤N . The matrix V is calledgeneralised Vandermonde matrix, as in the case when ((φj))1≤j≤N is the monomial basis(1, x, . . . , xN−1) of Pk in 1D and for a Lagrange Finite Element where σi(pj) = pj(xi),

the matrix V is the classical Vandermonde matrix V = ((xj−1i ))1≤i,j≤N .

The generalised Vandermonde matrix V is explicitly computable when the basis (φj)jand the degrees of freedom (σi)i are explicitly known. From relation (1.34), it followsimmediately that A = V −>, where we denote by V −> the inverse of the transpose of V .

One can also take the derivative of formula (1.33). Thus

∂xpj(x) =

N∑l=1

αj,l∂xφl(x),

and the same for the other variables if needed. Applying again the linear form σi to thisequation for 1 ≤ i ≤ N , we find

Dxp = DxφA> = DxφV

−1,

where the matrices Dxp and Dxφ are defined respectively by their generic element((σi(∂xpj)))1≤i,j≤N and ((σi(∂xφj)))1≤i,j≤Nk

. Note that if (φj)j has been chosen suchDxφ is explicitly computable, we can, thanks to this relation explicitly compute thematrix Dxp and similarly the derivative matrices with respect to other variables.

We can express M the mass matrix on the reference element K using the Vander-monde matrix V . Using formula (1.33),

pj(x) =

N∑l=1

αj,lφl(x).

Hence ∫Kpi(x)pj(x) dx =

N∑l=1

N∑m=1

αi,lαj,m

∫Kφl(x)φm(x) dx =

N∑l=1

αi,lαj,m,

20

if the basis functions (φj)j are orthonormal on K. It follows that M = AA> = V −>V −1.If the space P is stable by derivation, as is the case for the polynomial space Pk,

we can also express the derivative ∂xGh or other derivatives in the basis (pi)i and thisderivative can also be characterised by the degrees of freedom (σi(∂xGh))1≤i≤Nk

. Wedenote by DxG the vector containing these degrees of freedom, which can be expressedusing G as follows. We have

∂xGh(x) =

Nk∑j=1

σj(Gh)∂xpj(x),

and so for 1 ≤ i ≤ N ,

σi(∂xGh) =

Nk∑j=1

σj(Gh)σi(∂xpj).

This can also be written DxG = (Dxp)G, denoting by Dxp the matrix with generic term((σi(∂xpj)))1≤i,j≤N .

1.7 Construction of the Finite Element approximation space

1.7.1 The mapping

A conforming Finite Element space Vh, is constructed from a reference element, by map-ping the reference Finite Element defined previously to a collection of physical elementsthat define an admissible mesh of the computational domain and ensuring that Vh ⊂ Vby equating degrees of freedom on the interface.

The coefficients of Finite Element matrices are defined as integrals involving the basisfunctions. The standard practice as well for convergence theory as for practical imple-mentation is to make a change of variables from one unique reference element to eachof the other elements. For Lagrange Finite Elements affine transformation can be usedfor simplices and multi-linear transformation for tensor product elements. For higherorder elements, when one wants to get a corresponding high order approximation of theboundary, a polynomial transformation of the same order as the Finite Element approx-imation of the elements touching the boundary is used. This is called isoparametricFinite Elements.

Let us call K ⊂ Rd the reference element and K ⊂ Rd any element of the physicalmesh. We then define the mapping

F : K → K,

x = (x1, . . . , xd)> 7→ x = F(x) = (F1(x)), . . . , Fd(x)))>.

As differential operators are involved we will need the Jacobian matrix of the map-ping, denoted by

DF (x) =

((∂Fi∂xj

))1≤i,j≤d

.

Let us denote by J(x) = det(DF (x)), for any scalar function v(x), v(x) = v(F(x)), by∇ = ( ∂

∂x1, . . . , ∂

∂xd)> and finally by ∇ = ( ∂

∂x1, . . . , ∂

∂xd)>. We then find, using the chain

rule that

∂v

∂xj=

d∑i=1

∂Fi∂xj

∂v

∂xi.

21

a0

a1

a2

t1

t2

a0

a1

a2

t1

t2

n1

n2

Figure 1.6: Left: Tangent basis, Right: Tangent and cotangent basis vectors

So that∇v(x) = (DF )>∇v(x)⇒ ∇v(x) = (DF )−>∇v(x). (1.35)

An important special case is when F is an affine map. This is typically used forsimplicial Finite Elements (except on the boundary for high order elements as it bringsback the method to second order). The classical Finite Element theory is also basedon affine mappings. In this case F(x) = Ax + b, where A is a d × d matrix and b ad−component column vector. For a simplicial mesh, the affine transformation, that isthe components of A and b, is completely determined by the imposing that F(ai) = ai0 ≤ i ≤ d, i.e. that all vertices of the reference element K are mapped to the verticesof the current element K. We then have, for a0 = (0, . . . , 0) and the components of ai,j(1 ≤ j ≤ d) of ai are all 0 except the ith component which is 1,

A =

a1,1 − a0,1 a2,1 − a0,1 . . . ad,1 − a0,1

a1,2 − a0,2 a2,2 − a0,2 . . . ad,2 − a0,2...

... . . ....

a1,d − a0,d a2,d − a0,d . . . ad,d − a0,d

, b = a0.

The jacobian matrix of the affine transformation is then the matrix A.

1.7.2 Bases of tangent and cotangent spaces in curvilinear coordinates

A mapping from F : Rd → Rd defines a curvilinear coordinate system, which inducesa natural vector space called tangent space a each point. The column vectors of thejacobian matrix DF(x), ti = ∂F

∂xi1 ≤ i ≤ d define a basis of the tangent space, which

is the image of the canonical basis under the tangent map defined by the Jacobianmatrix DF(x). In the case of an affine map F(x) = Ax + b, mapping the reference d-dimensional simplex into the simplex (a0, . . .ad), we have DF(x) = A, independently ofx and then ti = ai − a0, so that the tangent basis consists of the vectors going from a0

to each of the other vertices of the simplex. See Figure 1.6 for a sketch in a triangle.Note that the direction and length of the tangent basis vectors ti are completely

determined by the mapping F. They form a basis of Rd provided DF(x) is invertibleat all points, in other words, provided the mapping F is a C1 diffeomorphism. Howeverthis basis is in general neither orthogonal nor normed. In an orthonormal basis thecoefficients of any vector in this basis v = v1e1 + · · · + vded can be expressed in theeuclidian space Rd, i.e. endowed with a scalar product, by vi = v · ei. This does notwork anymore in a non-orthogonal basis. This is why in this case it is useful to use the

22

dual basis, which consists of elements of L(Rd), that is linear forms on Rd, which mapany vector to a real number. The dual basis is by definition the unique basis of the dualspace such that di(tj) = δi,j . Thanks to the scalar product, in a euclidian space, eachelement di of the dual basis can be uniquely associated to a vector ni of Rd by definingni as the unique vector verifying

ni · v = di(v) ∀v ∈ Rd.

Considering now the basis (t1, . . . , td), the dual basis n1, . . . ,nd ∈ Rd is defined byni · tj = δi,j , which means that ni is locally orthogonal to the hyperplane defined by(tj)j 6=i and normed by ni · ti = 1.

For an affine mapping defined by a simplex, as introduced above, ni is normal tothe face defined by all the vertices but ai. See Figure 1.6 for a drawing in R2. Anorthonormal basis is a special case: if the primal basis (t1, . . . , td) is orthonormal, thenwe have, following the definition of the dual basis, that ni = ti for i = 1, . . . , d.

Lemma 7 The matrix N(x) = [n1, . . . ,nd], whose columns are the elements of the dualbasis of (t1, . . . , td) verifies

N(x) = (DF(x))−>. (1.36)

Proof. Let us denote DF(x) = [t1, . . . , td] to highlight that the tangent vectors are thecolumns of the Jacobian matrix. Then, due to the definition of the dual basis, we noticethat

N>DF = ((ni · tj))1≤i,j≤d = ((δi,j))1≤i,j≤d = Id.

This shows that N> = (DF)−1, which is equivalent to the result we are looking for.

Proposition 1 In a three dimensional space (d = 3), the normal vectors are obtainedfrom the tangent vector through the following relation:

n1 =1

Jt2 × t3, n2 =

1

Jt3 × t1, n3 =

1

Jt1 × t2.

Proof. As n1 is by definition orthogonal to t2 and t3 is is colinear to t2 × t3 and canbe written n1 = αt2 × t3 for some scalar α. Now as t1 · n1 = 1 and t1 · t2 × t3 = J , wefind α = 1/J . The same reasoning applies to the two other components.

Remark 7 In the physics literature, the tangent basis is generally called covariant basisand the basis of the dual cotangent space is called contravariant basis.

1.7.3 H1 conforming Finite Elements

Let us build the conforming Finite Element space V 0h based on the reference element

(K, P , Σ) as a subspace of H1(Ω). For this we need a mesh denoted by T =⋃

1≤e≤NelKi

consisting of Nel disjoint conforming elements denoted each by Ki. On this mesh we canthen define V 0

h ⊂ H1(Ω) by

V 0h = vh ∈ C0(Ω) | vh|Ke

= ve F−1e ∈ P , 1 ≤ e ≤ Nel.

This means that the space V 0h is defined element by element and that the finite dimen-

sional space on each element is defined as composition of the reference element space P

23

and the local element mapping Fe. In the case when Fe is an affine mapping and P is apolynomial space, the mapped space is still a polynomial space of the same degree, butnot in the general case. Let us denote by N = dimV 0

h the dimension of the full Finite

Element approximation space, and N = dim P the dimension of the local approximationspace on each Element. If there are degrees of freedom shared between several elementswe have N < NelN , and in all cases N ≤ NelN .

The Finite Element space V 0h being defined, the next step is to restrict the variational

formulation of the problem being considered to functions in V 0h . For the Poisson problem

with Neumann boundary conditions (1.18) this leads to the following discrete variationalformulation:Find uh ∈ V 0

h such that∫Ω∇uh · ∇vh dx +

∫Ωuhvh dx =

∫Ωfvh dx +

∫∂Ωgvh dσ ∀vh ∈ V 0

h . (1.37)

This discrete variational formulation now this to be transformed to a linear systemfor practical implementation on a computer. To this aim, the integrals need to bedecomposed on single elements and then mapped back to the reference elements so thatthe basis functions of the reference Finite Element space P can be plugged in.

First splitting the integrals over the elements (1.37) becomes

Nel∑e=1

∫Ke

∇uh · ∇vh dx +

Nel∑e=1

∫Ke

uhvh dx =

Nel∑e=1

∫Ke

fvh dx +

Nbel∑e=1

∫Γe

gvh dσ ∀vh ∈ V 0h .

The last sum is on the element touching the boundary of Ω. The next step is to makethe change of variables x = Fe(x) in the integral over Ki. Then dx = J(x) dx, where asintroduced above, J = detDF . In the integrals not involving derivatives we then simplyget ∫

Ke

uhvh dx =

∫KueveJ dx,

∫Ke

fvh dx =

∫KfveJ dx.

The boundary integral is dealt with the same way, using the restriction of the elementmappings to the boundary and the appropriate Jacobian in the change of variables. Forthe integral involving the gradients, we need to make use of the chain rule (1.35)∫

Ke

∇uh · ∇vh dx =

∫K

(DF )−>∇ue · (DF )−>∇veJ dx.

Finally, we can express ue, ve ∈ P , on the basis of P corresponding to the degrees offreedom Σ. Let us denote by (ϕi)1≤i≤N this basis. Then

ue(x) =N∑j=1

ujϕj(x), ve(x) =N∑i=1

viϕi(x).

By plugging these expressions in the element integrals defining the variational formula-tion we obtain a linear system. First∫KueveJ dx =

∑1≤i,j≤N

ujvi

∫KϕiϕjJ dx = V >MeU, with Me = ((

∫KϕiϕjJ dx))1≤i,j≤N

24

where Me is called the element mass matrix, V = (v1, . . . , vN )>, U = (u1, . . . , uN )>. Inthe same way∫K

(DF )−>∇ue·(DF )−>∇veJ dx = V >AeU, with Ae =

∫K

(DF )−>∇ϕi·(DF )−>∇ϕjJ dx.

Ae is called the element stiffness matrix. Assuming for simplicity that the boundary termg vanishes, it remains to assemble the right-hand-side depending on f . The contributionon the element Ke is obtained by

∫KfveJ dx =

N∑i=1

vi

∫KfϕiJ dx = V >b, with b = ((

∫KfϕiJ dx))1≤i≤N .

From local to global. To go from the element matrices to the global matrices, the sumover the elements need to be performed and contributions of degrees of freedom sharedbetween different elements need to be added. For this a data structure associatinga global number for each degree of freedom from the local number in each elementneeds to be created. This can define by a function Ψ which to a couple, (element,local degree of freedom) (e, i) associates the global number of the degree of freedom I(1 ≤ I ≤ dim(V 0

h )) of the basis function ϕi of V 0h such that (ϕI)|Ke

= ϕi. Then theglobal matrix A is obtained by the algorithm:

A=0;for e = 1, Nel do

for i, j = 1, N do

A(Ψ(e, i),Ψ(e, j)) = A(Ψ(e, i),Ψ(e, j)) + Ae(i, j),

end

end

where Ae is the element stiffness matrix on Ke. The same procedure applies to allmatrices involved in the variational formulation and also to the right-hand-side.

1.7.4 H(curl,Ω) conforming Finite Elements

Let us consider here the 3D case in which the curl operator is naturally defined. The 2Dcase can be obtained as a special case. The H(curl,Ω) function space and its conformingapproximation consists of vectors. Hence on a change of basis, one needs to decide howthe components of the vectors are transformed. In order to have a natural map of thetangents to a face used in the definition of the degrees of freedom and that guaranteeconformity, the vectors defining the edges of the reference element needed to be mappedto either the covariant or the contravariant basis associated to the mapping. In theH(curl,Ω) case it turns out that the right basis is the contrariant basis (n1,n2,n3).

A vector v on the image element is defined from a vector v on the reference elementby the transformation

v(x) = (DF(x))−>v(x), with x = F(x). (1.38)

This transformation is called the covariant Piola transform. In the context of differentialforms it is the natural pullback transformation of a 1-form (in a 3D space).

25

As the columns of (DF (x))−> are (n1,n2,n3) as observed in (1.36), we see with thistransformation formula that

v(x) = v1(x)n1(x) + v2(x)n2(x) + v3(x)n3(x), (1.39)

and in particular that the canonical basis (e1, e2, e3) on the reference element is mappedinto (n1,n2,n3). We will also need the images of the outward normals to the faces ofthe reference elements by this mapping.

Lemma 8 The image of any outward normal ν of the reference element by the mapping(1.38) is λν, with λ = ‖ni‖ in case the face of the referece element is orthogonal to ei andfor the face opposite to the origin in the case of a tetrahedron λ = ‖n1 + n2 + n3)‖/

√3.

Proof. The unit outward normal is constant on each face of the reference element.For a tetrahedral reference element the unit normal to the face opposite to a1 is

ν1 = e1 = (1, 0, 0)>, to the face opposite to a2 is ν2 = e2 = (0, 1, 0)> and to the faceopposite to a3 is ν3 = e3 = (0, 0, 1)>. Hence νi is mapped into ni the correspondingvector of the contravariant basis. Because the outward unit vector on each face isorthogonal to the face, ni and ν are aligned and in the same direction. So the scalingfactor with respect to the unit normal τ , whose norm is one, is given by ‖ni‖. On theface opposite to a0, the outward unit normal is ν = 1√

3(e1 + e2 + e3), which is mapped

by the transformation to n = 1√3(n1 +n2 +n3). On the other hand, this n is orthogonal

to the face (a1,a2,a3) of the element as n · (t2− t1) = n · (t3− t1) = 0. Here the scalingfactor compared to the unit normal is ‖n‖.

In the case of a cubic reference element, all the normals are parallel to one of thevector ei and the first part of the tetrahedron case applies.

In order to get an expression of a variational formulation defined in H(curl,Ω), wenow need to compute the curl of a vector in this basis.

Proposition 2 We have the following properties:

1. For any vector field v, defining Dv the Jacobian matrix of v, we have

(∇× v)×w =((Dv)T −Dv

)w ∀w ∈ Rd.

2. The transformation rule of the Jacobian matrix under the transformation (1.38)reads

Dv(x) = S(x) + (DF(x))−>Dv(x)(DF(x))−1

where S is a symmetric matrix.

3. The transformation rule for the curl under the transformation (1.38) reads

∇× v(x) =1

J(x)DF(x)∇ × v(x). (1.40)

Proof. 1. Can be checked by comparing the expressions on the left and right handsides.

2. We can express(1.38) as

v(x) = (DF)>(x)v(F(x)),

26

so that

vi(x) =

3∑k=1

∂Fk(x)

∂xivk(F(x)).

Let us now compute the coefficient on line i and column j of Dv(x).

∂vi∂xj

=

3∑k=1

(∂2Fk(x)

∂xi∂xjvk(F(x))

)+

3∑k=1

(∂Fk(x)

∂xi

3∑l=1

∂Fl∂xj

∂vk∂xl

),

so that we recognise that

Dv = S + (DF)>(Dv(x))(DF),

where S =∑3

k=1

(∂2Fk(x)∂xi∂xj

vk(F(x)))

is obviously symmetric. Multiplying this expression

by (DF)−> on the left and by (DF)−1 on the right yields the result.3. Using 1. and 2. we get, for an arbitrary vector w ∈ R3 we find

(∇× v)×w = (DF)−>(

(Dv)> − Dv)

(DF)−1w = (DF)−>(

(∇ × v)× (DF)−1w).

(1.41)Not denoting by c1, c2, c3 the columns of the matrix (DF)−1 and taking w = e1 =(1, 0, 0)> so that (DF)−1w = c1, we notice that

(∇× v)× e1 =

0(∇× v)3

−(∇× v)2

=

c1 · (∇ × v)× c1

c2 · (∇ × v)× c1

c3 · (∇ × v)× c1

=

0

c1 × c2 · (∇ × v)

−c3 × c1 · (∇ × v)

.

And in the same way taking w = e2 the second vector of the canonical basis

(∇× v)× e2 =

−(∇× v)3

0(∇× v)1

=

c1 · (∇ × v)× c2

c2 · (∇ × v)× c2

c3 · (∇ × v)× c2

=

−c1 × c2 · (∇ × v)0

c2 × c3 · (∇ × v)

.

It now remains to ckeck that the inverse DF of (DF)−1 is defined by its three lines(c2 × c3)/J , (c3 × c1)/J , (c1 × c2)/J to realise that the three components of the curlindeed satisfy (1.40).

Now using transformation (1.38) one can check by direct computation that all termsappearing in the curl Green’s formula (1.8) including the normal component are exactlypreserved.

Proposition 3 We have the following properties:

(i) ∫K∇× u · v dx =

∫K∇ × u · v dx (1.42)

(ii) For any face fi on the boundary of K image of the face fi of the reference element∫fi

u× ν · v dσ =

∫fi

u× ν · v dσ (1.43)

27

We observe in particular, that the term involving the curl is completely independent ofthe metric and has the same expression under any mapping. This is true also for theboundary term.Proof. (i) Let us observe, as the columns of DF are the vectors t1, t2, t3 that due to(1.40)

∇× u(x) =1

J(x)(c1t1 + c2t2 + c3t3) ,

where c1 = ∂x2 u3 − ∂x3 u2, c2 = ∂x3 u1 − ∂x1 u3, c3 = ∂x1 u2 − ∂x2 u1. Then, making thechange of variables x = F(x), dx = J(x) dx and plugging this expression into (1.42),we find∫

K∇× u · v dx =

∫K

1

J(x)(c1t1 + c2t2 + c3t3) · (v1n1 + v2n2 + v3n3)J(x) dx

=

∫K

(c1v1 + c2v2 + c3v3) dx =

∫K∇ × u · v dx.

(ii) Lemma 8 gives us the image of the reference unit normal by the mapping. Let usfirst consider the case of a face of the reference element parallel to a coordinate plane.Let us express u and v in the contravariant basis using formula (1.39) and plug it intothe expression of the left-hand side of (1.43), considering the face orthogonal to n1, theothers being dealt with in the same way. Note also that the boundary is defined as aparametric surface for which the area measure is defined by dσ = ‖t2 × t3‖ dσ, wheredσ = dx2 dx3. We use also that by definition of n1 we have ‖t2 × t3‖ = J‖n1‖. Weintroduce the parameter s to indicate whether n1 and ν are in the same direction or not.∫

fi

u× ν · v dσ =

∫fi

(u1(x)n1(x) + u2(x)n2(x) + u3(x)n3(x))× (sn1/‖n1‖)

· (v1(x)n1(x) + v2(x)n2(x) + v3(x)n3(x))J‖n1‖ dx2 dx3

= s

∫fi

(u3v2 − u2v3)(n3 × n1 · n2)J dx2 dx3 = s

∫fi

(u3v2 − u2v3) dx2 dx3

=

∫fi

u× ν1 · v dσ

as n3 × n1 · n2 = 1/J

We can now assemble the matrices involved in a variational formulation posed onH(curl,Ω). Let us consider for example the variational formulationFind u ∈ H(curl,Ω) such that∫

Ωu · v dx +

∫Ω∇× u · ∇ × v dx =

∫Ω

f · v dx ∀v ∈ H(curl,Ω). (1.44)

Let us build the conforming Finite Element space V 1h ⊂ H(curl,Ω) based on the reference

element (K, P 1, Σ1). For this we need a mesh denoted by T =⋃

1≤e≤NelKi consisting of

Nel disjoint conforming elements denoted each by Ki. On this mesh we can then defineV 1h ⊂ H(curl,Ω) by

V 1h = vh ∈ H(curl,Ω) |vh|Ke

= (DF)−>ve F−1e ∈ P 1, 1 ≤ e ≤ Nel.

28

Now we can in the variational formulation (1.44) replace H(curl,Ω) by V 1h and u and v

by their discrete counterparts

uh(x) =

N1∑j=1

ujϕ1j (x), vh(x) =

N1∑i=1

viϕ1i (x),

where (ϕ1i )1≤i≤N1 stands for the basis of V 1

h associated to the Finite Element. As forthe H1(Ω) conforming case, plugging these expressions into the variational formulationleads to the matrix expression:

V >M1U + V >A1U = V >b,

where M1 = ((∫

Ωϕ1i · ϕ1

j dx))i,j is the mass matrix in V 1h , A1 = ((

∫Ω∇ × ϕ1

i · ∇ ×ϕ1j dx))i,j , and b = (

∫f · ϕ1

i )i. There now only remains to compute these integrals. Letus start with the mass matrix M1.∫

Ωϕ1i ·ϕ1

j dx =

Nel∑e=1

∫Ke

ϕ1i ·ϕ1

j dx.

Then on each element Ke we make the change of variables x = Fe(x), dx = Je(x) dx toget ∫

Ke

ϕ1i ·ϕ1

j dx =

∫K

(DFe)−>ϕ1

i · (DFe)−>ϕ1

jJe dx,

=

∫K

(ϕ1i,1n1 + ϕ1

i,2n2 + ϕ1i,3n3) · (ϕ1

j,1n1 + ϕ1j,2n2 + ϕ1

j,3n3)Je dx,

=

∫K

(ϕ1i )>Genϕ

1jJe dx,

where Gen = ((ni · nj))1≤i,j≤3 is the contravariant metric tensor. This is the elementmass matrix on the element Ke as for the H1(Ω), the full mass matrix is obtained bysumming up the contributions from the different elements.

The procedure is the same for the A1 matrix. Let us here simply compute theexpression of the element matrix, using the expression of the curl given in (1.40):∫

Ke

∇×ϕ1i · ∇ ×ϕ1

j dx =

∫K

1

Je(DFe)∇ × ϕ1

i ·1

Je(DFe)∇ × ϕ1

jJe dx,

=

∫K

(ci,1t1 + ci,2t2 + ci,3t3) · (cj,1t1 + cj,2t2 + cj,3t3)1

Jedx,

=

∫K

(∇ × ϕ1i )>Get ∇ × ϕ1

j

1

Jedx,

where we have denoted ∇×ϕi = (ci,1, ci,2, ci,3)> and Get = ((ti·tj))1≤i,j≤3 is the covariantmetric tensor.

1.7.5 H(div,Ω) conforming Finite Elements

The H(div,Ω) function space and its conforming approximation also consist of vectors.Hence on a change of basis, one needs to decide how the components of the vectors

29

are transformed. In order to have a natural map of the normal to a face used in thedefinition of the degrees of freedom and that guarantee conformity, the vectors definingthe edges of the reference element needed to be mapped to either the covariant or thecontravariant basis associated to the mapping. In the H(div,Ω) case it turns out that theright basis is the covariant basis (t1, t2, t3). From the expression of the transformationrule for the curl (1.40) we see that components are exactly conserved if in addition wescale the length by 1/J(x). This then leads to the following transformation rule

v(x) =1

J(x)DF(x)v(x), with x = F (x). (1.45)

This transformation is called the contravariant Piola transform. In the context of differ-ential forms it is the natural pullback transformation of a 2-form (in a 3D space).

In order to get an expression of a variational formulation defined in H(div,Ω), wenow need to compute the curl of a vector in this basis.

Proposition 4 We have the following properties

(i) The jacobian matrix of a vector field transforms in the following way

Dv = T +1

J(x)(DF(x))−1Dv(x)(DF(x)), (1.46)

where T is a matrix with vanishing trace.

(ii) The divergence transforms under the transformation rule (1.45)

∇ · v(x) =1

J(x)∇ · v(x). (1.47)

Proof. (i) The vector field v given by transform (1.45) can also be expressed on thecovariant basis by

v =1

J(v1t1 + v2t2 + v3t3).

Taking the dot product with ni yields vi = Jni · v, so that the derivative becomes

∂vi∂xj

=∂Jni∂xj

· v + Jni ·∂v

∂xj=∂Jni∂xj

· v + J3∑

k=1

3∑l=1

∂xi∂xk

∂vk∂xl

∂xl∂xj

,

as ni =(∂xi∂x1

, ∂xi∂x2, ∂xi∂x3

)>. Now denoting by T = ((∂Jni

∂xj· v))1≤i,j≤3, this implies that

Dv = T + J(DF)Dv(DF)−1.

Let us not verify that the trace of T vanishes. To this aim let us first recall that

Jn1 = t2 × t3, Jn2 = t3 × t1, Jn3 = t1 × t2.

Moreover from the expression of tj we find that ∂ti∂xj

=∂tj∂xi

, so that

tr T =

(∂t2

∂x1× t3 + t2 ×

∂t3

∂x1+∂t3

∂x2× t1 + t3 ×

∂t1

∂x2+∂t1

∂x3× t2 + t1 ×

∂t2

∂x3

)· v,

=

(∂t2

∂x1× t3 + t3 ×

∂t2

∂x1+ t2 ×

∂t3

∂x1+∂t3

∂x1× t2 +

∂t3

∂x2× t1 + t1 ×

∂t3

∂x2

)· v,

= 0.

30

We get the desired result by dividing by j, multiplying by (DF)−1 on the left andby (DF). Indeed the matrix T obtained from T in this process is similar to T up tothe scalar scaling factor J and as similar matrices have the same trace it follows thattrT = 0.

(ii) Relation (1.47) is obtained by taking the trace of (1.46) and using again thatsimilar matrices have the same trace and that trT = 0

Now using transformation (1.45) one can check by direct computation that all termsappearing in the divergence Green’s formula (1.7) including the normal component areexactly preserved.

Proposition 5 We have the following properties:

(i) ∫K

u · ∇ϕdx =

∫K

u · ∇ϕdx (1.48)

(ii) ∫K∇ · uϕdx =

∫K∇ · u ϕdx (1.49)

(iii) For any face fi on the boundary of K image of the face fi of the reference element∫fi

u · ν ϕdσ =

∫fi

u · ν ϕdσ (1.50)

We observe in particular, that all these terms are completely independent of the metricand have the same expression under any mapping.Proof. (i) Let us as usual perform the change of variables x = F(x) dx = J(x) dx,using the transformation rule (1.45) for u in the integral∫

Ku · ∇ϕdx =

∫K

1

J(DF)u · (DF)−>∇ϕJ dx =

∫K

u · ∇ϕdx.

(ii) With the same change of variable and transformation rule for u, using (1.47) wefind ∫

K∇ · uϕdx =

∫K

1

J∇ · u ϕJ dx =

∫K∇ · u ϕdx

(iii) Here the face fi is defined as a parametrized surface, the parametrization beinggiven by one of the faces of the reference element. Let us do the computation for theface on the (x1, x2) plane for with the normal vector is ν = −e3. The parametrizationis then defined by

(x1, x2) 7→ F(x1, x2, 0)

and the measure is

dσ = ‖t1 × t2‖ dx1 dx2 = J‖n3‖ dx1 dx2.

31

Moreover the outward unit normal vector is related to the contravariant vector n3,which is by definition orthogonal to the face, by ν = −n3/‖n3‖. Finally, applying thetransformation rule (1.45) for u we get∫

fi

u · ν ϕdσ = −∫fi

1

J(DF)u · n3

‖n3‖ϕJ‖n3‖ dx1 dx2

= −∫fi

(u1t1 + u2t2 + u3t3) · n3ϕdx1 dx2 = −∫fi

u3ϕdx1 dx2 =

∫fi

u · ν ϕdx1 dx2

To conclude, we assemble the matrices involved in a variational formulation posedon H(div,Ω). Let us consider for example the variational formulationFind u ∈ H(div,Ω) such that∫

Ωu · v dx +

∫Ω∇ · u · ∇ · v dx =

∫Ω

f · v dx ∀v ∈ H(div,Ω). (1.51)

We need to build the conforming Finite Element space V 2h ⊂ H(div,Ω) based on the

H(div,Ω) reference element (K, P , Σ). For this we consider as previously a mesh denotedby T =

⋃1≤e≤Nel

Ki consisting of Nel disjoint conforming elements denoted each by Ki.

On this mesh we can then define V 2h ⊂ H(div,Ω) by

V 2h = vh ∈ H(div,Ω) |vh|Ke

=1

J(DF)ve F−1

e ∈ P , 1 ≤ e ≤ Nel.

Now we can in the variational formulation (1.44) replace H(div,Ω) by V 2h and u and v

by their discrete counterparts

uh(x) =

N2∑j=1

ujϕ2j (x), vh(x) =

N2∑i=1

viϕ2i (x),

where (ϕ2i )1≤i≤N2 stands for the basis of V 2

h associated to the Finite Element. As for theH1(Ω) and H(curl,Ω) conforming case, plugging these expressions into the variationalformulation leads to the matrix expression:

V >M2U + V >A2U = V >b,

where M2 = ((∫

Ωϕ2i ·ϕ2

j dx))i,j is the mass matrix in V 2h , A2 = ((

∫Ω∇·ϕ2

i ∇·ϕ2j dx))i,j ,

and b = (∫

f · ϕ2i )i. There now only remains to compute these integrals. Let us start

with the mass matrix M2 ∫Ωϕ2i ·ϕ2

j dx =

Nel∑e=1

∫Ke

ϕ2i ·ϕ2

j dx.

Then on each element Ke we make the change of variables x = Fe(x), dx = Je(x) dx,using the contravariant Piola transform (1.45) for the vectors to get∫

Ke

ϕ2i ·ϕ2

j dx =

∫K

1

Je(DFe)ϕ

2i ·

1

Je(DFe)ϕ

2jJe dx,

=

∫K

1

Je(ϕ2

i,1t1 + ϕ2i,2t2 + ϕ2

i,3t3) · (ϕ2j,1t1 + ϕ2

j,2t2 + ϕ2j,3t3) dx,

=

∫K

(ϕ2i )>Gtϕ

2j

1

Jedx,

32

where Gt = ((ti · tj))1≤i,j≤3j is the covariant metric tensor. This is the element massmatrix on the element Ke as for the H1(Ω), the full mass matrix is obtained by summingup the contributions from the different elements.

The procedure is the same for the A2 matrix. Let us here compute the expression ofthe element matrix, using the expression of the divergence given in (1.47):∫

Ke

∇ ·ϕ2i ∇ ·ϕ2

j dx =

∫K

1

Je∇ · ϕ2

i

1

Je∇ · ϕ2

jJe dx,

=

∫K

1

Je∇ · ϕ2

i ∇ · ϕ2j dx.

Note that here the divergence is a scalar. There is no metric tensor in the matrix. Onlythe inverse Jacobian is present because of the mapping.

1.8 Convergence of the Finite Element method

The Ritz-Galerkin method consists in finding an approximate solution uh in a finitedimensional subspace of V . For convergence studies one needs to consider a sequence ofsubspaces of V of larger and larger dimension so that they get closer to V . One thendefines a sequence of problems parametrised by h that read:Find uh ∈ Vh such that

a(uh, vh) = l(vh) ∀vh ∈ Vh, (1.52)

where Vh ⊂ V is a vector space of dimension N . Let (ϕ1, . . . , ϕN ) a basis of Vh. Anelement uh ∈ Vh can then be expanded as uh(x) =

∑Nj=1 ujϕj(x). Taking vh = ϕi the

equation (1.52) becomes using the linearity

N∑j=1

uja(ϕj , ϕi) = l(ϕi).

Then using the symmetry of a, we notice that the discrete variational formulation(1.52)is equivalent to the linear system

AUh = L, (1.53)

where A = (a(ϕi, ϕj))1≤i,j≤N , L is the column vector with components l(ϕi) and Uis the column vector with the unknowns ui that are the coefficients of uh in the basis(ϕ1, . . . , ϕN ).

Theorem 2 Assume that a is a symmetric continuous and coercive bilinear form ona Hilbert space V and l a continuous linear form on V . Then the system (1.53) isequivalent to the discrete variational form (1.52) and admits a unique solution

Proof. For vh ∈ Vh, we denote by V the vector of its components in the basis(ϕ1, . . . , ϕN ).

• Thanks to the bilinearity of a and the linearity of l the relation (1.52) can bewritten equivalently

tV AUh = tV L ∀V ∈ RN , (1.54)

which means that the vector AUh−L ∈ RN is orthogonal to all the vectors of RN ,and so is the zero vector. Conversely it is clear that (1.53) implies (1.54) and so(1.52).

33

• Let vh ∈ Vh. Then, as a is coercive, there exists α > 0 such that

tV AV = a(vh, vh) ≥ α‖vh‖2 ≥ 0,

and tV AV = 0 = a(vh, vh) ⇒ ‖vh‖ = 0, which implies that vh = 0 and so V = 0.So A is symmetric, positive definite and therefore invertible.

After making sure the approximate solution exists for some given space Vh, oneneeds to make sure the approximation converges towards the exact solution. This resultsfrom two properties: 1) The Galerkin orthogonality, which comes from the conformingGakerkin approximation, 2) The approximability property, which makes sure that forany v ∈ V there exist vh in some finite dimensional space of the family which is closeenough to v.

Lemma 9 (Cea) Let u ∈ V the solution of (1.19) and uh ∈ Vh the solution of (1.52),with Vh ⊂ V . Then

‖u− uh‖ ≤ C infvh∈Vh

‖u− vh‖.

Proof. We have

a(u, v) = l(v) ∀v ∈ V,a(uh, vh) = l(vh) ∀vh ∈ Vh,

as Vh ⊂ V , we can take v = vh in the first equality and take the difference which yields

a(u− uh, vh) = 0 ∀vh ∈ Vh.

It results that a(u − uh, u − uh) = a(u − uh, u − vh + vh − uh) = a(u − uh, u − vh), asvh − uh ∈ Vh and so a(u− uh, vh − uh) = 0. Then there exists α > 0 and β such that

α‖u− uh‖2 ≤ a(u− uh, u− uh) as a is coercive,

≤ a(u− uh, u− vh) ∀vh ∈ Vh,≤ β‖u− uh‖‖u− vh‖ as a is continuous.

Whence ‖u − uh‖ ≤ βα‖u − vh‖ for all vh ∈ Vh. We get the desired results taking the

infimum in Vh.

For the global error estimates, we make the following hypotheses on the triangulationTh, where we denote by hK the diameter of the circumscribed circle and ρK the diameterof the inscribed circle of triangle K:

(H1) We assume that the family of triangulations is regular in the following sense:

(i) There existes a constant σ such that

∀K ∈ ∪hThhKρK≤ σ.

(ii) The quantity h = maxK∈h

hK tend to 0.

34

(H2) All finite elements (K,P,Σ), K ∈ ∪hTh are affine equivalent to a unique referenceelement (K, P , Σ).

(H3) All finite elements (K,P,Σ), K ∈ ∪hTh are of class C0.

Theorem 3 We assume the hypotheses (H1), (H2) and (H3) are verified. Moreover weassume that there exists an integer k ≥ 1 such that

Pk ⊂ P ⊂ H1(K),

Hk+1(K) ⊂ C0(K) (true if k + 1 >d

2, K ⊂ Rd).

Then there exists a constant C independent of h such that for any function v ∈ Hk+1(Ω)we have

‖v − πhv‖0 ≤ Chk+1|v|k+1,Ω, |v − πhv|1 ≤ Chk|v|k+1,Ω,

where πh is the finite element interpolation operator of the finite element (K,P,Σ) definedby

πhv =N∑i=1

σi(v) pi,

where σi ∈ Σ and pi the corresponding basis function of P .

We consider a variational problem posed in V ⊂ H1(Ω).

Theorem 4 We assume that (H1), (H2) and (H3) are verified. Moreover we assumethat there exists an integer k ≥ 1 such that k + 1 > d

2 with Pk(K) ⊂ P ⊂ H1(K) andthat the exact solution of the variational problem is in Hk+1(Ω), then

‖u− uh‖1,Ω ≤ Chk|u|k+1,Ω,

where uh ∈ Vh is the discrete solution.

Proof. We have because of the polynomial approximation theorem

‖u− πhu‖1,Ω ≤ Chk|u|k+1,Ω.

On the other hand Cea’s lemma gives us

‖u− uh‖1,Ω ≤ C infvh∈Vh

‖u− vh‖1,Ω ≤ C‖u− πhu‖1,Ω.

The result follows.

35

Chapter 2

Non conforming and mixed FiniteElement methods

2.1 Variational crimes

We introduce here a framework that can be used when the hypothesis of the conformingfinite element methods breakdown, either because the discretisation space Vh is notincluded in the space V where the variational formulation to be approximated is defined,or when the discrete bilinear form and the discrete linear form are not exactly the samethe continuous ones.

We consider the variational formulation: Find u ∈ V such that

a(u, v) = l(v) ∀v ∈ V. (2.1)

In some cases it can be convenient to relax the constraints of the approximationspace being a subspace of V or to slightly modify the bilinear and linear form, using forexample quadrature rules to compute the integrals or adding penalty terms. Let us thenconsider a mesh dependent family of Hilbert spaces Hh equipped with a mesh dependentnorm ‖·‖h such that V ⊂ Hh and also Vh ⊂ Hh for all h. One could choose Hh = V +Vh,but often some additional regularity of the exact solution is needed. Then one can chooseHh = V ∩Hm(Ω) + Vh, where Hm is a Sobolev space of the needed regularity. We thendefine the bilinear form ah on Hh as an approximation of the bilinear form a on V , andlh a linear form on Hh approximating l the linear form on V . We assume that ah andlh are continuous and that ah is uniformly coercive on Hh, meaning that the coercivityconstant does not depend on h, even though the norm itself can depend on h.

As a typical example, given a subdivision of the domain Ω into elements Ω = ∪Ke

we can define

Hh = v ∈ L2(Ω) | v|Ke∈ H1(Ke), with ‖v‖2h =

∑e

∫Ke

|∇v(x)|2 dx.

This is a broken H1 space. Its elements are locally H1 but not globally. ObviouslyV = H1(Ω) ⊂ Hh. For a(u, v) =

∫Ω∇u(x) · ∇v(x) dx and for a given f ∈ L2(Ω),

l(v) =∫

Ω f(x)v(x) dx, we define the approximations on Hh by

ah(u, v) =∑e

∫Ke

∇u(x) · ∇v(x) dx.

36

On the other hand l is well defined on Hh so that we can take lh = l. Obviously foru, v ∈ V , we have ah(u, v) = a(u, v) and lh(v) = l(v).

In this setting, we consider a discrete variational formulation of the following form:Find uh ∈ Vh such that

ah(uh, vh) = lh(vh) ∀vh ∈ Vh. (2.2)

The error estimation of such an approximate variational formulation depends on thefollowing lemma, known as Strang’s second lemma [9], which replaces Cea’s lemma:

Lemma 10 (Strang) Assume u ∈ V is the solution of (2.1) and uh ∈ Vh its approxi-mation, solution of (2.2), then

‖u− uh‖h ≤ C(

infvh∈Vh

‖u− vh‖h + supvh∈Vh

|ah(u, vh)− lh(vh)|‖vh‖h

). (2.3)

Note that as uh verifies ah(uh, vh) = lh(vh), we also could write ah(u, vh) − lh(vh) =ah(u− uh, vh).

Remark 8 The difference between Cea’s Lemma that is used for the conforming ap-proximation and the above Strang Lemma used for non conforming approximation is thepresence of the second term on the right-hand-side, which is a consistency term, mea-suring how accurately the continuous solution verifies the discrete equation. This termvanishes when Vh ⊂ V and ah = a because of the Galerkin orthogonality.

Proof. By bilinearity of ah, we have

ah(vh−uh, vh−uh) = ah(vh−u+u−uh, vh−uh) = ah(vh−u, vh−uh)+ah(u−uh, vh−uh)

and also

ah(u− uh, vh − uh) = ah(u, vh − uh)− ah(uh, vh − uh),

= ah(u, vh − uh)− lh(vh − uh),

as uh verifies (2.2).Using the uniform coercivity and continuity of ah in Hh, there exists α > 0 and β

such that for any vh ∈ Vh

α‖vh − uh‖2h ≤ ah(vh − uh, vh − uh) ≤ ah(vh − u, vh − uh) + ah(u− uh, vh − uh)

≤ ah(vh − u, vh − uh) + ah(u, vh − uh)− lh(vh − uh),

≤ β‖vh − u‖h‖vh − uh‖h +|ah(u, vh − uh)− lh(vh − uh)|

‖vh − uh‖h‖vh − uh‖h

as ah is continuous. Whence

‖vh − uh‖h ≤β

α‖u− vh‖h +

1

αsupvh∈Vh

|ah(u, vh)− lh(vh)|‖vh‖h

for all vh ∈ Vh. This combined with the triangle inequality yields

‖u−uh‖h ≤ ‖u− vh‖h + ‖vh−uh‖h ≤(

1 +β

α

)‖u− vh‖h +

1

αsupvh∈Vh

|ah(u, vh)− lh(vh)|‖vh‖h

.

We then get the desired results taking the infimum in Vh.

37

2.2 Non conforming Pk finite elements on triangles

Let us consider the Poisson equation with Dirichlet boundary conditions given f ∈ L2(Ω),for which the variational formulation reads: Find u ∈ H1

0 (Ω) such that∫Ω∇u · ∇v dx =

∫Ωfv dx ∀v ∈ H1

0 (Ω). (2.4)

Standard conforming Pk finite elements on triangles have k+ 1 points on each edge,which are shared between elements to enforce continuity. Let us now consider the case,when only k points are put on each side. The corresponding non conforming P1 and P3

elements are displayed on figure 2.1. They are also known as Crouzeix-Raviart FiniteElements. This is not enough to get continuity across the element and thus conformity,

76 2 Function Spaces and Finite Element Approximations

a b cFig. 2.8 Continuity pointsfor nonconforming elements.(a) k D 1. (b) k D 2.(c) k D 3

Example 2.2.5 (Nonconforming elements on the triangle). Let us consider a parti-tion of ˝ into straight-sided triangles and an approximation

L1;NCk WD fvh j vh 2 L2.˝/; vhjK 2 Pk.K/; 8K 2 Th;X

K

Z

@K

vh! ds D 0; 8! 2 Rk.@K/g: (2.2.38)

It is then easy to see that the patch test implies that the functions of L1;NCk shouldbe continuous at the k Gauss-Legendre points on every side of the triangles (seeFig. 2.8).

For k odd, those points, with internal points for k! 3, can be used as degrees offreedom, but for k even it is not so and the values at these points are not independent.We shall come back to this point in Sect. 7.1.4, in particular in Example 7.1.4.The trouble is that the six Gaussian points of the kD 2 case lie on an ellipsecentered at the barycentre. This ellipse is easily expressed, in terms of barycentriccoordinates by defining the nonconforming bubble, an ellipsoid taking value one atthe barycentre and vanishing at the Gaussian points of the edges

bNC.K/ D 1 " 4

3."21 C "22 C "23/: (2.2.39)

It was however shown in [209] that this element can nevertheless be used in avery simple way. This was extended to the three-dimensional case in [200]. In thiscase the nonconforming bubble becomes

bNC.K/ D 1 " 2."21 C "22 C "23 C "24/: (2.2.40)

It must be noted that, in three-dimensional nonconforming elements, the patch testimplies, in general, no point continuity. However, there exists a six-point quadratureformula on the triangle, exact for polynomials of degree 3, of which all points lie onthe ellipse defined by (2.2.40) and this ensures the patch-test. ut

Nonconforming approximations of H2.˝/, [147, 148], have been widely usedbecause of the difficulty to obtain conforming elements. We refer the reader to [275]where several examples are given. We shall however use in Chaps. 8 and 10 thefollowing nonconforming approximation of H2.˝/.

Example 2.2.6 (Morley’s triangle). In plate problems, where an approximationof H2.˝/ is needed, an important nonconforming element is Morley’s triangle(Fig. 2.9).

76 2 Function Spaces and Finite Element Approximations

a b cFig. 2.8 Continuity pointsfor nonconforming elements.(a) k D 1. (b) k D 2.(c) k D 3

Example 2.2.5 (Nonconforming elements on the triangle). Let us consider a parti-tion of ˝ into straight-sided triangles and an approximation

L1;NCk WD fvh j vh 2 L2.˝/; vhjK 2 Pk.K/; 8K 2 Th;X

K

Z

@K

vh! ds D 0; 8! 2 Rk.@K/g: (2.2.38)

It is then easy to see that the patch test implies that the functions of L1;NCk shouldbe continuous at the k Gauss-Legendre points on every side of the triangles (seeFig. 2.8).

For k odd, those points, with internal points for k! 3, can be used as degrees offreedom, but for k even it is not so and the values at these points are not independent.We shall come back to this point in Sect. 7.1.4, in particular in Example 7.1.4.The trouble is that the six Gaussian points of the kD 2 case lie on an ellipsecentered at the barycentre. This ellipse is easily expressed, in terms of barycentriccoordinates by defining the nonconforming bubble, an ellipsoid taking value one atthe barycentre and vanishing at the Gaussian points of the edges

bNC.K/ D 1 " 4

3."21 C "22 C "23/: (2.2.39)

It was however shown in [209] that this element can nevertheless be used in avery simple way. This was extended to the three-dimensional case in [200]. In thiscase the nonconforming bubble becomes

bNC.K/ D 1 " 2."21 C "22 C "23 C "24/: (2.2.40)

It must be noted that, in three-dimensional nonconforming elements, the patch testimplies, in general, no point continuity. However, there exists a six-point quadratureformula on the triangle, exact for polynomials of degree 3, of which all points lie onthe ellipse defined by (2.2.40) and this ensures the patch-test. ut

Nonconforming approximations of H2.˝/, [147, 148], have been widely usedbecause of the difficulty to obtain conforming elements. We refer the reader to [275]where several examples are given. We shall however use in Chaps. 8 and 10 thefollowing nonconforming approximation of H2.˝/.

Example 2.2.6 (Morley’s triangle). In plate problems, where an approximationof H2.˝/ is needed, an important nonconforming element is Morley’s triangle(Fig. 2.9).

Figure 2.1: Non conforming P1 (left) and P3 (right) Finite Elements.

but is it still possible to define an optimal approximation? This is the case if the errorcoming from the second term in the second Strang Lemma is of the same order as thepolynomial approximation error with Pk elements, i.e. ‖u− uh‖h ≤ Chk. This can beobtained by putting the degrees of freedom on each edge at the Gauss points. Notehowever that this works only for k odd, as for k even the degrees of freedom obtainedin this way are not linearly independent.

Consider the Lagrange Finite Element (Ke, Pe,Σe), and (ai)i=1,N the set of all degreesof freedom on all elements. As usual these degrees of freedom are shared by elementshaving an edge in common, but in the non-conforming case we are considering this isnot enough to ensure continuity. The approximation space is then naturally defined asfollows:

Vh = vh ∈ L2(Ω) | vh|Ke∈ Pk, vh|Ke1

(ai) = vh|Ke2(ai) if ai ∈ Ke1 ∩Ke2 ,

vh(ai) = 0 if ai on ∂Ω.

As Vh 6⊂ H10 (Ω), we cannot directly use the variational formulation(2.5). Instead we

use its ”broken” version: Find uh ∈ Vh such that∑e

∫Ke

∇uh · ∇vh dx =

∫Ωfvh dx ∀vh ∈ Vh. (2.5)

We then are in the abstract framework defined above with

ah(uh, vh) =∑e

∫Ke

∇uh · ∇vh dx, lh(vh) = l(vh) =

∫Ωfvh dx.

38

Let us now express the consistency error in this non-conforming approximation. Letu ∈ H1

0 (Ω) ∩H2(Ω) be the exact solution of (2.5) and vh ∈ Vh, then

ah(u, vh)− lh(vh) =∑e

∫Ke

∇u · ∇vh dx−∫

Ωfvh dx (2.6)

= −∑e

[∫Ke

(∆u+ f) · vh dx−∫∂Ke

∂u

∂nvh dσ

](2.7)

=∑e

∫∂Ke

∂u

∂nvh dσ (2.8)

as u verifies −∆u = f .For two adjacent elements Ke1 and Ke2 let us denote by Γs = Ke1 ∩Ke2 their shared

edge. Let vs be the interpolation of polynomial of degree k − 1 of vh|Ke1and vh|Ke2

atthe degrees of freedom on the edges of the two elements. As the degrees of freedom areshared by elements sharing the same edge, vs is the same on the two elements Ke1 andKe2 . Then as the unit outward normal for these two elements has opposite signs on Γs,it follows that ∫

Γs

∂u

∂ne1vs dσ +

∫Γs

∂u

∂ne2vs dσ = 0.

On the other hand if Γs corresponds to a boundary of Ω the degrees of freedom thereare set to zero, so that vs = 0 on such a boundary. Hence adding the contributions overthe whole mesh

ah(u, vh)− lh(vh) =∑e

∫∂Ke

∂u

∂n(vh − vs) dσ.

Let us now introduce πhu, the Finite Element interpolant of u, which is by definition apolynomial of degree k on each element. Then ∂πhu

∂n is a polynomial of degree k − 1 onthe edges of the mesh. So if, the degrees of freedom are chosen to be Gauss points onthe edges, vh− vs on each edge is a polynomial of degree k having its zeros at the Gausspoints. Hence it is, up to a multiplicative constant, the Legendre polynomial of degreek, which is orthogonal to all polynomials of degree k − 1. Thus for all edges∫

Γs

∂πhu

∂n(vh − vs) dσ = 0.

Adding the contributions over the whole mesh it follows that

ah(u, vh)− lh(vh) =∑e

∫∂Ke

(∂u

∂n− ∂πhu

∂n

)(vh − vs) dσ

≤ C∑e

‖∇(u− πhu) · n‖L2(∂Ke)‖vh − vs‖∂Ke),

using a Cauchy-Schwartz inequality. Then we can use the polynomial approximationproperties on mesh faces as proved in [5] (Lemma 1.59, p. 32), assuming u ∈ Hk+1(Ω)with k ≥ 1

‖∇(u−πhu)·n‖L2(∂Ke) ≤ Chk−1/2|u|k+1,Ke , ‖vh−vs‖∂Ke) ≤ Chk−1/2|vh|k+1,Ke , (2.9)

πhu being a polynomial of degree k approximating u and vs a polynomial of degree k−1approximating vh. Then it follows

|ah(u, vh)− lh(vh)|‖vh‖h

≤ C∑e

hk−12 |u|k+1,Keh

k− 12 ≤ Chk|u|k+1,Ω,

39

as k ≥ 1.

2.3 Weak enforcement of Dirichlet boundary conditions

Another useful application of non conforming finite element is the weak enforcement ofDirichlet conditions following an idea of Nitsche [8]. We consider here a standard FiniteElement conforming in H1 (for the Poisson problem) but not in H1

0 .Let us explain the method for the Poisson problem with Dirichlet boundary con-

ditions. Here because the vector space where the solution lives is H1(Ω) anyway, asfor natural boundary conditions, non homogeneous boundary conditions are as easy toenforce as homogeneous boundary conditions. Our problem then reads

−∆u = f in Ω, u = g on ∂Ω.

In order to get a consistent variational formulation, as usual in the derivation of theFinite Element method we multiply the first equation by a test function v and integrateon the whole domain

−∫

Ω∆uv dx =

∫Ωfv dx

=

∫Ω∇u · ∇v dx−

∫∂Ω

∂u

∂nv dσ

In the standard conforming Finite Element method the boundary integral vanishes bytaking test functions vanishing on the boundary. Instead here we keep it, moreover sothat the problem remains symmetric, we add

∫∂Ω u

∂v∂n dσ, which is known as u the exact

solution is equal to a known function g on the boundary. Then the exact solution of ourproblem satisfies the following relation∫

Ω∇u · ∇v dx−

∫∂Ω

∂u

∂nv dσ −

∫∂Ωu∂v

∂ndσ =

∫Ωfv dx−

∫∂Ωg∂v

∂ndσ ∀v ∈ H1(Ω).

(2.10)The left-hand-side defines a symmetric bilinear form, but it is not coercive and thus doesnot lead to a well posed variational problem.

However, we can use this relation to define a consistent discrete variational problem.In order to make it coercive, we need to add an additional term µh

∫∂Ω uhvh dσ, called

penalty term which will be grid dependent, that vanishes for the exact solution and µhwill be chosen such that the resulting bilinear form is coercive in some norm. For thiswe define the standard Lagrange approximation space for H1(Ω)

Vh = vh ∈ C0(Ω) | vh|Ke∈ Pk(Ke),

and then the discrete variational problem reads: Find uh ∈ Vh such that∫Ω∇uh · ∇vh dx + µh

∫∂Ωuhvh dσ −

∫∂Ω

∂uh∂n

vh dσ −∫∂Ωuh∂vh∂n

dσ

=

∫Ωfvh dx−

∫∂Ωg∂vh∂n

dσ + µh

∫∂Ωgvh dσ ∀vh ∈ Vh.

40

This corresponds to an abstract mesh depend variational problem of the form:Find uh ∈ Vh such that ah(uh, vh) = lh(vh), ∀vh ∈ Vh, with

ah(uh, vh) =

∫Ω∇uh · ∇vh dx + µh

∫∂Ωuhvh dσ −

∫∂Ω

∂uh∂n

vh dσ −∫∂Ωuh∂vh∂n

dσ

lh(vh) =

∫Ωfvh dx−

∫∂Ωg∂vh∂n

dσ + µh

∫∂Ωgvh dσ.

Because Vh ⊂ H1(Ω), we can take in equation (2.10) u to be the exact solutionand v = vh ∈ Vh. Then as in addition the exact solution u is equal to g on theboundary, the consistency error appearing in the second Strang Lemma (Lemma 10)vanishes completely:

ah(u, vh)− lh(vh) = 0 ∀vh ∈ Vh.We can now prove a lemma giving a condition on the penalisation parameter µh such

that the bilinear form ah is coercive in the mesh depend norm

‖v‖2h = ‖∇v‖20,Ω +1

h‖v‖20,∂Ω ∀v ∈ H1(Ω).

Lemma 11 Assume that there exists C > 0 such that ‖∇v‖0,∂Ω ≤ Ch−1/2‖∇v‖0,Ω thenthe bilinear form ah is uniformly coercive in the mesh dependent norm ‖ · ‖h if µh = α/hwith α > 2C2.

Proof. Let us first observe that for any v ∈ H1(Ω)

ah(v, v) = ‖∇v‖20,Ω + µh‖v‖20,∂Ω − 2

∫∂Ω

∂v

∂nv dσ = ‖∇v‖20,Ω +

α

h‖v‖20,∂Ω − 2

∫∂Ω

∂v

∂nv dσ.

Then, using the Cauchy-Schwarz inequality, the fact that the components of the normalvector are less than one, and the assumption of the Lemma

2

∫∂Ω

∂v

∂nv dσ ≤ 2‖∇v‖0,∂Ω‖v‖0,∂Ω ≤ 2Ch−1/2‖∇v‖0,Ω‖v‖0,∂Ω ≤

1

2‖∇v‖20,Ω +

2C2

h‖v‖20,∂Ω

using also for the last inequality the property ab ≤ a2/2+ b2/2 for any real numbers a, b.Plugging the opposite inequality into the expression of ah(v, v) we get

ah(v, v) ≥ 1

2‖∇v‖20,Ω +

α− 2C2

h‖v‖20,∂Ω ≥ min(

1

2, α− 2C2)(‖∇v‖20,Ω +

1

h‖v‖20,∂Ω).

This yields the uniform coercivity of ah in the mesh dependent norm provided α > 2C2.

Remark 9 In practical applications, it is best to choose µh not too much larger than theminimal value needed for coercivity. This can be achieved for a given mesh, by solvingthe generalized eigenvalue problem∫

Ω∇uh · ∇vh dx−

∫∂Ω

∂uh∂n

vh dσ −∫∂Ωuh∂vh∂n

dσ = λh

∫∂Ωuhvh dσ ∀vh ∈ Vh

which can be written in matrix form, once the Finite Element matrices are assembledAU = λhBU . The matrices being symmetric, all eigenvalues are real, and the smallestone denoted by λh,0 should be negative because of the lack of coercivity. In order to getcoercivity then one needs to choose µh > |λh,0|. If one chooses µh = α|λh,0| with αa coefficient independent of h typically between 1 and 2, one gets the optimal order ofconvergence.

41

2.4 Discontinuous Galerkin methods

The Nitsche method to weakly enforce Dirichlet boundary conditions also inspired re-searchers for getting rid of the conformity at element interfaces using the idea of writinga consistent approximation involving the interface terms, then symmetrizing and penal-izing to get a symmetric and coercive mesh dependent form. This leads to the so-calledSIP (symmetric interior penalty) Discontinuous Galerkin (DG) method that was intro-duced, adapting previous works, and analyzed by Arnold [1]. See also [2] for a historicaland more general discussion on Discontinuous Galerkin methods. A mathematical text-book presentation of the discontinuous Galerkin method can be found for example in[5].

Let us explain the method on the Poisson equation with homogeneous Dirichletboundary conditions.

−∆u = f in Ω, u = 0 on ∂Ω.

Instead of multiplying by a smooth function over the whole domain as in the classicalfinite element method, we here introduce the mesh first Th = ∪eKe. Let vh ∈ L2(Ω)such that vh ∈ H1(Ke). In practice vh will be polynomial or in a local Finite Elementspace. Let us denote by ne the outward unit normal for element Ke and denoting by(Γs)s the edges of the grid, Γs = Ke1 ∩ Ke2 , by ns a unit normal to the edge Γs (thesign being arbitrarily chosen so that ns = ne1). As usual in Discontinuous Galerkinformulations we denote by v = (v|Ke1

+ v|Ke2)/2 the average of v on the edge Γs

and [[v]] = v|Ke1− v|Ke2

the jump of v on the edge Γs. For edges on the boundary ofthe domain, we assume that the outside value is zero so that v = [[v]] = v. Then,we multiply by a smooth function vh|Ke

on one element, integrate over this element andsum over all the elements∑

e

∫Ke

(−∆u)vh dx =∑e

[∫Ke

∇u · ∇vh dx−∫∂Ke

∂u

∂nevh dσ

]=∑e

∫Ke

∇u · ∇vh dx−∑s

∫Γs

∂u

∂ns[[vh]] dσ

=∑e

∫Ke

∇u · ∇vh dx−∑s

∫Γs

∂u

∂ns

[[vh]] dσ (2.11)

as the exact solution, which is in H2, has a continuous normal derivative across theedges, this is equal to its average.

This formula can be used to get a consistent approximation. As for the Nitschemethod we now symmetrize and penalize the interface jumps. We then get the meshdependent bilinear form

ah(uh, vh) =∑e

∫Ke

(∇u·∇vh) dx−∑s

∫Γs

∂uh∂ns

[[vh]] dσ−

∑s

∫Γs

[[uh]]

∂vh∂ns

dσ

+ µh

∫Γs

[[uh]] [[vh]] dσ. (2.12)

Then, defining the linear form

lh(vh) =

∫Ωfvh dx =

∑e

∫Ke

fvh dx

42

and the discontinuous polynomial space

Vh = vh ∈ L2(Ω) | vh|Ke∈ Pk(Ke),

the discrete variational formulation for our problem reads: Find uh ∈ Vh such that

ah(uh, vh) = lh(vh) ∀vh ∈ Vh. (2.13)

As the exact solution u is continuous, the jump of u at the element interfaces vanishes,i.e. [[u]] = 0, hence the two last terms in (2.12), which are respectively the symmetryterm and the penalty term vanish for uh = u. Hence using the calculation (2.11) we canverify that the consistency error in the DG-SIP method (2.13) is exactly vanishing:

ah(u, vh)− lh(vh) =∑e

∫Ke

(−∆u)vh dx−∫

Ωfvh dx = −

∫Ω

(∆u+ f)vh dx = 0

as −∆u = f .Even though they are not conforming as Vh 6⊂ V , DG methods are build to be

exactly consistent, so that the consistency error in the second Strang lemma 10 exactlyvanishes. The error analysis described in the book by Di Pietro and Ern [5] relies onthis property. See in particular Section 4.2, which provides a convergence analysis of theSIP-DG method in an ad hoc mesh dependent norm, following the same pattern as forthe Nitsche method.

2.5 Saddle-point problems

2.5.1 The theoretical framework

The variational problems we consider here fit into the following framework. Considertwo Hilbert spaces V and W , two continuous bilinear forms a ∈ L(V × V,R) and b ∈L(V ×W,R) and two continuous linear forms lV ∈ L(V,R) and lW ∈ L(W,R). Then wedefined the abstract mixed variational problem as Find (u, p) ∈ V ×W such that

a(u, v) + b(v, p) = lV (v) ∀v ∈ V, (2.14)

b(u, q) = lW (q) ∀q ∈W. (2.15)

For saddle point problems the Lax-Milgram framework cannot be applied. In thiscase the appropriate theoretical tool, called Banach-Necas-Babuska (BNB) theorem inErn and Guermond, which is more general than Lax-Milgram. We will specialise it toour type of mixed problems assuming that the bilinear form a is symmetric and coerciveon K = v ∈ V | b(q, v) = 0, ∀q ∈W. This corresponds to Theorem 2.34 p. 100 of [6],modified according to Remark 2.35.

Theorem 5 Let V and W be Hilbert space. Assume a is a continuous bilinear form onV ×V and that b is a continuous linear form on V ×W , that lV and LW are continuouslinear forms on V and W respectively and that the following two hypotheses are verified

1) a is coercive on K = v ∈ V | b(q, v) = 0, ∀q ∈ W, i.e. there exists α > 0 suchthat

a(v, v) ≥ α‖v‖2V ∀v ∈ K.

43

2) The Babuska-Brezzi, or inf-sup condition, is verified: there exists β > 0 such that

infq∈W

supv∈V

b(v, q)

‖q‖W ‖v‖V≥ β.

Then the variational problem admits a unique solution and the solution satisfies the apriori estimate

‖u‖V ≤1

α‖f‖V ′ +

1

β(1 +

C

α)‖g‖W ′ , ‖p‖W ≤

1

β(1 +

C

α)‖f‖V ′ +

C

β2(1 +

C

α)‖g‖W ′ ,

where C is the continuity constant of a.

The inf-sup conditions plays an essential role, as it is only satisfied if the spacesV and W are compatible in some sense. This condition being satisfied at the discretelevel with a constant β that does not depend on the mesh size being essential for a wellbehaved Finite Element method. It can be written equivalently

β‖q‖W ≤ supv∈V

b(v, q)

‖v‖V∀q ∈W. (2.16)

And often, a simple way to verify it is, given any q ∈ W , to find a specific v = v(q)depending on q such that

β‖q‖W ≤b(v(q), q)

‖v(q)‖V≤ sup

v∈V

b(v, q)

‖v‖V

with a constant β independent of w.Let us now come to the Galerkin discretisation. The principle is simply to construct

finite dimensional subspaces Wh ⊂W and Vh ⊂ V and to write the variational formula-tion (2.14)-(2.15) replacing W by Wh and V by Vh. The variational formulations are thesame as in the continuous case, like for conforming finite elements. This automaticallyyields the consistency of the discrete formulation. In order to get the stability propertyneeded for convergence, we need that the coercivity constant α and the inf-sup constantβ are independent of h.

Because Vh ⊂ V the coercivity property is automatically verified in the discrete case,with a coercivity constant that is the same as in the continuous case and hence does notdepend on the discretisation parameter h.

Here, however, there is an additional difficulty, linked to the inf-sup conditions, whichis completely dependent on the two spaces Vh and Wh. By far not any conforming ap-proximation of the two spaces will verify the discrete inf-sup condition with a constantβ that is independent on h. Finding compatible discrete spaces for a given mixed vari-ational formulation, has been an active area of research.

2.5.2 Mixed formulation of the Poisson problem

Consider the Poisson problem

−∆p = f (2.17)

p = 0 (2.18)

44

Using that ∆p = ∇·∇p, we set u = ∇p, then the Poisson equation (2.17) can be writtenequivalently

u = −∇p, ∇ · u = f.

Instead of having one unknown, we now have two, along with the above two equations.In order to get a mixed variational formulation, we first take the dot product of the firstone by v and integrate by parts∫

u · v dx−∫p∇ · v dx +

∫∂Ωpv · n dσ =

∫u · v dx−

∫p∇ · v dx = 0,

using p = 0 as a natural boundary condition. Then multiplying the second equation byq and integrating yields ∫

∇ · u q dx =

∫fq dx.

No integration by parts is necessary here. And we thus get the following mixed varia-tional formulation: Find (u, p) ∈ H(div,Ω)× L2(Ω) such that∫

u · v dx−∫p∇ · v dx = 0 ∀v ∈ H(div,Ω) (2.19)∫∇ · u q dx =

∫fq dx, ∀q ∈ L2(Ω). (2.20)

Here also, we get an alternative formulation by not integrating by parts, the mixedterm in the first formulation but in the second. The first formulation simply becomes∫

u · v dx +

∫∇p · v dx = 0,

and the second, removing immediately the boundary term due to the essential boundarycondition q = 0 ∫

∇ · u q dx = −∫

u · ∇q dx =

∫fq dx,

which leads to the variational formulation Find (u, p) ∈ L2(Ω)3 ×H10 (Ω) such that∫

u · v dx +

∫∇p · v dx = 0 ∀v ∈ L2(Ω)3 (2.21)∫u · ∇q dx = −

∫fq dx, ∀q ∈ H1

0 (Ω). (2.22)

Note that this formulation actually contains the classical variational formulation for thePoisson equation. Indeed for q ∈ H1

0 (Ω), ∇q ∈ L2(Ω)3 can be used as a test function inthe first equation. And plugging this into the second we get∫

∇p · ∇q dx =

∫fq dx, ∀q ∈ H1

0 (Ω).

45

Bibliography

[1] Douglas N. Arnold. An interior penalty finite element method with discontinuouselements. SIAM journal on numerical analysis, 19(4):742–760, 1982.

[2] Douglas N. Arnold, Franco Brezzi, Bernardo Cockburn, and L. Donatella Marini.Unified analysis of discontinuous galerkin methods for elliptic problems. SIAMjournal on numerical analysis, 39(5):1749–1779, 2002.

[3] Daniele Boffi, Franco Brezzi, and Michel Fortin. Mixed finite element methods andapplications. Springer, 2013.

[4] Richard Courant et al. Variational methods for the solution of problems of equilib-rium and vibrations. Bull. Amer. Math. Soc, 49(1):1–23, 1943.

[5] Daniele Antonio Di Pietro and Alexandre Ern. Mathematical aspects of discon-tinuous Galerkin methods, volume 69 of Mathematiques et Applications. Springer-Verlag, Berlin Heidelberg, 2012.

[6] Alexandre Ern and Jean-Luc Guermond. Theory and practice of finite elements,volume 159 of Applied Mathematical Sciences. Springer-Verlag, New York, 2004.

[7] Martin J. Gander and Gerhard Wanner. From Euler, Ritz, and Galerkin to moderncomputing. SIAM Review, 54(4):627–666, 2012.

[8] Joachim Nitsche. Uber ein Variationsprinzip zur Losung von Dirichlet-Problemenbei Verwendung von Teilraumen, die keinen Randbedingungen unterworfen sind.Abhandlungen aus dem mathematischen Seminar der Universitat Hamburg, 36(1):9–15, 1971.

[9] Gilbert Strang and George J. Fix. An Analysis of the Finite Element Method.Prentice Hall, New York, 1973. Now published by Wellesley-Cambridge Press.

[10] Vidar Thomee. From finite differences to finite elements: A short history of numer-ical analysis of partial differential equations. Journal of Computational and AppliedMathematics, 128(1):1–54, 2001.

46