FEM for parabolic problem

Post on 02-Jan-2022

10 views 0 download

Transcript of FEM for parabolic problem

FEM for parabolic problem

Praveen. Cpraveen@math.tifrbng.res.in

Tata Institute of Fundamental ResearchCenter for Applicable Mathematics

Bangalore 560065http://math.tifrbng.res.in

April 10, 2013

1 / 1

Heat equation

ut −∆u = f in Ω× R+

u = 0 on Γ× R+

u(·, 0) = u0 in Ω

Multiply by v ∈ H10 (Ω) ∫

Ω

utv −∫

Ω

(∆u)v =

∫Ω

fv

and do integration by parts on the Laplacian term∫Ω

utv +

∫Ω

∇u · ∇v =

∫Ω

fv

Weak formulation: Find u(·, t) ∈ H10 (Ω) such that

(u, v) + a(u, v) = (f, v) ∀ v ∈ H10 (Ω) (1)

where

a(u, v) =

∫Ω

∇u · ∇v

2 / 1

Regularity of solutionsIn the case f ≡ 0, we can use the eigenfunctions of −∆ and construct thesolution of the heat equation. Using this one can show that

Theorem

For any u0 ∈ L2, the solution u is a classical solution for t > 0, vanishes on Γfor t > 0, and satisfies the initial condition in the sense thatlimt→0 ‖u(t)− u0‖ = 0. Moreover we have

‖∂mt u(t)‖s ≤ t−m− 1

2 s ‖u0‖ , t > 0

If the initial condition is more regular, then the solution is regular upto theinitial time.

Theorem

If u0 ∈ H10 (Ω), then the solution u satisfies

|u(t)|1 ≤ |u0|1, t ≥ 0

Remark: For a concise discussion, see Larsson and Thomee, Chapter 8.

3 / 1

Galerkin approximation

Let Th be an admissible, shape-regular mesh and consider the piecewisepolynomials spaces

Vh = Xkh = v ∈ C0(Ω) : v|K ∈ Pk ∀ K ∈ Th ∩H1

0 (Ω)

Let ϕj , j = 1, . . . , Nh be a basis functions for Vh. We can write theapproximate solution to the heat equation as

uh(x, t) =

Nh∑j=1

uj(t)ϕj(x)

The Galerkin approximation is given by: find uh such that

(uh, vh) + a(uh, vh) = (f, vh) ∀ vh ∈ Vh (2)

We can write this in terms of the basis functions as:

(uh, ϕi) + a(uh, ϕi) = (f, ϕi) i = 1, 2, . . . , Nh

4 / 1

Galerkin approximation

or ∑j

(ϕj , ϕi)uj +∑j

a(ϕj , ϕi)uj =

∫Ω

f(x, t)ϕi(x)

Define the mass matrix M , the stiffness matrix A and the right hand sidevector b

Mij = (ϕi, ϕj) Aij = a(ϕj , ϕi) bi(t) =

∫Ω

f(x, t)ϕi(x)

Let

U = [u1, . . . , uNh]>

be the vector of dofs. Then the Galerkin method leads to the set of coupledODE

MU +AU = b

5 / 1

Galerkin approximation

We have to also approximate the initial condition u0 in the space Vh. This canbe done either by an interpolation if u0 is continuous, or by a projection; inany case let u0,h be the approximation of u0

u0,h =∑j

uj(0)ϕj

which gives the initial condition U(0). Now to solve the ODE, we need toinvert the mass matrix

U = −M−1AU +M−1b

Mass matrix is non-singular: Let zh =∑

j zjϕj ∈ Vh. Then

∑j

∑k

zjzkMj,k =∑j

∑k

zjzk(ϕj , ϕk) =

∥∥∥∥∥∥∑j

zjϕj

∥∥∥∥∥∥2

≥ 0

6 / 1

Stability of semi-discrete scheme

(uh, vh) + a(uh, vh) = (f, vh) ∀ vh ∈ VhTake vh = uh. Since a(uh, uh) ≥ 0, we get

(uh, uh) ≤ (f, uh) ≤ ‖f‖ ‖uh‖

But

(uh, uh) =

∫Ω

duhdt

uh =1

2

