109
DRAFT Advanced Computational Fluid Dynamics January - April, 2006 Dr. S.V. Raghurama Rao Assistant Professor AR & DB Centre of Excellence for Aerospace CFD Department of Aerospace Engineering Indian Institute of Science Bangalore 560012, India E-mail : [email protected]

Advanced Computational Fluid Dynamics

Embed Size (px)

Citation preview

Page 1: Advanced Computational Fluid Dynamics

DR

AFTAdvanced Computational Fluid Dynamics

January - April, 2006

Dr. S.V. Raghurama RaoAssistant Professor

AR & DB Centre of Excellence for Aerospace CFDDepartment of Aerospace Engineering

Indian Institute of ScienceBangalore 560012, India

E-mail : [email protected]

Page 2: Advanced Computational Fluid Dynamics

DR

AFT

ii

Page 3: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Contents

1 Introduction 1

2 Compressible Fluid Flows, Their Governing Equations, Models and Ap-proximations 32.1 Navier-Stokes Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2 Euler Equations, Burgers Equation and Linear Convection Equation . . . . 52.3 Linear Convection Equation, Characteristics and Hyperbolicity . . . . . . . 72.4 Burgers Equation, Shock Waves and Expansion Waves . . . . . . . . . . . 112.5 Shock Waves in Supersonic Flows . . . . . . . . . . . . . . . . . . . . . . . 122.6 Mathematical Classification of PDEs . . . . . . . . . . . . . . . . . . . . . 13

2.6.1 First Order PDEs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.6.2 Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.6.3 Second Order PDEs . . . . . . . . . . . . . . . . . . . . . . . . . . 172.6.4 Physical Significance of the Classification . . . . . . . . . . . . . . . 20

2.7 Euler equations and Hyperbolicity . . . . . . . . . . . . . . . . . . . . . . . 242.8 Kinetic Theory, Boltzmann Equation and its Moments as Macroscopic

Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.8.1 B-G-K Model for the collision term . . . . . . . . . . . . . . . . . . 332.8.2 Splitting Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.9 Relaxation Systems for Non-linear Conservation Laws . . . . . . . . . . . . 352.9.1 Chapman-Enskog type expansion for the Relaxation System . . . . 372.9.2 Diagonal form of the Relaxation System . . . . . . . . . . . . . . . 392.9.3 Diagonal form as a Discrete Kinetic System . . . . . . . . . . . . . 412.9.4 Multi-dimensional Relaxation Systems . . . . . . . . . . . . . . . . 43

2.10 A Note on Numerical Methods . . . . . . . . . . . . . . . . . . . . . . . . . 46

3 Analysis of Numerical Methods 473.1 Basics of Finite Difference and Finite Volume Methods . . . . . . . . . . . 47

3.1.1 Upwind Method in Finite Difference Form . . . . . . . . . . . . . . 473.1.2 Upwind Method in Finite Volume Form . . . . . . . . . . . . . . . 50

3.2 Modified Partial Differential Equations . . . . . . . . . . . . . . . . . . . . 54

iii

Page 4: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

iv CONTENTS

3.3 Consistency of Numerical Methods . . . . . . . . . . . . . . . . . . . . . . 583.4 Stability Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

3.4.1 Fourier series in complex waveform . . . . . . . . . . . . . . . . . . 593.4.2 Stability analysis of Numerical Methods [12] . . . . . . . . . . . . . 60

4 Central Discretization Methods for Scalar and Vector Conservation Laws 674.1 A Brief History of Numerical Methods for Hyperbolic Conservation Laws . 674.2 Lax-Friedrichs Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684.3 Lax-Wendroff Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704.4 Two-Step Lax-Wendroff Method and MacCormack Method . . . . . . . . . 74

5 Upwind Methods for Scalar Conservation Laws 775.1 Flux Splitting Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 785.2 Approximate Riemann Solver of Roe . . . . . . . . . . . . . . . . . . . . . 80

5.2.1 Entropy Fix for Roe’s Scheme . . . . . . . . . . . . . . . . . . . . . 835.3 Kinetic Flux Splitting Method . . . . . . . . . . . . . . . . . . . . . . . . . 865.4 Relaxation Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

5.4.1 Relaxation Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . 925.4.2 Discrete Kinetic Scheme . . . . . . . . . . . . . . . . . . . . . . . . 935.4.3 A Low Dissipation Relaxation Scheme . . . . . . . . . . . . . . . . 95

Page 5: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Chapter 1

Introduction

Computational Fluid Dynamics (CFD) is the science and art of simulating fluid flows oncomputers. Traditionally, experimental and theoretical fluid dynamics were the two di-mensions of the subject of Fluid Dynamics. CFD gradually emerged as a third dimensionin the last three decades [1]. The rapid growth of CFD as a design tool in several branchesof engineering, including Aerospace, Mechanical, Civil and Chemical Engineering, is dueto the availability of fast computing power in the last few decades, along with the de-velopment of several intelligent algorithms for solving the governing equations of FluidDynamics. The history of the development of numerical algorithms for solving compress-ible fluid flows is an excellent example of the above process. In this short course, someimportant and interesting algorithms developed in the past three decades for solving theequations of compressible fluid flows are presented.

In the next chapter (2nd chapter), the basic governing equations of compressible fluidflows are described briefly, along with some simplifications which show the essential natureof the convection process. The basic convection process is presented in terms of simplerscalar equations to enhance the understanding of the convection terms. It is the presenceof the convection terms in the governing equations that makes the task of developingalgorithms for fluid flows difficult and challenging, due to the non-linearity. The basicconvection equations are presented in both linear and non-linear forms, which will formthe basic tools for developing and testing the algorithms presented in the later chapters.The hyperbolic nature of the convection equations is described, along with its importantimplications. Some of the numerical methods presented in later chapters depend upon de-riving the equations of compressible flows from Kinetic Theory of gases and as RelaxationApproximations. These basic derivations are also presented in this chapter.

In the third chapter, the basic tools required for analyzing the numerical methods -consistency and stability of numerical methods, modified partial differential equations,numerical dissipation and dispersion, order of accuracy of discrete approximations - arebriefly presented. These tools help the student in understanding the algorithms presentedin later chapters better.

1

Page 6: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2 CHAPTER 1. INTRODUCTION

The fourth chapter presents the central discretization methods for the hyperbolic equa-tions, which were the earliest to be introduced historically. The fifth chapter presents theupwind discretization methods which became more popular than the central discretizationmethods in the last two decades. The four major categories of upwind methods, namely,Riemann Solvers, Flux Splitting Methods, Kinetic Schemes and Relaxation Schemes, arepresented for the scalar conservation equations in this chapter. More emphasis is given tothe alternative formulations of recent interest, namely, the Kinetic Schemes and Relax-ation Schemes. The corresponding numerical methods for vector conservation equationsare presented in the next chapter.

Page 7: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Chapter 2

Compressible Fluid Flows, TheirGoverning Equations, Models andApproximations

2.1 Navier-Stokes Equations

The governing equations of compressible fluid flows are the well-known Navier-Stokesequations. They describe the conservation of mass, momentum and energy of a flowingfluid. In three dimensions, we can write the Navier-Stokes equations in the vector formas

∂U

∂t+

∂G1

∂x+

∂G2

∂y+

∂G3

∂z=

∂G1,V

∂x+

∂G2,V

∂y+

∂G3,V

∂z(2.1)

where U is the vector of conserved variables, defined by

U =

ρ

ρu1

ρu2

ρu3

ρE

(2.2)

G1, G2 and G3 are the inviscid flux vectors, given by

G1 =

ρu1

p + ρu21

ρu1u2

ρu1u3

pu1 + ρu1E

; G2 =

ρu2

ρu2u1

p + ρu22

ρu2u3

pu2 + ρu2E

; G2 =

ρu3

ρu3u1

ρu3u2

p + ρu23

pu2 + ρu3E

(2.3)

G1,V , G2,V and G3,V are the viscous flux vectors, given by

3

Page 8: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

4 Governing Equations and Approximations

G1,V =

0τxx

τxy

τxz

u1τxx + u2τxy + u3τxz − q1

; G2,V =

0τyx

τyy

τyz

u1τyx + u2τyy + u3τyz − q2

G3,V =

0τzx

τzy

τzz

u1τzx + u2τzy + u3τzz − q3

(2.4)

In the above equations, ρ is the density of the fluid, u1, u2 and u3 are the velocities, p isthe pressure and E is the total energy (sum of internal and kinetic energies) given by

E = e +1

2u2

1 + u22 + u2

3 (2.5)

The internal energy is defined by

e =p

ρ (γ − 1)(2.6)

where γ is the ratio of specific heats (γ = CP

CV). The pressure, temperature and the density

are related by the equation of state as p = ρRT where R is the gas constant and T is thetemperature. Here, τij (i=1,2,3, j=1,2,3) represents the shear stresses and qi (i=1,2,3)represents the heat fluxes, the expressions for which are given as follows.

τxx = 2µ∂u1

∂x+ µbulk

(

∂u1

∂x+

∂u2

∂y+

∂u3

∂z

)

(2.7)

τyy = 2µ∂u2

∂y+ µbulk

(

∂u1

∂x+

∂u2

∂y+

∂u3

∂z

)

(2.8)

τzz = 2µ∂u3

∂z+ µbulk

(

∂u1

∂x+

∂u2

∂y+

∂u3

∂z

)

(2.9)

τxy = τyx = µ

(

∂u1

∂y+

∂u2

∂x

)

(2.10)

τxz = τzx = µ

(

∂u1

∂z+

∂u3

∂x

)

(2.11)

τyz = τzy = µ

(

∂u3

∂y+

∂u2

∂z

)

(2.12)

Page 9: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.2. EULER EQUATIONS, BURGERS EQUATION AND LINEAR CONVECTION EQUATION5

q1 = −k∂T

∂x, q2 = −k

∂T

∂y, q3 = −k

∂T

∂z(2.13)

where µ is the coefficient of viscosity and µbulk is the bulk viscosity coefficient defined by

µbulk = −2

3µ and k is the thermal conductivity.

2.2 Euler Equations, Burgers Equation and Linear

Convection Equation

A simplification which is often used is the inviscid approximation in which the viscous andheat conduction effects are neglected. This approximation is valid in large parts of thefluid flows around bodies, except close to the solid surfaces where boundary layer effectsare important. The equations of inviscid compressible flows, called Euler equations, areobtained by neglecting the right hand side of the Navier-Stokes equations (2.1). In thiscourse, we shall often use the Euler equations and their further simplifications.

Consider the 1-D Navier Stokes equations given by

∂U

∂t+

∂G

∂x=

∂GV

∂x(2.14)

where

U =

ρ

ρu

ρE

, G =

ρu

p + ρu2

pu + ρuE

and GV =

uτ − q

(2.15)

Here, τ is the 1-D component of the stress tensor and q is the corresponding componentof the heat flux vector. They are defined for this 1-D case by

τ =4

∂u

∂xand q = −k

∂T

∂x(2.16)

where µ is the viscosity of the fluid and k is the thermal conductivity. Let us make thefirst simplifying assumption of neglecting the viscosity and heat conduction. Then, weobtain the 1-D Euler equations as

∂U

∂t+

∂G

∂x= 0 (2.17)

Let us now make the second assumption that the temperature is constant, T = T0.Therefore, the equation of state becomes p = ρRT0 = ρa2 where a2 = RT0, is the speedof sound. Since we have assumed that the fluid flow is isothermal, we do not need theenergy equation as the temperature gradients are zero and there is no heat transfer by

Page 10: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

6 Governing Equations and Approximations

conduction or convection (neglecting radiation). Therefore, we will be left with the massand momentum conservation equations as

∂ρ

∂t+

∂ (ρu)

∂x= 0 (2.18)

and∂ (ρu)

∂t+

∂ (p + ρu2)

∂x= 0 (2.19)

Expanding the momentum equation, we can write

ρ∂u

∂t+ u

∂ρ

∂t+

∂p

∂x+ ρu

∂u

∂x+ u

∂ (ρu)

∂x= 0 (2.20)

Using the mass conservation equation, we can simplify the above equation as

∂u

∂t+ u

∂u

∂x+

1

ρ

∂p

∂x= 0 (2.21)

The inviscid fluid flow involves two distinct phenomena, namely, the fluid transport (con-vection) along the streamlines and the pressure (acoustic) signals traveling in all directions.To isolate the convection process from the acoustic signal propagation, let us now makethe next assumption that the the pressure is constant throughout our 1-D domain and sothe pressure gradient term disappears, yielding

∂u

∂t+ u

∂u

∂x= 0 (2.22)

This equation is known as the inviscid Burgers equation. Let us now put the aboveequation in conservative form as

∂u

∂t+

∂g (u)

∂x= 0 where g (u) =

u2

2(2.23)

So, the flux g (u) is a quadratic function of the conservative variable u. That is, g (u)is not a linear function of u and hence it is a non-linear equation. The non-linearity ofthe convection terms is one of the fundamental difficulties in dealing with Navier–Stokesequations. For the sake of simplicity, let us linearize the flux g (u) in the above equationas

g (u) = cu where c is a constant (2.24)

We are doing this linearization only to study and understand the basic convection terms.When we try to solve the Euler or Navier–Stokes equations, we will use only the non-linear equations. With the above assumption of a linear flux, the inviscid Burgers equationbecomes

∂u

∂t+ c

∂u

∂x= 0 (2.25)

Page 11: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.3. LINEAR CONVECTION EQUATION, CHARACTERISTICS AND HYPERBOLICITY7

This is called as the linear convection equation. So, the linear convection equation rep-resents the basic convection terms in the Navier–Stokes equations. The researchers inCFD use the numerical solution of the linear convection equation as the basic buildingblock for developing numerical methods for Euler or Navier–Stokes equations. The Ki-netic Schemes and the Relaxation Schemes, the two alternative numerical methodologieswhich will be presented in this course, also exploit this strategy, but in a different manner,as the Boltzmann equation and the Discrete Boltzmann equation, without the collisionterm, are just linear convection equations.

2.3 Linear Convection Equation, Characteristics and

Hyperbolicity

To understand the nature of the linear convection equation better, let us first find out itssolution. The linear convection equation

∂u

∂t+ c

∂u

∂x= 0 (2.26)

is a first order wave equation, also called as advection equation. It is a first order hyperbolicpartial differential equation. Hyperbolic partial differential equations are characterised byinformation propagation along certain preferred directions. To understand this better, letus derive the exact solution of (2.26), given the initial condition

u(x, t = 0) = u0(x) (2.27)

Let us now use the method of characteristics to find the value of the solution, u(x, t), ata time t > 0. The method of characteristics uses special curves in the x − t plane alongwhich the partial differential equation (PDE) becomes an ordinary differential equation(ODE). Consider a curve in the x − t plane, given by (x(t), t). The rate of change of u

t

(x(t),t)

(0,0) x

Figure 2.1: 3-Point Stencil

Page 12: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

8 Governing Equations and Approximations

along this curve is given byd

dtu (x (t) , t). Using chain rule, we can write

d

dtu (x (t) , t) =

∂xu (x (t))

dx

dt+

∂tu (x (t) , t) (2.28)

which can be written simply as

du

dt=

∂u

∂t+

dx

dt

∂u

∂x(2.29)

The right hand side of (2.29) looks similar to the left hand side of the linear convection

equation (2.26), i.e.,∂u

∂t+ c

∂u

∂x. Therefore, if we choose

c =dx

dt(2.30)

then (2.26) becomesdu

dt= 0, which is and ODE! The curve (x (t) , t), therefore, should be

defined bydx

dt= c with x (t = 0) = xo (2.31)

The solution of (2.31) is given byx = ct + k (2.32)

where k is a constant. Using the initial condition x (t = 0) = x0, we get

x0 = k (2.33)

Thereforex = ct + x0 (2.34)

The curve x = ct + x0 is called the characteristic curve of the equation∂u

∂t+ c

∂u

∂x= 0

(2.26), or simply as the characteristic. Along the characteristic, the PDE,∂u

∂t+ c

∂u

∂x= 0,

becomes and ODE,du

dt= 0. The solution of this ODE is u = constant. Therefore, along

the characteristic, the solution remains a constant. Thus, if we know the solution at thefoot of the characteristic (at x0), which is the initial condition, we can get the solutionanywhere on the characteristic, that is, u (x, t). Using (2.34), we can write

x0 = x − ct (2.35)

Thereforeu (x, t) = u0 (x0) = u0 (x − ct) (2.36)

Page 13: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.3. LINEAR CONVECTION EQUATION, CHARACTERISTICS AND HYPERBOLICITY9

We can write (2.34) as

ct = x − x0 or t =1

cx − x0

cor t =

1

cx − k (2.37)

where k is a constant. Therefore, we can sketch the characteristics in the x − t plane.

They are parallel straight lines with slope1

c. For non-linear PDES, characteristics need

slope

=1/c

t

x

Figure 2.2: 3-Point Stencil

not be parallel straight lines.Let us now derive the solution (2.36) in a mathematical way. For the PDE which is

the linear convection equation given by∂u

∂t+ c

∂u

∂x= 0, let us choose

dx

dt= c. Its solution

is x = ct + x0 or x0 = x− ct. This suggests a transformation of coordinates from (x, t) to(s, τ) where

s = x − cτ andτ = t (2.38)

The inverse transformation is given by

x = s + cτand t = τ (2.39)

Therefore, the transformation is from u (x, t) to u (s, τ). Since the function is the samein different coordinate systems

u (x, t) = u (s, τ) (2.40)

We can now write

du

dτ=

∂u

∂t

∂t

∂τ+

∂u

∂x

∂x

∂τ=

∂u

∂t

∂t

∂τ+

∂u

∂x

∂x

∂τ(since u = u) (2.41)

From (2.39), we have∂t

∂τ= 1 and

∂x

∂τ= c (2.42)

Page 14: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

10 Governing Equations and Approximations

Thereforedu

dτ=

∂u

∂t+ c

∂u

∂x(2.43)

But, from (2.26),∂u

∂t+ c

∂u

∂x= 0. Therefore

du

dτ= 0 (2.44)

The initial condition is u (x, 0) = u0 (x). Therefore

u (s, τ = 0) = u0 (s) (2.45)

Solving (2.44), we getu (τ) = k = constant (2.46)

Using (2.45), we obtain

u (τ = 0) = u0 (s) = k or k = u0 (s) (2.47)

Thereforeu (s, τ) = u0 (s) (2.48)

Since u = u, we obtainu (x, t) = u0 (s) (2.49)

Using (2.38), we can write

u (x, t) = u0 (x − ct) = u (x − ct, t = 0) (2.50)

For a time interval t to t + ∆t, we can write

u (x, t + ∆t) = u (x − c∆t, t) (2.51)

If we consider a point xj with neighbours xj−1 and xj+1 to the left and right sides of xj

�������� ����

���� ��

� �� � ��

����

�����������������������������

�����������������������������

�� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �

� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �� � � � � �

� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �

� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �

∆ ∆t t

∆ ∆

t+∆t

x x xx xj j+1j−1

c c t

c<0c>0

Figure 2.3: 3-Point Stencil

respectively, the foot of the characteristic can fall on the left or right side of xj dependingon the sign of c. Since the information travels a distance of δx = ct along the characteristicduring a time t (from t = 0), c is the speed with which information propagates along thecharacterstics, and is called characteristic speed or wave speed. Therefore, we can seethat the sign of c determines the direction of information propagation, with informationcoming from the left if c > 0 and from right if c < 0.

Page 15: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.4. BURGERS EQUATION, SHOCK WAVES AND EXPANSION WAVES 11

2.4 Burgers Equation, Shock Waves and Expansion

Waves

Consider the Burger’s equation

∂u

∂t+

∂g (u)

∂x= 0, with g (u) =

1

2u2 (2.52)

Let us check the wave speed for this case. The wave speed is defined by

a (u) =∂g (u)

∂u(2.53)

Therefore, a(u) = u. Consider an initial profile which is monotonically increasing. There-fore as u increases, a(u) increases.

x

u

t=0 t=t t=t1 2

large speed

small speed

Figure 2.4: Formation of expansion waves for Burgers Equation

The larger values of u lead to larger speeds and smaller values of u lead to smallerspeeds. Therefore the upper parts of the profile move faster than the lower parts of theprofile and the profile expands or gets rarefied after some time. This phenomenon leadsto expansion waves or rarefaction waves.

Now, consider an initial profile which is monotonically decreasing, coupled with amonotonically increasing profie of the previous example. On the right part of the profilewhich is monotonically decreasing, as the upper part overtake lower part (due to largerspeed on the top), the gradient becomes infinite and the solution becomes multi-valued.

Let us now recollect the basic features of a function. A function is rule that assignsexactly one real number to each number from a set of real numbers. Such a rule is oftengiven by an algebraic and/or trigonometric expression. A continuous function has nogaps or breaks at any point on its profile. Therefore, discontinuities are not allowed for acontinuous function.

Page 16: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

12 Governing Equations and Approximations

u

x

t=0 t=t t=t t=t1 2 3

solutionunphysicalmultivalued

Figure 2.5: Shock formation to avoid multivalued unphysical solution for Burgers equation

For the non-linear case and for an initial profile which is monotonically decreasing,the function may become multi-valued after some time. Then, the solution ceases to bea function, by definition. Discontinuities may appear and the solution becomes multi-valued. Multivalued functions are avoided on physical grounds. Imagine, for example,the density of a fluid at a point having more than one value at any given time, which isunphysical. Therefore, as multi-valued functions are avoided, discontinuities will appear.These discontinuities are known as shock waves.

2.5 Shock Waves in Supersonic Flows

In the supersonic flows of inviscid fluid flows modeled by Euler equations, shock wavesappear when the flows are obstructed by solid bodies. The appearance of such shockwaves can be explained as follows.

Consider the flow of a fluid over a blunt body, as shown in the following figure. The

Solid BodySubsonic flow(M < 1)

Figure 2.6: Subsonic flow over a blunt body

Page 17: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.6. MATHEMATICAL CLASSIFICATION OF PDES 13

fluid flow consists of moving and colliding molecules. Some of the molecules collide withthe solid body and get reflected. Thus, there is a change in the momenta and energy of themolecules due to their collision with the solid body. The random motion of the moleculescommunicates this change in momenta and energy to other regions of the flow. At themacroscopic level, this can be explained as the propagation of pressure pulses. Thus,the information about the presence of the body will be propagated throughout the fluid,including directly upstream of the flow, by sound waves. When the incoming fluid flowhas velocities which are smaller than the speed of the sound (i.e., the flow is subsonic),then the sound waves can travel upstream and the information about the presence of thesolid body will propagate upstream. This leads to the turning of the streamlines muchahead of the body, as shown in the figure (2.6).

Now, consider the situation in which the fluid velocities are larger than the speed ofthe sound (i.e., the flow is supersonic). The information propagation by sound waves is

Solid Body

Shock Wave

Supersonic Flow M<1(M > 1)

Figure 2.7: Supersonic flow over a blunt body with the formation of a shock wave

