8/12/2019 CFD03 Flux Functions
1/13
26.03.2004
Sl ide 1 Hchstleistungsrechenzentrum Stut tgar t
C.-D. Munz1, S. Roller2, M. Dumbser1
University of Stuttgart1Institute for Aerodynamics and Gas Dynamics (IAG)
www.iag.uni-stuttgart.de2High-Performance Computing-Center Stuttgart (HLRS)
www.hlrs.de
Introduction to Computational Fluid Dynamics
3
Flux Functions
2
Contents
1. Equations
2. Finite Volume Schemes
3. Linear Advection Equation
4. Systems of Advection Equations
5. Scalar Conservation Law
6. One-dimensional Euler Equations
7. Godunov-Type Schemes
8. Flux-Vector Splitting Schemes
9. Second Order Accuracy MUSCL Schemes
10. Boundary Conditions
11. Finite-Volume Schemes in Multi-Dimensions
12. ENO-/ WENO Schemes
13. Discontinuous Galerkin Finite Element Methods
8/12/2019 CFD03 Flux Functions
2/13
3
7. Godunov Type Schemes
Preliminaries
Simplest flux calculation
( ) ( ) ( )( )112
1,
21 +++
+== iiiii ufufuugg
only stable by adding artifical viscosity
xxxxxx uxux42
,
Jameson scheme for transonic flow
Runge-Kutta time step schemesophisticated choice of dissipation
4
Piecewise constant solution
Solve the local Riemann problems exactly
Average the exact solution
Godunovs Idea
x
u
xi-1/2 xi+1/2 xi+3/2
n
iu
n
2iu
+n
1iu
n
1iu
+
8/12/2019 CFD03 Flux Functions
3/13
5
Formulation as Finite-Volume-Method
numerical flux at
( )n 2/1in
2/1i
n
i
1n
i ggx
tuu +
+
=
n
2/1ig + 2/1ix +
tn
tn+1
xi-1/2 xi+1/2 xi+3/2
xi-1 xi xi+1x
t
6
Numerical flux of the Godunov-method
Properties
exact conservation
nonlinear wave propagation incorporated
adaptivity
))u,u;0(u(fg1iiRP
n
2/1i ++ =
8/12/2019 CFD03 Flux Functions
4/13
7
Approximate Riemann Solution
Definition: w=w(x/t;ul,ur) is defined to be an approximate
Riemann solution, if the following is valid:
1. al smallest, arlargest signal velocity
2. Consistency with the integral conservation
3. Consistency with the integral entropy condition
( ) ( ) ( ) ( )( )lrrl2x
2xrl ufuftuu
2
xdxu,u;txw +
=
( )( ) ( ) ( ) ( )( )lrrl
2x
2x rluFuFtUU
2
xdxu,u;txwU +
small enought
8
Approximate Riemann Solution
Definition: w=w(x/t;ul,ur) is defined to be an approximate
Riemann solution, if the following is valid:
1. al smallest, arlargest signal velocity
2. Consistency with the integral conservation
3. Consistency with the integral entropy condition
( ) ( ) ( ) ( )( )lrrl2x
2xrl ufuftuu
2
xdxu,u;txw +
=
( )( ) ( ) ( ) ( )( )lrrl2x
2xrl uFuFtUU
2
xdxu,u;txwU +
small enought
ur
u2
u1
ul
x2x
2x
{t
t
8/12/2019 CFD03 Flux Functions
5/13
9
Godunov-Type Methods
Definition: A method is calledGodunov-Type Scheme, if it
satisies
where w is an approximative Riemann solution.
Theorem: A Godunov-type scheme may be written in the
conservation form with the numerical flux:
( ) ( )dxu,u;txwx
1dxu,u;txw
x
1u
0
2x
n
1i
n
i
2x
0
n
i
n
1i
1n
i +
+
+
=
( ) ( ) i0
2x
n
1i
n
ii21i ut2
xdxu,u;txw
x
1ufg
+
= ++
10
The Roe Scheme
Roe-Linearization, P. Roe (1981):
1. Alr(u,u) = A(u)
2. Alrdiagonalizable
3. Mean value property:
( )
>
=otherwise
afora 1,33,11,3~ a
16
The Method of Harten, Lax and Van Leer
x
tl
at
x= ra
t
x=
2
x
2
x
lru
Simplest Godunov-type scheme
t
8/12/2019 CFD03 Flux Functions
9/13
17
HLL Approximate Riemann Solution
stateteintermediaa
velocityvelargest waandsmallesta,a
at
xfora
atxafora
at
xfora
u;u;txw
lr
rl
rr
rllr
ll
rl
>
ff
20
Riemann solver
Godunov-scheme Roe-scheme HLL-scheme(Harten, Lax, van Leer)
Exact solution of Exact solution of A priori estimates of
Riemann problem, lin. Riemann problem, the fastest wave speeds,
fixed point problem theory of characteristics
t
x
rarefaction
contact
discontinuity
shock wave
ur
u2u
1
ul
u2
t
xur
u1
ul
t
x
x = alt
ur
u1r
ul
x = arttax 1=
tax 2=
tax 3=
8/12/2019 CFD03 Flux Functions
11/13
21
8. Flux-Vector Splitting Methods
Splitting of the flux
with
non-negative EW
non-positive EW
Numerical flux
( ) ( ) ( )ufufuf + +=
left right
( ) ( )du
ufduA
++ =
( ) ( )du
ufduA
=
11, ++
+ += iiii ufufuug
22
Flux-Vector Splitting of Steger, WarmingEuler Theorem:
Flux of Euler equations is homogenious of degree 1:
Idea: Diagonalization of the Jacobian matrix A(u), splitting of the
diagonal matrices into a positive and a negative one
ufuf = allfor
uuAuf = ( )du
ufduA
8/12/2019 CFD03 Flux Functions
12/13
23
Diagonalization
Splitting of
Splitting of flux:
RRA = 1 ( )cvvcvdiagwith += ,,:
,+ +=
uuAuf
( )++++ = 321 ,,: aaadiagwith
( ) = 321 ,,: aaadiagwith
11, ++
+ += iiii ufufuug
24
( )( )
( )
( ) ( )( )1-2
caa
2
cvaa
2
vvff
vff
2
caavff
aaa122
f
2
141
14
2
2
2
11,11,4
21,11,3
1411,11,2
4121,1
++++
+
++
Steger-Warming flux into x-direction
8/12/2019 CFD03 Flux Functions
13/13
25
MnumberMach
( )
( )
( ) 2cv1-Cmit
vF2
1
12
CFF
vFF
CFF
c
vM,1M
4
cF
11
21,3211,21,4
21,11,3
11,11,2
12
1,1
+=
+
=
=
=
=+=
++
++
++
+ ( )
( )
( ) 2cv1-Cmit
vF2
1
12
CFF
vFF
CFF
c
vM,M1
4
cF
11
21,3211,21,4
21,11,3
11,11,2
12
1,1
=
+
=
=
=
==
1M
righttheFlux to
11 FF =+
lefttheFlux to
0F-1 =
1M1-