d

dt

∫Ω

u2h =

1

2

d

dt‖uh‖2 = ‖uh‖

d

dt‖uh‖

Hence we getd

dt‖uh‖ ≤ ‖f‖

which after integration in time shows the stability estimate

‖uh(t)‖ ≤ ‖u0,h‖+

∫ t

0

‖f(s)‖ds (3)

7 / 1

Ritz projection

For any v ∈ H10 (Ω) define the Ritz projecton (elliptic projection)

Rh : H10 (Ω)→ Vh by

a(Rhv, wh) = a(v, wh) ∀ wh ∈ Vh

The underlying PDE is−∆u = f := −∆v

and its Galerkin approximation uh = Rhv.

Error estimate for Ritz projection

Let Ω be convex. Then we have for s = 1, 2

‖Rhv − v‖ ≤ Chs ‖v‖s , |Rhv − v|1 ≤ Chs−1 ‖v‖s ∀ v ∈ Hs ∩H10

Proof: For s = 2 we can use usual interpolation error estimates to concludethat

‖Rhv − v‖ ≤ Ch2 ‖v‖2 , |Rhv − v|1 ≤ Ch ‖v‖2 ∀ v ∈ H2 ∩H10

8 / 1

Ritz projection

For the case s = 1, we first note that since Rh is the orthogonal projection wrta(·, ·) we have

‖Rhv‖a ≤ ‖v‖a =⇒ |Rhv|1 ≤ |v|1 =⇒ |Rhv − v|1 ≤ 2|v|1 ≤ 2 ‖v‖1

For the L2 error estimate, we use the adjoint technique. Let ϕ ∈ H10 (Ω) satisfy

−∆ϕ = Rhv − v

so that ϕ ∈ H2 and ‖ϕ‖2 ≤ C ‖Rhv − v‖. Then

‖Rhv − v‖2 = a(ϕ,Rhv − v)

= a(ϕ− Ihϕ,Rhv − v)

≤ |ϕ− Ihϕ|1|Rhv − v|1≤ Ch ‖ϕ‖2 ‖v‖1≤ Ch ‖Rhv − v‖ ‖v‖1

9 / 1

L2 error of semi-discrete scheme

Let u and uh be the solutions of (1) and (2). Then

‖uh(t)− u(t)‖ ≤ ‖u0,h − u0‖+ Ch2

(‖u0‖2 +

∫ t

0

‖ut‖2 ds

)Proof: We write

uh − u = (uh −Rhu) + (Rhu− u) = θ + ρ

The second term is easily bounded using results on Ritz projection error

‖ρ(t)‖ ≤ Ch2 ‖u(t)‖2 = Ch2

∥∥∥∥u0 +

∫ t

0

utds

∥∥∥∥2

≤ Ch2

(‖u0‖2 +

∫ t

0

‖ut‖2 ds

)In order to bound θ, we note that it satisfies

(θ, vh) + a(θ, vh) = (uh, vh) + a(uh, vh)− (Rhu, vh)− a(Rhu, vh)

= (f, vh)− (Rhu, vh)− a(u, vh)

= (u, vh) + a(u, vh)− (Rhu, vh)− a(u, vh)

= (u−Rhu, vh)10 / 1

i.e.,(θt, vh) + a(θ, vh) = −(ρt, vh) (4)

Applying stability estimate (3) we obtain

‖θ(t)‖ ≤ ‖θ(0)‖+

∫ t

0

‖ρt‖ ds

where

‖θ(0)‖ = ‖u0,h −Rhu0‖ ≤ ‖u0,h − u0‖+‖Rhu0 − u0‖ ≤ ‖u0,h − u0‖+Ch2 ‖u0‖2

and‖ρt‖ = ‖Rhut − ut‖ ≤ Ch2 ‖ut‖2

which proves the desired result.

Gradient error of semi-discrete schemeUnder the assumptions of previous theorem, we have

|uh(t)− u(t)|1 ≤ |u0,h − u0|1 + Ch

[‖u0‖2 + ‖u(t)‖2 +

(∫ t

0

‖ut‖21 ds

) 12

]11 / 1

Proof: We split the error in terms of θ and ρ. Then

