Sie sind auf Seite 1von 26

Numerical Methods for Partial

Differential Equations
CAAM 452
Spring 2005
Lecture 12

Instructor: Tim Warburton
CAAM 452 Spring 2005
1 1
1
1
upwind: 0
Centered slope (Fromm):
2
Upwind slope (Beam-Warming):
Downwind slope (Lax-Wendroff):
n
i
n n
n
i i
i
n n
n
i i
i
n n
n
i i
i
q q
dx
q q
dx
q q
dx
o
o
o
o
+

+
=

=
Godunov Scheme Summary
To complete this scheme we now specify how to
compute the slopes.



Standard formulae:



( ) ( )
2 2
1
1 1
1
2 2
n n n n n n
i i i i i i
dx u dt
q q udt q q u dt
dx
o o
+


| |
= +
`
|
\ .
)
CAAM 452 Spring 2005
With Limiting
1 1 1 1
minmod , minmod 2 , 2
2
n n n n n n
n
i i i i i i
i
q q q q q q
dx dx dx
o
+ +
| |
| |
| | | |

=
|
|
| |
|
\ . \ .
\ .
\ .
1 1
minmod ,
n n n n
n
i i i i
i
q q q q
dx dx
o
+
| |

=
|
\ .
Minmod slope limiter:




Monotonized central-difference limiter (MC limiter)
CAAM 452 Spring 2005
Today
More limiters

Flux limiting function formulation.

We will discuss Hartens sufficient conditions for a numerical
method (including limiter) to be TVD

Sweby TVD diagrams for flux limiting functions.

Extension to systems of linear PDEs

Extension to nonlinear PDEs
CAAM 452 Spring 2005
Flux Formulation with Piecewise Linear
Reconstruction
Last time we showed how the ansatz of a
piecewise linear reconstruction and Godunovs
method allowed us to compute the time averaged
flux contribution at each end of the Ith cell
( )
( )
( )
1
1/ 2 1/ 2
1
,
2
n
n
t
n
i i
t t
n n
i i
F f q x t dt
dt
u
uq dx udt o
+
+ +
=
=
= +
}
( )
( )
( )
1
1/ 2 1/ 2
1 1
1
,
2
n
n
t
n
i i
t t
n n
i i
F f q x t dt
dt
u
uq dx udt o
+

=

=
= +
}
Notice: we can obtain the i-1/2 flux by setting i->i-1 in the i+1/2 flux formula
(i.e. the flux formula is continuous at the cell boundary)
CAAM 452 Spring 2005
cont
Using this notation the scheme becomes:








This is known as the flux formulation with piecewise
reconstruction.
( )
( ) ( )
( )
1
1 1 1
1/ 2 1/ 2
1/ 2 1/ 2
1 1
where:
1
,
2
n
n
n n n n
i i i i
t
n
i i
t t
n n
i i
dt
q q F F
dx
F f q x t dt
dt
u
uq dx udt o
+
+ + +
+

=

= +
=
= +
}
CAAM 452 Spring 2005
cont
So far we have assumed u>0 but we can generalize this for
u<0 using the same approach as before:




To simplify this we write it as:
( )
( )
1 1
1/ 2
if 0
2
if 0
2
n n
i i
n
i
n n
i i
u
uq dx udt u
F
u
uq dx udt u
o
o

+ >

+ s

( )
1/ 2 1 1/ 2
1/ 2 1
1
2
where:
, ,
2 2
limited version of
n n n n
i i i i
n n n
i i i
u
udt
F u q u q
dx
u u u u
u u
q q
o
o
+

+

| |
= + +
|
\ .
+
= =
=
CAAM 452 Spring 2005
cont
By writing the time interval averaged flux function in
this way:



We are philosophically moving away from a local
cell reconstruction approach towards controlling the
flux contribution from jumps in the averages
between elements.
( )
1/ 2 1 1/ 2
1/ 2 1
1
2
limited version of
n n n n
i i i i
n n n
i i i
u
udt
F u q u q
dx
q q
o
o
+


| |
= + +
|
\ .
=
CAAM 452 Spring 2005
Flux Limiters
The idea is: limit the flux of q between cells and you will
subsequently limit spurious growth in the cell averages near
discontinuities

A general approach is to multiply the jump in cell averages
by a limiting function:
( )( )
1/ 2 1/ 2 1
1
1/ 2
1
where:
1 if 0
1 if 0
n n n n
i i i i
n n
n
I I
i
n n
i i
q q
q q
q q
i u
I
i u
o | u
u

>

=

+ <

CAAM 452 Spring 2005


cont
The theta ratio can be thought of as a smoothness indicator
near the cell interface at x_{i-1/2}.




If the data is smooth we expect the ratio to be approximately 1
(except at extrema)

Near a discontinuity we expect the ratio to be far away from 1.

The flux limiting function, phi, will range between 0 and 2. The
smaller it is, the more limiting is applied to a jump in cell
averages. Above 1 it is being used to steepen the effective
reconstruction.
1
1/ 2
1
1 if 0
1 if 0
n n
n
I I
i
n n
i i
q q
q q
i u
I
i u
u

>

=

+ <

CAAM 452 Spring 2005


cont
Using this formulation we can recover the methods we have seen
before and some new limiters:
( )
( )
( )
( ) ( )
( ) ( )
( ) ( ) ( ) ( )
( )
High-resolution lim
upwind: 0
Lax-Wendroff: 1
Beam-Warming:
1
Fromm: 1
2
minmod: minmod 1,
superbee: max 0,min 1,2 , m
Linear
in 2
it
methods
,
1+
MC: max 0,min ,2,
e
:
s:
2
r
2
| u
| u
| u u
| u u
| u u
| u u u
u
| u u
=
=
=
= +
=
=
| | | | |
=
| |
\ . \ .
( ) van Leer:
1
u u
| u
u
|
|
\ .
+
=
+
CAAM 452 Spring 2005
cont
Using this notation we can write down the scheme
in terms of the flux limiter function ( ):
( )
( )
( )( ) ( )( ) { }
1/ 1 1 / 2 1 2
1
1
1
2
n n
i
n n n
i i
n n n
i i i
n n
i i i i
q q q q q q q q

| | u u
+ +
+


Upwind scheme
flux contibution
Limited downwind
cell interface flux
contribution
Limited upwind
cell interface
flux contribution
( )
( )
( )( ) ( )( ) { }
1/ 1 1 / 2 1 2
1
1
1
2
n n
i
n n n
i
n n n
i i i
n
i i i
n
i i
q q q q q q q q

| u | u

+ +
+
+

=
u>0
u<0
udt
dx
=
CAAM 452 Spring 2005
Hartens Theorem
Theorem: Consider a general method of the form:


for one time step, where the coefficients C and D
are arbitrary values (which in particular may
depend on qbar in some way).

Then provided that the following
conditions are satisfied:
( ) ( )
1
1 1 1
n n n n n n n n
i i i i i i i i
q q C q q D q q
+
+
= +
( ) ( )
1 n n
i i
TV q TV q
+
s
1
0
0
1
n
i
n
i
n n
i i
C i
D i
C D i

>
>
+ s
CAAM 452 Spring 2005
Sweby Diagrams
http://locus.siam.org/fulltext/SINUM/volume-21/0721062.pdf

We need to express the flux limited scheme:


In the form:

And then satisfying the Harten conditions will guarantee the
method is TVD.

An appropriate choice (which we can work with) is:
( ) ( )
1
1 1 1
n n n n n n n n
i i i i i i i i
q q C q q D q q
+
+
= +
( )
( )
( )( ) ( )( ) { }
1/ 1 1 / 2 1 2
1
1
1
2
n n
i
n n n
i i
n n n
i i i
n n
i i i i
q q q q q q q q

| | u u
+ +
+


( )
( )
( )
1/ 2
1 1/ 2
1/ 2
1
2
0
n
i
n n
i i
n
i
n
i
C
D
| u

| u
u
+

+
| |

= +
|
|
\ .
=
CAAM 452 Spring 2005
cont
In this case since the D coefficients are zero and
the Harten TVD conditions reduce to:




This will hold if:
We can summarize this in terms of the minmod
function:
In addition we require:
See LeVeque p 116-118 for details
( )
( )
( )
1
1/ 2
1/ 2 1/ 2
1/ 2
0 1
1
i.e. 0 1
2
n
i
n
i
n n
i i
n
i
C
| u

| u u
u

+
+
+
s s
| |

s + s
|
|
\ .
( )
( )
0 2 and 0 2 0
| u
| u u
u
s s s s >
( ) ( )
0 minmod 2, 2 0 | u u u s s >
( )
0 0 | u u = s
CAAM 452 Spring 2005
cont
i.e. any flux limiting function must satisfy:


to be TVD. Graphically, the shaded region is the TVD region:










Clearly non of these linear limiters generate a TVD scheme.
( ) ( )
0 minmod 2, 2 0 | u u u s s >
u
|
Lax-Wendroff
Fromm Beam-Warming
1 2 3
1
2
( )
( )
( )
( ) ( )
upwind: 0
Lax-Wendroff: 1
Beam-Warming:
1
Fromm: 1
2
| u
| u
| u u
| u u
=
=
=
= +
CAAM 452 Spring 2005
cont
To guarantee second order accuracy and avoid
excessive compression of solutions, Sweby
suggested the following reduced portion of the TVD
region as a suitable range for the flux limiting
function:
u
|
1 2 3
1
2
u
http://locus.siam.org/fulltext/SINUM/volume-21/0721062.pdf

CAAM 452 Spring 2005
Minmod Flux Limiter on Sweby Diagram
u
|
1 2 3
1
2
u
( ) ( ) minmod: minmod 1, | u u =
It is apparent that the minmod flux limiter applies the maximum possible
limiting allowed within the second order TVD region.
(i.e. it will be rather dissipative and smear out discontinuities somewhat
as seen on the right hand side figure).
CAAM 452 Spring 2005
Superbee Flux Limiter on Sweby Diagram
u
|
1 2 3
1
2
( ) ( ) ( ) ( )
superbee: max 0,min 1,2 , min 2, | u u u =
The Superbee limiter applies the minimum limiting and maximum steepening
possible to remain TVD. It is known to suffer from excessive sharpening of
slopes as a result.
On the right we show what happens to a smooth sine wave after 20 periods.
Notice the flattening of the peaks and the steepening of the slopes.
CAAM 452 Spring 2005
MC Flux Limiter on Sweby Diagram
u
|
1 2 3
1
2
u
The MC limiter transitions from upwind (theta<0)
to Fromm (at theta=1/3) then switches to a constant(at theta=3).
This is a compromise between Superbee and minmod
( )
1+
MC: max 0,min ,2,2
2
u
| u u
| | | | | |
=
| | |
\ . \ . \ .
CAAM 452 Spring 2005
van Leer Flux Limiter
( ) van Leer:
1
u u
| u
u
+
=
+
The van Leer limiter charts a careful compromise path through
the Sweby TVD region.
CAAM 452 Spring 2005
Summary of Some
Flux Limiting Functions
Nonlinear second order
TVD limiters
Linear non-TVD limiters
CAAM 452 Spring 2005
Implementation
For u>0 the scheme looks like:



We can easily achieve this in matlab:
( )
( )
( )( ) ( )( ) { }
1/ 1 1 / 2 1 2
1
1
1
2
n n
i
n n n
i i
n n n
i i i
n n
i i i i
q q q q q q q q

| | u u
+ +
+


CAAM 452 Spring 2005
Matlab Version
This is a sample Matlab implementation of a
piecewise linear reconstructed Godunov
approach with a selection of flux limiters.

Available from the course home page:

http://www.caam.rice.edu/~caam452/CodeSnip
pets/fluxlimiter.m

With the initial condition supplied by:

http://www.caam.rice.edu/~caam452/CodeSnip
pets/fluxlimiterexact.m

CAAM 452 Spring 2005
Homework 4
Q1) Using N=80,160,320,640,1280 estimate the solution order of accuracy of the
flux limited scheme:




with flux limiting functions:
i. Fromm
ii. minmod
iii. MC
using initial conditions:
i. sin(pi*x)
ii. sin(pi*x) + (abs(x-.5)<.25);
on the periodic interval [-1,1).

Use the fluxlimiter.m Matlab code from the web page.
You will also need to download fluxlimiterexact.m and minmod.m

Measure error both using the maxmimum norm, l2 norm and finally the
maximum norm with data points near the discontinuity excluded.
Use error plots and tables with discussion to describe your results.
( )
( )
( )( ) ( )( ) { }
1
1 1/ 2 1 1/ 2 1
1
2
n n n n n n n n n n
i i i i i i i i i i
q q q q q q q q

| u | u
+
+ +

=
CAAM 452 Spring 2005
Homework 4 cont
Q2a) Invent your own 2
nd
order TVD flux limiter function (i.e. a
function with range contained in the Sweby TVD region)

Q2b) Modify sweby.m to plot your flux limiter function and
compare with the limiter functions already used.

Q2c) Estimate order of accuracy for a smooth initial condition
to the advection equation

Q2d) Estimate order of accuracy for a discontinuous initial
condition to the advection equation

Q2e) Compare results (with diagrams,results and comments)
and discuss how your limiter differs from the other limiters
we have seen.

Das könnte Ihnen auch gefallen