now not possible upstream of the flow. Therefore, the sound waves tend to coalesce ata short distance ahead of the body. This coalescence forms a thin wave, known as theshock wave, as shown in the figure (2.7). The information about the presence of the solidbody will not be available ahead of the shock wave and, therefore, the streamlines do notchange their direction till they reach the shock wave. Behind the shock wave, the flowbecomes subsonic and the streamlines change their directions to suit the contours of thesolid body. Thus, the shock waves are formed when the a supersonic flow is obstructedby a solid body.

2.6 Mathematical Classification of PDEs

We can derive several simpler equations from the Navier-Stokes equations : pure con-vection equation, convection-diffusion equation, pure diffusion equation and the wave

Page 18: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

14 PDEs and Classification

equations of first order and second order. These equations, including the Navier-Stokesequations, are Partial Differential Equations (PDEs). To understand these equations bet-ter, we shall study their mathematical and physical behaviour. Let us start with theclassification of PDEs.

2.6.1 First Order PDEs

General form of a first order linear PDE is

A(x, y)∂u

∂x+ B(x, y)

∂u

∂y+ C(x, y)u = D(x, y) (2.54)

Let us simplify (2.54) by assuming C = D = 0.

∴ A(x, y)∂u

∂x+ B(x, y)

∂u

∂y= 0 (2.55)

The above equation is a first order homogeneous partial differential equation (PDE). Letus look for the solutions of the form

u(x, y) = f(w) (2.56)

where w is some combination of x and y such that as x and y change, w remains constant.Substituting (2.56) in (2.55), we obtain

A(x, y)∂f(w)

∂w

∂w

∂x+ B(x, y)

∂f(w)

∂w

∂w

∂y= 0

∂f(w)

∂w

[

A(x, y)∂w

∂x+ B(x, y)

∂w

∂y

]

= 0 (2.57)

From the above equation, either df(w)dw

= 0 or A df

dx+ B df

dy= 0. Since we assumed that f is

a function of w only, df

dwneed not be zero. Therefore, the only possibility for (2.57) to be

true is to have

A(x, y)∂w

∂x+ B(x, y)

∂w

∂y= 0 (2.58)

Let us now seek the solutions of (2.58) such that w remains constant as x and y vary.Therefore, require

dw = 0 or∂w

∂xdx +

∂w

∂ydy = 0 (2.59)

From (2.58) and (2.59) (which look alike), we get

A(x, y)∂w

∂x= −B(x, y)

∂w

∂y(2.60)

Page 19: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Characteristics 15

and∂w

∂xdx = −∂w

∂ydy (2.61)

Dividing (2.61) by (2.60), we get

dx

A(x, y)=

dy

B(x, y)(2.62)

Therefore, f(w) will be constant along those lines (x, y) that satisfy (2.62). On integrating(2.62) for given A(x, y) and B(x, y), we get a functional relation between x and y, whichcan be taken as w. Thus, we can get

f(w) = f(w(x, y))

∴ u(x, t) = f(w) = f(w(x, y)) (2.63)

which will be the solution.Example:

∂u

∂t+ c

∂u

∂x= 0 (2.64)

∴ A = 1 and B = c

dt

A=

dx

Bgives

dt

1=

dx

c

∴ dx = c dt (2.65)

Integrating, we getx = c t + k where k is a constant. (2.66)

∴ w = k = x − ct (2.67)

∴ u(x, t) = f(w) = f(x − ct) (2.68)

where f is an arbitrary function which must be determined by initial conditions for thePDE, which is (2.64) in this case. In a similar way, the non-homogeneous first order PDE,where C and D are non-zero, can also be solved [2].

2.6.2 Characteristics

Let us rewrite the general form of first order linear PDE (2.54) as

A(x, y)∂u

∂x+ B(x, y)

∂u

∂y= C(x, y, u) (2.69)

Page 20: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

16 PDES and Classification

Let us now solve (2.69) for u(x, y) subject to the boundary condition

u(x, y) = φ(s) (2.70)

Let the boundary condition (2.70) be specified in the x− y plane along a boundary curvewhich is described in parametric form as

x = x(s) and y = y(s) (2.71)

Here, s in the arc length along the boundary. Along the boundary represented by (2.71),the variation of u is given by

du

ds=

∂u

∂x

dx

ds+

∂u

∂y

dy

ds(2.72)

Using (2.70), (2.72) can be written as

du

ds=

∂u

∂x

dx

ds+

∂u

∂y

dy

ds=

ds(2.73)

We now have two equations (2.69) and (2.73) with two unknowns∂u

∂xand

∂u

∂y. We can

write (2.73) and (2.69) as∂u

∂x

dx

ds+

∂u

∂y

dy

ds=

ds(2.74)

and∂u

∂xA +

∂u

∂yB = C (2.75)

or

dx

ds

dy

ds

A B

∂u

∂x

∂u

∂y

=

ds

C

(2.76)

We can solve (2.76) to obtain the unknowns∂u

∂xand

∂u

∂yas

∂u

∂x

∂u

∂y

=

dx

ds

dy

ds

A B

−1

ds

C

(2.77)

The solution is not possible if the determinant of the matrix, whose inverse is required,

is zero since M−1 =NT

|M | where NT is the transpose of the matrix N of cofactors of M .

Page 21: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Second Order PDEs 17

The determinant is zero ifdx

ds

dy

ds

A B

= 0 (2.78)

or

Bdx

ds− A

dy

ds= 0

∴ Bdx

ds= A

dy

ds

dy

dsdx

ds

=B

A

dy

dx=

B

A

dx

A=

dy

B(2.79)

We have already seen that (2.79) represents that curve in the (x, y) plane in which w isa constant with (u(x, y)) = f(w). Such curves are called characteristic curves or simply

characteristics. Note also that the derivatives of the solution,∂u

∂xor

∂u

∂ymay not exist

along the characteristics, since w = constant along the characteristics.

∂u

∂x=

∂xf(w) =

∂f

∂w

∂w

∂x=

∂f

∂w0 = 0

∂u

∂y=

∂yf(w) =

∂f

∂w

∂w

∂y=

∂f

∂w0 = 0

Therefore, discontinuities in solution may exist along the characteristics. That is why we

can solve for∂u

∂xand

∂u

∂yeverywhere in the (x, y) domain except along the characteristics

(when the determinant is zero (2.78)).

2.6.3 Second Order PDEs

The general form of a second order PDE is

A(x, y)∂2u

∂x2+ B(x, y)

∂2u

∂x∂y+ C(x, y)

∂2u

∂y2= D(x, y, u,

∂u

∂x,∂u

∂y) (2.80)

Page 22: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

18 PDES and Classification

Apart from the general form of the second order PDE, we can obtain two more relation-

ships by applying the chain rule to the total derivatives of∂u

∂xand

∂u

∂y[3].

A∂2u

∂x2+ B

∂2u

∂x∂y+ C

∂2u

∂y2= D (2.81)

∂2u

∂x2dx +

∂2u

∂x∂ydy = d

(

∂u

∂x

)

(2.82)

∂2u

∂x∂ydx +

∂2u

∂y2dy = d

(

∂u

∂y

)

(2.83)

or

A B C

dx dy 0

0 dx dy

∂2u

∂x2

∂2u

∂x∂y

∂2u

∂y2

=

D

d

(

∂u

∂x

)

d

(

∂u

∂y

)

(2.84)

The equation (2.84) can be solved for∂2u

∂x2,

∂2u

∂x∂yand

∂2u

∂y2everywhere in the (x, y) domain,

except on a curve where the determinant in (2.84) is zero, which will be the characteristiccurve. The zero determinant condition is

A B C

dx dy 0

0 dx dy

= 0 (2.85)

∴ A[

(dy)2 − dx 0]

− B [dxdy − 0] + C[

(dx)2 − dy 0]

= 0 (2.86)

∴ A (dy)2 − B (dxdy) + C (dx)2 = 0 (2.87)

Let us divide by (2.87) by (dx)2 to obtain

A

(

dy

dx

)2

− Bdy

dx+ C = 0 (2.88)

This is the equation of the curve along which the second partial derivatives of u cannotbe defined. The solution to (2.88) is

dy

dx=

−(−B) ±√

(−B)2 − 4AC

2A(2.89)

dy

dx=

B ±√

(B)2 − 4AC

2A(2.90)

Page 23: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Second Order PDEs 19

The curves in the (x, y) domain satisfying (2.88) are called the characteristics of thePDE (2.80). The characteristics have tangents at each point given by (2.88), when A 6= 0.The equation (2.90) has real solutions when B2 − 4AC > 0 and complex roots whenB2 − 4AC < 0. The second order PDEs are classified accordingly as

• Hyperbolic if B2 − 4AC > 0

• Parabolic if B2 − 4AC = 0

• Elliptic if B2 − 4AC < 0

When the PDEs are hyperbolic (B2 − 4AC > 0), the equation (2.88) defines twofamilies of real curves in (x, y) plane. When the PDEs are parabolic (B2−4AC = 0) theequation (2.88) defines one family of real curves in the (x, y) plane. When the PDEs areelliptic (B2−4AC < 0) the equation (2.88) defines two families of complex curves. Notethat if A,B & C are not constant, the equation may change from one type to another atdifferent points in the domain. This classification is similar to the classification of generalsecond degree equations in analytical geometry. Recall that the general equation for aconic section in analytical geometry is given by

ax2 + bxy + cy2 + dx + ey = f (2.91)

and the conic section takes different shapes as given below.

The conic is a hyperbola if b2 − 4ac > 0 (2.92)

The conic is a parabola if b2 − 4ac = 0 (2.93)

The conic is an ellipse if b2 − 4ac < 0 (2.94)

• Example 1 : Consider wave equation

∂2u

∂t2= c2∂2u

∂x2

∂2u

∂x2− 1

c2

∂2u

∂t2= 0

∴ A = 1, B = 0 & C = − 1

c2

dt

dx=

0 ±√

(0)2 − 4 × 1 × (−1

c2)

2 × 1= ±1

c

dx

dt= ±c

∴ x = ct + k & x = −ct + k (k = constant)

Here, x − ct = k & x + ct = k are the characteristics. Since B2 − 4AC > 0, theequation is hyperbolic.

Page 24: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

20 PDES and Classification

• Example 2 : Consider the pure diffusion equation

∂u

∂t= α

∂2u

∂x2

∴ α∂2u

∂x2=

∂u

∂t

∴ A = α,B = 0 & C = 0

∴ B2 − 4AC = 0 − 4α · 0 = 0

Therefore the equation is parabolic.

• Example 3 : Consider the Laplace equation in 2-D

∂2u

∂x2+

∂2u

∂y2= 0 (2.95)

Here, A = 1, B = 0 and C = 1. ∴ B2 − 4AC = 0− 4 · 1 · 1 = −4. ∴ B2 − 4AC < 0.This equation is elliptic.

2.6.4 Physical Significance of the Classification

The mathematical classification introduced in the previous sections, leading to the cat-egorization of the equations of fluid flows and heat transfer as hyperbolic, parabolic orelliptic, is significant as different types of equations represent different physical behaviourand demands different types of treatment analytically and numerically.

Hyperbolic PDEs

Hyperbolic equations are characterized by information propagation along certain preferreddirections. These preferred directions are related to the characteristics of the PDEs.Consequently, there are domains of dependence and zones of influence in the physicaldomains where the hyperbolic equations apply. The linear convection equation, the non-linear inviscid Burgers equation, the Euler equations, the inviscid isothermal equationsand the isentropic equations are all hyperbolic equations. As an illustration, let us considerthe wave equation (which describes linearized gas dynamics, i.e., acoustics), given by

∂2u

∂t2= c2∂2u

∂x2(2.96)

Page 25: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Physical Significance of the Classification 21

As in a previous section for second order PDE, we can write the above equation as

1 0 −c2

dt dx 00 dt dx

∂2u

∂t2

∂2u

∂x∂t

∂2u

∂x2

=

0

d

(

∂u

∂t

)

d

(

∂u

∂x

)

(2.97)

Setting the determinant of the coefficient matrix in the above equation to zero and solvingfor the slopes of the characteristic paths, we obtain

(dx)2 − c2 (dt)2 = 0 (2.98)

Solving the above quadratic equation, we get

dx

dt= ±c or x = x0 ± ct (2.99)

Therefore, there are two real characteristics associated with the wave equation consideredhere. The information propagation along the characteristics is with the speed

a =dx

dt= ±c (2.100)

The domain of the solution for the wave equation, which is a typical hyperbolic partialdifferential equations (PDE), is shown in the figure (2.8).

Figure 2.8: Domain of the Solution for a Hyperbolic PDE (Wave equation)

Page 26: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

22 PDES and Classification

Parabolic PDEs

The parabolic equations are typically characterized by one direction information prop-agation. Unsteady heat conduction equation, unsteady viscous Burgers equation andunsteady linear convection-diffusion equation are examples of parabolic equations. Con-sider the unsteady heat conduction equation in 1-D, given by

∂T

∂t= α

∂2T

∂x2(2.101)

As done before, we can write this equation as

α 0 0dx dt 00 dx dt

∂2T

∂x2

∂2T

∂x∂t

∂2T

∂t2

=

∂T

∂t

d

(

∂T

∂x

)

d

(

∂T

∂t

)

(2.102)

Setting the determinant of the coefficient matrix to zero and solving for the slopes of thecharacteristic paths, we get

α(dt)2 = 0dt = ±0

t = constant(2.103)

Thus, there are two real but repeated roots associated with the characteristic equationfor unsteady conduction equation in 1-D. The characteristics are lines of constant time.The speed of information propagation (from the above equations) is

dx

dt=

dx

±0= ±∞ (2.104)

Thus, the information propagates at infinite speed along the characteristics (lines of con-stant t). The domain of the solution for a typical parablic PDE (unsteady heat conductionequation) is shown in figure (2.9).

Elliptic PDEs

In contrast to the hyperbolic equations, the elliptic equations are characterized by infor-mation propagation having no preferred directions. Therefore, the information propagatesin all directions. A typical example is the steady state heat conduction in a slab. The

Page 27: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Physical Significance of the Classification 23

Figure 2.9: Domain of Solution for a Parabolic PDE (unsteady heat conduction equation)

pure diffusion equations in steady state are elliptic equations. Consider the steady heatconduction equation in 2-D, given by

∂2T

∂x2+

∂2T

∂y2= 0 (2.105)

As done before, the above equation can be written as

1 0 1dx dy 00 dx dy

∂2T

∂x2

∂2T

∂x∂y

∂2T

∂y2

=

0

d

(

∂T

∂x

)

d

(

∂T

∂y

)

(2.106)

Setting the determinant to zero and solving for the characteristics, we obtain

1 (dy)2 + 1 (dx)2 = 0 ordy

dx= ±

√−1 (2.107)

Thus, the roots are complex and there are no real characteristics. That means, there areno preferred directions for information propagation. The domain of dependence and therange of influence both cover the entire space considered. The domain of solution for atypical elliptic equation (steady state heat condution equation in 2-D) is shown in figure(2.10).

Page 28: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

24 PDES and Classification

Figure 2.10: Domain of Solution for an Elliptic PDE (steady heat conduction equation)

Not all equations can be classified neatly into hyperbolic, elliptic or parabolic equa-tions. Some equations show mixed behaviour. Steady Euler equations are hyperbolic forsupersonic flows (when Mach number is greater than unity) but are elliptic for subsonicflows (when Mach number is less than unity). The mathematical behaviour of the fluidflow equations may change from one point to another point in the flow domain.

2.7 Euler equations and Hyperbolicity

We have seen how a scalar equation (linear convection equation in this case) is hyperbolic,characterized by preferred directions of information propagation. Let us now consider thevector case for hyperbolicity.

Definition of hyperbolicity for systems of PDEs

Consider a system of PDEs∂U

∂t+

∂G

∂x= 0 (2.108)

where

U =

U1

U2...

Un

G =

G1

G2...

Gn

(2.109)

Page 29: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.7. EULER EQUATIONS AND HYPERBOLICITY 25

Here, U is the vector of conserved variables (also called as the field vector) and G is thevector of fluxes (called as the flux vector), each component of which is a function of U .Usually, in fluid dynamics, G is a non-linear function of U . Let us rewrite the abovesystem of equations in a form similar to the linear convection equation (in which the timeand space derivatives are present for the same conserved variable) as

∂U

∂t+

∂G

∂U

∂U

∂x= 0 (2.110)

or∂U

∂t+ A

∂U

∂x= 0 where A =

∂G

∂U(2.111)

The above form of system of PDEs (2.111) is known as the quasi-linear form. Note that A

will be a n×n matrix. A system of partial differential equations (2.111) is hyperbolic if thematrix A has real eigenvalues and a corresponding set of linearly independent eigenvectors.If the eigenvectors are also distinct, the system is said to be strictly hyperbolic. If thesystem is hyperbolic, then the matrix A can be diagonalised as

A = RDR−1 (2.112)

where R is the matrix of eigenvectors and D is the matrix of eigenvalues.

D =

λ1 · · · 00 · · · 0...

......

0 · · · λn

, R = [R1, · · · , Rn] , ARi = λiRi (2.113)

Therefore, we can define a hyperbolic system of equations as a system with real eigenvaluesand diagonalisable coefficient (flux Jacobian) matrix.

Linear systems and characteristic variables

If A is constant, then the hyperbolic system∂U

∂t+ A

∂U

∂x= 0 is linear. If we introduce a

characteristic variable asW = R−1U (2.114)

then the hyperbolic system will be completely decoupled. If A is a constant, then so isR. Therefore

∂U

∂t= R

∂W

∂tand

∂U

∂x= R

∂W

∂x(2.115)

Therefore

R∂W

∂t+ AR

∂W

∂x= 0 (2.116)

Page 30: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

26 PDES and Classification

or∂W

∂t+ R−1AR =

∂W

∂x= 0 (2.117)

Therefore∂W

∂t+ D

∂W

∂x= 0 (2.118)

1-D Euler equations

The 1-D Euler equations∂U

∂t+

∂U

∂x= 0 (2.119)

which can be written in quasi-linear form as

∂U

∂t+ A

∂U

∂x= 0 where A =

∂G

∂U(2.120)

A =

0 1 0γ − 3

2u2 (3 − γ) u γ − 1

γ − 2

2u3 − a2u

γ − 1

3 − 2γ

2u2 +

a2

γ − 1γu

(2.121)

In terms of the total enthalpy H = h +1

2u2 = e +

p

ρ+

1

2u2 =

p

ρ (γ − 1)+

p

ρ+

1

2u2

A =

0 1 0γ − 3

2u2 (3 − γ) u γ − 1

u

{

γ − 1

2u2 − H

}

H − (γ − 1) u2 γu

(2.122)

The eigenvalues of A are

λ1 = u − a, λ2 = u and λ3 = u + a (2.123)

and the corresponding eigenvectors are

R1 =

1u − a

H − ua

, R2 =

1u

1

2u2

and R3 =

1u + a

H + ua

(2.124)

Therefore, we can see that the 1-D Euler equations are (strictly) hyperbolic. So, aremulti-dimensional Euler equations.

Page 31: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Kinetic Theory of Gases 27

In this short course, apart from the traditional numerical methods for solving theequations of compressible flows, alternative methodologies based on the Kinetic The-ory of Gases, called as Kinetic Schemes and a relatively new strategy of converting thenon-linear conservation equations into a linear set of equations known as the RelaxationSystems, along with the related numerical methods known as the Relaxation Schemes,will be presented. The next two sections are devoted to the presentation of the governingequations for these two strategies.

2.8 Kinetic Theory, Boltzmann Equation and its Mo-

ments as Macroscopic Equations

Consider the flow of air over a solid body, say a wing of an aeroplane. The variablesof interest are the fluid velocities and the fluid density, apart from the thermodynamicvariables like pressure and temperature, as they can be used to calculate the requireddesign parameters like lift, drag, thrust and heat transfer coefficients. To obtain thesevariables, we need to solve the Euler or Navier-Stokes equations, which is the subjectmatter of traditional CFD and some algorithms for doing so will be presented in thenext chapters. We can also consider the fluid flow from a microscopic point of view,considering the flow of molecules and their collisions. Obviously, both the microscopicand the macroscopic approaches must be related, as we are referring to the same fluidflow. The macroscopic variables can be obtained as statistical averages of the microscopicquantities. This is the approach of the Kinetic Theory of Gases. Similar to the Navier-Stokes equations, which are obtained by applying Newton’s laws of motion to the fluids, wecan apply Newton’s laws of motion to the molecules and, in principle, solve the resultingequations. But, it is practically impossible to solve the large number of equations thatresult, as there will be 1023 molecules in a mole of a gas. Neither can we know the initialconditions for all the molecules. Therefore, a better way of describing the fluid flow at themicroscopic level is by taking statistical averages and the Kinetic Theory of Gases is basedon such a strategy. In the Kinetic Theory, the movement of the molecules is describedby probabilities instead of individual paths of molecules. The macroscopic quantities ofinterest, like density, pressure and velocity, are obtained by taking statistical averagesof the molecular quantities. These averages are taken over macroscopically infinitesimalbut microscopically large volumes. These averages are also known as moments and thisprocess of taking averages is called as taking moments.

Consider a small volume ∆V (∆V = ∆3r) in the physical space (x,y,z). Let thenumber of molecules in this volume be ∆3N . Therefore, the local number density, whichrepresents the number of molecules per unit volume, is given by

n (r) = Lim∆3r→0

∆3N

∆3r(2.125)

Page 32: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

28 Governing Equations and Approximations

Therefore, we can write

d3N = n (r) d3r (2.126)

and we can calculate the number of molecules if the local number density (or the molec-ular distribution) is known. If we consider a phase space, which has three additionalcoordinates as the molecular velocities apart from three physical coordinates, we canwrite

d6N = fp (r,v) d3rd3v = fp (r,v) dxdydz dv1dv2dv3 (2.127)

where fp(r,v) is the local number density in the phase space, known as the phase spacedistribution function. Therefore, if the phase space distribution function is known, we cancalculate the number of molecules by integrating the phase space distribution function(thereby obtaining the physical number density) as

n (r) =

∫ ∞

−∞

∫ ∞

−∞

∫ ∞

−∞

fp (r,v) d3v (2.128)

which we denote by a simpler notation as

n = 〈fp〉 (2.129)

Multiplying both sides of the above equation by the mass of the molecules, m, and iden-tifying the density of the gas as the number of molecules multiplied by the mass of themolecules, we obtain

mn = ρ = 〈mfp〉 = 〈f〉 where f = mfp (2.130)

Similarly, the average or mean speed of the molecules can be written as

n (r) 〈v〉 =

∫ ∞

−∞

∫ ∞

−∞

∫ ∞

−∞

vfp (r,v) d3v (2.131)

or

n〈v〉 = 〈vfp〉 (2.132)

Multiplying by the mass, we obtain

nm〈v〉 = 〈vmfp〉 (2.133)

or

ρ〈v〉 = 〈vf〉 (2.134)

Denoting the average molecular velocity 〈v〉 by u and recognizing it as the fluid velocity,we can write

ρu = 〈vf〉 (2.135)