|ρ(t)|1 = |Rhu(t)− u(t)|1 ≤ Ch ‖u(t)‖2 (5)

To estimate ∇θ we use equation (4) with vh = θt

‖θt‖2 +1

2

d

dt|θ|21 = −(ρt, θt) ≤

1

2(‖ρt‖2 + ‖θt‖2)

so thatd

dt|θ|21 ≤ ‖ρt‖

2 − ‖θt‖2 ≤ ‖ρt‖2

and hence

|θ(t)|21 ≤ |θ(0)|21 +

∫ t

0

‖ρt‖2 ds

≤ (|u0,h − u0|1 + |Rhu0 − u0|1)2 +

∫ 1

0

‖ρt‖2 ds

Using the inequality a2 + b2 ≤ (|a|+ |b|)2 we get

|θ(t)|1 ≤ |u0,h − u0|1 + |Rhu0 − u0|1 +

(∫ t

0

‖ρt‖2 ds

) 12

12 / 1

Now we use the error of Ritz projection to say that

|Rhu0 − u0|1 ≤ Ch ‖u0‖2 and ‖ρt‖ = ‖Rhut − ut‖ ≤ Ch ‖ut‖1

which leads to

|θ(t)|1 ≤ |u0,h − u0|1 + Ch

[‖u0‖2 +

(∫ t

0

‖ut‖21 ds

) 12

](6)

The desired result is obtained by combining equation (5) and (6).

Remark: If we take u0,h = Ihu0 or u0,h = Rhu0 then

‖u0,h − u0‖ ≤ Ch2 ‖u0‖2 , |u0,h − u0|1 ≤ Ch ‖u0‖2

which leads to the error estimates

‖uh(t)− u(t)‖ ≤ Ch2

(‖u0‖2 +

∫ t

0

‖ut‖2 ds

)|uh(t)− u(t)|1 ≤ Ch

[‖u0‖2 + ‖u(t)‖2 +

(∫ t

0

‖ut‖21 ds

) 12

]

13 / 1

Weaker assumptions

The previous results require the data to be very regular as seen in the normsappearing in the error estimates. If the initial condition is only in L2 wecannot expect the solution to be regular small times. But for larges times, thesolutions of heat equation are very regular. The solution of the semi-discretescheme also has the smoothing property. Using this property it is possible toshow that

Theorem

Assume that f ≡ 0 and let u and uh be the solutions of (1) and (2),respectively, with the initial data being chosen as u0,h = Phu0. Then

‖uh(t)− u(t)‖ ≤ Ch2t−1 ‖u0‖ , t > 0

Remark: See Larsson and Thomee, problem 10.4

14 / 1

Fully discrete, backward Euler scheme

In the Galerkin approximation

(uh(t), vh) + a(uh(t), vh) = (f(t), vh) ∀ vh ∈ Vh

we approximate the time derivative term by a backward difference in time

uh(tn+1) ≈ uh(tn+1)− uh(tn)

∆t=: ∆−t uh(tn+1)

Then the fully discrete scheme is given by

1

∆t(uh(tn+1)− uh(tn), vh) + a(uh(tn+1), vh) = (f(tn+1), vh) ∀ vh ∈ Vh

or(un+1

h , vh) + ∆t a(un+1h , vh) = (unh + ∆t fn+1, vh) ∀ vh ∈ Vh (7)

The discrete problem can be written in terms of matrices as

(M + ∆t A)Un+1 = MUn + ∆t bn+1

15 / 1

Fully discrete, backward Euler schemeUnconditional stability: Choose vh = un+1

h , then∥∥un+1h

∥∥2 ≤ (unh, un+1h ) + ∆t(fn+1, un+1

h ) ≤ ‖unh‖∥∥un+1

h

∥∥+ ∆t∥∥fn+1

∥∥∥∥un+1h

∥∥which implies that ∥∥un+1

h

∥∥ ≤ ‖unh‖+ ∆t∥∥fn+1

∥∥Iterating over time, we obtain

‖unh‖ ≤ ‖u0,h‖+ ∆t

n∑j=1

∥∥f j∥∥ (8)

Error estimate for backward Euler scheme

