MATH 676 Finite element methods in scientifjc computing Wolfgang - - PowerPoint PPT Presentation

math 676 finite element methods in scientifjc computing
SMART_READER_LITE
LIVE PREVIEW

MATH 676 Finite element methods in scientifjc computing Wolfgang - - PowerPoint PPT Presentation

MATH 676 Finite element methods in scientifjc computing Wolfgang Bangerth, T exas A&M University http://www.dealii.org/ Wolfgang Bangerth Lecture 30.25: Time discretizations for advection- difgusion and other problems: IMEX,


slide-1
SLIDE 1

http://www.dealii.org/ Wolfgang Bangerth

MATH 676 – Finite element methods in scientifjc computing

Wolfgang Bangerth, T exas A&M University

slide-2
SLIDE 2

http://www.dealii.org/ Wolfgang Bangerth

Lecture 30.25: Time discretizations for advection- difgusion and other problems: IMEX, operator splitting, and other ideas

slide-3
SLIDE 3

http://www.dealii.org/ Wolfgang Bangerth

Explicit vs implicit time stepping

Recall (lectures 26-28):

  • Parabolic problems, e.g. heat equation:
  • 2nd order hyperbolic problems,

e.g. wave equation:

  • 1st order hyperbolic problems,

e.g. transport equation:

∂u ∂t −Δu = f ∂

2u

∂t

2 −Δu = f

∂u ∂t +⃗ β⋅∇ u = f

Implicit time stepping! Explicit time stepping! Explicit time stepping!

slide-4
SLIDE 4

http://www.dealii.org/ Wolfgang Bangerth

Questions

Questions for this lecture:

  • What do we do for problems that do not fall into these

neat categories?

  • What are common approaches?
slide-5
SLIDE 5

http://www.dealii.org/ Wolfgang Bangerth

Explicit vs implicit time stepping

Example: What to do with advection-difgusion problems? Suggests explicit Suggests implicit time stepping time stepping Note: Advection-difgusion equations describe processes where material/energy is transported and difguses (water, atmosphere, etc). Difgusion is often small.

∂u ∂t + ⃗ β⋅∇ u − Δu = f

slide-6
SLIDE 6

http://www.dealii.org/ Wolfgang Bangerth

IMEX schemes

Example: What to do with advection-difgusion problems? Answer 1: Implicit/explicit (IMEX) schemes

  • treat transport explicitly
  • treat difgusion implicitly

∂u ∂t + ⃗ β⋅∇ u − Δu = f u

n−u n−1

k

n

+ ⃗ β⋅∇ u

n−1 − Δu n = f (k n=t n−t n−1)

u

n − k n Δu n = u n−1 − k n ⃗

β⋅∇ u

n−1 + k n f

slide-7
SLIDE 7

http://www.dealii.org/ Wolfgang Bangerth

IMEX schemes

Reformulation: Such schemes are often approximated in a way that separate the physical efgects:

u

n−u n−1

k

n

+ ⃗ β⋅∇ u

n−1 − Δu n = f

uadv

n −u n−1

kn + ⃗ β⋅∇ u

n−1 = 0

udiff

n −u n−1

kn − Δudiff

n = 0

usource

n

−u

n−1

kn = f u

n−u n−1

kn = uadv

n −u n−1

k n + udiff

n −u n−1

kn +usource

n

−u

n−1

kn

slide-8
SLIDE 8

http://www.dealii.org/ Wolfgang Bangerth

IMEX schemes

Reformulation: Such schemes are often approximated in a way that separate the physical efgects:

u

n−u n−1

k

n

+ ⃗ β⋅∇ u

n−1 − Δu n = f

δuadv

n = −k n ⃗

β⋅∇ u

n−1

δudiff

n = k n Δ(u n−1+δudiff n )

δusource

n

= k

n f

u

n = u n−1 + δuadv n

+ δudiff

n + δusource n

slide-9
SLIDE 9

http://www.dealii.org/ Wolfgang Bangerth

IMEX schemes

Reformulation: Such schemes are often approximated in a way that separate the physical efgects:

  • Computing increments can be done independently:

– concurrently (in parallel) – by separate codes

  • Source contribution may be included into the other

solves

  • Scheme can be generalized to higher order

u

n = u n−1 + δuadv n

+ δudiff

n + δusource n

slide-10
SLIDE 10

http://www.dealii.org/ Wolfgang Bangerth

Operator splitting schemes

Example: What to do with advection-difgusion problems? Answer 2: Operator splitting schemes solve for one physical efgect after the other. With operator splitting, we can also

  • treat transport explicitly
  • treat difgusion implicitly

Note: IMEX treats terms concurrently, operator splitting sequentially.

slide-11
SLIDE 11

http://www.dealii.org/ Wolfgang Bangerth

Operator splitting schemes

Formulation: Operator splitting schemes separate the physical efgects:

u

n−u n−1

k

n

+ ⃗ β⋅∇ u

n−1 − Δu n = f

uadv

n −u n−1

kn + ⃗ β⋅∇ u

n−1 = 0

udiff

n −uadv n

k

n

− Δudiff

n = 0

usource

n

−udiff

n−1

kn = f u

n = usource n

This method is called “Lie” splitting

slide-12
SLIDE 12

http://www.dealii.org/ Wolfgang Bangerth

Operator splitting schemes

Formulation: Operator splitting schemes separate the physical efgects.

  • Computing 3 increments can be done

– independently – by separate codes

  • Source contribution may be included into the other

solves

  • The Lie scheme is only fjrst order in kn
  • Scheme can be generalized to second order (“Strang

splitting”)

slide-13
SLIDE 13

http://www.dealii.org/ Wolfgang Bangerth

Operator splitting schemes

Example: Consider the reaction of 3 species A + B → C in a reactor. A simple model would be

  • Solution variable:
  • Equation:
  • Reaction terms:

∂⃗ u ∂t − Δ⃗ u = ⃗ f (⃗ u) ⃗ f (⃗ u) = ( −ku AuB −ku AuB +k uAuB) u(x ,t)={uA(x ,t),uB(x,t),uC(x ,t)}

slide-14
SLIDE 14

http://www.dealii.org/ Wolfgang Bangerth

Operator splitting schemes

Example: Consider the equation Here:

  • One term is a spatial process (difgusion, a PDE)
  • One term is a local process (reaction, an ODE)
  • We may have difgerent codes that are specialized in

each process

∂⃗ u ∂t − Δ⃗ u = ⃗ f (⃗ u)

slide-15
SLIDE 15

http://www.dealii.org/ Wolfgang Bangerth

Operator splitting schemes

Example: Consider the equation First order operator splitting (“Lie splitting”):

  • First account for the efgect of one time step's worth of

difgusion (implicit):

  • Then account for one time step's worth of reactions

(local ODE):

  • The order could of course be reversed.

∂⃗ u ∂t − Δ⃗ u = ⃗ f (⃗ u) ⃗ u

*−⃗

u

n−1

k

n

− Δ⃗ u

* = 0

∂⃗ u

**

∂t = ⃗ f (⃗ u

**), ⃗

u

**(tn−1)=⃗

u

* → ⃗

u

n=⃗

u

**(t n)

slide-16
SLIDE 16

http://www.dealii.org/ Wolfgang Bangerth

Operator splitting schemes

Example: Consider the equation Second order operator splitting (“Strang splitting”):

  • Half difgusion step:
  • Full reaction step:
  • Half difgusion step:
  • The order of sub-steps can be reversed.

∂⃗ u ∂t − Δ⃗ u = ⃗ f (⃗ u) ⃗ u

*−⃗

u

n−1

k

n/2

− Δ⃗ u

* = 0

∂⃗ u

**

∂t = ⃗ f (⃗ u

**), ⃗

u

**(tn−1)=⃗

u

* → solve for ⃗

u

**(t n)

⃗ u

n−⃗

u

**(tn)

kn/2 − Δ⃗ u

n = 0

slide-17
SLIDE 17

http://www.dealii.org/ Wolfgang Bangerth

More accuracy

Background, part 1: Both IMEX and Operator Splitting schemes need to discretize the time derivative This can be done in many ways, for example:

  • Simplest approximation (Euler, BDF-1, ...)
  • BDF-2

∂⃗ u ∂t ∂u ∂t ≈ u

n−u n−1

k ∂u ∂t ≈ 3 2 u

n−2u n−1+ 1

2 u

n−2

k

slide-18
SLIDE 18

http://www.dealii.org/ Wolfgang Bangerth

More accuracy

Background, part 2: We need to approximate explicit terms in equations such as This can be done in many ways, for example:

  • Explicit Euler
  • T

wo-step (explicit) extrapolation

∂u ∂t + ⃗ β⋅∇ u − Δu = f u

n−u n−1

k

n

+ ⃗ β⋅∇ u

n−1 − Δu n = f

u

n−u n−1

k

n

+ ⃗ β⋅∇(un−1+kn u

n−1−u n−2

k

n−1

) − Δun = f

slide-19
SLIDE 19

http://www.dealii.org/ Wolfgang Bangerth

Summary

Many important, time-dependent equations are not purely

  • parabolic
  • Hyperbolic.

For these equations, one often wants to treat

  • some terms explicitly
  • some terms implicitly
  • treat difgerent physical efgects separately.

There are many ways of doing this (e.g., IMEX, Operator Splitting) and many variations to achieve higher order accuracy.

slide-20
SLIDE 20

http://www.dealii.org/ Wolfgang Bangerth

MATH 676 – Finite element methods in scientifjc computing

Wolfgang Bangerth, T exas A&M University