Page 33: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Kinetic Theory of Gases 29

Similarly, we can obtain an average for the kinetic energy as

ρE = 〈12v2f〉 (2.136)

Thus, we have the expressions

ρ = 〈f〉 ; ρu = 〈vf〉 ; ρE = 〈12v2f〉 (2.137)

which give the macroscopic quantities as averages (also called as moments) of the molec-ular velocity distribution function. In addition to the above moments, we can also derivethe following additional moments for the Pressure tensor and the heat flux vector.

Pij = pδij − τij = 〈cicjf〉 where c = v − u (2.138)

andqi = 〈ccif〉 (2.139)

The relative velocity c is known by various names as peculiar velocity, random velocity orthermal velocity. Here, δij is the Kronecker delta function, defined by

δij =

{

1 if i = j

0 if i 6= j(2.140)

andc2 = c2

1 + c22 + c2

3 ; v2 = v21 + v2

2 + v23 (2.141)

The expression for E can be evaluated as

E =p

2ρ+

u2

2(2.142)

But, the right expression for E is

E = e +u2

2(2.143)

wheree =

p

ρ(γ − 1)(2.144)

is the internal energy. Therefore, to get the right value of E, we have to modify themoment definitions. But, first let us learn about the equilibrium distribution. If wekeep a system isolated from the surroundings and insulated (no heat transfer), and ifthere are no internal heat sources and external forces, the gas in the system will reachthermodynamic equilibrium. The velocity distribution of such a state is known as theequilibrium distribution. It is also known as Maxwellian distribution. In such a state,all gradients are zero (the gas is at rest). However, the flows of interest always contain

Page 34: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

30 Governing Equations and Approximations

changes in velocity and gas properties. Therefore, we consider the concept of local thermalequilibrium, when locally the gradients are very small. For such conditions, we considerlocally Maxwellian distributions. The Maxwellian distribution is defined by

F = ρ

(

β

π

)D2

e−β(v−u)2 (2.145)

where

β =1

2RT=

ρ

2P(2.146)

and D is the number of translational degrees of freedom. For 1-D, D=1, for 2-D, D=2and for 3-D, D=3. R is the gas constant, defined by the state equation

p = ρRT (2.147)

Now that we know the expression for the Maxwellian distribution, let us evaluate themoments. From the definitions, we can write for 1 − D

U = 〈

1v

1

2v2

f〉 (2.148)

Using the Maxwellian

U = 〈

1v

1

2v2

F 〉 (2.149)

U1 = 〈F 〉 =

∫ ∞

−∞

Fdv (2.150)

U2 = 〈vF 〉 =

∫ ∞

−∞

vFdv (2.151)

U3 = 〈v2

2F 〉 =

∫ ∞

−∞

v2

2Fdv (2.152)

To evaluate the above, we need to know some basic integrals. Some types of integrals weencounter often are

Jn =

∫ ∞

−∞

xne−x2

dx n = 0, 1, 2, ... (2.153)

J+n =

∫ ∞

0

xne−x2

dx n = 0, 1, 2, ... (2.154)

J−n =

∫ 0

−∞

xne−x2

dx n = 0, 1, 2, ... (2.155)

Page 35: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Kinetic Theory of Gases 31

We first need to evaluate the fundamental integral∫ ∞

−∞e−x2

dx. Let

K =

∫ ∞

−∞

e−x2

dx =

∫ ∞

−∞

e−y2

dy (2.156)

Since definite integral is a function of limits only, we get

K2 =

∫ ∞

−∞

∫ ∞

−∞

e−x2

e−y2

dxdy =

∫ ∞

−∞

∫ ∞

−∞

e(x2+y2)dxdy (2.157)

Let x = r cosθ and y = r sinθ. Then

K2 =

∫ ∞

0

∫ 2π

0

e−r2

rdrdθ

K2 = [θ]2π0

∫ ∞

0

e−r2

rdr

K2 = 2π ·[−1

2e−r2

]∞

0

= π

K =√

π

Therefore,∫ ∞

−∞

e−x2

dx =√

π (2.158)

Using the above, we can derive the following expressions.

J0 =√

π J+0 =

√π

2

J1 = 0 J+1 =

1

2

J2 =

√π

2J+

2 =

√π

4

J3 = 0 J+3 =

1

2

J4 =3√

π

4J+

4 =3√

π

8

(2.159)

and J−n = Jn − J+

n (2.160)

Using these integrals, if we derive U3, we get, for a Maxwellian

U3 = 〈v2

2F 〉 = ρ

[

p

2ρ+

1

2u2

]

= ρE (2.161)

where E =p

2ρ+

u2

2(2.162)

Page 36: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

32 Governing Equations and Approximations

But, for Euler equations, we know that

E =p

ρ(γ − 1)+

u2

2(2.163)

This discrepancy is because we considered only a mono-atomic gas which has no internaldegrees of freedom contributing to internal energy. It has only translational degrees offreedom. A polyatomic gas has internal degrees of freedom contributing to vibrational androtational energies. To add internal energy contributions, we modify the definitions asfollows.

ρ =

∫ ∞

0

dI

∫ ∞

−∞

d3v f (2.164)

ρu =

∫ ∞

0

dI

∫ ∞

−∞

d3v vf (2.165)

ρE =

∫ ∞

0

dI

∫ ∞

−∞

d3v (I +v2

2)f (2.166)

where v2 = v21 + v2

2 + v23 (2.167)

Here I is the internal energy variable corresponding to non-translational degrees of free-dom. The Maxwellian is modified as

F =ρ

I0

(

β

π

)D2

e−β(v−u)2e−II0 (2.168)

where I0 =(2 + D) − γD

2 (γ − 1)RT (2.169)

is the average internal energy due to non-translational degrees of freedom. The basicequation of kinetic theory is the Boltzmann equation

∂f

∂t+ v

∂f

∂x= J (f, f) (2.170)

(in the absence of external forces).

The left hand side of (2.170) represents the temporal and spatial evolution of thevelocity distribution function, f . The right hand side, J(f, f) represents the collision term.The molecules are in free flow except while undergoing collisions. The LHS represents thefree flow and the RHS represents the changes in the velocity distribution due to collisions.The collision term makes (2.170) an integro-differential equation, which is difficult tosolve. For an introduction to the Kinetic Theory of Gases, the reader is referred to thefollowing books [4, 5, 6].

Page 37: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Kinetic Theory of Gases 33

2.8.1 B-G-K Model for the collision term

Bhatnagar, Gross and Krook [7] proposed a simple model for the collision term :

J (f, f) =F − f

tR(2.171)

According to the B-G-K model, the velocity distribution function, f , relaxes to a Maxwelliandistribution, F , in a small relaxation time, tR. With this model, the Boltzmann equationbecomes

∂f

∂t+ v

∂f

∂x=

F − f

tR(2.172)

2.8.2 Splitting Method

Boltzmann equation (2.170) is usually solved by a splitting method. To illustrate thesplitting method, let us consider the (2.172). We can re-write (2.172) as

∂f

∂t= −v

∂f

∂x+

F − f

tR(2.173)

∂f

∂t= O1 + O2 (2.174)

where O1 = −v∂f

∂x(2.175)

and O2 =F − f

tR(2.176)

We can split (2.174) into two steps:

∂f

∂t= O1 (2.177)

∂f

∂t= O2 (2.178)

(2.177) and (2.178) can be re-written as

∂f

∂t+ v

∂f

∂x= 0 (2.179)

Page 38: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

34 Governing Equations and Approximations

∂f

∂t=

F − f

tR(2.180)

equation (2.179) is the convection equation for f and equation (2.180) is the collisionequation for f. Therefore, The operator splitting has resulted in two steps: (i) a convectionstep and (ii) a collision step. In the convection step, (2.179) can be solved exactly ornumerically. Let us see how, in the collision step, the equation (2.180) can be solved. Wecan write (2.180) as an ODE.

df

dt=

F − f

tR(2.181)

This is a simple ODE for which the solution is given by

f = (f0 − F ) e− t

tR + F (2.182)

or f = f0e− t

tR + F(

1 − e− t

tR

)

(2.183)

If we take tR = 0, then (2.182) gives

f = f0e− t

0 + F or f = F (2.184)

Therefore, If the relaxation time is zero, the exact solution of the collision step drives thedistribution to a Maxwellian. Thus, the collision step becomes a relaxation step. Thekinetic schemes or Boltzmann schemes are based on this split-up into a convection stepand a relaxation step :Convection Step:

∂f

∂t+ v

∂f

∂x= 0 (2.185)

Relaxation Step:f = F (2.186)

Therefore, in kinetic schemes, after the convection step, the distribution function instan-taneously relaxes to a Maxwellian distribution. If we start with an initially Maxweliandistribution, we can use the approximation

∂F

∂t+ v

∂F

∂x= 0 (2.187)

as a basis for developing kinetic schemes. The Euler equations

∂U

∂t+

∂Gi

∂xi

= 0 (i = 1, 2, 3) (2.188)

where U =

ρ

ρui

ρE

(2.189)

Page 39: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.9. RELAXATION SYSTEMS FOR NON-LINEAR CONSERVATION LAWS 35

G =

ρui

δijp + ρuiuj

pui + ρuiE

(2.190)

E =p

ρ (γ − 1)+

u2

2(2.191)

and u2 = u21 + u2

2 + u23 (2.192)

can be obtained as moments of the Boltzmann equation:

1vi

I +v2

2

[

∂f

∂t+ vi

∂f

∂xi

]

= 0〉 (2.193)

Therefore, U = 〈

1vi

I +v2

2

f〉 =

∫ ∞

0

dI

∫ ∞

−∞

d3v

1vi

I +v2

2

f (2.194)

and Gj = 〈

1vi

I +v2

2

vjf〉 =

∫ ∞

0

dI

∫ ∞

−∞

d3v

1vi

I +v2

2

vjf (2.195)

The Kinetic Schemes are based on the above connection between the Boltzmann equationand Euler equations. The splitting method is also an inherent part in most of the KineticSchemes.

2.9 Relaxation Systems for Non-linear Conservation

Laws

In the previous section, the non-linear vector conservation laws of Fluid Dynamics werederived from a simpler linear convection equation (the Boltzmann equation), using theKinetic Theory of Gases. Thus, the task of solving the non-linear vector conservationequations was simplified by the use of a linear convection equation. In this section,another such a simpler framework is presented, in which the non-linear conservation lawsare linearized by a Relaxation Approximation. This framework of a Relaxation System iseven simpler than the previous one and is easier to deal with.

Consider a scalar conservation law in one dimension

∂u

∂t+

∂g (u)

∂x= 0

with the initial condition u (x, t = 0) = u0 (x) .

(2.196)

Page 40: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

36 Governing Equations and Approximations

Here the flux g (u) is a non-linear function of the dependent variable u. With g (u) =u2

2,

we recover the inviscid Burgers equation. The main difficulty in solving this equationnumerically is the non-linearity of the flux g (u). Jin and Xin [8] dealt with this problemof non-linearity by introducing a new variable v, which is not an explicit function of thedependent variable u and provided the following system of equations.

∂u

∂t+

∂v

∂t= 0

∂v

∂t+ λ2∂u

∂x= −1

ε[v − g (u)]

(2.197)

Here, λ is a positive constant and ε is a very small number approaching zero. We canrearrange the second equation of the above system (2.197) as

ε

[

∂v

∂t+ λ2∂u

∂x

]

= − [v − g (u)] (2.198)

and as ε → 0, we obtain v = g (u). Substituting this expression in the first equationof the Relaxation System (2.197), we recover the original non-linear conservation law(2.196). Therefore, in the limit ε → 0, solving the Relaxation System (2.197) is equivalentto solving the original conservation law (2.196). It is advantageous to work with theRelaxation System instead of the original conservation law as the convection terms arenot non-linear any more. The source term is still non-linear, and this can be handledeasily by the method of splitting. The initial condition for the new variable v is given by

v(x, t = 0) = g (u0 (x)) (2.199)

This initial condition avoids the development of an initial layer, as the initial state is inlocal equilibrium [8]. The above approach of replacing the non-linear conservation law bya semi-linear Relaxation System can be easily extended to vector conservation laws andto multi-dimensions. Consider a vector conservation law in one dimension, given by

∂U

∂t+

∂G (U)

∂x= 0 (2.200)

Here, U is the vector of conserved variables and G (U) is the flux vector, defined by

U =

ρ

ρu

ρE

and G (U) =

ρu

p + ρu2

pu + ρuE

(2.201)

where ρ is the density, u is the velocity, p is the pressure and E is the total internal energyof the fluid, defined by

E =p

ρ (γ − 1)+

u2

2(2.202)

Page 41: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.9. RELAXATION SYSTEMS FOR NON-LINEAR CONSERVATION LAWS 37

with γ being the ratio of specific heats. The above vector conservation laws are the Eulerequations of gas dynamics and describe the mass, momentum and energy conservationlaws for the case of an inviscid compressible fluid flow. The Relaxation System for theabove vector conservation laws is given by

∂U

∂t+

∂V

∂x= 0

∂V

∂t+ D

∂U

∂x= −1

ε[V − G (U)]

(2.203)

where D is a positive constant diagonal matrix, defined by

D =

D1 0 00 D2 00 0 D3

(2.204)

The positive constants λ in the Relaxation System for the scalar case (2.197) and Di, (i =1, 2, 3) in the Relaxation System for the vector case (2.203) are chosen in such a way thatthe Relaxation System is a dissipative (stable) approximation to the original non-linearconservation laws. To understand this better, let us do a Chapman-Enskog type expansionfor the Relaxation System.

2.9.1 Chapman-Enskog type expansion for the Relaxation Sys-

tem

In this section, a Chapman-Enskog type expansion is performed for the Relaxation System,following Jin and Xin [8]. We can rewrite the second equation of the Relaxation System(2.197) as

v = g (u) − ε

[

∂v

∂t+ λ2∂u

∂x

]

(2.205)

which means thatv = g (u) + O [ε] (2.206)

Differentiating with respect to time, we obtain

∂v

∂t=

∂t[g (u)] + O [ε] =

∂g

∂u

∂u

∂t+ O [ε] (2.207)

Since the first equation of the Relaxation System (2.197) gives

∂u

∂t= −∂v

∂x(2.208)

we can write∂v

∂t= −∂g

∂u

∂v

∂x+ O [ε] (2.209)

Page 42: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

38 Governing Equations and Approximations

Therefore, using (2.206), we can write

∂v

∂t= −∂g

∂u

[

∂x{g (u) + O [ε]}

]

+ O [ε] (2.210)

or∂v

∂t= −∂g

∂u

[

∂g

∂u

∂u

∂x

]

+ O [ε] = −(

∂g

∂u

)2∂u

∂x+ O [ε] (2.211)

Substituting the above expression in (2.205), we get

v = g (u) − ε

[

−{

(

∂g

∂u

)2∂u

∂x+ O [ε]

}

+ λ2∂u

∂x

]

(2.212)

or

v = g (u) − ε

[

∂u

∂x

{

λ2 −(

∂g

∂u

)2}]

+ O[

ε2]

(2.213)

Substituting this expression for v in the first equation of the Relaxation System (2.197),we get

∂u

∂t+

∂g (u)

∂x= ε

∂x

[

∂u

∂x

{

λ2 −(

∂g

∂u

)2}]

+ O[

ε2]

(2.214)

The right hand side of (2.214) contains a second derivative of u and hence represents a dis-sipation (viscous) term. The coefficient represents the coefficient of viscosity. Therefore,the Relaxation System provides a vanishing viscosity model to the original conservationlaw. For the coefficient of dissipation to be positive (then the model is stable), the fol-lowing condition should be satisfied.

λ2 ≥(

∂g

∂u

)2

or − λ ≤(

∂g

∂u

)

≤ λ (2.215)

This is referred to as the sub-characteristic condition. The constant λ in the RelaxationSystem (2.197) should be chosen in such a way that the condition (2.215) is satisfied.

For the vector conservation laws (2.200) modeled by the Relaxation System (2.203),the Chapman–Enskog type expansion gives

∂U

∂t+

∂G(U)

∂x= ε

∂x

[{

D −(

∂G(U)

∂U

)2}

∂U

∂x

]

+ O(ε2) (2.216)

For the Relaxation System (2.203) to be dissipative, the following condition should besatisfied.

D −(

∂G (U)

∂U

)2

≥ 0 (2.217)

Page 43: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.9. RELAXATION SYSTEMS FOR NON-LINEAR CONSERVATION LAWS 39

Based on the eigenvalues of the original conservation laws (2.200), i.e., Euler equations,Jin and Xin [8] proposed the following two choices.

(i) Define D as D =

λ21 0 0

0 λ22 0

0 0 λ23

First choice : λ2 = λ21 = λ2

2 = λ23 = max [|u − a|, |u|, |u + a|] (2.218)

(ii) Second choice : λ21 = max|u − a|, λ2

2 = max|u| and λ23 = max|u + a| (2.219)

where u is the fluid velocity and a is the speed of sound. With the first choice, the diagonalmatrix D can be written as

D = λ2I (2.220)

where I is a unit matrix.

2.9.2 Diagonal form of the Relaxation System

The Relaxation System (2.197) can be written in matrix form as

∂Q

∂t+ A

∂Q

∂x= H (2.221)

where Q =

[

u

v

]

, A =

[

0 1λ2 0

]

and H =

[

0

−1

ε[v − g (u)]

]

(2.222)

As the Relaxation System (2.197) is hyperbolic, so is (2.221) and, therefore, we can write

A = RΛR−1 and consequently Λ = R−1AR (2.223)

where R is the matrix of right eigenvectors of A, R−1 is its inverse and Λ is a diagonalmatrix with eigenvalues of A as its elements. The expressions for R, R−1 and Λ are givenby

R =

[

1 1−λ λ

]

, R−1 =

1

2− 1

1

2

1

and Λ =

[

−λ 00 λ

]

(2.224)

Since the Relaxation System (2.221) is a set of coupled hyperbolic equations, we candecouple it by introducing the characteristic variables as

f = R−1Q which gives Q = Rf (2.225)

Therefore, we can write∂Q

∂t= R

∂f

∂tand

∂Q

∂x= R

∂f

∂x(2.226)

Page 44: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

40 Governing Equations and Approximations

Substituting the above expressions in (2.221), we obtain

∂f

∂t+ R−1AR

∂f

∂x= R−1H (2.227)

Using (2.223), the above equation can be written as

∂f

∂t+ Λ

∂f

∂x= R−1H (2.228)

where

f =

[

f1

f2

]

= R−1Q =

u

2− v

u

2+

v

and R−1H =

1

2λε[v − g (u)]

− 1

2λε[v − g (u)]

(2.229)

Thus, we obtain two decoupled equations as

∂f1

∂t− λ

∂f1

∂x=

1

2λε[v − g (u)]

∂f2

∂t+ λ

∂f2

∂x= − 1

2λε[v − g (u)]

(2.230)

Solving these two equations in the limit of ε → 0 is equivalent to solving the originalnon-linear conservation law (2.196). It is much easier to solve the above two equationsthan solving (2.196), since the convection terms in them are linear. The source terms arestill non-linear, but these can be handled easily by the splitting method, which will bedescribed in the following sections. Using (2.224) and (2.225), we obtain the expressions

u = f1 + f2 and v = λ (f2 − f1) (2.231)

using which we can recover the original variables u and v. In the case of vector conservationlaws (2.200), the diagonal form of the Relaxation System leads to

∂f1∂t

− λ∂f1∂x

=1

2λε[V − G (U)]

∂f2∂t

+ λ∂f2∂x

= − 1

2λε[V − G (U)]

(2.232)

where f1 and f2 are vectors with three components each for the 1-D case.

Page 45: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.9. RELAXATION SYSTEMS FOR NON-LINEAR CONSERVATION LAWS 41

2.9.3 Diagonal form as a Discrete Kinetic System

The diagonal form of the Relaxation System can be interpreted as a discrete Boltzmannequation [9, 10, 11]. Let us introduce a new variable F as

F =

[

F1

F2

]

=

u

2− g (u)

u

2+

g (u)

(2.233)

With these new variables, the diagonal form of the Relaxation System (2.228) can berewritten as

∂f

∂t+ Λ

∂f

∂x=

1

ε[F − f ] (2.234)

This equation is similar to the Boltzmann equation of Kinetic Theory of Gases with aBhatnagar-Gross-Krook (B-G-K) collision model, except that the molecular velocities arediscrete (−λ and λ) and the distribution function f correspondingly has two components,f1 andf2. The new variable F represents the local Maxwellian distribution. This interpre-tation was used by Natalini [9] and Driollet & Natalini [10] to develop multi-dimensionalRelaxation Systems which are diagonalizable and new schmes based on them. The classicalBoltzmann equation with B-G-K model in one dimension is given by

∂f

∂t+ ξ

∂f

∂x=

1

tR[F − f ] (2.235)

where ξ is the molecular velocity (we are not using v as it has been used in the Relax-ation System for the new variable), tR is the relaxation time and F is the equilibrium(Maxwellian) distribution. The Euler equations can be obtained as moments of the Boltz-mann equation. The 1-D local Maxwellian for such a case is given by

F =ρ

I0

(

β

π

)12

e

[

−β(ξ−u)2+ II0

]

(2.236)

where ρ is the density, D is the number of translational degrees of freedom, β = 12RT

,T is the temperature, I is the internal energy variable for the non-translational degreesof freedom and I0 is the corresponding average internal energy. The moments of thedistribution function lead to the macroscopic variables as

u =

∫ ∞

0

dI

∫ ∞

−∞

I +ξ2

2

f =

∫ ∞

0

dI

∫ ∞

−∞

I +ξ2

2

F (2.237)

Page 46: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

42 Governing Equations and Approximations

and

g (u) =

∫ ∞

0

dI

∫ ∞

−∞

I +ξ2

2

ξf =

∫ ∞

0

dI

∫ ∞

−∞

I +ξ2

2

ξF (2.238)

The macroscopic equations (Euler equations in this case) are obtained as moments of theBoltzmann equation by

∫ ∞

0

dI

∫ ∞

−∞

I +1

2ξ2

[

∂f

∂t+ ξ

∂f

∂x=

1

tR[F − f ]

]

(2.239)

The corresponding expressions for the moments of the discrete Boltzmann equation are

u = P f = PF , v = PΛf and g (u) = PΛF where P = [1 1] (2.240)

for the case of scalar conservation laws and

U = P f = PF , V = PΛf and G (U) = PΛF (2.241)

for the case of vector conservation laws. The macroscopic equations are obtained from thediscrete Boltzmann equation by multiplying by P and PΛ respectively. Let us multiplythe discrete Boltzmann equation (2.234) by P to obtain

P

[

∂f

∂t+ Λ

∂f

∂x

]

= P

[

1

ε[F − f ]

]

(2.242)

or∂ (P f)

∂t+

∂ (PΛf)

∂x=

1

ε[PF − P f ] (2.243)

Using (2.240), the above equation can be rewritten as

∂u

∂t+

∂v

∂x= 0 (2.244)

which is the first equation of the Relaxation System (2.197). Similarly, multiplying thediscrete Boltzmann equation (2.234) by PΛ, we obtain

∂ (PΛf)

∂t+

∂ (PΛ2f)

∂x=

1

ε[PΛF − PΛf ] (2.245)

Evaluating PΛ2f as λ2u and using (2.240), we get

∂v

∂t+ λ2∂u

∂x= −1

ε[v − g (u)] (2.246)

which is the second equation of the Relaxation System (2.197). The Relaxation System forthe vector conservation laws can also be recovered by a similar procedure. In comparisonwith the classical Boltzmann equation, we can see that recovering the moments are simplerfor the Relaxation System and therefore the Relaxation Schemes will be simpler than thetraditional Kinetic Schemes in final expressions.

Page 47: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.9. RELAXATION SYSTEMS FOR NON-LINEAR CONSERVATION LAWS 43

2.9.4 Multi-dimensional Relaxation Systems

Consider a scalar conservation law in 2-D

∂u

∂t+

∂g1 (u)

∂x+

∂g2 (u)

∂y= 0 (2.247)

The Relaxation System given by Jin and Xin [8] for the above equation is

∂u

∂t+

∂v1

∂x+

∂v2

∂y= 0

∂v1

∂t+ λ2

1

∂u

∂x= −1

ε[v1 − g1 (u)]

∂v2

∂t+ λ2

2

∂u

∂y= −1

ε[v2 − g2 (u)]

(2.248)

We can write the above Relaxation System in matrix form as

∂Q

∂t+ A1

∂Q

∂x+ A2

∂Q

∂y= H (2.249)

where

Q =

u

v1

v2

, A1 =

0 1 0λ2

1 0 00 0 0

, A2 =

0 0 10 0 0λ2

2 0 0

and H =

0

−1

ε{v1 − g1 (u)}

−1

ε{v2 − g2 (u)}

(2.250)

The matrices A1 and A2 do not commute (A1A2 6= A2A1) and the above system is notdiagonalizable. This is true in general for the multi-dimensional Relaxation System of Jinand Xin (see [9]). As it is preferable to work with a diagonal form, Driollet and Natalini[10] generalize the discrete Boltzmann equation in 1-D to multi-dimensions to obtain amulti-dimensional Relaxation System as

∂f

∂t+

D∑

k=1

Λk

∂f

∂xk

=1

ε[F − f ] (2.251)

For the multi-dimensional diagonal Relaxation System, the local Maxwellians are definedby [10]

FD+1 =1

D

[

u +1

λ

D∑

k=1

gk (u)

]

Fi = −1

λgi (u) + FD+1 , (i = 1, · · · , D)

(2.252)

Page 48: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

44 Governing Equations and Approximations

Let us consider the 2-D case for which the local Maxwellians are given by

F =

F1

F2

F3

=

u

3− 2

3λg1 (u) +

1

3λg2 (u)

u

3+

1

3λg1 (u) − 2

3λg2 (u)

u

3+

1

3λg1 (u) +

1

3λg2 (u)

(2.253)

Using the definitions

u = P f = PF , g1 = PΛ1F , g2 = PΛ2F , v1 = PΛ1f and v2 = PΛ2f (2.254)

we can obtain

P = [1 1 1] , Λ1 =

−λ 0 00 0 00 0 λ

, Λ2 =

0 0 00 −λ 00 0 λ

and f =

u

3− 2

3λv1 +

1

3λv2

u

3+

1

3λv1 −

2

3λv2

u

3+

1

3λv1 +

1

3λv2

(2.255)

Now, multiplying the 2-D discrete Boltzmann equation by P , PΛ1 and PΛ2, we can obtainthe 2-D Relaxation System for (2.247). The 2-D Boltzmann equation is

∂f

∂t+ Λ1

∂f

∂x+ Λ2

∂f

∂y=

1

ε[F − f ] (2.256)

Multiplying the above equation by P , we obtain

∂ (P f)

∂t+

∂ (PΛ1f)

∂x+

∂ (PΛ2f)

∂y=

1

ε[PF − P f ] (2.257)

Using (2.254), the above equation can be simplified to

∂u

∂t+

∂v1

∂x+

∂v2

∂y= 0 (2.258)

Similarly, multiplying (2.256) by PΛ1, we get

∂ (PΛ1f)

∂t+

∂ (PΛ21f)

∂x+

∂ (PΛ1Λ2f)

∂y=

1

ε[PΛ1F − PΛ1f ] (2.259)

Page 49: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

2.9. RELAXATION SYSTEMS FOR NON-LINEAR CONSERVATION LAWS 45

and by multiplying (2.256) by PΛ2, we obtain

∂ (PΛ2f)

∂t+

∂ (PΛ2Λ1f)

∂x+

∂ (PΛ22f)

∂y=

1

ε[PΛ2F − PΛ2f ] (2.260)

Using (2.255), we can evaluate PΛ21f , PΛ1Λ2f , PΛ2Λ1f and PΛ2

2f as

PΛ21f = λ2 (f1 + f3) , PΛ1Λ2f = PΛ2Λ1f = λ2f3 and PΛ2

2f = λ2 (f2 + f3) (2.261)

Using theses expressions, the above two equations get simplified to

∂v1

∂t+

∂x

[

λ2 (f1 + f3)]

+∂

∂y

[

λ2f3

]

=1

ε[g1 (u) − v1] (2.262)

∂v2

∂t+

∂x

[

λ2f3

]

+∂

∂y

[

λ2 (f2 + f3)]

=1

ε[g1 (u) − v1] (2.263)

Using the definitions (2.254) in (2.258), (2.262) and (2.263), after some algebraic manip-ulation, we obtain the 2-D Relaxation System as

∂u

∂t+

∂v1

∂x+

∂v2

∂y= 0

∂v1

∂t+

λ

3

∂x[2 (λu + v1 + v2) − 3v1] +

λ

3

∂y[λu + v1 + v2] =

1

ε[g1 (u) − v1]

∂v2

∂t+

λ

3

∂x[λu + v1 + v2] +

λ

3

∂y[2 (λu + v1 + v2) − 3v2] =

1

ε[g2 (u) − v2]

(2.264)

This Relaxation System is different from the non-diagonalizable Relaxation System of Jinand Xin (2.248). The above derivation was done only to see the type of multi-dimensionalRelaxation System we obtain from the multi-dimensional discrete Boltzmann equation. Itis not necessary, however, to use the above Relaxation System, and it is sufficient to use themulti-dimensional discrete Boltzmann equation as a starting point to derive RelaxationSchemes. For the 2-D cases presented in this report the following equation is used as astarting point

∂f

∂t+ Λ1

∂f

∂x+ Λ2

∂f

∂y=

1

ε[F − f ] (2.265)

which, when expanded, leads to the following equations.

∂f1

∂t− λ

∂f1

∂x=

1

ε[F1 − f1]

∂f2

∂t− λ

∂f2

∂y=

1

ε[F2 − f2]

∂f3

∂t+ λ

∂f3

∂x+ λ

∂f3

∂y=

1

ε[F3 − f3]

(2.266)

Page 50: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

46 Governing Equations and Approximations

For 2-D Euler equations, the expanded form of the discrete Boltzmann equation is givenby

∂f1∂t

− λ∂f1∂x

=1

ε[F1 − f1]

∂f2∂t

− λ∂f2∂y

=1

ε[F2 − f2]

∂f3∂t

+ λ∂f3∂x

+ λ∂f3∂y

=1

ε[F3 − f3]

(2.267)

where fi and Fi for each i, (i = 1, 2, 3) are vectors with 4 components each similar to thecorresponding moments U, V1, V2, G1 and G2. The initial condition for f is prescribedas

f (x, y, t = 0) = F (U (x, y, t = 0)) (2.268)

The Chapman–Enskog type analysis for the above multi–dimensional Relaxation Systemto be a dissipative approximation to the original conservation laws leads to the followingcondition (see [10, 41] for details of the derivation).

λ ≥ max (−A1 − A2, 2A1 − A2,−A1 + 2A2) (2.269)

where

A1 =∂G1 (U)

∂Uand A2 =

∂G2 (U)

∂U(2.270)

2.10 A Note on Numerical Methods

In the preceding sections, the governing equations of compressible fluid flows are pre-sented, along with two major alternative formulations which make the task of solvingthese equations simpler - the framework of Kinetic Theory of Gases and the frameworkof Relaxation Systems. In the next chapters, the numerical methods for solving the com-pressible fluid flows are presented, based on each of the above framework. While thetraditional numerical methods based on Euler and Navier-Stokes equations are presentedbriefly, more emphasis is given in this course for alternative formulations.

Page 51: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Chapter 3

Analysis of Numerical Methods

Several numerical methods for scalar and vector conservation equations of compressibleflows will be presented in the next chapters. To understand them better, the basic analysisof numerical methods is presented in this chapter. First, the basics of Finite DifferenceMethod (FDM) and the Finite Volume Method (FVM) are presented, with the exampleof a simple linear convection equation. Then, the concepts of consistency and stabilityof a numerical method are briefly introduced, followed by the discussion on numericaldissipation, numerical dispersion and order of accuracy, illustrated by the analysis ofModified Partial Differential Equations (MPDE).

3.1 Basics of Finite Difference and Finite Volume

Methods

In this course, we shall limit ourselves the application of Finite Difference Method (FDM)and Finite Volume Method to the typical scalar and vector conservation equations, con-centrating mostly on the Finite Volume Method, which is the most popular method usedin compressible fluid flow simulations.

3.1.1 Upwind Method in Finite Difference Form

Consider a linear convection equation

∂u

∂t+ c

∂u

∂x= 0 (3.1)

Let us discretize the above hyperbolic equation on a three point stencil shown in thefigure (3.1). We discretize the time derivative using forward differencing since we willbe marching forward in time for the solution of the convection equations. For the space

47

Page 52: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

48 CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

�������� ����

������

! !! !"" ##$$

%%&&

'''''''''''''''''''''''''''''

(((((((((((((((((((((((((((((

) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )) ) ) ) ) )

* * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * ** * * * * *

+ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + ++ + + + + + +

, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,, , , , , , ,

∆ ∆t t

∆ ∆

t+∆t

x x xx xj j+1j−1

c c t

Figure 3.1: 3-Point Stencil

derivative, the simplest approximation seems to be central differencing.

un+1j − un

j

∆t+ c

unj+1 − un

j−1

2∆x= 0 (3.2)

Here, the superscript n denotes the time level t and n + 1 denotes the time level t + ∆t.This discretization known as the Forward Time Centered Space discretization, actuallyleads to an unstable scheme! To understand why, let us see the analytical solution of thelinear convection equation (3.1). The analytical solution is given by

u (x, t) = u (x − ct, t = 0) (3.3)

which, for the 3-point stencil shown in the figure (4.1), can be written as

u (x, t + ∆t) = u (x − c∆t, t) (3.4)

So, the solution at the new time level can be found by tracing the foot of the characteristicon the line connecting the points j − 1, j and j + 1 at the old time level. Obviously, itdepends on the sign of the convection speed c. If c is positive, the information to the pointj comes from the left, from the point j − 1 and if c is negative, the information to thepoint j comes from the right, from the point j +1. Therefore, the information comes onlyfrom one side, depending on the sign of c. The FTCS discretization takes informationfrom the wrong side also, thus leading to instability. To respect the hyperbolicity ofthe equation, we have to introduce one sided differencing, depending on the sign of theconvection speed. To do so, let us first split the convection speed into a positive part anda negative part as

c =c + |c|

2+

c − |c|2

= c+ + c− (3.5)

Here, c+ is always positive and c− is always negative. Therefore, the linear convectionequation becomes

∂u

∂t+ c+∂u

∂x+ c−

∂u

∂x= 0 (3.6)

Page 53: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

3.1. BASICS OF FINITE DIFFERENCE AND FINITE VOLUME METHODS 49

Now, for the c+ term, information comes to the point j only from the left, and hencea backward differencing can be used. Similarly, for the c− term, the information comesonly from the right, and therefore, forward differencing can be used. Such a discretizationwhere we go up the wind and take the information is called upwind differencing and theresulting scheme is an upwind scheme.

un+1j − un

j

∆t+ c+

unj − un

j−1

∆x+ c−

unj+1 − un

j

∆x= 0 (3.7)

The above method is a Finite Difference Method (FDM) as we have used the finite dif-ferences for the derivatives in a partial differential equation.

The upwind method can also be derived in a different way. Since we know the exactsolution of the linear convection equation, we can use it to trace the foot of the charac-teristic on the 3-point stencil and use a linear interpolation between the grid points. Thesolution of the linear convection equation is

u (x, t + ∆t) = u (x − c∆t, t) (3.8)

Now, consider a 3-point stencil as shown in figure (4.1). The foot of the characteristic fallsbetween points j and j−1 if c > 0 and between j and j+1 if c < 0. Let us denote the footof the characteristic by P and consider the c > 0 case first. Using a linear interpolationbetween j and j − 1, we can now write

u(xP ) = u(xj−1) +u(xj) − u(xj−1)

(xj − xj−1)(xP − xj−1) (3.9)

Therefore,

u(xP ) = u(xj−1) +u(xj) − u(xj−1)

∆x(∆x − c∆t)

= u(xj−1) + (u(xj) − u(xj−1) −(u(xj) − u(xj−1))

∆xc∆t

= u(xj) − c∆t

∆x[u(xj) − u(xj−1)]

= u(xj) − λ[u(xj) − u(xj−1)]

where λ = c ∆t∆x

. Thus, we recover the upwind method. Therefore, the upwind methodfollows exact solution with the accuracy of linear interpolation. If c < 0, then we need tointerpolate the foot of the characteristic between the points j and j +1 which will lead to

u(t + ∆t, xj) = u(t, xj) − λ[u(t, xj+1) − u(t, xj)] (3.10)

Both the cases c > 0 and c < 0 can be combined using

c+ = max(c, 0) =1

2(c + |c|) where c+ ≥ 0 always

c− = min(c, 0) =1

2(c − |c|) where c− ≤ 0 always

Page 54: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

50 CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

Here, if c > 0, c− = 0 and if c < 0, c+ = 0. Therefore, we can write

c = c+ + c−

or c =1

2(c + |c|) +

1

2(c − |c|)

∂u

∂t+ c

∂u

∂x= 0 becomes

∂u

∂t+ c+∂u

∂x+ c−

∂u

∂x= 0

(3.11)

or∂u

∂t+

c + |c|2

∂u

∂x+

c − |c|2

∂u

∂x= 0

and then the upwind method becomes

un+1j = un

j − λ+[

unj − un

j−1

]

− λ−[

unj+1 − un

j

]

(3.12)

where

λ± =∆t

∆x

c ± |c|2

(3.13)

3.1.2 Upwind Method in Finite Volume Form

Let us discretize the linear convection equation by using a Finite Volume Method (FVM).First, let us write the linear convection equation in conservative form so that the FVMwe shall derive now is equally applicable to any conservative convection equation, linearor non-linear.

∂u

∂t+

∂g (u)

∂x= 0 , where g (u) =

1

2u2 (3.14)

Let us now discretize our 1-D computational domain as a set of cells or finite volumes,assuming that within each cell the solution has a piecewise polynomial variation. Thesimplest choice is to have a piecewise constant approximation in each cell, as shown infigure (3.2). We can also choose more accurate approximations, like a piecewise linear

--..//0011223344 5566 7788 99::

;;;;;;;;;;;;;;;;;;;;;;

<<<<<<<<<<<<<<<<<<<<<<

======================

>>>>>>>>>>>>>>>>>>>>>>

??????????????????????

@@@@@@@@@@@@@@@@@@@@@@

AAAAAAAAAAAAAAAAAAAAAA

B B B B BC C C C C

j j+1 j+2 j+3j−1j−2j−3x

j+ j+j− 1/2 3/21/23/2j−

Figure 3.2: Piecewise Constant Approximation

approximation shown in figure (3.3) or piecewise quadratic or cubic approximations. Theapproximation we choose determines the order of accuracy of the disretization. Let us

Page 55: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

3.1. BASICS OF FINITE DIFFERENCE AND FINITE VOLUME METHODS 51

DDEEFFGGHHIIJJKK LLMM NNOO PPQQ

RRRRRRRRRRRRRRRRRRRRRR

SSSSSSSSSSSSSSSSSSSSSS

TTTTTTTTTTTTTTTTTTTTTT

UUUUUUUUUUUUUUUUUUUUUU

VVVVVVVVVVVVVVVVVVVVVV

WWWWWWWWWWWWWWWWWWWWWW

XXXXXXXXXXXXXXXXXXXXXX

Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y YZ Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z

j j+1 j+2 j+3j−1j−2j−3x

j+ j+j− 1/2 3/21/23/2j−

Figure 3.3: Piecewise Linear Approximation

now use the finite volume method, which starts with the integral form of the conserva-tion equation in which the integration is over a finite volume or cell [xj− 1

2, xj+ 1

2] and a

time interval [tn, tn+1]. For simplicity, let us assume a piecewise constant approximation.The integral form of the scalar conservation equation we have chosen (linear convectionequation) is

∫ tn+1

tndt

∫ xj+1

2

xj− 1

2

dx

[

∂u

∂t+

∂g

∂x

]

= 0

which can be written as

∫ xj+1

2

xj− 1

2

[

∫ tn+1

tn

∂u

∂tdt

]

dx = −∫ tn+1

tn

∫ xj+1

2

xj− 1

2

∂g

∂xdx

dt

Note the changing of the order of time and space integrations in the left hand side so thata simple integration can be performed easily. Completing the integrations, we obtain

∫ xj+1

2

xj− 1

2

[u]tn+1

tn dx = −∫ tn+1

tn[g (x)]

xj+1

2x

j− 12dt

or∫ x

j+12

xj− 1

2

[

un+1 − un]

dx = −∫ tn+1

tn

[

g(

xj+ 12

)

− g(

xj− 12

)]

dt

or

∫ xj+1

2

xj− 1

2

un+1dx =

∫ xj+1

2

xj− 1

2

undx −[

∫ tn+1

tng

(

xj+ 12

)

dt −∫ tn+1

tng

(

xj− 12

)

dt

]

(3.15)

Let us now define the cell integral averages as

1

∆x

∫ xj+1

2

xj− 1

2

u (x) dx = uj (3.16)

Page 56: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

52 CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

Using the above definitions, the update formula of the finite volume method can be writtenas

∆xun+1j = ∆xun

j −[

∫ tn+1

tng

(

xj+ 12

)

dt −∫ tn+1

tng

(

xj− 12

)

dt

]

or

un+1j = un

j − ∆t

∆x

[

gj+ 12− gj− 1

2

]

(3.17)

where

gj± 12

=1

∆t

∫ tn+1

tng

(

xj± 12

)

dt =1

∆t

∫ tn+1

tng

(

u(

xj± 12

))

dt (3.18)

are the time-averaged fluxes. We have to now reconstruct the value of u at xj± 12, as we

have the cell integral averages uj (equation (3.16)) only at the cell-centres xj . (Sincewe converted u (x), a continuous variable, to a cell-integral average uj, we have lost thevariation of u and now that we require the variation of u at the cell interfaces, we haveto reconstruct the variation of u.) Reconstruction of the variation of u in each cell simplymeans that we need to assume a profile for u in each cell. The simplest profile is aconstant value, which means a piece-wise constant reconstruction of u. A better profileis a linear profile, which means a piece-wise linear reconstruction of u. Recollect thatwe have already assumed the profile shape of u in the beginning of the finite volumeapproximation. So, we need to just make use of the existing profiles of u in each cell, toreconstruct the value of u at the cell centres. Since a cell interface is shared by two cells,it is reasonable to use both the left and right state values of the interface (which meansleft and right cell centroid values or the cell-integral values) to reconstruct u.

Referring to the figure (3.2), we can approximate the reconstructed value of u at thecell interface at xj+ 1

2as

u(

xj+ 12

)

=

{

unj if c > 0

unj+1 if c < 0

}

(3.19)

Similarly, we can write

u(

xj− 12

)

=

{

unj−1 if c > 0un

j if c < 0

}

(3.20)

From (3.18)

gj+ 12

=1

∆t

∫ tn+1

tng

(

u(

xj+ 12

)

, t)

dt

Since g (u) = cu, we will obtain

gj+ 12

=1

∆t

∫ tn+1

tn

{

c uj (t) for c > 0c uj+1 (t) for c < 0

}

dt

Page 57: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

3.1. BASICS OF FINITE DIFFERENCE AND FINITE VOLUME METHODS 53

In our reconstruction process, we used only the spatial variation of u in each cell. Tocomplete the integration, we need to make some assumption of the time variation of u

within the interval [tn, tn+1]. Several assumptions of this time variation are possible butlet us use a simple variation of u between tn and tn+1 as

uj (t) = (1 − η) uj (tn) + ηuj

(

tn+1)

(3.21)

where η takes the values between 0 and 1 (0 ≤ η ≤ 1) and represents the interpolationfactor (in time). Therefore

∫ tn+1

tnuj (t) dt =

[

(1 − η) unj + ηun+1

j

]

∆t (3.22)

Thus, we obtain

gj+ 12

=1

∆t∆t

{

c(

(1 − η) unj + ηun+1

j

)

for c > 0c

(

(1 − η) unj+1 + ηun+1

j+1

)

for c < 0(3.23)

or

gj+ 12

=

{

c(

(1 − η) unj + ηun+1

j

)

for c > 0c

(

(1 − η) unj+1 + ηun+1

j+1

)

for c < 0(3.24)

Similarly, we can derive

gj− 12

=

{

c(

(1 − η) unj−1 + ηun+1

j−1

)

for c > 0c

(

(1 − η) unj + ηun+1

j

)

for c < 0(3.25)

Substituting the expressions for above fluxes in the update formula (3.17), we obtain

un+1j = un

j − ∆t

∆x

{

c (1 − η)(

unj − un

j−1

)

+ cη(

un+1j − un+1

j−1

)

for c > 0c (1 − η)

(

unj+1 − un

j

)

+ cη(

un+1j+1 − un+1

j

)

for c < 0

or

un+1j = un

j − ∆t

∆x

(1 − η){

c+|c|2

(

unj − un

j−1

)

+ c−|c|2

(

unj+1 − un

j

)

}

η{

c+|c|2

(

un+1j − un+1

j−1

)

+ c−|c|2

(

un+1j+1 − un+1

j

)

}

(3.26)

If we now take η = 0, then we obtain

un+1j = un

j − ∆t

∆x

[{

c + |c|2

(

unj − un

j−1

)

+c − |c|

2

(

unj+1 − un

j

)

}]

(3.27)

This is called as an explicit method as the value of u at the new time level (n + 1) isexplicitly calculated from the values of u at the old time level (n). If we take η = 1, thenwe obtain

un+1j = un

j − ∆t

∆x

[{

c + |c|2

(

un+1j − un+1

j−1

)

+c − |c|

2

(

un+1j+1 − un+1

j

)

}]

(3.28)

Page 58: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

54 CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

This is called as an implicit method as we need to solve an implicit equation for un+1.Note that, In this implicit method, we need to solve for the values of un+1

j−1 , un+1j and un+1

j+1

simultaneously, and thus needing to invert a matrix (for all N values of j, j = 1, 2, · · · , N ,where N is the number of cells or grid points). If we take η = 0.5, we get an averageof both the above methods, known as Crank-Nicolson method. The explicit method iseasier to program, as no matrix inversion is needed. However, an implicit method will nothave a stability restriction as in the explicit method and larger values of the time-step areallowed, leading to faster convergence.

We can see that the piecewise constant approximation with the upwinding in finitevolume method yields the first order accurate upwind finite difference method. Thisequivalence is possible for a linear convection equation. The main advantage of the upwindfinite volume method is that the update formula leads to a conservative discretization.To understand the importance of the conservation at the discrete level, let us sum up thegeneral finite volume update formula (3.17) for all the N finite volumes or cells in our1-D domain.

N∑

j=1

un+1j =

N∑

j=1

unj − ∆t

∆x

[

N∑

j=1

gnj+ 1

2− gn

j− 12

]

(3.29)

or

N∑

j=1

un+1j =

N∑

j=1

unj −

∆t

∆x

[

gn32− gn

12

+ gn52− gn

32

+ gn72− gn

52

+ · · · + gnN− 1

2− gn

N− 32

+ gnN+ 1

2− gn

N− 12

]

(3.30)or

N∑

j=1

un+1j =

N∑

j=1

unj − ∆t

∆x

[

gnN+ 1

2− gn

12

]

(3.31)

Thus, all the fluxes in the middle of the domain cancel and only the fluxes at the bound-aries remain, and the net flux (outgoing flux minus the incoming flux) balances the rateof change of the conservative variable. Thus, the finite volume method preserves conser-vation at the discrete level and hence the positions of the discontinuities like the shocks orcontact discontinuities are automatically captured correctly on an average. This propertyof all the fluxes in the middle of the domain getting canceled is called the telescopingproperty of the fluxes. This is a unique property of the Finite Volume Method (FVM).

3.2 Modified Partial Differential Equations

Let us now understand the numerical methods like upwind method a little more, analyzingthe truncation error. Since we are solving the governing equation (say linear convectionby an upwind method, for example) approximately, there will be some errors associatedwith the approximation. To find out the truncation error, let us substitute Taylor Series

Page 59: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

3.2. MODIFIED PARTIAL DIFFERENTIAL EQUATIONS 55

expansions into the numerical method, to recover the actual equation we are solvingexactly. The resulting equation is called as Modified Partial Differential Equation orEquivalent Differential Equation. For the linear convection equation

∂u

∂t+ c

∂u

∂x= 0 (3.32)

the upwind method is

un+1j = un

j − λ+(

unj − un

j−1

)

− λ−(

unj+1 − un

j

)

(3.33)

where λ+ =(c + |c|)

2

∆t

∆xand λ− =

(c − |c|)2

∆t

∆x(3.34)

The above equation is an approximation to the linear convection equation as we havediscretized the derivatives. If we are not solving the linear convection equation exactly,but only approximately, then which equation are we solving exactly? To answer thisquestion, let us expand the terms in the upwind method using Taylor series.

ujn+1 = u (xj, t + ∆t) = uj

n + ∆t(∂u

∂t

)n

j+

∆t2

2

(∂2u

∂t2

)n

j+

∆t3

6

(∂3u

∂t3

)n

j+ 0(∆t4) (3.35)

unj+1 = un(xj + ∆x)

unj+1 = uj

n + ∆x(∂u

∂x

)n

j+

∆x2

2

(∂2u

∂x2

)n

j+

∆x3

6

(∂3u

∂x3

)n

j+ 0(∆x4) (3.36)

unj−1 = un(xj − ∆x)

unj−1 = uj

n − ∆x(∂u

∂x

)n

j+

∆x2

2

(∂2u

∂x2

)n

j− ∆x3

6

(∂3u

∂x3

)n

j+ 0(∆x4) (3.37)

Substituting (3.35), (3.36) & (3.37) in (3.33) and dividing it by ∆t, we get

(∂u

∂t

)n

j+

∆t

2

(∂2u

∂t2

)n

j+

∆t2

6

(∂3u

∂t3

)n

j=

λ+

∆t

[

− ∆x(∂u

∂x

)n

j+

∆x2

2

(∂2u

∂x2

)n

j− ∆x3

6

(∂3u

∂x3

)n

j

]

+λ−

∆t

[

− ∆x(∂u

∂x

)n

j− ∆x2

2

(∂2u

∂x2

)n

j− ∆x3

6

(∂3u

∂x3

)n

j

]

+ 0(∆t3,∆x4

∆t)

To simplify the above equation, we have to replace the time derivatives by space derivativesfor which we use the original linear convection equation itself.

∂u

∂t+ c

∂u

∂x= 0 or

∂[u]

∂t= −c

∂[u]

∂x(3.38)

Page 60: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

56 CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

∂2u

∂t2=

∂[∂u

∂t]

∂t= −c

∂[−c∂u

∂x]

∂x= c2∂2u

∂x2(3.39)

∂3u

∂t3= −c

∂[c2∂2u

∂x2]

∂x= −c3∂3u

∂x3(3.40)

Using the above formulae, we obtain

(∂u

∂t

)n

j+

∆t

2c2

(∂2u

∂x2

)n

j− ∆t2

6c3

(∂3u

∂x3

)n

j

=λ+

∆t

[

− ∆x(∂u

∂x

)n

j+

∆x2

2

(∂2u

∂x2

)n

j− ∆x3

6

(∂3u

∂x3

)n

j

]

+λ−

∆t

[

− ∆x(∂u

∂x

)n

j− ∆x2

2

(∂2u

∂x2

)n

j− ∆x3

6

(∂3u

∂x3

)n

j

]

+ 0(∆t3,∆x4

∆t)

(∂u

∂t

)n

j+

λ+

∆t∆x

(∂u

∂x

)n

j+

λ−

∆t∆x

(∂u

∂x

)n

j=

[(

λ+ − λ−)

− c2 ∆t

2

]∆x2

2∆t

(∂2u

∂x2

)n

j

+[(

− λ+ − λ−)

+ c3 ∆t2

6

]∆x3

6∆t

(∂3u

∂x3

)n

j+ 0(∆t3,

∆x4

∆t) (3.41)

λ+

∆t∆x =

c + |c|2

λ−

∆t∆x =

c − |c|2

(3.42)

From the above two equations we get

λ+ − λ− = |c|∆t

∆xand λ+ + λ− = c

∆t

∆x(3.43)

Therefore, we obtain

(∂u

∂t

)n

j+

(

c + |c|)

2

(∂u

∂x

)n

j+

(

c − |c|)

2

(∂u

∂x

)n

j=

[ |c|∆x

2

(

1 − |c|∆t

∆x

)](∂2u

∂x2

)n

j

+[c∆x2

6

(

− 1 +c2∆t

∆x2∆t2

)](∂3u

∂x3

)n

j+ 0(∆t3,

∆x4

∆t) (3.44)

Therefore

(∂u

∂t+ c

∂u

∂x

)n

j=

|c|∆x

2

(

1 − |λ|)(∂2u

∂x2

)n

j+

c∆x2

6

(

λ2 − 1)(∂3u

∂x3

)n

j+ 0(∆t3,

∆x4

∆t)(3.45)

Page 61: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

3.2. MODIFIED PARTIAL DIFFERENTIAL EQUATIONS 57

If∆x

∆t= constant and we drop

(∂3u

∂x3

)

term, then we obtain

(∂u

∂t+ c

∂u

∂x

)n

j=

|c|∆x

2

(

1 − |λ|)(∂2u

∂x2

)n

j+ 0(∆t2, ∆x2)

Therefore, the scheme is I order accurate in time and space. To understand the terms inthe truncation error better, let us consider the momentum equation of conservation lawsfor a fluid in expanded form.

∂u

∂t+ u

∂u

∂x+

1

ρ

∂p

∂x= ν

∂2u

∂x2(3.46)

The second order term on right hand side represents a viscous term. Therefore, the

upwind scheme has introduced an artificial viscosity term,|c|∆x

2

(

1 − |λ|)(∂2u

∂x2

)

and the

method is first order accurate. That is

∂u

∂t+ c

∂u

∂x= 0(∆t, ∆x) (3.47)

What is the role of artificial viscosity? Just as the physical viscosity has the stabilizingeffect on fluid flows, artificial viscosity stabilizes the numerical methods, keeping the errorswithout growing (or damping them). We can rewrite the upwind method as follows.

un+1j = un

j − λ+(

unj − un

j−1

)

− λ−(

unj+1 − un

j

)

(3.48)

un+1j = un

j − (c + |c|

2)∆t

(unj − un

j−1

∆x

)

− (c − |c|

2)∆t

(unj+1 − un

j

∆x

)

(3.49)

un+1j = un

j − c∆t

2

(

unj+1 − un

j−1

)

∆x+

|c|∆t

2

(

unj+1 − 2un

j + unj−1

)

∆x(3.50)

un+1j = un

j − c∆t

(

unj+1 − un

j−1

)

2∆x+

|c|∆t

2∆x

(

unj+1 − 2un

j + unj−1

)

∆x2(3.51)

If we omit the last term on the right hand side, we get the Forward Time and Centered

Space (FTCS) approximation to∂u

∂t+ c

∂u

∂x= 0,

un+1j − un

j

∆t+ c

(

unj+1 − un

j−1

)

2∆x= 0

Therefore, the upwind method has added an artificial viscosity term to the central dif-

ferencing method, and this artificial viscosity term is|c|∆t

2∆x

(∂2u

∂x2

)

. We know that

FTCS is unstable. The artificial diffusion stabilizes the FTCS method. Thus, there aretwo routes to obtain a stable scheme, as explained in the following part.

Page 62: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

58 CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

1. By adding explicit artificial viscosity to the central differencing scheme.

2. By using an upwind scheme which has an inherent (implicit) artificial viscosity.

The second one is preferable, as there are no tuning parameters which are problem de-pendent. For the first option,the tuning parameters come in while answering the questionHow much artificial viscosity is to be added? The MPDE for FTCS method is

∂u

∂t+ c

∂u

∂x= −c2∆t

2

(∂2u

∂x2

)

+ 0(∆t3, ∆x3)

Therefore, the FTCS method is actually removing some viscosity from a II order method.Thus, it makes sense to explicitly add some viscosity to stabilize it. Jameson, Smith &Turkel(1981) (AIAA-81-1259) developed such a central difference scheme with explicitartificial viscosity for Euler equations. But, because of the tuning parameters, centraldifference schemes are not as popular as upwind schemes.

3.3 Consistency of Numerical Methods

A numerical method is said to be consistent to the equation it approximates if the localtruncation error vanishes when the grid-spacing and the time-step go to zero. As anexample, consider the linear convection equation

∂u

∂t+ c

∂u

∂x= 0 (3.52)

and the upwind scheme for the above equation given by

un+1j = un

j − (c + |c|) ∆t

∆x

[

unj − un

j−1

]

− (c − |c|) ∆t

∆x

[

unj+1 − un

j

]

(3.53)

We have seen in the previous section that the Modified Partial Differential Equation(MPDE) for the above upwind scheme is given by

(∂u

∂t+ c

∂u

∂x

)n

j=

|c|∆x

2

(

1 − |λ|)(∂2u

∂x2

)n

j+

c∆x2

6

(

λ2 − 1)(∂3u

∂x3

)n

j+ 0(∆t3, ∆x4) (3.54)

The right hand side of the above equation represents the local truncation error of thenumerical method (upwind method here). We can see that as ∆x → 0 and ∆t → 0, thelocal truncation error on the right hand side completely vanishes and we recover the linearconvection equation. Thus, the upwind scheme is consistent with the linear convectionequation that it approximates here.

Page 63: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

3.4. STABILITY ANALYSIS 59

3.4 Stability Analysis

While designing and using numerical methods for partial differential equations, it is im-portant to know if the numerical method is stable or not. Before studying the stabilityanalysis, let us first understand the Fourier series in complex wave form, which we willuse in the stability analysis.

3.4.1 Fourier series in complex waveform

Let

f(x) = a +∞

m=1

[

amcos(ωmx) + bmsin(ωmx)]

From

eiwmx = cos (wmx) + i sin (wmx) and e−iwmx = cos (wmx) − i sin (wmx) (3.55)

we can write

cos(ωmx) =1

2

(

eiωmx + e−iωmx)

and

sin(ωmx) =1

2i

(

eiωmx − e−iωmx)

Therefore

amcos(ωmx) + bmsin(ωmx) = am

1

2

(

eiωmx + e−iωmx)

+ bm

1

2i

(

eiωmx − e−iωmx)

=(am − ibm)eiωmx + (am + ibm)e−iωmx

2

amcos(ωmx) + bmsin(ωmx) = cmeiωmx + c−me−iωmx (3.56)

where cm =(am − ibm)

2& c−m =

(am + ibm)

2

f(x) = a +∞

m=1

[

cmeiωmx + c−me−iωmx]

(3.57)

If we define c0 = a, We can write

f(x) =∞

m=−∞

cmeiωmx (3.58)

We have used the fact that ωm =2Π

Lm . Therefore, when m = 0, eiωmx = e

i2Π

Lmx

=

e0 = 1. The complex form simplifies the algebraic manipulations and is easier to use.

Page 64: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

60 CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

3.4.2 Stability analysis of Numerical Methods [12]

We know that FTCS method for LCE

∂u

∂t+ c

∂u

∂x= 0 for c > 0 (3.59)

given byun+1

j − unj

∆t+ c

unj+1 − un

j−1

2∆x= 0 is unstable and the FTBS method (upwind

method) given by

un+1j − un

j

∆t+ c

unj − un

j−1

∆x= 0 (3.60)

is conditionally stable, with the stability condition given by

0 ≤ λ ≤ 1 where λ = c∆t

∆x(3.61)

What is meant by stability and how do we find stability conditions for numerical methods?Just like a solid body having different possible states of stability (a ball on concave surface,a plane or a convex surface) a numerical method can also be unconditionally stable,conditionally stable or unconditionally unstable. Where are the instabilities coming from?One source of instability is any error present in the numerical method. There are twokinds of obvious errors in numerical approximations :

1. A truncation error of the numerical method

2. A round-off error

Truncation error or the Discretization error is the difference between the exact analyticalsolution of the PDE and the exact (round-off-free) solution of the corresponding differenceequation. If A is the analytical solution of the PDE, N is the numerical solution from thecomputer and E is the exact solution of the difference equation, thenDiscretization error = A − E and Round off error = ε = N − E.By definition, E is the exact solution to the difference equation. Therefore, E exactlysatisfies the difference equation. Let us consider FTCS case which leads to

En+1j − En

j

∆t+ c

Enj+1 − En

j−1

2∆x= 0 (3.62)

Numerical solution is obtained by solving the difference equation. Therefore, N shouldsatisfy the following difference equation.

Nn+1j − Nn

j

∆t+ c

Nnj+1 − Nn

j−1

2∆x= 0 (3.63)

Page 65: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

3.4. STABILITY ANALYSIS 61

Since ε = N − E, and N = E + ε

(En+1j + εn+1

j − Enj − εn

j )

∆t+ c

(Enj+1 + εn

j+1 − Enj−1 − εn

j−1)

2∆x= 0 (3.64)

Using (3.62), we obtainεn+1j − εn

j

∆t+ c

εnj+1 − εn

j−1

2∆x= 0 (3.65)

Therefore, round off error should satisfy the difference equation. As we go from nth timelevel to (n + 1)th time level, the errors should decrease or at most stay the same forstability. If the errors are amplified by the numerical method, then the instability sets in.Therefore

εn+1j

εnj

∣≤ 1 for stability (3.66)

Let the round off error at the starting of the nth iteration have an initial random distribu-tion. At any given time, let us express that the random variation of ε with x analyticallyusing Fourier series as

ε(x) =∑

m

Am eiωmx (3.67)

Since eiωmx = cos(ωmx)+ isin(ωmx) the above equation represents both sine and a cosineseries. Here, ωm is the wave number, Am is the amplitude and the above equation gives thespatial variation of the error ε. We also need temporal variation. Therefore, we assumeAm = Am(t).

ε(x, t) =∑

m

Am(t)eiωmx (3.68)

What is wave number? Consider a sine function

y = sin(2Πx

λ) (3.69)

where λ is the wave length. In the notation we have used,

y = sin(ωmx) (3.70)

Therefore, ωm =2Π

λ. If we fit two sine waves in an interval L, then y = sin(ωmx) with

ωm =2Π

(L

2)

=2Π

L2. Similarly, if we fit 3 sine waves in L, ωm =

(L

3)

=2Π

L3. If we fit m

waves in an interval L, the wave number is given by

ωm =2Π

Lm (3.71)

Page 66: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

62 CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

Now that we have understood what the wave number is, the next question is what shouldbe the value of m? If we have (N − 1) grid points in L, then

∆x =L

(N − 1)(3.72)

The largest allowable wavelength is λmax = 2L and the smallest allowable wave length is

λmin = 2∆x. Therefore λmin = 2∆x =2L

(N − 1). Therefore, we have ωm =

2Π[ 2L

(N − 1)

]

.

ωm =2Π

L

(N − 1

2

)

(3.73)

Therefore, the maximum member of waves =(N − 1)

2

mmax =(N − 1)

2(3.74)

Thus

ε(x, t) =

(N−1)2

m=1

Am(t)eiωmx (3.75)

Since errors tend to grow or decay quickly, we can assume an exponential variation forthe amplitude.

Am(t) = eat (3.76)

ε(x, t) =

(N−1)2

m=1

eateiωmx (3.77)

Let us now substitute the above into the error equation, which is

εn+1j − εn

j

∆t+ c

εnj+1 − εn

j−1

2∆x= 0 (3.78)

Since this equation is linear, after substituting (3.77) in (3.78), each term of the series in(3.77) behaves in the same way as the series itself. Therefore, we can omit the summationin (3.77) and use

ε(x, t) = eateiωmx (3.79)

Substituting (3.79) in (3.78), we get

ea(t+∆t)eiωmx − ea(t).eiωmx

∆t+ c

ea(t)eiωm(x+∆x) − ea(t)eiωm(x−∆x)

2∆x= 0

Page 67: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

3.4. STABILITY ANALYSIS 63

Dividing by ea(t)eiωmx, we obtain

ea∆t − 1

∆t+ c

eiωm∆x − e−iωm∆x

2∆x= 0

ea∆t = 1 − c∆t

2∆x

[

eiωm∆x − e−iωm∆x]

(3.80)

But

eiωm∆x − e−iωm∆x = 2 i sin(ωm∆x) (3.81)

Therefore

ea∆t = 1 − c∆t

2∆x

[

2 i sin(ωm∆x)]

ea∆t = 1 − iλ sin(ωm∆x) (3.82)

where λ =c∆t

∆x. The condition for stability is

εn+1j

εnj

∣≤ 1. The amplification factor,

εn+1j

εnj

∣, is

εn+1j

εnj

∣=

ea(t+∆t)eiωmx

eateiωmx

That is,∣

εn+1j

εnj

∣= |ea(∆t)|

εn+1j

εnj

∣≤ 1

|ea(∆t)| ≤ 1∣

∣1 − iλsin(ωm∆x)

∣≤ 1

12 + λ2sin2(ωm∆x) ≤ 1

Hence√

1 + λ2sin2(ωm∆x) ≤ 1 for stability (3.83)

Since sin2(φ) is always positive, the above condition can never be satisfied, whatever thevalues of ∆x and ∆t may be. Therefore, the FTCS scheme is unconditionally unstable. Weperformed the von-Neumann stability analysis based on the round-off error, for simplicity.The concept of stability is actually based on the behaviour of the solution itself, not onlyon round-off error. We can write u(x) =

m Ameiωmx, where Am is the amplitude of the

Page 68: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

64 CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

mth harmonic of the solution. Then, the amplification factor is G =An+1

m

Am

and |G| ≤ 1

for stability.In deriving the stability condition for a numerical method (FTCS in the previous

example), we expressed the solution using a Fourier series, u(x, t) =∑

m Ameiωmx andAm = eat. That means, we are assuming the solution to be periodic. Is this assumptiona reasonable one? When a numerical method is unstable, usually it produces oscillationsin the solution. Therefore, to study the stability requirements and to understand theinstabilities, expressing the solution in a Fourier series is a reasonable choice.

Stability analysis for the upwind scheme :

∂u

∂t+ c

∂u

∂x= 0 c > 0 (3.84)

un+1j − un

j

∆t+ c

unj − un

j−1

∆x= 0 (3.85)

un+1j = un

j − λ(unj − un

j−1) where λ =c∆t

∆x(3.86)

u(x, t) =∑

m

eateiωmx (3.87)

Since the difference eqn (3.86) is linear, when we substitute (3.87) in (3.86), each termin (3.87) behaves like the entire expression. Therefore, we can omit the summation andwrite

u(x, t) = eateiωmx

un+1j = u(x, t + ∆t) = ea(t+∆t)eiωmx (3.88)

unj−1 = u(x − ∆x, t) = eateiωm(x−∆x)

Substituting (3.88) in (3.86), we get

eatea∆teiωmx − eateiωmx

∆t+ c

eateiωmx − eateiωmxe−iωm∆x

∆x= 0

Dividing by eateiωmx, we obtain

ea∆t − 1

∆t+ c

1 − e−iωm∆x

∆x= 0

ea∆t = 1 − λ(1 − e−iωm∆x) (3.89)

ea∆t = 1 − λ(1 − cos(ωm∆x) + i sin(ωm∆x))

Page 69: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

3.4. STABILITY ANALYSIS 65

Amplification factor = G =An+1

m

Anm

=ea(t+∆t)

eat= ea∆t

G = 1 − λ + λ cos(ωm∆x) − iλ sin(ωm∆x) (3.90)

|G| =[

1 − λ + λ cos(ωm∆x)2 + λ sin(ωm∆x)2]

12

|G| =[

1 + λ2 − 2λ2 cos(ωm∆x) − 2λ + 2λ cos(ωm∆x) + λ2(cos2(ωm∆x) + sin2(ωm∆x))]

12

|G| =[

1 + λ2 + λ cos(ωm∆x)(−2λ + 2) − 2λ + λ2]

12

|G| =[

1 + 2λ2 − 2λ + λ(2 − 2λ)(1 − 2 sin2(ωmx

2)]

12

Because cos(θ) = 1 − 2 sin2(θ

2)

|G| =[

1 + 2λ2 − 2λ + λ(2 − 2λ) − 2λ(2 − 2λ) sin2(ωm∆x

2)]

12

|G| =[

1 − 4λ sin2(ωm∆x

2)(1 − λ)

]12

[

sin2(ωm∆x

2)]

max= 1 and

[

sin2(ωm∆x

2)]

min= 0

when λ > 1

4λ(1−λ) is negative. Therefore, 1−4λ(1−λ) sin2(ωm∆x

2) has a maximum for sin2(

ωm∆x

2) = 1.

Then

|G|max =[

1 − 4λ(1 − λ)]

12

|G|max =[

1 − 4λ + 4λ2]

12

|G|max =[

(1 − 2λ)2]

12

|G|2max = (1 − 2λ)2 > 1

|G|max > 1

Therefore, the method is unstable if λ > 1

when λ < 1

4λ(1−λ) is positive. Therefore, 1−4λ(1−λ) sin2(ωm∆x

2) has a minimum for sin2(

ωm∆x

2) = 0.

Page 70: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

66 CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

Then, |G|2max = 1 and this satisfies the condition |G|2max ≤ 1 0r |G|max ≤ 1. Therefore,

the method is stable if λ ≤ 1 orc∆t

∆x≤ 1.

Thus, the stability condition fixes the time-step in the numerical method, based on

the grid-spacing. For the upwind scheme, we obtained ∆t ≤ ∆x

c. We take, in practice,

∆t = ε∆x

cwhere ε is a positive constant such that ε ≤ 1. The stability condition can be

rewritten asc

∆x∆t

≤ 1 or c ≤ ∆x

∆tor

∆x

∆t≥ c

which means that the grid speed must be greater than the convection speed or

∆x ≥ c∆t (3.91)

which means that the numerical domain of dependence must include the physical domainof dependence (see figure (3.4.2)). This is the well-known CFL (Courant-Friedrichs-Lewy)condition.

[[\\]] __`

aabb ccdd

e ee ef ff f gghh

iijj

kkkkkkkkkkkkkkkkkkkkkkkkkkkkkk

lmn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n nn n n n n n n

o o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o oo o o o o o o

p p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p pp p p p p p p p

q q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q qq q q q q q q

∆ ∆

t+∆t

x x xx xj j+1j−1

tc∆t c∆t

Physical domain of dependence

Numerical domain of dependence

Figure 3.4: 3-Point Stencil

Page 71: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Chapter 4

Central Discretization Methods forScalar and Vector Conservation Laws

4.1 A Brief History of Numerical Methods for Hy-

perbolic Conservation Laws

Historically, central discretization methods were the first to be used for solving hyperbolicequations. The important central discretization methods are - Lax-Friedrichs method[13], Lax-Wendroff method [14], MacCormack method [15] and Jameson-Schmidt-Turkelmethod [16]. The upwind methods, which were developed in the 80s became more popularthan the central discretization methods. The upwind methods for solving Euler equationscan be broadly classified as

• Riemann Solvers (Exact or Approximate),

• Flux Vector Splitting Methods,

• Kinetic theory based Methods (Kinetic Schemes) and

• Relaxation Schemes

The Godunov method [17] is the earliest developed Riemann Solver. The Flux DifferenceSplitting methods of Roe [18] and Osher [19] belong to the category of ApproximateRiemann Solvers. The Beam Scheme of Sanders and Prendergast [20] was the first KineticScheme (also the first Kinetic Flux Vector Splitting scheme), which was followed by severalKinetic Schemes - the Equilibrium Flux Method of Pullin [21], the Kinetic NumericalMethod of Rietz [22], the Kinetic Flux Vector Splitting (KFVS) method of Deshpande[23], the Kinetic Scheme of Perthame [24], the Peculiar Velocity based Upwind (PVU)method of Raghurama Rao and Deshpande [25] and the Gas-Kinetic Scheme or BGKscheme of Prendergast and Kun Xu [26]. The Relaxation Schemes were first introduced

67

Page 72: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

68 Central Discretization Methods

by Jin and Xin [8]. Other relaxation schemes of interest were introduced by Aregba-Driollet and Natalini [10], Coquel and Perthame [27] and Raghurama Rao and Balakrishna[52]. There are also some other methods of interest which belong to more than one ofthe above categories - the Adevective Upstream Splitting Method (AUSM) of Meng SingLiou [28] and the Hybrid Upwind Splitting (HUS) method of Coquel and Liou [29] and theConvective Upwind Split Pressure (CUSP) method of Jameson [30]. Some of he upwindmethods for scalar and vector conservation equations will be presented separately in thenext two chapters.

In this chapter, two of the central discretization methods, namely, Lax-Friedrichsmethod and Lax-Wendroff method are presented.

4.2 Lax-Friedrichs Method

Consider a linear convection equation, which is the simplest convection equation, givenby

∂u

∂t+ c

∂u

∂x= 0 (4.1)

In conservation form, the above equation is

∂u

∂t+

∂g (u)

∂x= 0 where g (u) = cu (4.2)

On a 3-point stencil consisting of points j − 1, j and j + 1, the simplest scheme we canthink of for the above equation is the Forward Time Centered Space (FTCS) discretization,given by

un+1j − un

j

∆t+

gnj+1 − gn

j−1

2∆x= 0 (4.3)

which can be rearranged as

un+1j = un

j − ∆t

2∆x

[

gnj+1 − gn

j−1

]

(4.4)

But, this simple scheme is unstable for the hyperbolic equation cosidered above, as it doesnot respect the hyperbolicity of the linear convection equation. In the Lax-Friedrichs [13]method, the first term on the right hand side of the above expression is replaced by anaverage of the values of the dependent variable u at the points j + 1 and j − 1, therebystabilizing the scheme.

un+1j =

1

2

[

unj+1 + un

j−1

]

− ∆t

2∆x

[

gnj+1 − gn

j−1

]

(4.5)

We can rearrange the above scheme as

un+1j = un

j − ∆t

2∆x

[

gnj+1 − gn

j−1

]

+1

2

[

unj+1 − 2un

j + unj−1

]

(4.6)

Page 73: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

4.2. LAX-FRIEDRICHS METHOD 69

To understand the last term in the above expression, let us write any general schemefor the linear convection equation in a way such that central differencing of the fluxes issupplemented by an artificial viscosity term as

un+1j = un

j − ∆t

2∆x

[

gnj+1 − gn

j−1

]

+ φ[

unj+1 − 2un

j + unj−1

]

(4.7)

Here, last term is an approximation for the second derivative of u and hence representsthe artificial viscosity term, added to the central difference term (last but one term) forstability. φ represents the coefficient of artificial viscosity. Any scheme can be rearrangedin the above form, to find out the amount of artificial viscosity present. The von Neumannstability analysis of such a general scheme gives the condition

λ2

2≤ φ ≤ 1

2where λ =

c∆t

∆x(4.8)

If we take the coefficient of viscosity φ as the maximum value permitted by the above

stability condition, that is, φ =1

2, we obtain the Lax-Friedrichs scheme derived above!

That means, Lax-Friedrichs scheme has the maximum amount of artificial viscosity per-mitted by the stability condition. Therefore, Lax-Friedrichs method, which is a first orderaccurate method, by itself is not usually preferred for solving practical problems.

The Lax-Friedrichs scheme can also be obtained in a different way. The exact solutionof the linear convection equation (4.1) is given by

u(t, x) = u(0, x − ct) (4.9)

If we know the solution at t, then we can write

u(t + ∆t, x) = u(t, x − c∆t) (4.10)

for a time increment ∆t. This solution is shown graphically in the following figure (4.1)To obtain the value of u at the point P , let us interpolate between the values of u at

rrssttuu vvww

xxyy zz{{

| || |} }} } ~~��

����

������������������������������

����� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �

� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �

� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �� � � � � � � �

� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �� � � � � � �

∆ ∆t t

∆ ∆

t+∆t

x x xx xj j+1j−1

c c t

Figure 4.1: 3-point stencil

Page 74: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

70 Central Discretization Methods

points j + 1 and j − 1. Therefore,

un+1 (xj) = un (xj−1) +un (xj+1) − un (xj−1)

2∆x(xP − xj−1) (4.11)

un+1j = un

j−1 +un

j+1 − unj−1

2∆x(∆x − c∆t) (4.12)

un+1j = un

j−1 +un

j+1 − unj−1

2∆x∆x −

(

unj+1 − un

j−1

) c∆t

2∆x(4.13)

un+1j = un

j−1 +1

2

(

unj+1 − un

j−1

)

− c∆t

2∆x

(

unj+1 − un

j−1

)

(4.14)

un+1j =

1

2

(

unj−1 + un

j+1

)

− c∆t

2∆x

(

unj+1 − un

j−1

)

(4.15)

For a non-linear scalar conservation law, Lax-Friedrichs method can still be applied with-out much modification. Consider the 1-D Burgers equation

∂u

∂t+

∂g (u)

∂x= 0 where g (u) =

u2

2(4.16)

The Lax-Friedrichs method for the above Burgers equation is given by

un+1j =

1

2

(

unj−1 + un

j+1

)

− ∆t

2∆x

[

g (un)j+1 − g (un)j−1

]

(4.17)

which is obtained by central differencing the flux term and replacing the variable unj by

the average value of the values at the neighbours j + 1 and j − 1. Note, however, thatthe interpretation of exact solution with a linear interpolation between the points j − 1and j + 1 will not now lead to the same scheme. The non-linearity of the flux makes itdifferent. For non-linear vector conservation equations (Euler equations) also, the Lax-Friedrichs method can be applied easily as

Un+1j =

1

2

(

Unj−1 + Un

j+1

)

− ∆t

2∆x

[

G (Un)j+1 − G (Un)j−1

]

(4.18)

where U and G (U) represent vectors. The Lax-Friedrichs scheme is the simplest of allthe numerical methods for hyperbolic equations.

4.3 Lax-Wendroff Method

Lax and Wendroff [14] introduced a second order accurate central discretization schemefor solving hyperbolic equations, which replaced the Lax-Friedrichs scheme. To derive the

Page 75: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

4.3. LAX-WENDROFF METHOD 71

Lax-Wendroff scheme for the linear convection equation, let us expand the variable u inTaylor Series and retain the terms upto the second order.

un+1j = u(t + ∆t, x) = un

j + ∆t(∂u

∂t

)n

j+

∆t2

2

(∂2u

∂t2

)n

j+ O

(

∆t3)

(4.19)

Let us replace time derivatives by space derivatives.

∂u

∂t= −c

∂u

∂x&

∂2u

∂t2=

∂t

(

∂u

∂t

)

= −c∂

∂t

(

−c∂u

∂t

)

= c2∂2u

∂x2

Therefore, un+1j = un

j + c∆t(∂u

∂x

)

+ c2 ∆t2

2

(∂2u

∂x2

)

+ O(

∆t3)

Let us use 2nd order central differences for the derivatives.

∂u

∂x=

(uj+1 − uj−1)

2∆x+ 0(∆x2)

∂2u

∂x2=

(uj+1 − 2uj + uj−1)

∆x2+ 0(∆x2)

Therefore, un+1j = un

j +c∆t

2∆x

(

uj+1 − uj−1

)

+c2∆t2

2∆x2

(

uj+1 − 2unj + uj−1

)

+ O(

∆x3, ∆t3)

This is the Lax-Wendroff scheme, which is second order accurate in both time and space.We can also derive this method in a different way. Consider a 3-point stencil as shown inthe figure (4.1). The exact solution of the linear convection equation is given by

u (t + ∆t, xj) = u (t, xj − c∆t) (4.20)

To obtain the value of xP on the 3-point stencil, let us now use a quadratic interpolationof the values of u at the points xj−1, xj and xj+1. Considering the point xj as the originand assuming a quadratic variation, we can write

u (x) = a (x − xj)2 + b (x − xj) + c (4.21)

We know the value of u at the three points of the stencil as

u (xj−1) = uj−1 , u (xj) = uj and u (xj+1) = uj+1 (4.22)

With the above three equations, the three unknowns a, b and c can be evaluated usingthe expression (4.21) as

a =uj−1 − 2uj + uj+1

2∆x2, b =

uj+1 − uj−1

2∆xand c = uj (4.23)

Page 76: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

72 Central Discretization Methods

Therefore, the exact solution of the convection equation with the above quadratic inter-polation gives

u (t + ∆t, xj) = u (t, xj − c∆t)= un (xP )

= a (xj − c∆t − xj)2 + b (xj − c∆t − xj) + c

= a (c∆t)2 − b (c∆t) + c

= unj − c∆t

2∆x

(

unj+1 − un

j−1

)

+c2∆t2

2∆x2

(

unj+1 − 2un

j + unj−1

)

(4.24)

Thus, we have obtained the Lax-Wendroff method by tracing the foot of the character-istic with a quadratic interpolation! The Lax-Wendroff method has the least amount ofartificial viscosity allowed by the stability condition.

For non-linear scalar conservation equations, the Lax-Wendroff method can be derivedwith a little more care as follows. Consider the inviscid Burgers equation

∂u

∂t+

∂x[g (u)] = 0 where g (u) =

1

2u2 (4.25)

Therefore, we can obtain∂u

∂t= −∂g (u)

∂x(4.26)

∂2u

∂t2=

∂t

(

∂u

∂t

)

=∂

∂t

[

−∂g (u)

∂x

]

= − ∂

∂x

[

∂g (u)

∂t

]

= − ∂

∂x

[

∂g (u)

∂u

∂u

∂t

]

or∂2u

∂t2= − ∂

∂x

[

∂g (u)

∂u

(

−∂g (u)

∂x

)]

=∂

∂x

[

a (u)∂g (u)

∂x

]

where a (u) =∂g (u)

∂x

(4.27)

Let us now use Taylor Series expansion to obtain

un+1j = u(t + ∆t, x) = un

j + ∆t

(

∂u

∂t

)n

j

+∆t2

2

(

∂2u

∂t2

)n

j

+ O(

∆t3)

(4.28)

Let us now replace the time derivatives by space derivatives derived above to obtain

un+1j = un

j − ∆t

(

∂g (u)

∂x

)n

j

+∆t2

2

∂x

(

a (u)∂g (u)

∂x

)n

j

+ O(

∆t3)

(4.29)

Now, let us replace the space derivatives by central differences. The first order spacederivative on the right hand side is simple to deal with and we can use

∂g (u)

∂x=

g (uj+1) − g (uj−1)

∆x(4.30)

Page 77: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

4.3. LAX-WENDROFF METHOD 73

To discretize the second order space derivative, we take the mid-points between the gridpoints xj and xj±1 and then use the central differencing. Thus, we have

∂x

(

a (u)∂g (u)

∂x

)

=

a(

uj+ 12

)

(

∂g (u)

∂x

)

j+ 12

− a(

uj− 12

)

(

∂g (u)

∂x

)

j− 12

∆x

=a

(

uj+ 12

) g (uj+1) − g (uj)

∆x− a

(

uj− 12

) g (uj) − g (uj−1)

∆x∆x

(4.31)

Using the above central differences for the space derivatives, we obtain the Lax-Wendroffmethod for the non-linear scalar conservation equation as

un+1j = un

j − ∆t

2∆x[g (uj+1) − g (uj−1)]

+∆t2

2∆x2

[

a(

uj+ 12

)

{g (uj+1) − g (uj)} − a(

uj− 12

)

{g (uj) − g (uj−1)}]

(4.32)

We now have to evaluate the wave speed a (u) at mid-points between the grid points xj

and xj±1. The simplest choice is

a(

uj+ 12

)

= a

(

uj + uj+1

2

)

(4.33)

For the Burgers equation, a (u) =∂g

∂u= u. For vector conservation laws (Euler equations)

the Lax-Wendroff method can be derived in a similar way as

Un+1j = Un

j − ∆t

2∆x[G (Uj+1) − G (Uj−1)]

+∆t2

2∆x2

[

A(

Uj+ 12

)

{G (Uj+1) − G (Uj)} − A(

Uj− 12

)

{G (Uj) − G (Uj−1)}]

(4.34)

where U and G are conserved variable and flux vectors and A is the flux Jacobian matrix,

defined by A =∂G

∂U. We can notice that the Lax-Wendroff method requires the evaluation

of the derivatives, and hence is computationally not efficient. Instead, an equivalent two-step Lax-Wendroff method was used in practice, which does not require the evaluationof Jacobians and is also simpler in multi-dimensions. The Lax-Wendroff method, beingsecond order accurate, generates wiggles near the captured shocks. The Lax-Wendroffmethod does not have sufficient numerical dissipation to capture the expansion waves atsonic points (where the wave speed changes sign) correctly and is usually supplementedwith a dose of artificial viscosity.

Page 78: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

74 Central Discretization Methods

4.4 Two-Step Lax-Wendroff Method and MacCor-

mack Method

Richtmyer and Morton [33] presented a two-step Lax-Wendroff method, which avoids theevaluation of flux Jacobian matrices, when applied to vector conservation laws. Thismethod contains two steps - a predictor step and a corrector step. Consider the scalarconservation equation

∂u

∂t+

∂g (u)

∂x= 0 (4.35)

In the predictor step, the Lax-Friedrichs method is used at the mid-points between thegrid points, obtaining

Predictor : un+ 1

2

j+ 12

=1

2

(

unj+1 + un

j

) ∆t

2∆x

[

g(

unj+1

)

− g(

unj

)]

(4.36)

A similar expression is used to obtain un+ 1

2

j− 12

, which can be obtained replacing j by j − 1

in the above step. In the corrector step, a centered time and centered space (CTCS)approximation is used as

Corrector : un+1j = un

j − ∆t

∆x

[

gn+ 1

2

j+ 12

− gn+ 1

2

j− 12

]

(4.37)

For a linear flux (as in the case of linear convection equation), this two-step schemewill be identical to the Lax-Wendroff scheme, which can be obtained by substituting thepredictor step expressions in the corrector step. Another two-step method which reducesto the Lax-Wendroff scheme for a linear flux is the MacCormack method [15], in whichthe predictor step is given by

Predictor : un+ 1

2 j = unj − ∆t

∆x

[

g(

unj+1

)

− g(

unj

)]

(4.38)

and the corrector step is given by

Corrector : un+1j =

1

2

(

unj + u

n+ 12

j

)

− ∆t

∆x

[

g(

un+ 1

2j

)

− g(

un+ 1

2j−1

)]

(4.39)

Note that the predictor step uses a forward difference while the corrector step uses abackward difference, which can be interchanged. MacCormack method can also be writtenas

Predictor : un+ 1

3j = un

j − ∆t

∆x

[

g(

unj+1

)

− g(

unj

)]

(4.40)

Corrector : un+ 2

3j = u

n+ 13

j − ∆t

∆x

[

g(

un+ 1

3j

)

− g(

un+ 1

3j−1

)]

(4.41)

Page 79: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

4.4. TWO-STEP LAX-WENDROFF METHOD AND MACCORMACK METHOD 75

un+1j =

1

2

(

unj + u

n+ 23

j

)

(4.42)

This method will also be identical to Lax-Wendroff method for a linear flux. In thenon-linear case, all the three methods are different. The two-step Lax-Wendroff methodand MacCormack method do not need the evaluation of the flux Jacobian matrices, whenapplied to vector conservation laws. Another central difference scheme which became pop-ular is the scheme of Jameson, Schmidt and Turkel [16], which has higher order artificialviscosity controlled by tuning parameters and Runge-Kutta time stepping for stability.But, these tuning parameters are problem dependent and are not universal. Because ofthese reasons, the upwind methods, which were introduced later, became more popular.Upwind difference schemes will be presented in the next chapters.

Page 80: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

76 Central Discretization Methods

Page 81: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Chapter 5

Upwind Methods for ScalarConservation Laws

In the third chapter, we learnt about the upwind method for the linear convection equa-tion. For a linear convection equation given by

∂u

∂t+

∂g (u)

∂x= 0 where g (u) = cu (5.1)

the upwind method is developed by splitting the wave-speed, c, into a positive part and

a negative part as c = c+ + c− =c + |c|

2+

c − |c|2

and using upwind discretization based

on these split wave-speeds, either in finite difference form or in finite volume form. Forexample, the upwind finite difference method is

un+1j − un

j

∆t+ c+

(

∂u

∂x

)

Backward−difference

+ c−(

∂u

∂x

)

Forward−difference

= 0 (5.2)

Note that the wave-speed c is taken out of the space differentiation term and the dis-cretization is done with the non-conservative form of the equation. This is OK for thelinear convection equation since the wave-speed is a constant. What about a situation inwhich the wave-speed is a variable? In the case of Burgers equation,

g (u) =1

2u2 (5.3)

the wave-speed is given by

a =∂g (u)

∂u= u (5.4)

and the non-conservative form of the equation is

∂u

∂t+ u

∂u

∂x= 0 (5.5)

77

Page 82: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

78 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

We can see that the convection speed is not only a variable, it is the solution itself, whichis the unknown! Thus, non-linearity increases the complexity. In such cases, it is better touse the conservative form of the equation, as it is well-known that only conservative for-mulations will capture the discontinuities correctly with the right positions on an average.But, we need wave-speed splitting to separate the directions of information propagation,so that upwinding can be done based on the separated wave-speeds. Therefore, the chal-lenge is to combine wave-speed splitting with the conservative form. In this chapter,four different strategies in which this question is answered will be presented, namely, fluxsplitting method, the method of a Riemann Solver, the approach of Kinetic Schemes andfinally the strategy of Relaxation Schemes. After these basic strategies for the simplercase of scalar but non-linear conservation equations, the corresponding methods for vectorconservation equations (Euler equations) are presented in the next chapter.

5.1 Flux Splitting Method

Consider the 1-D Burgers equation

∂u

∂t+

∂g (u)

∂x= 0 where g (u) =

1

2u2 (5.6)

Let us rewrite the expression for the flux in such a way that it contains the wave speed,

a =∂g (u)

∂uand the conserved variable, u.

g (u) =1

2u2 = u

1

2u = aku where a =

∂g (u)

∂uand k = a constant (5.7)

The flux now contains the wave-speed explicitly and the constant k is introduced suchthat we can tackle both Burgers equation and linear convection equation together in thesame conservative discretization.

k =

[

1 for linear convection equation1

2for Burgers equation

(5.8)

a =

[

c for linear convection equationu for Burgers equation

(5.9)

We can now introduce wave-speed splitting as

a = a+ + a− =a + |a|

2+

a − |a|2

(5.10)

and introduce it in the definition of the flux in conservative form as

g (u) = aku =(

a+ + a−)

ku (5.11)

Page 83: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.1. FLUX SPLITTING METHOD 79

Therefore, the flux now splits into two parts as

g (u) = a+ku + a−ku = g+ + g− (5.12)

The scalar conservation equation now becomes

∂u

∂t+

∂g+

∂x+

∂g−

∂x= 0 (5.13)

and now the flux derivatives are separated based on positive and negative wave-speeds. Wecan now introduce upwind differencing to obtain an upwind flux splitting finite differencescheme as

∂u

∂t+

(

∂g+

∂x

)

Backward−difference

+

(

∂g−

∂x

)

Forward−difference

= 0 (5.14)

or∂u

∂t+

g+j − g+

j−1

∆x+

g−j+1 − g−

j

∆x= 0 (5.15)

If we now discretize the transient term (time derivative of u) by forward differencing anduse an explicit discretization for the space discretiztaion, we obtain the first order fluxsplit upwind scheme for a scalar conservation equation as

un+1j − un

j

∆t+

g+n

j − g+n

j−1

∆x+

g−n

j+1 − g−n

j

∆x= 0 (5.16)

To derive a finite volume method based on flux splitting, let us consider the integralformulation as

∫ tn+1

tn

∫ xj+1

2

xj− 1

2

(

∂u

∂t+

∂g (u)

∂x

)

dxdt = 0 (5.17)

which becomes

un+1j = un

j − ∆t

∆x

[

gnj+ 1

2− gn

j− 12

]

(5.18)

To evaluate the fluxes at the cell interfaces in an upwind way, we can write

gj+ 12

=

{

(aku)j if aj > 0

(aku)j+1 if aj+1 < 0(5.19)

which can be written as

gj+ 12

=(

a+ku)

j+

(

a−ku)

j+1= g+

j + g−j+1 (5.20)

Similarly, we can derive

gj− 12

=(

a+ku)

j−1+

(

a−ku)

j= g+

j−1 + g−j (5.21)

Page 84: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

80 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

and the update formula for the first order upwind finite volume method becomes

un+1j = un

j − ∆t

∆x

[

gnj+ 1

2− gn

j− 12

]

(5.22)

wheregj+ 1

2= g+

j + g−j+1 (5.23)

andgj− 1

2= g+

j−1 + g−j (5.24)

5.2 Approximate Riemann Solver of Roe

An original innovative idea of tackling the problem of designing an upwind method forthe non-linear scalar conservation equations using a conservative formulation was givenby Godunov [17]. At the edge of each finite volume or cell interface, he proposed to solvea Riemann problem. A Riemann problem for the equation

∂u

∂t+

∂g (u)

∂x= 0 (5.25)

is the problem with the initial condition

u (x, t = 0) =

{

uleft for x < 0uright for x > 0

(5.26)

Since we are assuming piecewise polynomial variation within each cell, at the cell interfacesthere is always a discontinuity in the solution and hence a Riemann problem exists ateach cell interface. Godunov proposed to solve the Riemann problem exactly at the cellinterfaces. Such upwind methods are known as exact Riemann solvers. Roe [18] proposedto solve an approximate Riemann problem at the cell interfaces, which simplifies theprocedure, without losing the accuracy. In this section, the approximate Riemann solverof Roe is presented for scalar conservation equations.

Consider the scalar conservation equation

∂u

∂t+

∂g (u)

∂x= 0 (5.27)

Integrating the above equation over a finite volume (or equivalently a cell), we obtain

un+1j = un

j − ∆t

∆x

[

gnj+ 1

2− gn

j− 12

]

(5.28)

In obtaining the conservative fluxes at the cell interfaces, we have to solve the Riemannproblem

∂u

∂t+

∂g (u)

∂x= 0 with uj+ 1

2=

{

uleft for x < xj+ 12

uright for x > xj+ 12

(5.29)

Page 85: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.2. APPROXIMATE RIEMANN SOLVER OF ROE 81

or, using the quasilinear form of the equation, the Riemann problem

∂u

∂t+ a

∂u

∂x= 0 with uj+ 1

2=

{

uleft for x < xj+ 12

uright for x > xj+ 12

(5.30)

where

a =∂g (u)

∂u(5.31)

is the wave-speed. Let us now replace the above Riemann problem by an approximateRiemann problem

∂u

∂t+ a

∂u

∂x= 0 with uj+ 1

2=

{

uleft for x < xj+ 12

uright for x > xj+ 12

(5.32)

where a is now linear and hence the equation is easier to solve and let a be a function ofboth left and right states as

a = a (uleft, uright) (5.33)

Since we have replaced the nonlinear a by a linear a, obviously, we should connect bothsomehow. Let us now put two conditions on a.

1. a (uleft, uright) = u if uleft = uright = u

2. ∆g = a∆u

The first condition is a simple consistency condition such that when the left and rightstates are the same, the approximate Riemann problem should get reduced to the actualRiemann problem. The second condition actually comes from the conservation conditionG (U) = AU for the vector conservation laws, modified for this scalar case for flux andconservative variable differences here. More importantly, the second condition is actuallythe Rankine-Hugoniot condition or the jump condition across a discontinuity. Let us nowselect a such that both these conditions are satisfied.

The second condition at the cell interface j + 12

can be written as

gj+1 − gj

uj+1 − uj

= aj+ 12

(5.34)

orgj+1 − gj = aj+ 1

2(uj+1 − uj) (5.35)

Since this is the Rankine-Hugoniot condition, aj+ 12

is actually the speed of a discontinuity,which we can denote by s. The above condition does not distinguish between a left-movingand right-moving discontinuity. More importantly, the above condition does not give us aninterface flux, gj+ 1

2. Therefore, let us split the speed of the discontinuity into two parts - a

Page 86: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

82 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

���� ��������

� � � � � �� � � � �

j j+1j−1

j+1/2j−1/2

s+ss−

positive one representing the right-moving discontinuity and a negative one representingthe left-moving discontinuity, as shown in the figure above.

s = s+ + s− =s + |s|

2+

s − |s|2

(5.36)

Then, we can rewrite the second condition as

gj+ 12− gj = s− (uj+1 − uj) (5.37)

andgj+1 − gj+ 1

2= s+ (uj+1 − uj) (5.38)

Since we denoted the wave speed by the speed of the discontinuity, we can write

gj+ 12− gj = a−

j+ 12

(uj+1 − uj) (5.39)

andgj+1 − gj+ 1

2= a+

j+ 12

(uj+1 − uj) (5.40)

Subtracting the equation (5.40) from (5.39), we get

2gj+ 12

= (gj + gj+1) + (uj+1 − uj)(a−j+ 1

2

− a+j+ 1

2

)

or

gj+ 12

=1

2(gj + gj+1) +

1

2(a−

j+ 12

− a+j+ 1

2

)(uj+1 − uj) (5.41)

Here

a±j+ 1

2

=1

2(aj+ 1

2± |aj+ 1

2|) (5.42)

a−j+ 1

2

− a+j+ 1

2

=1

2aj+ 1

2− 1

2|aj+ 1

2| − 1

2aj+ 1

2− 1

2|aj+ 1

2|

a−j+ 1

2

− a+j+ 1

2

= −|aj+ 12| (5.43)

Page 87: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.2. APPROXIMATE RIEMANN SOLVER OF ROE 83

gj+ 12

=1

2(gj + gj+1) −

1

2|aj+ 1

2| (uj+1 − uj) (5.44)

Similarly, we can obtain

gj− 12

=1

2(gj−1 + gj) −

1

2|aj− 1

2| (uj − uj−1) (5.45)

Now that we have an expression for the interface fluxes, let us find out the right value ofthe interface wave speed. For the Burgers equation

aj+ 12

=gj+1 − gj

uj+1 − uj

=12u2

j − 12u2

j

uj+1 − uj

=12(uj+1 − uj) (uj+1 + uj)

uj+1 − uj

=1

2(uj + uj+1) (5.46)

Therefore, we have obtained an update formula for the approximate Riemann solver whichsatisfies the second condition. Let us now verify whether the wave speed so obtainedsatisfies the first condition.

aj+ 12

=1

2(uj + uj+1) (5.47)

When uj = uj+1 = u, the above expression gives aj+ 12

= u, which is the wave speed ofthe original conservation law for the Burgers equation. Thus, the first condition is alsosatisfied.

5.2.1 Entropy Fix for Roe’s Scheme

Let us now rewrite the expression for the interface flux for Roe’s scheme as

gj+ 12

=1

2(gj + gj+1) −

1

2αj+ 1

2(uj+1 − uj) (5.48)

The first term on the right hand side leads to the central discretization and the secondterm on the right hand side leads to the dissipation part. Therefore, αj+ 1

2represents

the coefficient of numerical diffusion. Comparing with the actual expression we derivedbefore, we can see that

αj+ 12

= |aj+ 12| (5.49)

where aj+ 12

is the wave-speed. Therefore, the numerical diffusion varies linearly with thewave-speed in Roe’s scheme. This creates a problem as the wave-speed goes to zero, asthe numerical diffusion also goes to zero! Such points where the wave-speed changes signare called sonic points. Near sonic points, we are left with only central discretization,as the numerical diffusion vanishes, and thus the numerical method does not respect thehyperbolicity. Therefore, Roe’s scheme produces an unphysical expansion shock insteadof capturing an expansion fan. To correct this behaviour, a residual dissipation is usuallyintroduced at the sonic points. This residual dissipation prevents the scheme from pro-ducing an expansion shock and the expansion fan is captured well because of its presence.Let us now, derive such a numerical dissipation fix, called as the entropy fix.

Page 88: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

84 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

The basic idea is to select a small region near the sonic points and force a residualdissipation in this region, instead of letting the dissipation go to zero. Since the variationof dissipation with respect to the wave-speed is linear outside this region, the simplestway of doing this is to force a quadratic variation, by choosing the dissipation versuswave-speed curve to be a parabola instead of straight lines, as shown in the figure (5.1)below. Let us select the width of the small region in which the residual dissipation is to

δ/2

δ

δ−δ aj+1/2

αj+1/2

Figure 5.1: Entropy Fix for Roe’s Scheme

be forced to be of width δ on the wave-speed axis. Let us keep the residual dissipation in

the axis representing the coefficient of numerical diffusion, α as1

2δ. Assuming a parabolic

variation, we can write

α = k1a2 + k2a + k3 (5.50)

where a is the wave-speed, k1, k2 and k3 are constants and α is the coefficient of diffusion.

Since the residual diffusion is1

2δ, we have the condition

α (a = 0) =1

2δ (5.51)

Therefore

k3 =1

2δ (5.52)

and the equation of the parabola becomes

α = k1a2 + k2a +

1

2δ (5.53)

Now, we require a symmetrical variation of α with respect to a. Therefore

α (−a) = α (a) (5.54)

or

k1 (−a)2 + k2 (−a) +1

2δ = k1

(

a2)

+ k2 (a) +1

Page 89: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.2. APPROXIMATE RIEMANN SOLVER OF ROE 85

which gives

k2 = 0 (5.55)

Therefore, the equation of the parabola becomes

α = k1a2 +

1

2δ (5.56)

Let us now connect this parabola to the linear variation that we are starting back ata = |δ|. Therefore

α (a = δ) = a and α (a = −δ) = a (5.57)

Therefore

k1 (−δ)2 +1

2δ = δ (5.58)

and

k1 (+δ)2 +1

2δ = δ (5.59)

Both the above equations lead to

k1δ2 =

1

or

k1 =1

2δ(5.60)

Therefore, the equation of the parabola becomes

α =1

2δa2 +

1

or

α =a2 + δ2

2δ(5.61)

Thus, we fix the values of the numerical dissipation as

αj+ 12

=

a2 + δ2

2δfor aj+ 1

2< δ

αj+ 12

= |aj+ 12| for aj+ 1

2≥ δ

(5.62)

The value of δ has to be fixed by numerical experimentation so that the unphysicalexpansion shock given by Roe’s scheme is removed and the expansion fan is capturedcorrectly.

Page 90: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

86 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

5.3 Kinetic Flux Splitting Method

A Kinetic Scheme for Burgers equation can be constructed from a Boltzmann equationwith a B-G-K model and a suitably selected Maxwellian (equilibrium distribution) suchthat we get the right moments. Let us consider the 1-D case. The Boltzmann equationwith the B-G-K model is

∂f

∂t+ v

∂f

∂x=

F − f

tR(5.63)

Here, f is the molecular velocity distribution function, v is the molecular velocity andF is the Maxwellian distribution function. The Maxwellian (equilibrium) distribution isselected in such a way that we can get the right moments.

F = u

√β√π

e−β(v−u2 )

2

(5.64)

The moments are

u = 〈f〉 =

∫ ∞

−∞

fdv = 〈F 〉 =

∫ ∞

−∞

Fdv (5.65)

and

g (u) = 〈vf〉 =

∫ ∞

−∞

vfdv = 〈vF 〉 =

∫ ∞

−∞

vFdv (5.66)

Note that β does not have any physical significance here, as there is no energy equation(no pressure or temperature). β just plays the role of a constant, which determines theshape of the equilibrium distribution. The Burgers equation can be recovered as a momentof the above Boltzmann equation, given by the following mathematical expression.

〈(

∂f

∂t+ v

∂f

∂x=

F − f

tR

)

〉 (5.67)

where

〈f〉 =

∫ ∞

−∞

fdv (5.68)

This approach is valid for recovering any scalar conservation law, as long as the Maxwellian(equilibrium) distribution is suitably defined. To recover the linear convection equation,the Maxwellian is given by

F = u

√β√π

e−β(v−c)2 (5.69)

We now use the splitting method to separate the linear convection term on the left handside of the Boltzmann equation with the B-G-K model from the non-linear source termon the right hand side, leading to the following two steps as :Collision Step :

df

dt=

F − f

tR(5.70)

Page 91: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.3. KINETIC FLUX SPLITTING METHOD 87

Convection Step :∂f

∂t+ v

∂f

∂x= 0 (5.71)

To simplify further, we take the relaxation time tR in the collision step to be zero, therebyforcing instantaneous relaxation. This simplifies the collision step to a relaxation step.Thus, we have two steps :Relaxation Step :

f = F (5.72)

Convection step :∂f

∂t+ v

∂f

∂x= 0 (5.73)

Therefore, all we have to do is to take the initial distribution function as a Maxwellianand then solve the above linear convection equation by an upwind method for a time-step∆t. This constitutes one time-step. Taking moments of the resulting scheme will yieldan upwind scheme for the scalar conservation equation.

Let us now apply an upwind method to the above linear convection equation of theconvection step. First, let us rewrite the above equation in conservative form as

∂f

∂t+

∂ (vf)

∂x= 0 (5.74)

Note that molecular velocity v is not a function of the space coordinate x, as v changesonly due to molecular collisions (the model we have used in Kinetic Theory is just freeflow with collisions, the free flow being represented by the above equation). Let us nowsplit the molecular velocity into a positive part and a negative part as

v = v+ + v− =v + |v|

2+

v − |v|2

(5.75)

Therefore, we obtain∂f

∂t+

∂ (v+ + v−) f

∂x= 0

∂f

∂t+

∂ (v+f)

∂x+

∂ (v−f)

∂x= 0 (5.76)

Since we have separated the wave speed (v in this case) into positive and negative parts,we can now introduce upwind differencing on a 3-point stencil of points [j − 1, j, j + 1] as

∂f

∂t+

(v+f)j − (v+f)j−1

∆x+

(v−f)j+1 − (v−f)j

∆x= 0 (5.77)

Using a simple explicit Euler time-stepping to discretize the transient term and using anexplicit discretization of the space terms, we obtain

fn+1j − fn

j

∆t+

(v+f)n

j − (v+f)n

j−1

∆x+

(v−f)n

j+1 − (v−f)n

j

∆x= 0 (5.78)

Page 92: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

88 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

or

fn+1j = fn

j − ∆t

∆x

[

(

v+f)n

j−

(

v+f)n

j−1+

(

v−f)n

j+1−

(

v−f)n

j

]

(5.79)

Since we have fnj = F n

j from the Relaxation Step, the above equation becomes

fn+1j = F n

j − ∆t

∆x

[

(

v+F)n

j−

(

v+F)n

j−1+

(

v−F)n

j+1−

(

v−F)n

j

]

(5.80)

Let us now take moments of the above upwind scheme so that we obtain an upwindscheme for the scalar conservation equation considered as

〈fn+1j = F n

j − ∆t

∆x

[

(

v+F)n

j−

(

v+F)n

j−1+

(

v−F)n

j+1−

(

v−F)n

j

]

〉 (5.81)

or

〈fn+1j 〉 = 〈F n

j 〉 −∆t

∆x

[

〈(

v+F)n

j〉 − 〈

(

v+F)n

j−1〉 + 〈

(

v−F)n

j+1〉 − 〈

(

v−F)n

j〉]

(5.82)

By definition, 〈f〉 = 〈F 〉 = u and 〈vf〉 = g. Therefore, the above equation becomes

un+1j = un

j − ∆t

∆x

[(

g+n

j − g+n

j−1

)

+(

g−n

j+1 − g−n

j

)]

(5.83)

whereg± = 〈v±F 〉 (5.84)

are the split fluxes. Let us evaluate the split fluxes.

g+ = 〈v+F 〉 =

∫ ∞

−∞

v + |v|2

Fdv (5.85)

or

g+ =

∫ ∞

0

vFdv (5.86)

since v is positive. Therefore

g+ =

∫ ∞

0

vu

√β√π

e−β(v−u2 )

2

dv

or

g+ = u

√β√π

∫ ∞

0

ve−β(v−u2 )

2

dv (5.87)

To evaluate this integral, let us use the substitution

w =√

β(

v − u

2

)

(5.88)

Page 93: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.3. KINETIC FLUX SPLITTING METHOD 89

Therefore

v =

(

w√β

)

+u

2

and

dv =1√β

dw

since u is the mean the molecular velocity. The limits are :

As v → ∞ w → ∞As v → −∞ w → −∞As v → 0 w → −s where s =

u√

β

2

Therefore

g+ = u

√β√π

∫ ∞

−s

(

w√β

+u

2

)

e−w2 1√β

dw

or

g+ = u

√β√π

[

1

β

∫ ∞

−s

we−w2

dw +u

2√

β

∫ ∞

−s

e−w2

dw

]

(5.89)

Let us now evaluate the integrals in the above equation.

I1 =

∫ ∞

−s

we−w2

dw (5.90)

I1 =

∫ ∞

0

we−w2

dw +

∫ 0

−s

we−w2

dw

I1 =1

2−

∫ −s

0

we−w2

dw

where we have used the table of integrals supplied in the first chapter. Let us use thechange of variable as

z = −w2; therefore dz = −2wdw

As w → 0, z → 0; as w → s z → −s2

I1 =1

2−

∫ −s

0

1

22wdwe−w2

I1 =1

2− 1

2

∫ −s2

0

ezdz

I1 =1

2− 1

2[ez]−s2

0

I1 =1

2− 1

2

[

e−s2 − e0]

Page 94: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

90 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

I1 =1

2− 1

2

[

e−s2 − 1]

I1 =1

2− 1

2e−s2

+1

2Therefore

I1 = −1

2e−s2

(5.91)

Let us now evaluate the second integral.

I2 =

∫ ∞

−s

e−w2

dw (5.92)

I2 =

∫ ∞

0

e−w2

dw +

∫ 0

−s

e−w2

dw

I2 =

√π

2−

∫ −s

0

e−w2

dw

I2 =

√π

2+

∫ s

0

e−z2

dz where z = −w

Let us now use the definition of the error function

erf (s) =2√π

∫ s

0

e−w2

dw (5.93)

Therefore

I2 =

√π

2+

√π

2erf (s)

or

I2 =

√π

2[1 + erf (s)] (5.94)

Therefore, the split flux expression becomes

g+ = u

√β√π

[

1

2βe−s2

+u

2√

β

π

2{1 + erf (s)}

]

org+ = gA+ +

u

2√

πβB (5.95)

where

g =1

2u2 , A+ =

1 + erf (s)

2and B = e−s2

(5.96)

Similarly, we can evaluate the negative split flux

g− =

∫ 0

−∞

ve−β(v−u2 )dv (5.97)

Page 95: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.4. RELAXATION SCHEMES 91

asg− = gA− − u

2√

πβB (5.98)

where

A− =1 − erf (s)

2(5.99)

Note that here

g =1

2u2 and s =

1

2u√

β (5.100)

Both the split fluxes can be written as

g± = gA± ± u

2√

πβB (5.101)

5.4 Relaxation Schemes

Consider the Burgers equation

∂u

∂t+

∂g (u)

∂x= 0 where g (u) =

1

2u2 (5.102)

The Relaxation System of Jin and Xin for the above conservation law is given by

∂u

∂t+

∂v

∂x= 0 (5.103)

∂v

∂t+ λ2∂u

∂x=

1

ε[v − g (u)] where ε → 0 (5.104)

Equivalently, the diagonal form of the above Relaxation System leads to the discreteBoltzmann equation as (see chapter 1)

∂f

∂t+ Λ

∂f

∂x=

F − f

εwith ε → 0 (5.105)

where

f =

[

f1

f2

]

=

1

2u − 1

2λv

1

2u +

1

2λv

(5.106)

Λ =

[

−λ 00 λ

]

(5.107)

Page 96: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

92 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

and

F =

[

F1

F2

]

=

1

2u − 1

2λg (u)

1

2u +

1

2λg (u)

(5.108)

We can use any of the above relaxation systems as a starting point to develop an upwindscheme for the Burgers equation.

5.4.1 Relaxation Scheme

Let us now take the Relaxation System

∂u

∂t+

∂v

∂x= 0 (5.109)

∂v

∂t+ λ2∂u

∂x= −1

ε[v − g (u)] (5.110)

Thus, we have to solve two convection equations, one with a source term. The updateformulae are

un+1j − un

j

∆t+

1

∆x

[

vnj+ 1

2− vn

j− 12

= 0]

(5.111)

andvn+1

j − vnj

∆t+

λ2

∆x

[

unj+ 1

2− un

j− 12

]

= −1

ε

[

vnj − g

(

unj

)]

(5.112)

Since the Relaxation System has two characteristic variables f1 and f2 which travel withthe frozen characteristic speeds −λ and λ, upwinding will be applied to these two char-acteristic variables, based on the characteristic speeds. Therefore

f1,j+ 12

= f1,j+1 for the characteristic speed − λ (5.113)

andf2,j+ 1

2= f2,j for the characteristic speed λ (5.114)

Therefore1

2uj+ 1

2− 1

2λvj+ 1

2=

1

2uj+1 −

1

2λvj+1 (5.115)

and1

2uj+ 1

2+

1

2λvj+ 1

2=

1

2uj −

1

2λvj (5.116)

We now have two equations with two unknowns, namely, uj+ 12

and vj+ 12. Solving these

two equations, we obtain

uj+ 12

=1

2(uj + uj+1) −

1

2λ(vj+1 − vj) (5.117)

Page 97: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.4. RELAXATION SCHEMES 93

and

vj+ 12

= −λ

2(uj+1 − uj) +

1

2(vj + vj+1) (5.118)

The expressions for uj− 12

and vj− 12

can be obtained from the above expressions by substi-tuting j − 1 for j. Substituting the above into the update equation, we obtain

un+1j = un

j − ∆t

2∆x

[

vnj+1 − vn

j−1

]

+λ∆t

2∆x

[

unj+1 − 2un

j + unj−1

]

(5.119)

and

vn+1j = vn

j − λ2∆t

2∆x

[

unj+1 − un

j−1

]

+λ∆t

2∆x

[

vnj+1 − 2vn

j + vnj−1

]

− ∆t

ε

[

vnj − g

(

unj

)]

(5.120)

We can use the initial condition v (x, t = 0) = g {u (x, t = 0)}. For the value of ε, ex-periments have shown that any small value such that ε ≤ 10−4 will work. Jin and Xinused ε = 10−8 and this value is recommended for use. Alternatively, we can also developa Relaxation Scheme by upwind differencing the Discrete Boltzmann equation directly.Such a Discrete Kinetic Scheme is presented in the next section.

5.4.2 Discrete Kinetic Scheme

Consider the 1-D Burgers equation

∂u

∂t+

∂g (u)

∂x= 0 with g (u) =

1

2u2 (5.121)

The diagonal form of the Relaxation System for the above equation is the discrete Boltz-mann equation, given by

∂f

∂t+ Λ

∂f

∂x=

1

ε[F − f ] (5.122)

where F is the Maxwellian defined by

F =

[

F1

F2

]

=

u

2− g (u)

2λu

2+

g (u)

(5.123)

Let us now apply a splitting method for the discrete Boltzmann equation, obtaining aRelaxation Step as

df

dt=

1

ε[F − f ] (5.124)

and a Convection Step as∂f

∂t+ Λ

∂f

∂x= 0 (5.125)

Page 98: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

94 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

Let us now simplify the Relaxation Step further by assuming ε = 0 (instantaneous relax-ation), obtaining f = F as the Relaxation Step. Therefore, we just have to solve the twolinear convection equations of the above Relaxation System

∂f1

∂t+

∂h1

∂x= 0 where h1 = −λf1 (5.126)

and∂f2

∂t+

∂h2

∂x= 0 where h2 = λf2 (5.127)

with the constraints f1 = F1 and f2 = F2. Let us now apply upwinding to the above twoequations. The finite volume method applied to the above equations leads to

fn+11,j = fn

1,j −∆t

∆x

[

hn1,j+ 1

2− hn

1,j− 12

]

(5.128)

fn+12,j = fn

2,j −∆t

∆x

[

hn2,j+ 1

2− hn

2,j− 12

]

(5.129)

We can obtain upwind fluxes in the above two equations by using

h1,j+ 12

= h1,j+1 as wave speed is − λ and information comes from right (5.130)

h2,j+ 12

= h2,j as wave speed is λ and information comes from left (5.131)

Similarly,

h1,j− 12

= h1,j as wave speed is − λ and information comes from right (5.132)

h2,j− 12

= h2,j−1 as wave speed is λ and information comes from left (5.133)

The above scheme is the simpler Upwind Relaxation Scheme obtained as the DiscreteKinetic Scheme. The conserved variable can be obtained as a moment as

un+1j = fn+1

1,j + fn+12,j (5.134)

Let us now check what is obtained by such an Upwind Relaxation Scheme for the Burgersequation. By substituting the upwind fluxes in the update formulae, we obtain

un+1j = fn+1

1,j + fn+12,j − ∆t

∆x

[

hn1,j+1 − hn

1,j + hn2,j − hn

2,j−1

]

(5.135)

or

un+1j = un

j − ∆t

∆x

[

−λ

{

unj+1

2−

gnj+1

2λ−

unj

2+

gnj

}

+ λ

{

unj

2+

gnj

2λ−

unj−1

2−

gnj−1

}]

(5.136)or

un+1j = un

j − ∆t

2∆x

[

gnj+1 − gn

j−1

]

+λ∆t

2∆x

[

unj+1 − 2un

j + unj−1

]

(5.137)

Therefore, the upwind relaxed scheme leads to a central differencing of the fluxes plus anumerical dissipation term, with the coefficient of numerical dissipation being proportionalto the parameter introduced in the Relaxation System, λ.

Page 99: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.4. RELAXATION SCHEMES 95

5.4.3 A Low Dissipation Relaxation Scheme

The Relaxation Schemes are more dissipative than the approximate Riemann solver ofRoe (which can capture steady discontinuities exactly, without numerical dissipation).Recently, Raghurama Rao and Balakrishna [52] developed a low dissipation RelaxationScheme which can capture steady discontinuities exactly, like Roe’s scheme. That lowdissipation Relaxation Scheme, named An Accurate Shock Capturing Algorithm with aRelaxation System (ASCARS) is described below.

The two equations of the convection step are

∂f1

∂t− λ

∂f1

∂x= 0 (5.138)

and∂f2

∂t+ λ

∂f2

∂x= 0 (5.139)

which can be integrated over the finite volume to obtain

fn+11,j = fn

1,j −∆t

∆x

[

hn1,j+ 1

2− hn

1,j− 12

]

(5.140)

and

fn+12,j = fn

2,j −∆t

∆x

[

hn2,j+ 1

2− hn

2,j− 12

]

(5.141)

whereh1 = −λf1 , h2 = λf2 and ∆x = xj+ 1

2− xj− 1

2(5.142)

The cell-integral averages are defined by

f1,j =1

∆x

∫ xj+1

2

xj− 1

2

f1dx (5.143)

and

f2,j =1

∆x

∫ xj+1

2

xj− 1

2

f2dx (5.144)

We can define the fluxes at the cell interfaces as

h1,j+ 12

=1

2[h1,j + h1,j+1] − d1,j+ 1

2(5.145)

where d1,j+ 12

is the diffusive flux added to the central differences represented by the firsttwo terms on the right hand side. The general form of the diffusive flux is

d1,j+ 12

=1

2α1,j+ 1

2

[

f1,j+1 − f1,j

]

(5.146)

Page 100: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

96 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

Similarly,

h2,j+ 12

=1

2[h2,j + h2,j+1] − d2,j+ 1

2(5.147)

and

d2,j+ 12

=1

2α2,j+ 1

2

[

f2,j+1 − f2,j

]

(5.148)

Here, α1,j+ 12

and α2,j+ 12

are the coefficients of numerical diffusion.

The basic idea of the new scheme, ASCARS, is to fix the coefficients of the numericaldissipation α1,j± 1

2and α2,j± 1

2in such a way that the resulting scheme satisfies the Rankine-

Hugoniot (jump) condition for the original non-linear conservation law. With this aim,we keep these coefficients open, without fixing their values, and substitute them in theflux expressions to obtain the update formulae as

fn+11,j = fn

1,j +λ∆t

2∆x

[

fn1,j+1 − fn

1,j−1

]

+∆t

2∆x

[

α1,j+ 12

(

fn1,j+1 − fn

1,j

)

]

− ∆t

2∆x

[

α1,j− 12

(

fn1,j − fn

1,j−1

)

]

(5.149)

and

fn+12,j = fn

2,j +λ∆t

2∆x

[

fn2,j+1 − fn

2,j−1

]

+∆t

2∆x

[

α2,j+ 12

(

fn2,j+1 − fn

2,j

)

]

− ∆t

2∆x

[

α2,j− 12

(

fn2,j − fn

2,j−1

)

]

(5.150)

Since un+1j = fn+1

1,j + fn+12,j , we obtain, after using the simplified relaxation step fn

j = F nj

and the simplification α1,j± 12

= α2,j± 12

= αj± 12, the following update formula.

un+1j = un

j − ∆t

2∆x

[

gnj+1 − gn

j−1

]

+∆t

2∆xαj+ 1

2

[

unj+1 − un

j

]

− ∆t

2∆xαj− 1

2

[

unj − un

j−1

]

(5.151)

Page 101: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.4. RELAXATION SCHEMES 97

which can be rewritten as

un+1j = un

j − ∆t

∆x

[

gnj+ 1

2− gn

j− 12

]

(5.152)

where

gj+ 12

=1

2[gj + gj+1] −

1

2αj+ 1

2[uj+1 − uj] (5.153)

and

gj− 12

=1

2[gj−1 + gj] −

1

2αj− 1

2[uj − uj−1] (5.154)

With a little algebraic manipulation, we can rewrite the expression (5.153) as

−gj+1 + gj+ 12

+ α+j+ 1

2

[uj+1 − uj]

+gj+ 12− gj + α−

j+ 12

[uj+1 − uj] = 0(5.155)

where

α±j+ 1

2

=αj+ 1

2± |αj+ 1

2|

2(5.156)

Therefore, the expression for the flux can be split into the following two parts :

gj+1 − gj+ 12

= α+j+ 1

2

[uj+1 − uj] (5.157)

andgj+ 1

2− gj = −α−

j+ 12

[uj+1 − uj] (5.158)

Let us now compare the fluxes in (5.157) and (5.158) with the fluxes that satisfy Rankine-Hugoniot condition. To derive such fluxes satisfying the Rankine-Hugoniot condition,assume that there is a shock located between the grid points xj and xj+1, moving with aspeed sj+ 1

2. To distinguish the shock moving to the right from the shock moving to the

left, we split the shock speed into a positive part s+j+ 1

2

and a negative part s−j+ 1

2

where

s±j+ 1

2

=sj+ 1

2± |sj+ 1

2|

2(5.159)

The Rankine-Hugoniot condition (∆g = s∆u) for the above two cases are given by (see[53])

gj+1 − gj+ 12

= s+j+ 1

2

[uj+1 − uj] (5.160)

andgj+ 1

2− gj = s−

j+ 12

[uj+1 − uj] (5.161)

Comparing the expressions (5.157) and (5.158) with the Rankine-Hugoniot condition forthe shock moving to the right (5.160) and left (5.161), we can fix the coefficients α±

j+ 12

as

α+j+ 1

2

= s+j+ 1

2

and α−j+ 1

2

= −s−j+ 1

2

(5.162)

Page 102: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

98 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

from which we can obtain the expression for the coefficient of numerical diffusion as

αj+ 12

= |sj+ 12| (5.163)

Similarly, we can obtain the expression for the other coefficient of numerical diffusion as

αj− 12

= |sj− 12| (5.164)

For the scalar conservation law, defining the shock speed s by

s =∂g

∂u(5.165)

we obtain

sj+ 12

=

gj+1 − gj

uj+1 − uj

if uj 6= uj+1

∂g

∂u|j if uj = uj+1

(5.166)

and

sj− 12

=

gj − gj−1

uj − uj−1

if uj 6= uj−1

∂g

∂u|j if uj = uj−1

(5.167)

Therefore, the new Relaxation Scheme which satisfies the Rankine-Hugoniot condition isgiven by the following algorithm.

fn+11,j = fn

1,j −∆t

∆x

[

hn1,j+ 1

2− hn

1,j− 12

]

fn+12,j = fn

2,j −∆t

∆x

[

hn2,j+ 1

2− hn

2,j− 12

]

h1 = −λf1 , h2 = λf2 , ∆x = xj+ 12− xj− 1

2

h1,j+ 12

=1

2[h1,j + h1,j+1] − d1,j+ 1

2

d1,j+ 12

=1

2α1,j+ 1

2

[

f1,j+1 − f1,j

]

h2,j+ 12

=1

2[h2,j + h2,j+1] − d2,j+ 1

2

d2,j+ 12

=1

2α2,j+ 1

2

[

f2,j+1 − f2,j

]

Page 103: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

5.4. RELAXATION SCHEMES 99

αj+ 12

=

| gj+1 − gj

uj+1 − uj

| if uj 6= uj+1

|∂g

∂u|j if uj = uj+1

αj− 12

=

| gj − gj−1

uj − uj−1

| if uj 6= uj−1

|∂g

∂u|j if uj = uj−1

un+1j = fn+1

1,j + fn+12,j

(5.168)

This low dissipation Relaxation Scheme (ASCARS) for a scalar conservation law, inthe final analysis, is equivalent to the approximate Riemann solver of Roe, though theimplementation is different, as well as the linearisation. The coefficient of numerical dissi-pation, αj± 1

2is linearly proportional to the numerical wave-speed and thus the dissipation

goes to zero when the wave-speed goes to zero. This happens near the sonic points wherethe wave-speed changes sign. Since zero dissipation leads to the violation of the entropycondition, we modify the coefficient of numerical diffusion by forcing a quadratic variationinstead of a linear variation and by keeping a residual dissipation near the sonic points,as done to the Roe’s scheme by an entropy fix. Note that this is the entropy fix of Harten(see [35] for details).

Page 104: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

100 CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

Page 105: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

Bibliography

[1] Anderson, J.D., Modern Compressible Flows : With Historical Perspective,MacGraw-Hill, 1990.

[2] K.F. Riley, M.P. Hobson and S.J. Bence, Mathematical Methods for Physics andEngineering, Cambridge University Press, 1998.

[3] J.D. Hoffmann, Numerical Methods for Scientists and Engineers, Marcel Dekker Inc.,New York, 2001.

[4] W.G. Vincenti and C.H. Kruger, Introduction to Physical Gas Dynamics, John Wiley,New York, 1965.

[5] M.N. Kogan, Rarefied Gas Dynamics, Plenum Press, 1965.

[6] T.I. Gombosi, Gaskinetic Theory, Cambridge University Press, 1994.

[7] P.L. Bhatnagar, E.P. Gross and M. Krook, A model for collision processes in gases. I.Small amplitude processes in charged and neutral one-component systems, PhysicalReview, 94, pp. 511-???, 1954.

[8] S. Jin and Z. Xin, The Relaxation Schemes for Systems of Conservation Laws inArbitrary Space Dimensions, Communications in Pure and Applied Mathematics,vol. 48, pp. 235–276, 1995.

[9] R. Natalini, A Discrete Kinetic Approximation of Entropy Solutions to Multidimen-sional Scalar Conservation Laws, Journal of Differential Equations, vol. 148, pp.292–317, 1999.

[10] D. Aregba-Driollet and R. Natalini, Discrete Kinetic Schemes for MultidimensionalSystems of Conservation Laws, SIAM Journal of Numerical Analysis, vol. 37, no. 6,pp. 1973–2004, 2000.

[11] R. Natalini, Recent mathematical results on hyperbolic relaxation problems, Analy-sis of systems of conservation laws, Pitman Research Notes in Mathematics Series,Longman, Harlow, 1998.

101

Page 106: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

102 BIBLIOGRAPHY

[12] John D. Anderson, Computational Fluid Dynamics : The basics with applications,McGraw-Hill, New York, 1995.

[13] P.D Lax, Weak solutions of nonlinear hyperbolic equations and their numerical com-putation, Communications in Pure and Applied Mathematics, 7, pp.159-193, 1954.

[14] P.D. Lax and B. Wendroff, Systems of conservation laws, Communications in Pureand Applied Mathematics, 13, pp. 217-237, 1960.

[15] R.W. MacCormack, The effect of Viscosity in Hypervelocity Impact Cretaring, AIAAPaper No. AIAA-69-0354.

[16] A. Jameson, W. Schmidt and E. Turkel, Numerical Solution of Euler Equations byFinite Volume Methods Using Runge-Kutta Time Stepping Schemes, AIAA Paperno. AIAA-81-1259.

[17] S.K. Godunov, Schemes, AIAA Paper no. AIAA-81-1259, A Difference Scheme forNumerical Computation of Discontinuous Solutions of Hydrodynamic Equations,Math. Sbornik, 47, pp. 271-306, 1959. English translation in U.S. Joint PublicationsResearch Service, JPRS 7226, 1969.

[18] P.L. Roe, Approximate Riemann Solvers, Parameter Vectors and Difference Schemes,Journal of Computational Physics, 43, pp. 357-372, 1981.

[19] S. Osher and F. Solomon, Upwind Difference Schemes fo Hyperbolic Systems ofEquations, Mathematics of Computation, 38, pp. 339-374, 1982.

[20] R.H. Sanders and K.H. Prendergast, The Possible Relation of the 3-KILOPARSECArm to Explosions in the Galactic Nucleus, Astrophysical Journal, Vol. 188, pp.489-500, 1974.

[21] D. Pullin, Direct Simulation Methods for Compressible Inviscid Ideal Gas Flow,Journal of Computational Physics, 34, 231, 1980.

[22] R.D. Rietz, One Dimentional Compressible Gas Dynamic Calculations Using theBoltzmann Equation, Journal of Computational Physics, 42, 108, 1981.

[23] S.M. Deshpande, Kinetic Theory based New Upwind Methods for Inviscid Compress-ible Flows, AIAA Paper no. AIAA-1986-0275.

[24] B. Perthame, Boltzmann Type Schemes for Gas Dynamics and Entropy Property,SIAM Journal of Numerical Analysis, 27, 6, 1405, 1991.

[25] S.V. Raghurama Rao and S.M. Deshpande, Peculiar Veclocity based Upwind Methodfor Inviscid Compressible Flows, Computational Fluid Dynamics Journal, 3, 4, 415,1995.

Page 107: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

BIBLIOGRAPHY 103

[26] K.H. Prendergast and Kun Xu, Numerical Hydrodynamics from Gas-Kinetic Theory,Journal of Computational Physics, 109, 53, 1993.

[27] F. Coquel and B. Perthame, Relaxation of energy and approximate Riemann solversfor general pressure laws in fluid dynamics, SIAM Journal of Numerical Analysis, 35,6, pp. 2223-2249, 1998.

[28] Meng Sing Liou and C.J. Steffen, A New Flux Splitting Scheme, Journal of Compu-tational Physics, 107, pp.23-39, 1993.

[29] F. Coquel and Meng Sing Liou, Hybrid Upwind Splitting (HUS) by a field-by-fielddecomposition, NASA TM-106843, Icomp-95-2, 1995.

[30] A. Jameson, Analysis and Design of Upwind Schemes for Gas Dynamics II : Artifi-cial Diffusion and Discrete Shock Structure, International Journal of ComputationalFluid Dynamics, v, pp. 171-218, 1995.

[31] C. Hirsch, Numerical Computation of Internal and External Flows, Vol. 1: Funda-mentals of Numerical Discretization, John Wiley & Sons, 1988.

[32] C. Hirsch, Numerical Computation of Internal and External Flows, Vol. 2: Compu-tational Methods for Inviscid and Viscous Flows, John Wiley & Sons, 1990.

[33] R.D. Richtmyer and K.W. Morton, Difference Methods for Initial Value Problems,2nd edition, John Wiley and Sons, New York, 1967.

[34] E.F. Toro, Riemann Solvers and Numerical Methods for Fluid Dynamics : A PracticalIntroduction, 2nd Edition, Springer, 1999.

[35] Culbert B. Laney, Computational Gasdynamics, Cambridge University Press, 1998.

[36] S.M. Deshpande, Kinetic Flux Splitting Schemes, Computational Fluid DynamicsReview 1995 : A state-of-the-art reference to the latest developments in CFD, (eds.)M.M. Hafez and K. Oshima, John Wiley & Sons, Chechester, 1995.

[37] E. Godlewski and P.A. Raviart, Numerical Approximations of hyperbolic Systems ofConservation Laws, Applied Mathematics Series 118, Springer–Verlag, 1996.

[38] Quirk, A contribution to the great Riemann solver debate, International Journal ofNumerical Methods in Fluids, vol. 18, pp. 555-574, 1994.

[39] S. Jin, Runge–Kutta Methods for Hyperbolic Conservation Laws with Stiff Relax-ation Terms, Journal of Computational Physics, vol. 122, pp. 51–67, 1995.

Page 108: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

104 BIBLIOGRAPHY

[40] R.J. Leveque ad M. Pelanti, A Class of Approximate Riemann Solvers and TheirRelation to Relaxation Schemes, Journal of Computational Physics, 172, pp. 572-59.2001.

[41] S. Balasubramanyam, A New Grid–Free Upwind Relaxation Scheme for CompressibleFlows, M.Sc.(Engg.) thesis, Department of Aerospace Engineering, Indian Instituteof Science, Bangalore, India, 2002.

[42] A.K. Ghosh and S.M. Deshpande, ”Least Squares Kinetic Upwind Method for Invis-cid Compressible Flows”, AIAA paper, 95-1735, 1995.

[43] S. Balasubramanyam and S.V. Raghurama Rao, A New Grid Free Relaxation Schemefor Euler Equations, Fluid Mechanics Report No: 2001 FM 07, Dept. of AerospaceEngg., IISc, Bangalore.

[44] S. Balasubramanyam and S.V. Raghurama Rao, A New Grid Free Relaxation Schemefor Euler Equations, Proceedings of the Ninth Asian Congress of Fluid Mechanics,May 27-31 2002, Isfahan, Iran.

[45] S. Balasubramanyam and S.V. Raghurama Rao, A New Grid Free Relaxation Schemefor Conservation Laws, 2nd International Conference on Computational Fluid Dy-namics, July 2002 , Sydney, Australia (accepted for presentation and the full paperto be published by Springer).

[46] S.V. Raghurama Rao and Sachin Khosla, A New Unsplit Relaxation Scheme forHyperbolic Conservation Laws, Fluid Mechanics report, Department of AerospaceEngineering, Indian Institute of Science, Bangalore, India, 2002.

[47] S.V. Raghuramarao and Sachin Khosla, An Unsplit Relaxation Scheme for Hyper-bolic Conservation Laws, 2nd International Conference on Computational Fluid Dy-namics, July 2002, Sydney, Australia (accepted for presentation and proceedings tobe published by Springer).

[48] M.V. Subba Rao and S.V. Raghurama Rao, Method of Interpolation with a Relax-ation Approximation for Conservation Laws (MIRACL), in preparation.

[49] R. Leveque, Nonlinear Conservation Laws and Finite Volume Methods for Astro-physical Fluid Flow, in Computational Methods for Astrophysical Fluid Flow, R.J. Leveque, D. Mihalas, E. Dorfi,and E. Mueller, 27th Saas-Fee Advanced CourseLecture Notes, Edited by O. Steiner and A. Gautschy, Springer-Verlag, 1998.

[50] G. Strang, On the Construction and Comparison of Difference Schemes, SIAM Jour-nal of Numerical Analysis, No. 5, pp. 506-571, 1968.

Page 109: Advanced Computational Fluid Dynamics

DRAFT -- DRAFT -- DRAFT -- DRAFT -- DRAFT --

BIBLIOGRAPHY 105

[51] B. Manoj Kumar, S.V. Raghurama Rao R. Balasubramanian S.M. Deshpande, Ki-netic Flux Vector Splitting for Navier–Stokes equatons based on Chapman–Enskogdistribution, 97 FM 9, Fluid Mechanics reports, Department of Aerospace Engineer-ing, Indian Institute of Science, Bangalore, India, 1997.

[52] S.V. Raghurama Rao and K. Balakrishna, An Accurate Shock Capturing Algorithmwith a Relaxation System for Hyperbolic Conservation Laws, AIAA Paper No. AIAA-2003-4145, 2003.

[53] J.C. Tannehil, D.A. Anderson and R.H. Pletcher, Computational Fluid Mechanicsand Heat Transfer, 2nd edition, Taylor & Francis, 1997.

[54] Dominic Denver John Chander, S.V. Raghurama Rao and S.M. Deshpande, A OnePoint Shock Capturing Kinetic Scheme for Hyperbolic Conservation Laws, FluidMechanics Report No. 2004 FM ??, Department of Aerospace Engineering, IndianInstitute of Science, Bangalore, India, 2004.

[55] Meng-Sing Liou and Steffen, A New Flux Splitting Method, Journal of Computa-tional Physics, vol. , pp. , .

[56] J.L. Steger and F.F. Warming, Flux Vector Splitting of the Inviscid Gas DynamicsEquations with Applications to Finite Difference Methods, Journal of ComputationalPhysics, Vol. 40, pp. 263-293, 1981.

[57] B. van Leer, Flux Vector Splitting for the Euler Equations, Lecture Notes in Physics,vol. 170, pp. 507-512, 1982.