Let uh and u be solutions of (7) and (1), and let u0,h be such that‖u0,h − u0‖ ≤ Ch2 ‖u0‖2. Then for n ≥ 0

‖unh − u(tn)‖ ≤ Ch2

(‖u0‖2 +

∫ tn

0

‖ut‖2 ds

)+ ∆t

∫ tn

0

‖utt‖ ds

16 / 1

Fully discrete, backward Euler schemeProof: As before we split the error as

unh − u(tn) = (unh −Rhu(tn)) + (Rhu(tn)− u(tn)) = θn + ρn

The second term is the Ritz projection error which is bounded as before

‖ρ(t)‖ ≤ Ch2 ‖u(t)‖2 = Ch2

∥∥∥∥u0 +

∫ t

0

utds

∥∥∥∥2

≤ Ch2

(‖u0‖2 +

∫ t

0

‖ut‖2 ds

)Then we can show that θ satisfies

(∆−t θn, vh) + a(θn, vh) = −(ωn, vh) (9)

where

ωn = Rh∆−t u(tn)− ut(tn) = (Rh − I)∆−t u(tn)︸ ︷︷ ︸ωn

1

+ (∆−t u(tn)− ut(tn))︸ ︷︷ ︸ωn

2

Applying stability estimate (8) to (9) we obtain

‖θn‖ ≤∥∥θ0∥∥+ ∆t

n∑j=1

(‖ωn1 ‖+ ‖ωn

2 ‖)

17 / 1

Fully discrete, backward Euler scheme

Now ∥∥θ0∥∥ = ‖u0,h −Rhu0‖ ≤ ‖u0,h − u0‖+ ‖u0 −Rhu0‖ ≤ Ch2 ‖u0‖2

Note that

ωj1 = (Rh−I)

1

∆t(u(tj)−u(tj−1)) = (Rh−I)

1

∆t

∫ tj

tj−1

utds =1

∆t

∫ tj

tj−1

(Rh−I)utds

whence

∆t

n∑j=1

∥∥∥ωj1

∥∥∥ ≤ n∑j=1

∫ tj

tj−1

Ch2 ‖ut‖2 ds = Ch2

∫ tn

0

‖ut‖2 ds

Further we can write ω2 as

ωj2 =

1

∆t(u(tj)− u(tj−1))− ut(tj) = − 1

∆t

∫ tj

tj−1

(s− tj−1)utt(s)ds

18 / 1

Fully discrete, backward Euler scheme

so that

∆t

n∑j=1

∥∥∥ωj2

∥∥∥ ≤ n∑j=1

∥∥∥∥∥∫ tj

tj−1

(s− tj−1)utt(s)ds

∥∥∥∥∥ ≤ ∆t

∫ tn

0

‖utt‖ ds

Together these inequalities complete the proof of the theorem.

Remark: The backward Euler scheme is first order in time and second orderaccurate in space, as is evident from the previous error estimate. To improvethe accuracy in time, we can use the Crank-Nicholson scheme, which uses acentered in time discretization. For an equation like

d

dtu(t) = f(u(t), t)

the CN scheme is

un+1 − un

∆t= f

(un + un+1

2,tn + tn+1

2

)

19 / 1

Crank-Nicholson schemeThe scheme is given by

1

∆t(un+1

h − unh, vh) + a(unh + un+1

h

2, vh) = (f(tn+ 1

2), vh) (10)

Unconditional stability: Choose vh = (unh + un+1h ) which leads to

1

∆t(∥∥un+1

h

∥∥2 − ‖unh‖2) ≤

∥∥∥fn+ 12

∥∥∥∥∥unh + un+1h

∥∥ ≤ ∥∥∥fn+ 12

∥∥∥ (‖unh‖+∥∥un+1

h

∥∥)

The left hand side can be factorised

1

∆t(∥∥un+1

h

∥∥− ‖unh‖)(∥∥un+1h

∥∥+ ‖unh‖) ≤∥∥∥fn+ 1

2

∥∥∥ (‖unh‖+∥∥un+1

h

∥∥)

which implies ∥∥un+1h

∥∥ ≤ ‖unh‖+ ∆t∥∥∥fn+ 1

2

∥∥∥Iterating over time yields

