IT 09 060
Examensarbete 30 hp November 2009
Finite Element Methods for Microelectromechanical Systems
Yang Zeng
Institutionen för informationsteknologi
Department of Information Technology
Teknisk- naturvetenskaplig fakultet UTH-enheten
Besöksadress:
Ångströmlaboratoriet Lägerhyddsvägen 1 Hus 4, Plan 0 Postadress:
Box 536 751 21 Uppsala Telefon:
018 – 471 30 03 Telefax:
018 – 471 30 00 Hemsida:
http://www.teknat.uu.se/student
Abstract
Finite Element Methods for Microelectromechanical Systems
Yang Zeng
The stationary Joule heating problem is a crucial multiphysical problem for many microelectromechanical (MEMS) applications. In our paper, we derive a finite element method for this problem and introduce iterative solution-techniques to compute the numerical simulation. Further we construct an adaptive algorithm for mesh refinement based on a posteriori error estimation.
Finally, we present two numerical tests: convergences analysis of different iterative methods for distinct materials which are classified by electrical conductivities, and a test of the new adaptive refinement algorithm. All the numerical implementations have been done in MATLAB.
Tryckt av: Reprocentralen ITC IT 09 060
Examinator: Anders Jansson Ämnesgranskare: Maya Neytcheva Handledare: Axel Målqvist
Contents
1 Introduction 1
2 Physical Background 3
2.1 Single Physics Problems . . . . 3
2.1.1 Heat equation . . . . 3
2.1.2 Potential equation . . . . 3
2.2 Multiphysics Problems . . . . 4
2.3 Electrical Conductivities . . . . 4
2.3.1 Common definition . . . . 4
2.3.2 Classifications . . . . 5
2.3.3 Temperature dependency . . . . 5
3 Mathematical Model and FEM 7 3.1 Preliminaries . . . . 7
3.2 The Model Problem . . . . 9
3.3 Finite Element Method . . . . 10
3.3.1 Heat equation . . . . 10
3.3.2 Potential equation . . . . 11
3.4 Gauss Quadrature Rule . . . . 13
3.4.1 Area coordinates . . . . 13
3.4.2 Gauss quadrature rule on triangles . . . . 15
3.4.3 Gauss quadrature rule on edges . . . . 15
3.5 Implementation Details . . . . 16
3.5.1 Derivation of the linear system for the heat equation . 16
3.5.2 Derivation of the linear system for the potential equation 17
3.5.3 Assembling of the stiffness matrices . . . . 18
3.5.4 Assembling of the load vectors . . . . 20
3.5.5 Assembling of the boundary contributions . . . . 20
3.6 Iterative Methods for non-linear problems . . . . 21
4 Adaptive Finite Element Method 23 4.1 A Posteriori Error Estimates . . . . 23
4.2 Adaptive Mesh Refinement . . . . 29
5 Numerical Examples 32 5.1 The Model Description . . . . 32
5.2 Convergences of Iterative Solution-techniques for Different Materials . . . . 33
5.3 Adaptive Finite Elements . . . . 36
6 Conclusion 44
A 45
Bibliography 48
List of Figures
3.1 A domain Ω and boundary ∂Ω, ∂Ω = Γ
D∪ Γ
N. . . . 9
3.2 The example of area coordinates . . . . 14
4.1 Refinement algorithms: Rivara and Regular . . . . 30
5.1 U-shape . . . . 33
5.2 Electrical conductivity of a metal . . . . 34
5.3 Electrical conductivity of a semiconductor . . . . 35
5.4 Electrical conductivity of a superconductor . . . . 36
5.5 Numbers of iterations for the metal with different ω in Jacobi and GS methods . . . . 38
5.6 Numbers of iterations for the semiconductor with different ω in Jacobi and GS methods . . . . 39
5.7 Numbers of iterations for the semiconductor with different ω in Jacobi and GS methods . . . . 39
5.8 Final refined mesh on the metal . . . . 40
5.9 Finite element approximation U on the metal . . . . 40
5.10 Finite element approximation Φ on the metal . . . . 41
5.11 Relative error energy norm for the metal . . . . 41
5.12 Final refined mesh on the semiconductor . . . . 42
5.13 Finite element approximation U on the semiconductor . . . . 42
5.14 Finite element approximation Φ on the semicondctor . . . . . 43
5.15 Relative error energy norm for the semiconductor . . . . 43
Acknowledgements
First of all, I would like to express my warmest gratitude to my supervisor, Axel M˚ alqvist, for his patience and instructive suggestions on the writing of this thesis. Without his invaluable help and generous encouragement, I would not accomplish my thesis.
Besides, I wish to thank the department of information technology of Uppsala University for giving me the opportunity to study here. I am also greatly indebted to the professors and teachers in Uppsala University, who have instructed and helped me a lot in the past two years.
The last but not the least, my thanks would go to my beloved family
and friends for their loving considerations and great confidence in me all
through these years.
Chapter 1
Introduction
Partial differential equations are used to model physical phenomena. In many important applications, several different physical processes are active at the same time. One such example is the design of microelectromechanical systems (MEMS).
MEMS are e.g. used to build sensors on micrometer scale. Here electric potential, heat transfer and mechanical stresses are coupled in a system of non-linear elliptic partial differential equations. The stationary Joule heating problem is a model problem for this application. A voltage is applied at the boundary of a device. A current that flows through the device is produced, which leads to heating of the material. The equations describing electrostatical potential and the temperature are coupled. The heat equation is driven by the electrical current and the electric conductivity depends on the temperature, which means we get coupling in both directions.
Many industrial codes are optimized for solving single physics problems, such as the two individuals equations in the Joule heating application. In order to take advantage of this infrastructure, engineers typically couple to- gether such optimized single physics solvers when solving coupled problems.
One approach is to iterate between two problems in a Jacobi or Gauss-Seidel fashion with a given initial guess. However, it is hard to predict whether the iteration will converge or not.
In this paper, we will study numerical simulation of the Joule heating
problem using the Finite Element Method, then construct an adaptive al-
gorithm for mesh refinement based on a posteriori error estimates as well as
analyze convergence of different iterative methods for distinct materials in
MEMS devices.
Chapter 2
Physical Background
2.1 Single Physics Problems
2.1.1 Heat equation
The heat equation is an important partial differential equation which de- scribes the distribution of heat (or variation in temperature) in a given region over time. The stationary heat equation reads
−∇ · k∇u = f (2.1)
where k is the thermal conductivity, u is the temperature and f is a given heat source.
2.1.2 Potential equation
Electrostatic phenomena arises from the forces that electric charges exert on each other. One of the cornerstones of electrostatics is the posing and solving of problems described by the Poisson equation
−∇ · σ(u)∇φ = g (2.2)
where σ(u) is the electrical conductivity, which is strongly dependent on
temperature, φ is the electric potential and g is a given function.
2.2 Multiphysics Problems
Joule heating is generated by the resistance of materials to electric cur- rent and presents in any electric conductor. Therefore it is crucial in many MEMS applications. Let u be the absolute temperature and φ be the elec- tric potential in a solid electric conductor represented by a bounded domain Ω. Under steady conditions, the stationary Joule heating problem consists of the following nonlinear elliptic system
−∇ · k∇u = σ(u) · |∇φ|
2, in Ω (2.3)
−∇ · σ(u)∇φ = f, in Ω (2.4)
with some suitable boundary conditions, where k and σ(u) are the ther- mal and electrical conductivities respectively which we suppose to be given positive functions.
A number of different materials can be used in MEMS technology. Silicon is the material used to create most integrated circuits used in consumer elec- tronic in the modern world. Because of availabilities of cheap high-quanlity and incorporating electronics functionality, silicon has been exploited for a wide variety of MEMS applications. Metals can also be used to create MEMS elements because of their high reliability. The devices based on so called high-temperature superconductivity have been paid more and more attention in past two decades. These different materials exhibit distinct physical properties, but we are more interested in their electrical conductiv- ities in our paper.
2.3 Electrical Conductivities
2.3.1 Common definition
When an electrical potential difference is placed across a conductor, its mov-
able charges flow, giving rise to an electrical current. The conductivity σ is
defined as the ratio of the current density J to the electrical field strength
E
J = σE. (2.5)
Conductivity is the reciprocal of electrical resistivity ρ, and has SI unit of siemens per meter S · m
−1σ = 1
ρ . (2.6)
2.3.2 Classifications
According to the electrical conductivity, materials can be classified into the following categories:
• A conductor such as metal has high conductivity and a low resistivity;
• An insulator like glass or a vacuum has low conductivity and a high resistivity;
• The conductivity of a semiconductor is generally intermediate, but varies widely under different conditions, such as exposure of the ma- terial to electric fields or specific frequencies of light and, most impor- tant, with temperature and composition of the semiconductor mate- rial;
• Superconductivity occurs at extremely low temperature (not far from absolute zero), and materials have been found to exhibit very high electrical conductivity in this phenomenon.
Based on this classifications, we will test convergences of iterative solution- techniques when we are solving the Joule heating problem for three sorts of materials: metals, semiconductors and superconductors.
2.3.3 Temperature dependency
Electrical conductivity is strongly dependent on temperature. This depen-
dence is often expressed using a conductivity-vs-temperature graph. Let us
define σ
0to be the electrical conductivity at a standard temperature u
0and
α to be the temperature compensation slope. Based on the physical prop- erty of metals such that electrical conductivity decreases with the increasing temperature, we can describe this kind of conductivity-vs-temperature graph as
σ(u) =
σ
0u ≤ u
0σ0
1+α(u−u0)
u > u
0(2.7)
where σ(u) is electrical conductivity at temperature u.
In semiconductors, electrical conductivity increases as temperature is increasing, hence its dependence can be written as
σ(u) =
σ
0u ≤ u
0σ
01 + α(u − u
0)
u > u
0(2.8)
where σ(u), σ
0, α and u
0have the same explanations as equation (2.7).
Finally let us consider superconductors. As we know, one of the most important physical properties is that when temperature is decreased to a very low value (not far from absolute zero), the electrical resistance of a superconductor lowers to exact zero. Electrical conductivity is the inverse of electrical resistivity, i.e. it will be extremely large in such situation. Based on this property, we can define the conductivity-vs-temperature graph for superconductors as
σ(u) =
∞ u < u
0σ0
α(u−u0)
u ≥ u
0(2.9)
where σ(u), σ
0, α and u
0are the same as equations (2.7) and (2.8).
Chapter 3
Mathematical Model and FEM
3.1 Preliminaries
First of all, let us settle some definitions and notations that will be frequently used in the paper. The scalar product (·, ·) is the ordinary L
2= L
2(Ω) product and k · k is the corresponding norm. A triangulation, or mesh, K of Ω is a set {K} of triangles K such that Ω = S
K∈K
K and intersection of two triangles is either a triangle edge, a triangle corner, or empty. A closed polyline ∂K of ∂Ω is a set {E} of edges E such that ∂Ω = S
E∈∂K
E. In other words, {E} is a set of sides of triangles which are on the boundary.
The boundary of a triangle K is denoted by ∂K. If an edge is shared by two triangles, we call it an interior edge, otherwise it will be on the boundary of Ω, i.e. ∂K ∪ ∂Ω = E ∈ ∂K. We denote the longest edge of triangle K by h
Kand the length of edge E by h
E.
Let K be a triangle with nodes at the corners N
1= (x
11, x
12), N
2= (x
21, x
22), and N
3= (x
31, x
32) and let P
1(K) denote the vector space of linear polynomials defined on K
P
1(K) = {v : v(x
1, x
2) = c
0+ c
1x
1+ c
2x
2, c
0, c
1, c
2∈ R}. (3.1)
Let V
hbe the vector space of all continuous piecewise linear polynomials V
h= {v : v ∈ C(Ω), v|
K∈ P
1(K) ∀K ∈ K} (3.2) where C(Ω) denotes the space of all continuous functions on Ω and P
1(K) is the space of linear polynomials on K as defined by (3.1). We denote the basis functions ϕ
j(N
i) ⊂ V
h, such that
ϕ
j(N
i) =
0 i = j 1 i 6= j
for i, j = 1, 2, . . . , N . Using these basis functions, all v ∈ V
hcan be written as
v(x
1, x
2) =
N
X
i=1
α
iϕ
i(x
1, x
2) (3.3) where the coefficients α
iare the nodal values of the function v, that is
α
i= v(N
i), i = 1, 2, . . . , N. (3.4) Given a continuous function f ∈ C(K) on a triangle K with nodes at N
i= (x
i1, x
i2), i = 1, 2, 3, we define the interpolant πf ∈ P
1(K) of f as
πf =
3
X
i=1
f (N
i)ϕ
i.
We let Df and D
2f be defined by Df = (| ∂f
∂x |
2+ | ∂f
∂y |
2)
1/2, D
2f = (| ∂
2f
∂x
2|
2+ 2| ∂
2f
∂x∂y |
2+ | ∂
2f
∂y
2|
2)
1/2.
Using these notations, the following proposition for the interpolation error estimates has been shown, i.e. in [2].
Proposition 3.1. The following estimates hold X
K
kf − πf k
2L2(K)≤ C X
K
h
2KkDf k
2L2(K)X
K
kD(f − πf )k
2L2(K)≤ C X
K
kDf k
2L2(K)where C is a constant.
3.2 The Model Problem
Let us define a model problem for the stationary Joule heating problem with mixed boundary conditions. It can be written as
−∇ · k∇u = σ(u) · |∇φ|
2in Ω (3.5) n · k∇u = κ
1(g
1− u) on ∂Ω (3.6)
−∇ · σ(u)∇φ = f in Ω (3.7)
φ = g
2on Γ
D(3.8)
n · σ(u)∇φ = κ
2(g
3− φ) on Γ
N(3.9) where g
1, g
2, g
3and f are given functions, Ω is a two-dimensional domain with the boundary ∂Ω, ∂Ω = Γ
D∪ Γ
N, and n is the outward normal of ∂Ω, as shown in Figure 3.1. Next we will derive a finite element method for this
Figure 3.1: A domain Ω and boundary ∂Ω, ∂Ω = Γ
D∪ Γ
N.
model.
3.3 Finite Element Method
3.3.1 Heat equation
In this section, we consider the stationary heat equation (3.5) – (3.6). We assume for now that the right hand side of (3.5) is a given function. To distinguish between u and φ in the left hand sides of (3.5) and (3.7), we denote it by σ(u
∗) · |∇φ
∗|
2.
Let us introduce a space
V = {v : kvk + k∇vk < ∞}. (3.10) Multiplying (3.5) by a test function v ∈ V , and integrating on both sides, then using Green’s formula, we get
− Z
Ω
(∇ · k∇u) · vdx = Z
Ω
k∇u · ∇vdx − Z
∂Ω
n · k∇u · vds
= Z
Ω
k∇u · ∇vdx + Z
∂Ω
κ
1(u − g
1) · vds
= Z
Ω
σ(u
∗) · |∇φ
∗|
2· vdx
since n·k∇u = κ
1(g
1−u) on ∂Ω. Thus we obtain the variational formulation for the problem (3.5) – (3.6): Find u ∈ V such that
Z
Ω
k∇u · ∇vdx + Z
∂Ω
κ
1u · vds (3.11)
= Z
Ω
σ(u
∗) · |∇φ
∗|
2· vdx + Z
∂Ω
κ
1g
1· vds, ∀v ∈ V.
Based on this form, we define a finite element method: Find U ∈ V
h⊂ V , such that
Z
Ω
k∇U · ∇vdx + Z
∂Ω
κ
1U · vds (3.12)
= Z
Ω
σ(u
∗) · |∇φ
∗|
2· vdx + Z
∂Ω
κ
1g
1· vds, ∀v ∈ V
hFrom the variational formulation and the finite element method, we get
the following theorem:
Theorem 3.2. For the problem (3.5) – (3.6) with a given exact right hand side of (3.5) which has been denoted as σ(u
∗)·|∇φ
∗|
2, the following Galerkin orthogonality property holds
Z
Ω
k∇e · ∇vdx + Z
∂Ω
κ
1evds = 0, ∀v ∈ V
h(3.13) where e = u−U is the error between the exact and the finite element solution.
Proof. Subtracting two equations (3.11) and (3.12), then using the fact that V
h⊂ V immediately proves this claim.
3.3.2 Potential equation
Let us seek a solution to the potential problem which consisting of (3.7) – (3.9). Assume σ(u) is a given function which is the same as in the right hand side of heat equation (3.5), hence we can rewrite it as σ(u
∗).
Let us introduce a space
V
g2,D= {v : kvk + k∇vk < ∞, v|
ΓD= g
2}. (3.14) Multiplying (3.7) by a test function v ∈ V
0,D, and integrating on both sides, then using Green’s formula, we get
− Z
Ω
(∇ · σ(u
∗)∇φ) · vdx = Z
Ω
σ(u
∗)∇φ · ∇vdx − Z
∂Ω
n · σ(u
∗)∇φ · vds
= Z
Ω
σ(u
∗)∇φ · ∇vdx + Z
ΓN
κ
2(φ − g
3) · vds
= Z
Ω
f · vdx
since n · σ(u
∗)∇φ = κ
2(g
3− φ) on Γ
Nand v = 0 on Γ
D. Thus the variational problem reads as follows: Find φ ∈ V
g2,Dsuch that
Z
Ω
σ(u
∗)∇φ · ∇vdx+
Z
ΓN
κ
2φ · vds = Z
Ω
f · vdx+
Z
ΓN
κ
2g
3· vds, ∀v ∈ V
0,D.
(3.15)
We assume g
2to be piecewise polynomial and continuous on the boundary
Γ
D. That means, there is a function Φ
g2∈ V
h,Dsuch that Φ
g2= g
2on Γ
D.
We introduce the affine subspace V
h,g2,D= {v ∈ V
h: v|
ΓD= g
2}, then the finite element method reads: Find Φ ∈ V
h,g2,D, such that
Z
Ω
σ(u
∗)∇Φ · ∇vdx+
Z
ΓN
κ
2Φ · vds = Z
Ω
f · vdx+
Z
ΓN
κ
2g
3· vds, ∀v ∈ V
h,0,D. (3.16) From the variational formulation and the finite element method, we ob- tain the following theorem:
Theorem 3.3. For the problem defined by (3.7) – (3.9) with a given function σ(u
∗), the following Galerkin orthogonality property holds
Z
Ω
σ(u
∗)∇e · ∇vdx + Z
ΓN
κ
2evds = 0, ∀v ∈ V
h,0,D(3.17) where e = φ−Φ is the error between the exact and the finite element solution.
Proof. Subtracting two equations (3.15) and (3.16), then using the fact that V
h,0,D⊂ V
0,Dimmediately proves this claim.
To derive an equation for Φ, we will use a technique presented in [1]. We write Φ in the form
Φ = Φ
0+ Φ
g2(3.18)
where Φ
g2is any fixed function in V
h,g2,Dand Φ
0= 0 on Γ
Dand thus Φ
0∈ V
h,0,D. This construction of Φ will satisfy the boundary conditions because of Φ
g2= g
2on Γ
D. Since Φ
g2is known it remains to determine Φ
0, we get the equation: Find Φ
0∈ V
h,0,D, such that
Z
Ω
σ(u
∗)∇Φ
0· ∇vdx + Z
ΓN
κ
2Φ
0· vds
= Z
Ω
f · vdx + Z
ΓN
κ
2g
3· vds − Z
Ω
σ(u
∗)∇Φ
g2· ∇vdx − Z
ΓN
κ
2Φ
g2· vds
(3.19)
for ∀v ∈ V
h,0,D. This is a problem of the same kind as above but with a
modified right hand side. One can prove that the solution Φ = Φ
0+ Φ
g2is
independent of the particular choice of the function Φ
g2. In practice Φ
g2is
often chosen to be zero at all interior nodes plus all the nodes on Γ
N. And
more details about this technique will be illustrated in the later section.
Next, let us derive linear systems resulting from these two finite element problems. However, we need to introduce quadrature rules which will be utilized in this paper.
3.4 Gauss Quadrature Rule
In numerical analysis, a quadrature rule is an approximation of the definite integral of a function, usually has the form of a weighted sum of function values at specified points within the domain of integration. Assume f is a given function, a general quadrature rule on a triangle K or a edge E takes the form
Z
K
f dx ≈ X
j
w
jf (q
j) or
Z
E
f ds ≈ X
j
w
jf (q
j)
where q
jis the set of quadrature points within K or on E.
3.4.1 Area coordinates
To explain the interpolation functions with higher degree, we will introduce the definition so-call area coordinates in [5].
Def inition 3.4 (Area coordinates). For triangular elements, it is possible to construct three non-dimensional coordinates L
i(i = 1, 2, 3), which vary in a direction normal to the sides directly opposite each node. The coordinates are defined such that
L
i= A
iA i = 1, 2, 3 (3.20)
A =
3
X
i=1
A
i(3.21)
where A
iis the area of the triangle formed by nodes j and k (j, k = 1, 2, 3)
and arbitrary point P in the element, and A is the total area of the element.
Figure 3.2: The example of area coordinates
For example, assume A
1is the area of the triangle which is formed by nodes N
2and N
3and point P , as showed in Figure 3.2. The point P is at a distance of s from the side connecting nodes N
2and N
3. We have
A
1= b · s 2 A = b · h
2
where h is the distance from the node 1 to the side connecting nodes N
2and N
3and b is the length of this side. Hence,
L
1= A
1A = s
h .
Clearly, L
1is zero on side N
2− N
3(hence, zero at nodes N
2and N
3) and
has a value of unity at node N
1. In other words, L
1is the finite element
basis function associated with node N
1. Similarly, L
2and L
3are the basis
functions associated with nodes N
2and N
3.
3.4.2 Gauss quadrature rule on triangles
On an arbitrary triangle, using the Gauss quadrature rule, we can obtain the following approximation
Z
K
f (x)dx ≈ |K| ·
N
X
i=1
w
if (G
i)
where N is the number of the Gaussian points; G
iis the i
thGaussian point;
w
iis the weight of i
thGaussian point; |K| is the area of the triangle. Assume this triangle is defined by three nodes (x
11, x
12), (x
21, x
22) and (x
31, x
32), then G
ican be calculated by the formula
G
i=
x
11x
12x
13x
21x
22x
23
·
L
i1L
i2L
i3
where L
i1, L
i2and L
i3are the area coordinates of point G
iin the reference triangle. They can be can be found in Table A.1 in Appendix.
3.4.3 Gauss quadrature rule on edges
On the boundary, it is possible to construct two non-dimensional coordinates L
1and L
2. If the edge E lies between two boundary nodes (x
11, x
12) and (x
21, x
22), then we use the Gauss quadrature rule to obtain the following approximation
Z
E
f (x)dx ≈ |h
E| ·
N
X
i=1
w
if (G
i)
where N is the number of the Gaussian points; G
iis the i
thGaussian point;
w
iis the weight of i
thGaussian point; |h
E| is the length of the edge. Further, G
iis defined by
G
i=
x
11x
12x
21x
22
·
L
i1L
i2
where L
i1and L
i2are the area coordinates of point G
ion the reference edge.
They can be given in Table A.2 in Appendix.
3.5 Implementation Details
3.5.1 Derivation of the linear system for the heat equation
Let {ϕ
i}
Ni=1be basis functions of V
hwhich are defined on the mesh K. Then we write U as a linear combination of the basis functions
U =
N
X
j=1
ζ
jϕ
j(3.22)
with unknown coefficients ζ
jwhere j = 1, 2, . . . , N . Inserting (3.22) into (3.12), we get
Z
Ω
k(∇
N
X
j=1
ζ
jϕ
j) · ∇ϕ
idx + Z
∂Ω
κ
1(
N
X
j=1
ζ
jϕ
j)ϕ
ids (3.23)
= Z
Ω
σ(u
∗) · |∇φ
∗|
2ϕ
idx + Z
∂Ω
κ
1g
1ϕ
ids for i = 1, 2, . . . , N . Introducing the notations
a
1i,j= Z
Ω
k∇ϕ
i· ∇ϕ
jdx, (3.24)
m
1i,j= Z
∂Ω
κ
1ϕ
iϕ
jds, (3.25)
b
1i= Z
Ω
σ(u
∗) · |∇φ
∗|
2ϕ
idx, (3.26) r
1i=
Z
∂Ω
κ
1g
1ϕ
ids, (3.27)
for i, j = 1, 2, . . . , N . Then we get
N
X
j=1
(a
1i,j+ m
1i,j)ζ
j= b
1i+ r
i1(3.28)
for i = 1, 2, . . . , N , which is a linear system for the coefficients ζ
j. In the matrix form we write as
(A
1+ M
1)ζ = b
1+ r
1(3.29)
with N × N matrices A
1and M
1, N × 1 vectors b
1, r
1are defined above
respectively.
3.5.2 Derivation of the linear system for the potential equa- tion
Let {ϕ
i}
Ni=1be basis functions of V
hwhich are defined on the mesh K as well. Then we write Φ as a linear combination of the basis functions
Φ =
N
X
j=1
ξ
jϕ
j(3.30)
with unknown coefficients ξ
jwhere j = 1, 2, . . . , N . Inserting (3.30) into equation (3.16), we get
Z
Ω
σ(u
∗)(∇
N
X
j=1
ξ
jϕ
j) · ∇ϕ
idx + Z
ΓN
κ
2(
N
X
j=1
ξ
jϕ
j)ϕ
ids (3.31)
= Z
Ω
f ϕ
idx + Z
ΓN
κg
3ϕ
ids for i = 1, 2, . . . , N . Introducing the notations
a
2i,j= Z
Ω
σ(u
∗)∇ϕ
i· ∇ϕ
jdx, (3.32) m
2i,j=
Z
ΓN
κ
2ϕ
iϕ
jds, (3.33)
b
2i= Z
Ω
f ϕ
idx, (3.34)
r
i2= Z
ΓN
κ
2g
3ϕ
ids, (3.35)
for i, j = 1, 2, . . . , N . Then we get
N
X
j=1
(a
2i,j+ m
2i,j)ξ
j= b
2i+ r
2i(3.36)
for i = 1, 2, . . . , N , which is a linear systems for the coefficients ξ
j. In the matrix form we write as
(A
2+ M
2)ξ = b
2+ r
2(3.37) with N × N matrixes A
2and M
2, N × 1 vectors b
2and r
2are defined above respectively.
Based on (3.18) and (3.19), let us assume that the first S nodes are
interior nodes including the nodes on Γ
N, while the last N − S nodes are
boundary nodes on Γ
Dfor the linear system of the potential equation (3.37).
These boundary nodes are fixed since the nodal values of Φ should be g
2. Using these nodes numbering, we can partition the linear system (A
2+ M
2)ξ = b
2+ r
2into the following form
A
20,0+ M
0,02A
20,g2+ M
0,g2 2A
2g2,0+ M
g22,0A
2g2,g2+ M
g22,g2
·
ξ
0ξ
g2
=
b
20+ r
20b
2g2+ r
2g2
where A
20,0and M
0,02are the upper left S × S block of A
2and M
2, while A
2g2,g2and M
g22,g2are the lower right (N − S) × (N − S) block of A
2and M
2. Rearranging the first S equations of this linear system, we have the S × S linear system
(A
20,0+ M
0,02)ξ
0= (b
20+ r
20) − (A
20,g2+ M
0,g2 2)ξ
g2(3.38) from which the unknown interior nodal values as well as the nodal values on Γ
Nof Φ can be determined.
3.5.3 Assembling of the stiffness matrices
Recall the notations (3.24) and (3.32), the local 3 × 3 stiffness matrices are given by
A
1,Ki,j= Z
K
k∇ϕ
i∇ϕ
jdx, A
2,Ki,j=
Z
K
σ(u
∗)∇ϕ
i∇ϕ
jdx, for i, j = 1, 2, 3.
Consider a triangle K with the nodes (x
11, x
12), (x
21, x
22) and (x
31, x
32). To each node N
i(i = 1, 2, 3), there is a hat function ϕ
iassociated, which takes on the value 1 at node N
iand 0 at other nodes. Each hat function is a linear function on K so it takes the form
ϕ
i= a
i+ b
ix
i+ c
ix
2, i = 1, 2, 3
where the coefficients a
i, b
iand c
iare determined by the following linear
systems
1 x
11x
121 x
21x
221 x
31x
32
·
a
1b
1c
1
=
1 0 0
= e
1,
1 x
11x
121 x
21x
221 x
31x
32
·
a
2b
2c
2
=
0 1 0
= e
2,
1 x
11x
121 x
21x
221 x
31x
32
·
a
3b
3c
3
=
0 0 1
= e
3.
The gradient of ϕ
iis just the constant vector ∇ϕ
i= [b
ic
i]. Then using the Gauss quadrature rule, we get
A
1,Ki,j= Z
K
k∇ϕ
i∇ϕ
jdx
= (b
ib
j+ c
ic
j) Z
K
kdx
≈ (b
ib
j+ c
ic
j) · |K| ·
Q
X
l=1
(w
l· k(G
l)),
A
2,Ki,j= Z
K
σ(u
∗)∇ϕ
i∇ϕ
jdx
≈ (b
ib
j+ c
ic
j) · |K| ·
Q
X
l=1
(w
l· σ(u
∗l))
where i, j = 1, 2, 3; G
lis the l
thGaussian point; w
lis the weight of l
thGaussian point; L
liis the i
tharea coordinate of the l
thGaussian point defined
by (3.20); σ(u
∗l) is the value of σ(u
∗) on the l
thGauss point; Q is the number
of Gaussian points.
3.5.4 Assembling of the load vectors
Recall the notations (3.26) and (3.34), on each element K, we get local 3 × 1 element vectors b
1Kand b
2Kwith entries
b
1,Ki= Z
K
σ(u
∗) · |∇φ
∗|
2ϕ
idx, b
2,Ki=
Z
K
f ϕ
idx
for i = 1, 2, 3. Using the Gauss quadrature rule to compute these integrals, we obtain
b
1,Ki≈ |K| ·
Q
X
l=1
(w
l· σ(u
∗l) · |∇φ
∗l|
2· L
li)
b
2,Ki≈ |K| ·
Q
X
l=1
(w
l· f (G
l) · L
li),
where i, j = 1, 2, 3; G
lis the l
thGaussian point; w
lis the weight of l
thGaussian point; L
liis the i
tharea coordinate of the l
thGaussian point defined by (3.20); σ(u
∗l) is the value of σ(u
∗) on the l
thGauss point; |∇φ
∗l|
2is the value of |∇φ
∗|
2on the l
thGauss point; Q is the number of the Gaussian points.
3.5.5 Assembling of the boundary contributions
Two nodes of a triangle K lie along the domain ∂Ω, then the edge between them will contribute to matrices entries M
i,j1, M
i,j2and vectors entries r
1i, r
2iM
i,j1,E= Z
E
κ
1ϕ
iϕ
jds ≈ κ
1|h
E| ·
Q
X
l=1
(w
l· L
li· L
lj)
r
1,Ei= Z
E
κ
1g
1ϕ
ids ≈ κ
1|h
E| ·
Q
X
l=1
(w
l· g
1(G
l) · L
li)
M
i,j2,E= Z
E
κ
2ϕ
iϕ
jds ≈ κ
2|h
E| ·
Q
X
l=1
(w
l· L
li· L
lj)
r
2,Ei= Z
E
κ
2g
3ϕ
ids ≈ κ
2|h
E| ·
Q
X
l=1
(w
l· g
3(G
l) · L
li)
where i, j = 1, 2, 3; G
lis the l
thGaussian point; w
lis the weight of l
thGaussian point; L
liis the i
tharea coordinate of the l
thGaussian point defined by (3.20); Q is the number of the Gaussian points.
3.6 Iterative Methods for non-linear problems
So far we have derived two linear systems of two single physical problems which are based on an assumption that σ(u
∗) · |∇φ
∗|
2and σ(u
∗) are two given functions. Let us write the relationship between u
∗, φ
∗and U , Φ in the following way
U = f
1(u
∗, φ
∗), (3.39)
Φ = f
2(u
∗). (3.40)
However, our model problem is a multiphysical problem involving both heat and potential equations. Hence u
∗and φ
∗must be the exact solutions u and φ defined by (3.5) – (3.9). Then as the numerical solutions of u and φ in the model problem, (3.39) and (3.40) can be represented as
U = f
1(U, Φ), (3.41)
Φ = f
2(U ). (3.42)
To solve these linear systems, we need to introduce iterative methods in our model.
An iterative method attempts to solve a problem by finding successive approximations to the solution starting from an initial guess. If an equation can be put into the form F (X) = X (here, X could be a vector and contains several elements), a solution X is an attractive fixed point of the function F , then one may begin with a point X
(1)in the basin of attraction of X.
Let X
(i+1)= F (X
i) for i ≥ 1, and the sequence {X
(i)}
i≥1will converge to the solution X.
Examples of iterative methods are Jacobi method, Gauss-Seidel (GS)
method and Successive Over-relaxation (SOR) method.
• Jacobi method: is an iterative technique that solves present values X by using previous values X in the right hand side. This method can be written as X
(i+1)= F (X
(i));
• GS method: the computation of x
(i+1)juses the elements of X
(i+1)that have already been computed (denoted as X
∗(i+1)) and the elements of X
(i)that have to be advanced to iteration i + 1 (denoted as X
∗∗(i)).
This method can be written as X
(i+1)= F (X
∗(i+1), X
∗∗(i));
• SOR method: is a variant of the GS method, resulting in faster con- vergence. It introduces a relaxation factor ω, which is a constant and greater than 0. This method can be written as X
(i+1)= (1 − ω)X
(i)+ ωF (X
∗(i+1), X
∗∗(i)). When ω = 1, it is the GS method. Since the similar method can be used for any slowly converging iterative process, we can use it to improve Jacobi method as well.
In this paper, assume we start from two guessing values U
0and Φ
0, then these iterative methods would be implemented between heat and potential equations as:
• Jacobi method : {U
(i), Φ
(i)} = {f
1(U
(i−1), Φ
(i−1)), f
2(U
(i−1))};
• GS method : {U
(i), Φ
(i)} = {f
1(U
(i−1), Φ
(i−1)), f
2(U
(i))};
• SOR method : {U
(i), Φ
(i)} = {(1 − ω)U
(i−1)+ ωf
1(U
(i−1), Φ
(i−1)), (1 − ω)Φ
(i−1)+ ωf
2(U
(i))}
where i ≥ 1 and all procedures stop when a certain tolerance is reaching.
Chapter 4
Adaptive Finite Element Method
4.1 A Posteriori Error Estimates
Let us revisit the model problem
−∇ · k∇u = σ(u) · |∇φ|
2in Ω, (4.1) n · k∇u = κ
1(g
1− u) on ∂Ω, (4.2)
−∇ · σ(u)∇φ = f in Ω, (4.3)
φ = g
2on Γ
D, (4.4)
n · σ(u)∇φ = κ
2(g
3− φ) on Γ
N. (4.5) For the heat equation defined by (4.1) – (4.2), we have a posteriori estimate:
Theorem 4.1. For the finite element approximation U of the exact solution u to (4.1) and (4.2) with a given right hand side of (4.1), σ(u
∗) · |∇φ
∗|
2, the following a posteriori error estimate holds
k∇(u − U )k
2L2(Ω)+ ku − U k
2L2(∂Ω)≤ C X
K∈K
ρ
2K(U, u
∗, φ
∗) + X
E∈∂K
ρ
2E(U )
(4.6)
where C is a constant, the element residual in the interior domain ρ
K(U, u
∗, φ
∗)
is defined by
ρ
K(U, u
∗, φ
∗) = h
Kkσ(u
∗) · |∇φ
∗|
2+ ∇ · k∇U k
L2(K)+ 1
2 h
1/2Kk[n · k∇U ]k
L2(∂K\∂Ω)(4.7) and the element residual on the boundary ρ
E(U ) is defined by
ρ
E(U ) = h
1/2Kkκ
1(g
1− U ) − n · k∇U k
L2(E∩∂Ω). (4.8) Here [n · k∇U ] denotes the jump in the k times normal derivative of U at an interior edge ∂K
1∩ ∂K
2, i.e.
[n · k∇U ]|
∂K1∩∂K2= n
1· k∇U
1+ n
2· k∇U
2(4.9) with U
i= U |
Kiand n
iis the exterior unit normal of K
i.
Proof. Let e = u − U be the error. If k, κ
1≥ α > 0, we have α · k∇ek
2L2(Ω)+ kek
2L2(∂Ω)≤ Z
Ω
k∇e · ∇edx + Z
∂Ω
κ
1e · eds
= Z
Ω
k∇e · ∇(e − πe)dx + Z
∂Ω
κ
1e · (e − πe)ds
where we have used the Galerkin orthogonality (see Theorem 3.2) to subtract the interpolant πe. Splitting this into a sum over the elements and using the Green’s formula, or integration by parts, we further have
α · k∇ek
2L2(Ω)+ kek
2L2(∂Ω)≤ X
K∈K
Z
K
k∇e · ∇(e − πe)dx + X
E∈∂K
Z
E
κ
1e · (e − πe)ds
= X
K∈K
(−
Z
K
∇ · k∇e · (e − πe)dx + Z
∂K
n · k∇e · (e − πe)ds)
+ X
E∈∂K
Z
E