‖unh‖ ≤ ‖u0,h‖+ ∆t

n∑j=1

∥∥∥f j− 12

∥∥∥20 / 1

Crank-Nicholson scheme

Error estimate for Crank-Nicholson scheme

Let uh and u be solutions of (10) and (1), and let u0,h be such that‖u0,h − u0‖ ≤ Ch2 ‖u0‖2. Then for n ≥ 0

‖unh − u(tn)‖ ≤ Ch2

(‖u0‖2 +

∫ tn

0

‖ut‖2 ds

)+ C∆t2

∫ tn

0

(‖uttt‖+ ‖∆utt‖)ds

Proof: Similar to previous theorem.

21 / 1

Condition number of stiffness matrixConsider the bilinear form of the Laplace equation

a(u, v) =

∫Ω

∇u · ∇v

and let A be the stiffness matrix corresponding to continuous, piecewise affinebasis functions, i.e.,

Aij = a(ϕi, ϕj)

As usual, we assume the mesh belongs to a shape-regular family oftriangulations, i.e., ∃ κ > 0 such that

hKρK≤ κ

Moreover, let us assume that the mesh is also quasi-uniform, i.e., ∃ β > 0 suchthat

hK ≥ βh

where h = maxK∈Th hK is the diameter of Th. This means that all elementsK ∈ Th are roughly the same size.

22 / 1

Condition number of stiffness matrix

Lemma (Inverse estimate)

There are constants c and C only depending on κ, β such that for all

vh =∑Nh

i=1 ηiϕi ∈ Vh with η = (ηi)i ∈ RNh and |η| =(∑Nh

i=1 |ηi|2) 1

2

ch2|η|2 ≤ ‖vh‖2 ≤ Ch2|η|2 (11)

a(vh, vh) =

∫Ω

|∇vh|2 ≤ Ch−2 ‖vh‖2 (12)

Proof: It is enough to show that for each triangle K ∈ Th with vertices aiand vh ∈ P1(K), we have

ch2K

3∑i=1

|vh(ai)|2 ≤ ‖vh‖2K ≤ Ch2K

3∑i=1

|vh(ai)|2 (13)

∫K

|∇vh|2 ≤ Ch−2K ‖vh‖

2K (14)

23 / 1

Condition number of stiffness matrix

with c, C independent of K and vh. From these local estimates, the desiredresult follows by summation over all K ∈ Th and using the quasi-uniformproperty.

Proof of (14): Let us map K to the reference element K by an affine map.Then we will show that ∫

K

|∇xvh|2 ≤ C∫K

|vh|2

Note that on K

vh =

3∑i=1

vh(ai)ϕi =

3∑i=1

ηiϕi =⇒ vh =

3∑i=1

ηiϕi

and with η = (η1, η2, η3), let us define

f1(η) =

∫K

|∇xvh|2, f2(η) =

∫K

|vh|2, f3(η) =f1(η)

f2(η)

24 / 1

Condition number of stiffness matrix

We see that f3(η) is a homogeneous function of degree zero sincef3(αη) = f3(η). Hence it is enough to show that

f3(η) ≤ C ∀ η ∈ B = x ∈ R3 : |x| = 1

Since f3(η) is a continuous function and B is closed and bounded subset of R3,it attains its maximum on B.

To show the inequality on K we make use of the theorem relating the normson K and K.∫

K

|∇vh|2 ≤ C∥∥B−1

K

∥∥2 |det(BK)|∫K

|∇xvh|2

≤ C∥∥B−1

K

∥∥2 |det(BK)|∫K

|vh|2

≤ C∥∥B−1

K

∥∥2 |det(BK)||det(BK)|−1

∫K

|vh|2

≤ Cρ−2K

∫K

|vh|2 ≤ Ch−2K

∫K

|vh|2

25 / 1

Condition number of stiffness matrix

Inequality (13) can be shown along similar lines.

Remark: Inequality (12) is refered to as an inverse estimate.

Condition number of stiffness matrix: For any vh ∈ Vh

vh =

Nh∑i=1

ηiϕi, a(vh, vh) = η>Aη

Hence, using (12) and right inequality of (11)

η>Aη

|η|2=a(vh, vh)

|η|2≤ Ch−2 ‖vh‖

2

|η|2≤ C ∀ η ∈ RNh

On the other hand, using coercivity of a(·, ·) and left inequality of (11)

η>Aη

|η|2=a(vh, vh)

|η|2≥α ‖vh‖21|η|2

≥ α‖vh‖2

|η|2≥ αch2 ∀ η ∈ RNh

26 / 1

Condition number of stiffness matrix

These inequalities show that there are constants c, C such that

λmax(A) ≤ C, λmin(A) ≥ ch2

Then the condition number can be estimated as

cond(A) =λmax(A)

λmin(A)≤ Ch−2

Remark: While the stiffness matrix A is positive definite for any mesh sizeh, its condition number increases with decreasing mesh size, and the matrixbecomes badly ill-conditioned. This affects the convergence rate of iterativemethods for solving the matrix equation and one has to resort to somepre-conditioning technique to improve the condition number.

27 / 1

Condition number of mass matrix

Using similar techniques and results as above, we can estimate the eigenvaluesof the mass matrix.

ch2 ≤ η>Mη

|η|2=‖vh‖2

|η|2≤ Ch2 ∀ η ∈ RNh

which shows that

λmin(M) ≥ ch2, λmax(M) ≤ Ch2, cond(M) =λmax(M)

λmin(M)≤ C

c

The mass matrix is well conditioned as the condition number if independent ofthe mesh size.

28 / 1

Forward Euler scheme

The scheme is given by

1

∆t(un+1

h − unh, vh) + a(unh, vh) = (f(tn), vh) (15)

The discrete equations are given by

1

∆tM(Un+1 − Un) +AUn = bn

orMUn+1 = (M −∆tA)Un + ∆tbn

The scheme is not fully explicit since we have a matrix on the left hand side.Solving we obtain

Un+1 = (I −∆tM−1A)Un + ∆tM−1bn

Let us take b ≡ 0 and iterating over time

Un = (I −∆tM−1A)nU0

29 / 1

Forward Euler scheme

For stability we require the eigenvalues of the iteration matrix I −∆tM−1A tolie in [−1,+1], or

−1 ≤ 1−∆tλ(M−1A) ≤ 1

Conditional stability: Consider the case f ≡ 0. Set vh = un+1h − unh and

vh = un+1h + unh in (15) to obtain

1

∆t

∥∥un+1h − unh

∥∥2+ a(unh, u

n+1h − unh) = 0 (16)

1

∆t(∥∥un+1

h

∥∥2 − ‖unh‖2) + a(unh, u

n+1h + unh) = 0 (17)

Then (17)-(16) yields after using coercivity∥∥un+1h

∥∥2 − ‖unh‖2 −

∥∥un+1h − unh

∥∥2= −2∆ta(unh, u

nh) ≤ −2α∆t ‖unh‖

21 (18)

Now use the continuity of the bilinear form in (16)∥∥un+1h − unh

∥∥2= −∆ta(unh, u

n+1h − unh) ≤ γ∆t ‖unh‖1

∥∥un+1h − unh

∥∥1

30 / 1

Forward Euler schemeThe last factor can be estimated using inverse estimate∥∥un+1

h − unh∥∥2

1=∥∥un+1

h − unh∥∥2

+ |un+1h − unh|21 ≤ (1 + Ch−2)

∥∥un+1h − unh

∥∥2

so that ∥∥un+1h − unh

∥∥1≤ (1 + Ch−2)

12

∥∥un+1h − unh

∥∥which leads to ∥∥un+1

h − unh∥∥ ≤ γ∆t(1 + Ch−2)

12 ‖unh‖1

Now (18) becomes∥∥un+1h

∥∥2 ≤ ‖unh‖2

+ ∆t[γ2∆t(1 + Ch−2)− 2α] ‖unh‖21 ≤ ‖u

nh‖

2

where the last inequality holds provided

∆t ≤ 2α

(1 + Ch−2)γ2=⇒ ∆t = O

(h2)

The time step is thus restricted by the spatial mesh size h and the scheme isconditionally stable. If h 1, then the problem is very stiff requiring verysmall time steps.

31 / 1