You are on page 1of 109

Advanced Computational Fluid Dynamics

January - April, 2006

DR

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 : raghu@aero.iisc.ernet.in

AF T

ii

DR AF T

Contents
1 Introduction 2 Compressible Fluid Flows, Their Governing Equations, Models and Approximations 2.1 Navier-Stokes Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Euler Equations, Burgers Equation and Linear Convection Equation . . . . 2.3 Linear Convection Equation, Characteristics and Hyperbolicity . . . . . . . 2.4 Burgers Equation, Shock Waves and Expansion Waves . . . . . . . . . . . 2.5 Shock Waves in Supersonic Flows . . . . . . . . . . . . . . . . . . . . . . . 2.6 Mathematical Classication of PDEs . . . . . . . . . . . . . . . . . . . . . 2.6.1 First Order PDEs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.2 Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.3 Second Order PDEs . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.4 Physical Signicance of the Classication . . . . . . . . . . . . . . . 2.7 Euler equations and Hyperbolicity . . . . . . . . . . . . . . . . . . . . . . . 2.8 Kinetic Theory, Boltzmann Equation and its Moments as Macroscopic Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8.1 B-G-K Model for the collision term . . . . . . . . . . . . . . . . . . 2.8.2 Splitting Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9 Relaxation Systems for Non-linear Conservation Laws . . . . . . . . . . . . 2.9.1 Chapman-Enskog type expansion for the Relaxation System . . . . 2.9.2 Diagonal form of the Relaxation System . . . . . . . . . . . . . . . 2.9.3 Diagonal form as a Discrete Kinetic System . . . . . . . . . . . . . 2.9.4 Multi-dimensional Relaxation Systems . . . . . . . . . . . . . . . . 2.10 A Note on Numerical Methods . . . . . . . . . . . . . . . . . . . . . . . . . 3 Analysis of Numerical Methods 3.1 Basics of Finite Dierence and Finite Volume Methods 3.1.1 Upwind Method in Finite Dierence Form . . . 3.1.2 Upwind Method in Finite Volume Form . . . . 3.2 Modied Partial Dierential Equations . . . . . . . . . iii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3 3 5 7 11 12 13 14 15 17 20 24 27 33 33 35 37 39 41 43 46 47 47 47 50 54

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

iv 3.3 3.4 Consistency of Numerical Methods . . . . . . . . . Stability Analysis . . . . . . . . . . . . . . . . . . . 3.4.1 Fourier series in complex waveform . . . . . 3.4.2 Stability analysis of Numerical Methods [12] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

CONTENTS . . . . . . . . . . . . . . . . . . . . 58 59 59 60 67 67 68 70 74 77 78 80 83 86 91 92 93 95

4 Central Discretization Methods for Scalar and Vector Conservation Laws 4.1 A Brief History of Numerical Methods for Hyperbolic Conservation Laws . 4.2 Lax-Friedrichs Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Lax-Wendro Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 Two-Step Lax-Wendro Method and MacCormack Method . . . . . . . . . 5 Upwind Methods for Scalar Conservation Laws 5.1 Flux Splitting Method . . . . . . . . . . . . . . . 5.2 Approximate Riemann Solver of Roe . . . . . . . 5.2.1 Entropy Fix for Roes Scheme . . . . . . . 5.3 Kinetic Flux Splitting Method . . . . . . . . . . . 5.4 Relaxation Schemes . . . . . . . . . . . . . . . . . 5.4.1 Relaxation Scheme . . . . . . . . . . . . . 5.4.2 Discrete Kinetic Scheme . . . . . . . . . . 5.4.3 A Low Dissipation Relaxation Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

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

Chapter 1 Introduction
Computational Fluid Dynamics (CFD) is the science and art of simulating uid ows on computers. Traditionally, experimental and theoretical uid dynamics were the two dimensions of the subject of Fluid Dynamics. CFD gradually emerged as a third dimension in the last three decades [1]. The rapid growth of CFD as a design tool in several branches of engineering, including Aerospace, Mechanical, Civil and Chemical Engineering, is due to the availability of fast computing power in the last few decades, along with the development of several intelligent algorithms for solving the governing equations of Fluid Dynamics. The history of the development of numerical algorithms for solving compressible uid ows is an excellent example of the above process. In this short course, some important and interesting algorithms developed in the past three decades for solving the equations of compressible uid ows are presented. In the next chapter (2nd chapter), the basic governing equations of compressible uid ows are described briey, along with some simplications which show the essential nature of the convection process. The basic convection process is presented in terms of simpler scalar equations to enhance the understanding of the convection terms. It is the presence of the convection terms in the governing equations that makes the task of developing algorithms for uid ows dicult and challenging, due to the non-linearity. The basic convection equations are presented in both linear and non-linear forms, which will form the 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 important implications. Some of the numerical methods presented in later chapters depend upon deriving the equations of compressible ows from Kinetic Theory of gases and as Relaxation Approximations. 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, modied partial dierential equations, numerical dissipation and dispersion, order of accuracy of discrete approximations - are briey presented. These tools help the student in understanding the algorithms presented in later chapters better. 1

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

CHAPTER 1. INTRODUCTION

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

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

Chapter 2 Compressible Fluid Flows, Their Governing Equations, Models and Approximations
2.1 Navier-Stokes Equations

The governing equations of compressible uid ows are the well-known Navier-Stokes equations. They describe the conservation of mass, momentum and energy of a owing uid. In three dimensions, we can write the Navier-Stokes equations in the vector form as U G1 G2 G3 G1,V G2,V G3,V + + + = + + (2.1) t x y z x y z where U is the vector of conserved variables, dened by u1 U = u2 u3 E

(2.2)

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

G1 , G2 and G3 are the inviscid ux vectors, given by u3 u2 u1 p + u2 u3 u1 u2 u1 1 2 u3 u2 u1 u2 G1 = ; G2 = p + u2 ; G2 = p + u2 u2 u3 u1 u3 3 pu2 + u2 E pu2 + u3 E pu1 + u1 E

(2.3)

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

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

In the above equations, is the density of the uid, u1 , u2 and u3 are the velocities, p is the pressure and E is the total energy (sum of internal and kinetic energies) given by 1 2 + u2 E = e + u2 2 + u3 2 1 The internal energy is dened by e= p ( 1) (2.5)

0 zx zy zz u1 zx + u2 zy + u3 zz q3

(2.4)

(2.6)

CP ). The pressure, temperature and the density where is the ratio of specic heats ( = C V are related by the equation of state as p = RT where R is the gas constant and T is the temperature. Here, ij (i=1,2,3, j =1,2,3) represents the shear stresses and qi (i=1,2,3) represents the heat uxes, the expressions for which are given as follows.

xx = 2 yy = 2 zz = 2

u1 + bulk x u2 + bulk y u3 + bulk z

u1 u2 u3 + + x y z u1 u2 u3 + + x y z u1 u2 u3 + + x y z u1 u2 + y x u1 u3 + z x u3 u2 + y z

(2.7) (2.8) (2.9) (2.10) (2.11) (2.12)

xy = yx = xz = zx = yz = zy =

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

2.2. EULER EQUATIONS, BURGERS EQUATION AND LINEAR CONVECTION EQUATION5 q1 = k T T T , q2 = k , q3 = k x y z (2.13)

where is the coecient of viscosity and bulk is the bulk viscosity coecient dened by 2 bulk = and k is the thermal conductivity. 3

2.2

Euler Equations, Burgers Equation and Linear Convection Equation

A simplication which is often used is the inviscid approximation in which the viscous and heat conduction eects are neglected. This approximation is valid in large parts of the uid ows around bodies, except close to the solid surfaces where boundary layer eects are important. The equations of inviscid compressible ows, called Euler equations, are obtained by neglecting the right hand side of the Navier-Stokes equations (2.1). In this course, we shall often use the Euler equations and their further simplications. Consider the 1-D Navier Stokes equations given by U G GV + = t x x where u 0 U = u , G = p + u2 and GV = E pu + uE u q (2.15) (2.14)

Here, is the 1-D component of the stress tensor and q is the corresponding component of the heat ux vector. They are dened for this 1-D case by 4 u T = and q = k 3 x x (2.16)

where is the viscosity of the uid and k is the thermal conductivity. Let us make the rst simplifying assumption of neglecting the viscosity and heat conduction. Then, we obtain the 1-D Euler equations as U G + =0 t x (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 speed of sound. Since we have assumed that the uid ow is isothermal, we do not need the energy equation as the temperature gradients are zero and there is no heat transfer by

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

Governing Equations and Approximations

conduction or convection (neglecting radiation). Therefore, we will be left with the mass and momentum conservation equations as (u) + =0 t x and (u) (p + u2 ) + =0 t x Expanding the momentum equation, we can write p u (u) u +u + + u +u =0 t t x x x (2.18)

(2.19)

(2.20)

Using the mass conservation equation, we can simplify the above equation as u u 1 p +u + =0 t x x (2.21)

The inviscid uid ow involves two distinct phenomena, namely, the uid transport (convection) 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 make the next assumption that the the pressure is constant throughout our 1-D domain and so the pressure gradient term disappears, yielding u u +u =0 t x (2.22)

This equation is known as the inviscid Burgers equation. Let us now put the above equation in conservative form as u2 u g (u) + = 0 where g (u) = t x 2 (2.23)

So, the ux 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 of the convection terms is one of the fundamental diculties in dealing with NavierStokes equations. For the sake of simplicity, let us linearize the ux g (u) in the above equation as 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 NavierStokes equations, we will use only the nonlinear equations. With the above assumption of a linear ux, the inviscid Burgers equation becomes u u +c =0 (2.25) t x

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 represents the basic convection terms in the NavierStokes equations. The researchers in CFD use the numerical solution of the linear convection equation as the basic building block for developing numerical methods for Euler or NavierStokes equations. The Kinetic Schemes and the Relaxation Schemes, the two alternative numerical methodologies which will be presented in this course, also exploit this strategy, but in a dierent manner, as the Boltzmann equation and the Discrete Boltzmann equation, without the collision term, 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 rst nd out its solution. The linear convection equation u u +c =0 t x (2.26)

is a rst order wave equation, also called as advection equation. It is a rst order hyperbolic partial dierential equation. Hyperbolic partial dierential equations are characterised by information propagation along certain preferred directions. To understand this better, let us 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 nd the value of the solution, u(x, t), at a time t > 0. The method of characteristics uses special curves in the x t plane along which the partial dierential equation (PDE) becomes an ordinary dierential 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)

Figure 2.1: 3-Point Stencil

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

8 along this curve is given by

Governing Equations and Approximations d u (x (t) , t). Using chain rule, we can write dt (2.28)

dx d u (x (t) , t) = u (x (t)) + u (x (t) , t) dt x dt t which can be written simply as u dx u du = + dt t dt x

(2.29)

The right hand side of (2.29) looks similar to the left hand side of the linear convection u u + c . Therefore, if we choose equation (2.26), i.e., t x c= dx dt (2.30)

du then (2.26) becomes = 0, which is and ODE! The curve (x (t) , t), therefore, should be dt dened by dx = c with x (t = 0) = xo (2.31) dt The solution of (2.31) is given by x = ct + k (2.32) where k is a constant. Using the initial condition x (t = 0) = x0 , we get x0 = k Therefore x = ct + x0 The curve x = ct + x0 is called the characteristic curve of the equation (2.34) u u +c =0 t x u u (2.26), or simply as the characteristic. Along the characteristic, the PDE, +c = 0, t x du becomes and ODE, = 0. The solution of this ODE is u = constant. Therefore, along dt the characteristic, the solution remains a constant. Thus, if we know the solution at the foot of the characteristic (at x0 ), which is the initial condition, we can get the solution anywhere on the characteristic, that is, u (x, t). Using (2.34), we can write x0 = x ct Therefore u (x, t) = u0 (x0 ) = u0 (x ct) (2.36) (2.35) (2.33)

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

2.3. LINEAR CONVECTION EQUATION, CHARACTERISTICS AND HYPERBOLICITY9 We can write (2.34) as 1 x0 1 ct = x x0 or t = x or t = x k c c c (2.37)

is a constant. Therefore, we can sketch the characteristics in the x t plane. where k 1 They are parallel straight lines with slope . For non-linear PDES, characteristics need c
t

slo pe =

1/c

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 u dx u +c = 0, let us choose = c. Its solution the linear convection equation given by t x dt 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 same in dierent coordinate systems u (x, t) = u (s, ) (2.40) We can now write du u t u x u t u x = + = + (since u = u) d t x t x From (2.39), we have t x = 1 and =c (2.42) (2.41)

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

10 Therefore

Governing Equations and Approximations u u du = +c d t x

(2.43)

u u +c = 0. Therefore t x du =0 d The initial condition is u (x, 0) = u0 (x). Therefore But, from (2.26), u (s, = 0) = u0 (s) Solving (2.44), we get Using (2.45), we obtain or k = u0 (s) u ( = 0) = u0 (s) = k Therefore u (s, ) = u0 (s) Since u = u , we obtain u (x, t) = u0 (s) Using (2.38), we can write For a time interval t to t + t, we can write u (x, t) = u0 (x ct) = u (x ct, t = 0) u (x, t + t) = u (x ct, t)
         !  "    ! " ! " ! " ! " ! " ! " ! "        !  "  ! " ! " ! " ! " ! " ! " ! "

(2.44)

(2.45) (2.46) (2.47) (2.48) (2.49) (2.50) (2.51)

= constant u ( ) = k

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

 !  "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

! "

! "

!   "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

! "

! "

c>0
                       

 !  "

! "

! "

 !  "

! "

! "

 !  "

! "

! "

c<0
! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! " ! "

! "

! "

! "

! "

! "

! "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

 !  "

! "

! "

! "

! "

! "

    

     

xj1

ct ct xj x
 !  "  ! " ! " ! " ! "  !  "  ! " ! " ! " ! "   !  "  ! " ! " ! " ! "    !  "  ! " ! " ! " ! " 

! "

! "

! "

! "

xj+1

Figure 2.3: 3-Point Stencil respectively, the foot of the characteristic can fall on the left or right side of xj depending on the sign of c. Since the information travels a distance of x = ct along the characteristic during a time t (from t = 0), c is the speed with which information propagates along the characterstics, and is called characteristic speed or wave speed. Therefore, we can see that the sign of c determines the direction of information propagation, with information coming from the left if c > 0 and from right if c < 0.

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

2.4. BURGERS EQUATION, SHOCK WAVES AND EXPANSION WAVES

11

2.4

Burgers Equation, Shock Waves and Expansion Waves


u g (u) 1 + = 0, with g (u) = u2 t x 2

Consider the Burgers equation (2.52)

Let us check the wave speed for this case. The wave speed is dened by a (u) = g (u) u (2.53)

Therefore, a(u) = u. Consider an initial prole which is monotonically increasing. Therefore as u increases, a(u) increases.
u t=0 large speed t=t1 t=t 2

small speed x

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 smaller speeds. Therefore the upper parts of the prole move faster than the lower parts of the prole and the prole expands or gets rareed after some time. This phenomenon leads to expansion waves or rarefaction waves. Now, consider an initial prole which is monotonically decreasing, coupled with a monotonically increasing proe of the previous example. On the right part of the prole which is monotonically decreasing, as the upper part overtake lower part (due to larger speed on the top), the gradient becomes innite and the solution becomes multi-valued. Let us now recollect the basic features of a function. A function is rule that assigns exactly one real number to each number from a set of real numbers. Such a rule is often given by an algebraic and/or trigonometric expression. A continuous function has no gaps or breaks at any point on its prole. Therefore, discontinuities are not allowed for a continuous function.

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

12

Governing Equations and Approximations

u t=0 t=t1 t=t2

multivalued unphysical solution t=t3

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

For the non-linear case and for an initial prole which is monotonically decreasing, the function may become multi-valued after some time. Then, the solution ceases to be a function, by denition. Discontinuities may appear and the solution becomes multivalued. Multivalued functions are avoided on physical grounds. Imagine, for example, the density of a uid at a point having more than one value at any given time, which is unphysical. 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 ows of inviscid uid ows modeled by Euler equations, shock waves appear when the ows are obstructed by solid bodies. The appearance of such shock waves can be explained as follows. Consider the ow of a uid over a blunt body, as shown in the following gure. The

Subsonic flow (M < 1)

Solid Body

Figure 2.6: Subsonic ow over a blunt body

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

2.6. MATHEMATICAL CLASSIFICATION OF PDES

13

uid ow consists of moving and colliding molecules. Some of the molecules collide with the solid body and get reected. Thus, there is a change in the momenta and energy of the molecules due to their collision with the solid body. The random motion of the molecules communicates this change in momenta and energy to other regions of the ow. At the macroscopic 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 uid, including directly upstream of the ow, by sound waves. When the incoming uid ow has velocities which are smaller than the speed of the sound (i.e., the ow is subsonic), then the sound waves can travel upstream and the information about the presence of the solid body will propagate upstream. This leads to the turning of the streamlines much ahead of the body, as shown in the gure (2.6). Now, consider the situation in which the uid velocities are larger than the speed of the sound (i.e., the ow is supersonic). The information propagation by sound waves is

Shock Wave

Supersonic Flow (M > 1)

M<1

Solid Body

Figure 2.7: Supersonic ow over a blunt body with the formation of a shock wave now not possible upstream of the ow. Therefore, the sound waves tend to coalesce at a short distance ahead of the body. This coalescence forms a thin wave, known as the shock wave, as shown in the gure (2.7). The information about the presence of the solid body will not be available ahead of the shock wave and, therefore, the streamlines do not change their direction till they reach the shock wave. Behind the shock wave, the ow becomes subsonic and the streamlines change their directions to suit the contours of the solid body. Thus, the shock waves are formed when the a supersonic ow is obstructed by a solid body.

2.6

Mathematical Classication of PDEs

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

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

14

PDEs and Classication

equations of rst order and second order. These equations, including the Navier-Stokes equations, are Partial Dierential Equations (PDEs). To understand these equations better, we shall study their mathematical and physical behaviour. Let us start with the classication of PDEs.

2.6.1

First Order PDEs


u u + B (x, y ) + C (x, y )u = D(x, y ) x y

General form of a rst order linear PDE is A(x, y ) (2.54)

Let us simplify (2.54) by assuming C = D = 0. A(x, y ) u u + B (x, y ) =0 x y (2.55)

The above equation is a rst order homogeneous partial dierential equation (PDE). Let us 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 f (w) w + B (x, y ) = 0 w x w y w w f (w) + B (x, y ) A(x, y ) = 0 w x y

(2.57)

(w ) df df From the above equation, either dfdw = 0 or A dx + B dy = 0. Since we assumed that f is df a function of w only, dw need not be zero. Therefore, the only possibility for (2.57) to be true is to have

A(x, y )

w w + B (x, y ) =0 x y

(2.58)

Let us now seek the solutions of (2.58) such that w remains constant as x and y vary. Therefore, require w w dw = 0 or dx + dy = 0 (2.59) x y From (2.58) and (2.59) (which look alike), we get A(x, y ) w w = B (x, y ) x y (2.60)

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

Characteristics and

15 w w dx = dy x y

(2.61)

Dividing (2.61) by (2.60), we get dx dy = A(x, y ) 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 , which can be taken as w. Thus, we can get f (w) = f (w(x, y )) u(x, t) = f (w) = f (w(x, y )) which will be the solution. Example: u u +c =0 t x A = 1 and B = c dx dt dx dt = gives = A B 1 c dx = c dt Integrating, we get x = c t + k where k is a constant. w = k = x ct u(x, t) = f (w) = f (x ct) (2.66) (2.67) (2.68) (2.65) (2.64)

(2.63)

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

2.6.2

Characteristics
u u + B (x, y ) = C (x, y, u) x y

Let us rewrite the general form of rst order linear PDE (2.54) as A(x, y ) (2.69)

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

16

PDES and Classication

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 specied in the x y plane along a boundary curve which 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 u dx u dy = + (2.72) ds x ds y ds Using (2.70), (2.72) can be written as du u dx u dy d = + = ds x ds y ds ds We now have two equations (2.69) and (2.73) with two unknowns write (2.73) and (2.69) as u dx u dy d + = x ds y ds ds u u A+ B=C x y or u dx dy d x ds ds ds = u A B C y u u We can solve (2.76) to obtain the unknowns and as x y u dx dy 1 d x ds ds ds = u A B C y and (2.74) (2.73) u u and . We can x y

(2.75)

(2.76)

(2.77)

The solution is not possible if the determinant of the matrix, whose inverse is required, NT is zero since M 1 = where N T is the transpose of the matrix N of cofactors of M . |M |

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

Second Order PDEs The determinant is zero if

17 dx ds A dy ds = 0 B

(2.78)

or B dy dx A = 0 ds ds B dx dy = A ds ds

dy B ds = dx A ds dy B = dx A dx dy = A B (2.79)

We have already seen that (2.79) represents that curve in the (x, y ) plane in which w is a constant with (u(x, y )) = f (w). Such curves are called characteristic curves or simply u u or may not exist characteristics. Note also that the derivatives of the solution, x y along the characteristics, since w = constant along the characteristics. u = f (w) = x x u = f (w) = y y f w f = 0=0 w x w f w f = 0=0 w y w

Therefore, discontinuities in solution may exist along the characteristics. That is why we u u and everywhere in the (x, y ) domain except along the characteristics can solve for x y (when the determinant is zero (2.78)).

2.6.3

Second Order PDEs


2u 2u 2u u u + B ( x, y ) + C ( x, y ) = D(x, y, u, , ) 2 2 x xy y x y

The general form of a second order PDE is A(x, y ) (2.80)

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

18

PDES and Classication

Apart from the general form of the second order PDE, we can obtain two more relationu u ships by applying the chain rule to the total derivatives of and [3]. x y 2u 2u 2u + B + C = D (2.81) x2 xy y 2 2u u 2u dx + dy = d (2.82) 2 x xy x u 2u 2u dx + 2 dy = d (2.83) xy y y or 2 u D x2 A B C 2 u d u dx dy 0 = (2.84) x xy u 0 dx dy 2 u d y y 2 2u 2u 2u The equation (2.84) can be solved for 2 , and 2 everywhere in the (x, y ) domain, x xy y except on a curve where the determinant in (2.84) is zero, which will be the characteristic curve. The zero determinant condition is A B C A dx dy 0 0 =0 (2.85)

dx dy (2.86) (2.87)

A (dy )2 dx 0 B [dxdy 0] + C (dx)2 dy 0 = 0 Let us divide by (2.87) by (dx)2 to obtain A dy dx


2

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

(2.88)

This is the equation of the curve along which the second partial derivatives of u cannot be dened. The solution to (2.88) is (B ) (B )2 4AC dy = dx 2A B (B )2 4AC dy = dx 2A (2.89) (2.90)

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

Second Order PDEs

19

The curves in the (x, y ) domain satisfying (2.88) are called the characteristics of the PDE (2.80). The characteristics have tangents at each point given by (2.88), when A = 0. The equation (2.90) has real solutions when B 2 4AC > 0 and complex roots when B 2 4AC < 0. The second order PDEs are classied accordingly as Hyperbolic if B 2 4AC > 0 Parabolic if B 2 4AC = 0 When the PDEs are hyperbolic (B 2 4AC > 0), the equation (2.88) denes two families of real curves in (x, y ) plane. When the PDEs are parabolic (B 2 4AC = 0) the equation (2.88) denes one family of real curves in the (x, y ) plane. When the PDEs are elliptic (B 2 4AC < 0) the equation (2.88) denes two families of complex curves. Note that if A, B & C are not constant, the equation may change from one type to another at dierent points in the domain. This classication is similar to the classication of general second degree equations in analytical geometry. Recall that the general equation for a conic section in analytical geometry is given by ax2 + bxy + cy 2 + dx + ey = f and the conic section takes dierent shapes as given below. The conic is a hyperbola if b2 4ac > 0 The conic is a parabola if b2 4ac = 0 The conic is an ellipse if b2 4ac < 0 Example 1 : Consider wave equation
2 2u 2 u = c t2 x2

Elliptic if B 2 4AC < 0

(2.91)

(2.92) (2.93) (2.94)

1 2u 2u =0 x2 c2 t2

Here, x ct = k & x + ct = k are the characteristics. Since B 2 4AC > 0, the equation is hyperbolic.

1 c2 1 0 (0)2 4 1 ( 2 ) dt 1 c = = dx 21 c dx = c dt x = ct + k & x = ct + k (k = constant) A = 1, B = 0 & C =

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

20 Example 2 : Consider the pure diusion equation 2u u = 2 t x 2u u = 2 x t

PDES and Classication

A = , B = 0 & C = 0 B 2 4AC = 0 4 0 = 0 Therefore the equation is parabolic. Example 3 : Consider the Laplace equation in 2-D 2u 2u + =0 x2 y 2 (2.95)

Here, A = 1, B = 0 and C = 1. B 2 4AC = 0 4 1 1 = 4. B 2 4AC < 0. This equation is elliptic.

2.6.4

Physical Signicance of the Classication

The mathematical classication introduced in the previous sections, leading to the categorization of the equations of uid ows and heat transfer as hyperbolic, parabolic or elliptic, is signicant as dierent types of equations represent dierent physical behaviour and demands dierent types of treatment analytically and numerically. Hyperbolic PDEs Hyperbolic equations are characterized by information propagation along certain preferred directions. These preferred directions are related to the characteristics of the PDEs. Consequently, there are domains of dependence and zones of inuence in the physical domains where the hyperbolic equations apply. The linear convection equation, the nonlinear inviscid Burgers equation, the Euler equations, the inviscid isothermal equations and the isentropic equations are all hyperbolic equations. As an illustration, let us consider the wave equation (which describes linearized gas dynamics, i.e., acoustics), given by
2 2u 2 u = c t2 x2

(2.96)

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

Physical Signicance of the Classication

21

As in a previous section for second order PDE, we can write the above equation as 2 u t2 0 1 0 c2 2 d u u dt dx 0 (2.97) = t xt u 0 dt dx d 2u x x2

Setting the determinant of the coecient matrix in the above equation to zero and solving for the slopes of the characteristic paths, we obtain (dx)2 c2 (dt)2 = 0 (2.98)

Solving the above quadratic equation, we get dx = c or x = x0 ct dt (2.99)

Therefore, there are two real characteristics associated with the wave equation considered here. The information propagation along the characteristics is with the speed a= dx = c dt (2.100)

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

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

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

22 Parabolic PDEs

PDES and Classication

The parabolic equations are typically characterized by one direction information propagation. Unsteady heat conduction equation, unsteady viscous Burgers equation and unsteady linear convection-diusion equation are examples of parabolic equations. Consider the unsteady heat conduction equation in 1-D, given by T 2T = 2 t x As done before, we can write this equation as T 2T x2 t 0 0 2 T d T dx dt 0 = x 0 dx dt xt 2T T d 2 t t (2.102) (2.101)

Setting the determinant of the coecient matrix to zero and solving for the slopes of the characteristic paths, we get (dt)2 = 0 dt = 0 t = constant (2.103)

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

Thus, the information propagates at innite speed along the characteristics (lines of constant t). The domain of the solution for a typical parablic PDE (unsteady heat conduction equation) is shown in gure (2.9). Elliptic PDEs In contrast to the hyperbolic equations, the elliptic equations are characterized by information propagation having no preferred directions. Therefore, the information propagates in all directions. A typical example is the steady state heat conduction in a slab. The

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

Physical Signicance of the Classication

23

Figure 2.9: Domain of Solution for a Parabolic PDE (unsteady heat conduction equation) pure diusion equations in steady state are elliptic equations. Consider the steady heat conduction equation in 2-D, given by 2T 2T + =0 x2 y 2 As done before, the above equation can be written as 2 T 0 x2 T 1 0 1 d 2T x dx dy 0 = xy 0 dx dy T d 2T y 2 y 1 (dy )2 + 1 (dx)2 = 0 or (2.105)

(2.106)

Setting the determinant to zero and solving for the characteristics, we obtain dy = 1 dx (2.107)

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

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

24

PDES and Classication

Figure 2.10: Domain of Solution for an Elliptic PDE (steady heat conduction equation) Not all equations can be classied neatly into hyperbolic, elliptic or parabolic equations. Some equations show mixed behaviour. Steady Euler equations are hyperbolic for supersonic ows (when Mach number is greater than unity) but are elliptic for subsonic ows (when Mach number is less than unity). The mathematical behaviour of the uid ow equations may change from one point to another point in the ow 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 the vector case for hyperbolicity.

Denition of hyperbolicity for systems of PDEs


Consider a system of PDEs U G + =0 t x where U1 U2 . . . Un G1 G2 . . . Gn (2.108)

U =

G =

(2.109)

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

2.7. EULER EQUATIONS AND HYPERBOLICITY

25

Here, U is the vector of conserved variables (also called as the eld vector) and G is the vector of uxes (called as the ux vector), each component of which is a function of U . Usually, in uid dynamics, G is a non-linear function of U . Let us rewrite the above system of equations in a form similar to the linear convection equation (in which the time and space derivatives are present for the same conserved variable) as U G U + =0 t U x or (2.110)

U U G +A = 0 where A = (2.111) t x U 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 dierential equations (2.111) is hyperbolic if the matrix 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 the system is hyperbolic, then the matrix A can be diagonalised as A = RDR1 where R is the matrix of eigenvectors and D is the matrix of eigenvalues. 1 0 0 0 D= . , R = [R1 , , Rn ] , ARi = i Ri . . . . . . . . 0 n (2.112)

(2.113)

Therefore, we can dene a hyperbolic system of equations as a system with real eigenvalues and diagonalisable coecient (ux Jacobian) matrix.

Linear systems and characteristic variables


U U If A is constant, then the hyperbolic system +A = 0 is linear. If we introduce a t x characteristic variable as W = R 1 U (2.114) then the hyperbolic system will be completely decoupled. If A is a constant, then so is R. Therefore U W U W =R and =R (2.115) t t x x Therefore W W R + AR =0 (2.116) t x

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

26 or Therefore W W + R1 AR = =0 t x W W +D =0 t x

PDES and Classication

(2.117) (2.118)

1-D Euler equations


The 1-D Euler equations U U + =0 t x which can be written in quasi-linear form as U G U +A = 0 where A = t x U 0 3 2 u 2 a2 u 2 3 u 2 1 1 0 (2.119)

(2.120)

1 p 1 p p 1 In terms of the total enthalpy H = h + u2 = e + + u2 = + + u2 2 2 ( 1) 2 0 1 0 3 2 u (3 ) u 1 A= (2.122) 2 1 2 2 u u H H ( 1) u u 2 The eigenvalues of A are 1 = u a, 2 = u and 3 = u + a and the corresponding eigenvectors are 1 1 1 R1 = u a , R2 = u and R3 = u + a 1 2 H + ua H ua u 2 (2.123)

A=

(3 ) u 1 3 2 2 a2 u + u 2 1

(2.121)

(2.124)

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

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

Kinetic Theory of Gases

27

In this short course, apart from the traditional numerical methods for solving the equations of compressible ows, alternative methodologies based on the Kinetic Theory of Gases, called as Kinetic Schemes and a relatively new strategy of converting the non-linear conservation equations into a linear set of equations known as the Relaxation Systems, 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 governing equations for these two strategies.

2.8

Kinetic Theory, Boltzmann Equation and its Moments as Macroscopic Equations

Consider the ow of air over a solid body, say a wing of an aeroplane. The variables of interest are the uid velocities and the uid density, apart from the thermodynamic variables like pressure and temperature, as they can be used to calculate the required design parameters like lift, drag, thrust and heat transfer coecients. To obtain these variables, we need to solve the Euler or Navier-Stokes equations, which is the subject matter of traditional CFD and some algorithms for doing so will be presented in the next chapters. We can also consider the uid ow from a microscopic point of view, considering the ow of molecules and their collisions. Obviously, both the microscopic and the macroscopic approaches must be related, as we are referring to the same uid ow. The macroscopic variables can be obtained as statistical averages of the microscopic quantities. This is the approach of the Kinetic Theory of Gases. Similar to the NavierStokes equations, which are obtained by applying Newtons laws of motion to the uids, we can apply Newtons laws of motion to the molecules and, in principle, solve the resulting equations. But, it is practically impossible to solve the large number of equations that result, as there will be 1023 molecules in a mole of a gas. Neither can we know the initial conditions for all the molecules. Therefore, a better way of describing the uid ow at the microscopic level is by taking statistical averages and the Kinetic Theory of Gases is based on such a strategy. In the Kinetic Theory, the movement of the molecules is described by probabilities instead of individual paths of molecules. The macroscopic quantities of interest, like density, pressure and velocity, are obtained by taking statistical averages of the molecular quantities. These averages are taken over macroscopically innitesimal but microscopically large volumes. These averages are also known as moments and this process of taking averages is called as taking moments. Consider a small volume V (V = 3 r) in the physical space (x,y,z). Let the number of molecules in this volume be 3 N . Therefore, the local number density, which represents the number of molecules per unit volume, is given by n (r) = Lim3 r0 3 N 3 r (2.125)

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

28 Therefore, we can write

Governing Equations and Approximations

d3 N = n (r) d3 r

(2.126)

and we can calculate the number of molecules if the local number density (or the molecular distribution) is known. If we consider a phase space, which has three additional coordinates as the molecular velocities apart from three physical coordinates, we can write d6 N = fp (r, v) d3 rd3 v = fp (r, v) dxdydz dv1 dv2 dv3 (2.127) where fp (r, v) is the local number density in the phase space, known as the phase space distribution function. Therefore, if the phase space distribution function is known, we can calculate the number of molecules by integrating the phase space distribution function (thereby obtaining the physical number density) as

n ( r) =

fp (r, v) d3 v

(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 identifying the density of the gas as the number of molecules multiplied by the mass of the molecules, 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) d3 v

(2.131)

or n v = vfp Multiplying by the mass, we obtain nm v = vmfp or v = vf (2.134) Denoting the average molecular velocity v by u and recognizing it as the uid velocity, we can write u = v f (2.135) (2.133) (2.132)

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

Kinetic Theory of Gases Similarly, we can obtain an average for the kinetic energy as E = Thus, we have the expressions = f ; u = vf ; E = 1 2 v f 2 1 2 v f 2

29

(2.136)

(2.137)

which give the macroscopic quantities as averages (also called as moments) of the molecular velocity distribution function. In addition to the above moments, we can also derive the following additional moments for the Pressure tensor and the heat ux vector. Pij = pij ij = ci cj f where c = v u and qi = cci f (2.139) The relative velocity c is known by various names as peculiar velocity, random velocity or thermal velocity. Here, ij is the Kronecker delta function, dened by ij = and
2 2 2 2 2 2 c2 = c2 1 + c2 + c3 ; v = v1 + v2 + v3

(2.138)

1 if i = j 0 if i = j

(2.140)

(2.141)

The expression for E can be evaluated as E= But, the right expression for E is E =e+ where e= u2 p + 2 2 u2 2 (2.142)

(2.143) (2.144)

is the internal energy. Therefore, to get the right value of E, we have to modify the moment denitions. But, rst let us learn about the equilibrium distribution. If we keep a system isolated from the surroundings and insulated (no heat transfer), and if there are no internal heat sources and external forces, the gas in the system will reach thermodynamic equilibrium. The velocity distribution of such a state is known as the equilibrium distribution. It is also known as Maxwellian distribution. In such a state, all gradients are zero (the gas is at rest). However, the ows of interest always contain

p ( 1)

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

30

Governing Equations and Approximations

changes in velocity and gas properties. Therefore, we consider the concept of local thermal equilibrium, when locally the gradients are very small. For such conditions, we consider locally Maxwellian distributions. The Maxwellian distribution is dened by F = where
D 2

e (vu)

(2.145)

1 = (2.146) 2RT 2P and D is the number of translational degrees of freedom. For 1-D, D=1, for 2-D, D=2 and for 3-D, D=3. R is the gas constant, dened by the state equation = p = RT (2.147)

Now that we know the expression for the Maxwellian distribution, let us evaluate the moments. From the denitions, we can write for 1 D 1 (2.148) U = v f 1 2 v 2 Using the Maxwellian 1 U = v F 1 2 v 2

(2.149)

U1 = U2 = U3 =

F = vF = v2 F = 2

F dv

(2.150) (2.151) (2.152)

vF dv

v2 F dv 2

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

Jn =
+ Jn = 0 0 Jn =

xn ex dx xn ex dx xn ex dx
2 2

n = 0, 1, 2, ... n = 0, 1, 2, ... n = 0, 1, 2, ...

(2.153) (2.154) (2.155)

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

Kinetic Theory of Gases We rst need to evaluate the fundamental integral

2 ex dx.

31 Let (2.156)

K=

ex dx =

ey dy

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


K2 =

ex ey dxdy =

e(x

2 +y 2 )

dxdy

(2.157)

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


2 0 K 2 = []2 0 0

K =
0

er rdrd er rdr =
0
2

K 2 = 2 Therefore,

1 r2 e 2 K= ex dx =
2

(2.158)

Using the above, we can derive the following expressions. + J0 = J 0 = 2 1 + J1 = 0 J1 = 2 + J2 = J2 = 2 4 1 + J3 = 0 J3 = 2 3 3 + J4 = J4 = 4 8


+ and Jn = J n Jn

(2.159)

(2.160)

Using these integrals, if we derive U3 , we get, for a Maxwellian U3 = 1 p v2 F = + u2 = E 2 2 2 u2 p + where E = 2 2 (2.161) (2.162)

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

32 But, for Euler equations, we know that E=

Governing Equations and Approximations

p u2 + ( 1) 2

(2.163)

This discrepancy is because we considered only a mono-atomic gas which has no internal degrees of freedom contributing to internal energy. It has only translational degrees of freedom. A polyatomic gas has internal degrees of freedom contributing to vibrational and rotational energies. To add internal energy contributions, we modify the denitions as follows.

=
0

dI

d3 v f d3 v vf

(2.164) (2.165) v2 )f 2 (2.166) (2.167)

u =
0

dI dI
0 2 v1

E = where v2 = +

d3 v (I +

2 2 v2 + v3

Here I is the internal energy variable corresponding to non-translational degrees of freedom. The Maxwellian is modied as
I 2 (vu)2 F = e e I0 I0 (2 + D) D RT where I0 = 2 ( 1) D

(2.168) (2.169)

is the average internal energy due to non-translational degrees of freedom. The basic equation of kinetic theory is the Boltzmann equation f f +v = J (f, f ) t x (2.170)

(in the absence of external forces). The left hand side of (2.170) represents the temporal and spatial evolution of the velocity distribution function, f . The right hand side, J (f, f ) represents the collision term. The molecules are in free ow except while undergoing collisions. The LHS represents the free ow and the RHS represents the changes in the velocity distribution due to collisions. The collision term makes (2.170) an integro-dierential equation, which is dicult to solve. For an introduction to the Kinetic Theory of Gases, the reader is referred to the following books [4, 5, 6].

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

Kinetic Theory of Gases

33

2.8.1

B-G-K Model for the collision term


F f tR

Bhatnagar, Gross and Krook [7] proposed a simple model for the collision term : J (f, f ) = (2.171)

According to the B-G-K model, the velocity distribution function, f , relaxes to a Maxwellian distribution, F , in a small relaxation time, tR . With this model, the Boltzmann equation becomes f f F f +v = (2.172) t x tR

2.8.2

Splitting Method

Boltzmann equation (2.170) is usually solved by a splitting method. To illustrate the splitting method, let us consider the (2.172). We can re-write (2.172) as f t = v f t f F f + x tR (2.173)

= O1 + O2

(2.174)

where O1 = v and O2 We can split (2.174) into two steps: f t f t (2.177) and (2.178) can be re-written as

f x F f = tR

(2.175) (2.176)

= O1

(2.177)

= O2

(2.178)

f f +v = 0 t x

(2.179)

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

34 f t =

Governing Equations and Approximations F f tR (2.180)

equation (2.179) is the convection equation for f and equation (2.180) is the collision equation for f. Therefore, The operator splitting has resulted in two steps: (i) a convection step and (ii) a collision step. In the convection step, (2.179) can be solved exactly or numerically. Let us see how, in the collision step, the equation (2.180) can be solved. We can write (2.180) as an ODE. df F f = (2.181) dt tR This is a simple ODE for which the solution is given by f = (f0 F ) e or f = f0 e If we take tR = 0, then (2.182) gives f = f0 e 0 + F or f = F
t

tt

+F
tt
R

(2.182) (2.183)

tt

+F 1e

(2.184)

Therefore, If the relaxation time is zero, the exact solution of the collision step drives the distribution to a Maxwellian. Thus, the collision step becomes a relaxation step. The kinetic schemes or Boltzmann schemes are based on this split-up into a convection step and a relaxation step : Convection Step: f f +v =0 (2.185) t x Relaxation Step: f =F (2.186) Therefore, in kinetic schemes, after the convection step, the distribution function instantaneously relaxes to a Maxwellian distribution. If we start with an initially Maxwelian distribution, we can use the approximation F F +v =0 t x as a basis for developing kinetic schemes. The Euler equations U Gi + = 0 t xi (i = 1, 2, 3) (2.188) (2.189) (2.187)

where

ui U = E

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

2.9. RELAXATION SYSTEMS FOR NON-LINEAR CONSERVATION LAWS ui G = ij p + ui uj pui + ui E E = and p u2 + ( 1) 2

35

(2.190)

(2.191) (2.192)

2 2 u2 = u2 1 + u2 + u3

can be obtained as moments of the Boltzmann equation: 1 f f vi = 0 (2.193) + vi 2 v t xi I+ 2 1 1 vi vi Therefore, U = d3 v dI f = (2.194) 2 f v2 v 0 I+ I+ 2 2 1 1 vi vi d3 v dI v f = (2.195) and Gj = j 2 vj f 2 v v 0 I+ I+ 2 2 The Kinetic Schemes are based on the above connection between the Boltzmann equation and Euler equations. The splitting method is also an inherent part in most of the Kinetic Schemes.

2.9

Relaxation Systems for Non-linear Conservation Laws

In the previous section, the non-linear vector conservation laws of Fluid Dynamics were derived from a simpler linear convection equation (the Boltzmann equation), using the Kinetic Theory of Gases. Thus, the task of solving the non-linear vector conservation equations was simplied by the use of a linear convection equation. In this section, another such a simpler framework is presented, in which the non-linear conservation laws are linearized by a Relaxation Approximation. This framework of a Relaxation System is even simpler than the previous one and is easier to deal with. Consider a scalar conservation law in one dimension u g (u) + =0 (2.196) t x with the initial condition u (x, t = 0) = u0 (x) .

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

36

Governing Equations and Approximations

u2 Here the ux g (u) is a non-linear function of the dependent variable u. With g (u) = , 2 we recover the inviscid Burgers equation. The main diculty in solving this equation numerically is the non-linearity of the ux g (u). Jin and Xin [8] dealt with this problem of non-linearity by introducing a new variable v , which is not an explicit function of the dependent variable u and provided the following system of equations. u v + t t = 0 (2.197)

1 u v + 2 = [v g (u)] t x

Here, is a positive constant and is a very small number approaching zero. We can rearrange the second equation of the above system (2.197) as v u = [v g (u)] + 2 t x (2.198)

and as 0, we obtain v = g (u). Substituting this expression in the rst equation of 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 equivalent to solving the original conservation law (2.196). It is advantageous to work with the Relaxation System instead of the original conservation law as the convection terms are not non-linear any more. The source term is still non-linear, and this can be handled easily 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 in local equilibrium [8]. The above approach of replacing the non-linear conservation law by a semi-linear Relaxation System can be easily extended to vector conservation laws and to multi-dimensions. Consider a vector conservation law in one dimension, given by U G (U) + =0 t x (2.200)

Here, U is the vector of conserved variables and G (U) is the ux vector, dened by u U = u and G (U) = p + u2 (2.201) E pu + uE

where is the density, u is the velocity, p is the pressure and E is the total internal energy of the uid, dened by p u2 E= + (2.202) ( 1) 2

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

2.9. RELAXATION SYSTEMS FOR NON-LINEAR CONSERVATION LAWS

37

with being the ratio of specic heats. The above vector conservation laws are the Euler equations of gas dynamics and describe the mass, momentum and energy conservation laws for the case of an inviscid compressible uid ow. The Relaxation System for the above vector conservation laws is given by U V + t x = 0 (2.203)

V U 1 +D = [V G (U)] t x where D is a positive constant diagonal matrix, dened by D1 0 0 D = 0 D2 0 0 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 that the Relaxation System is a dissipative (stable) approximation to the original non-linear conservation laws. To understand this better, let us do a Chapman-Enskog type expansion for the Relaxation System.

2.9.1

Chapman-Enskog type expansion for the Relaxation System

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 u v = g (u) + 2 (2.205) t x which means that v = g (u) + O [ ] (2.206) Dierentiating with respect to time, we obtain g u v = [g (u)] + O [ ] = +O[ ] t t u t Since the rst equation of the Relaxation System (2.197) gives u v = t x we can write v g v = +O[ ] t u x (2.208) (2.207)

(2.209)

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

38 Therefore, using (2.206), we can write

Governing Equations and Approximations

g v = {g (u) + O [ ]} + O [ ] t u x v g g u or = +O[ ] = t u u x Substituting the above expression in (2.205), we get v = g (u) or v = g (u) u x
2

(2.210)

g u

u +O[ ] x

(2.211)

g u

u +O[ ] x g u
2

+ 2

u x

(2.212)

+O

(2.213)

Substituting this expression for v in the rst equation of the Relaxation System (2.197), we get 2 g u u g (u) 2 +O 2 (2.214) + = t x x x u The right hand side of (2.214) contains a second derivative of u and hence represents a dissipation (viscous) term. The coecient represents the coecient of viscosity. Therefore, the Relaxation System provides a vanishing viscosity model to the original conservation law. For the coecient of dissipation to be positive (then the model is stable), the following condition should be satised.
2

g u

or

g u

(2.215)

This is referred to as the sub-characteristic condition. The constant in the Relaxation System (2.197) should be chosen in such a way that the condition (2.215) is satised. For the vector conservation laws (2.200) modeled by the Relaxation System (2.203), the ChapmanEnskog type expansion gives U G(U) + = t x x D G(U) U
2

U + O( 2 ) x

(2.216)

For the Relaxation System (2.203) to be dissipative, the following condition should be satised. 2 G (U) 0 (2.217) D U

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. 2 1 0 0 0 (i) Dene D as D = 0 2 2 0 0 2 3
2 2 (ii) Second choice : 2 1 = max|u a|, 2 = max|u| and 3 = max|u + a| 2 2 First choice : 2 = 2 1 = 2 = 3 = max [|u a|, |u|, |u + a|]

(2.218)

(2.219)

where u is the uid velocity and a is the speed of sound. With the rst choice, the diagonal matrix D can be written as D = 2 I (2.220) where I is a unit matrix.

2.9.2

Diagonal form of the Relaxation System


Q Q +A =H t x

The Relaxation System (2.197) can be written in matrix form as (2.221) 0 and H = [v g (u)] 1 (2.222)

where Q =

u v

, A=

0 1 2 0

As the Relaxation System (2.197) is hyperbolic, so is (2.221) and, therefore, we can write A = RR1 and consequently = R1 AR (2.223)

where R is the matrix of right eigenvectors of A, R1 is its inverse and is a diagonal matrix with eigenvalues of A as its elements. The expressions for R, R1 and are given by 1 1 2 2 0 1 1 (2.224) , R 1 = R= and = 0 1 1 2 2 Since the Relaxation System (2.221) is a set of coupled hyperbolic equations, we can decouple it by introducing the characteristic variables as f = R1 Q which gives Q = Rf Therefore, we can write Q f Q f =R and =R t t x x (2.225)

(2.226)

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

40

Governing Equations and Approximations

Substituting the above expressions in (2.221), we obtain f f + R1 AR = R 1 H t x Using (2.223), the above equation can be written as f f + = R 1 H t x where u v 2 2 = R 1 Q = u v + 2 2 1 2 [v g (u)] and R1 H = 1 [v g (u)] 2 (2.228) (2.227)

f=

f1 f2

(2.229)

Thus, we obtain two decoupled equations as f1 f1 1 = [v g (u)] t x 2 f2 1 f2 + = [v g (u)] t x 2 Solving these two equations in the limit of 0 is equivalent to solving the original non-linear conservation law (2.196). It is much easier to solve the above two equations than solving (2.196), since the convection terms in them are linear. The source terms are still non-linear, but these can be handled easily by the splitting method, which will be described in the following sections. Using (2.224) and (2.225), we obtain the expressions u = f1 + f2 and v = (f2 f1 ) (2.231)

(2.230)

using which we can recover the original variables u and v . In the case of vector conservation laws (2.200), the diagonal form of the Relaxation System leads to f1 f1 1 = [V G (U)] t x 2 f2 1 f2 + = [V G (U)] t x 2 where f1 and f2 are vectors with three components each for the 1-D case.

(2.232)

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 Boltzmann equation [9, 10, 11]. Let us introduce a new variable F as u g (u) 2 2 = u g (u) + 2 2

F=

F1 F2

(2.233)

With these new variables, the diagonal form of the Relaxation System (2.228) can be rewritten as f 1 f + = [F f ] (2.234) t x This equation is similar to the Boltzmann equation of Kinetic Theory of Gases with a Bhatnagar-Gross-Krook (B-G-K) collision model, except that the molecular velocities are discrete ( and ) and the distribution function f correspondingly has two components, f1 andf2 . The new variable F represents the local Maxwellian distribution. This interpretation was used by Natalini [9] and Driollet & Natalini [10] to develop multi-dimensional Relaxation Systems which are diagonalizable and new schmes based on them. The classical Boltzmann equation with B-G-K model in one dimension is given by f f 1 + = [F f ] t x tR (2.235)

where is the molecular velocity (we are not using v as it has been used in the Relaxation 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 Boltzmann equation. The 1-D local Maxwellian for such a case is given by F = I0
1 2

( u)2 + II

(2.236)

1 where is the density, D is the number of translational degrees of freedom, = 2RT , T is the temperature, I is the internal energy variable for the non-translational degrees of freedom and I0 is the corresponding average internal energy. The moments of the distribution function lead to the macroscopic variables as

u=
0

dI

1 I+ 2
2

f =

dI
0

1 I+ 2
2

(2.237)

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

42 and

Governing Equations and Approximations

(2.238) 0 I+ I+ 2 2 The macroscopic equations (Euler equations in this case) are obtained as moments of the Boltzmann equation by 1 f 1 f d + = [F f ] (2.239) dI 1 t x tR 0 I + 2 2 The corresponding expressions for the moments of the discrete Boltzmann equation are dI
0

g (u) =

f =

dI

u = P f = P F , v = P f and g (u) = P F where P = [1 1] for the case of scalar conservation laws and U = P f = P F , V = P f and G (U) = P F

(2.240) (2.241)

for the case of vector conservation laws. The macroscopic equations are obtained from the discrete Boltzmann equation by multiplying by P and P respectively. Let us multiply the discrete Boltzmann equation (2.234) by P to obtain P or f f 1 + =P [F f ] t x (2.242)

(P f ) (P f ) 1 + = [P F P f ] (2.243) t x Using (2.240), the above equation can be rewritten as u v + =0 (2.244) t x which is the rst equation of the Relaxation System (2.197). Similarly, multiplying the discrete Boltzmann equation (2.234) by P , we obtain (P f ) (P 2 f ) 1 + = [P F P f ] (2.245) t x Evaluating P 2 f as 2 u and using (2.240), we get v u 1 + 2 = [v g (u)] (2.246) t x which is the second equation of the Relaxation System (2.197). The Relaxation System for the vector conservation laws can also be recovered by a similar procedure. In comparison with the classical Boltzmann equation, we can see that recovering the moments are simpler for the Relaxation System and therefore the Relaxation Schemes will be simpler than the traditional Kinetic Schemes in nal expressions.

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

2.9. RELAXATION SYSTEMS FOR NON-LINEAR CONSERVATION LAWS

43

2.9.4

Multi-dimensional Relaxation Systems


u g1 (u) g2 (u) + + =0 t x y

Consider a scalar conservation law in 2-D (2.247)

The Relaxation System given by Jin and Xin [8] for the above equation is u v1 v2 + + = 0 t x y v1 1 u + 2 = [v1 g1 (u)] 1 t x 1 u v2 + 2 = [v2 g2 (u)] 2 t y We can write the above Relaxation System in matrix form as Q Q Q + A1 + A2 =H t x y where u 0 0 1 0 1 0 1 {v1 g1 (u)} 0 0 0 0 0 Q = v1 , A1 = 2 and H = , A = 2 1 1 v2 2 0 0 0 0 0 2 {v2 g2 (u)} 0 (2.249)

(2.248)

(2.250)

The matrices A1 and A2 do not commute (A1 A2 = A2 A1 ) and the above system is not diagonalizable. This is true in general for the multi-dimensional Relaxation System of Jin and 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 a multi-dimensional Relaxation System as f 1 f + = [F f ] k t k=1 xk
D

(2.251)

For the multi-dimensional diagonal Relaxation System, the local Maxwellians are dened by [10] FD+1 1 1 = u+ D
D

gk (u)
k=1

1 Fi = gi (u) + FD+1 , (i = 1, , D)

(2.252)

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 2 1 u g ( u ) + g ( u ) 2 3 3 1 3 F1 u 1 2 F = F2 = + g1 (u) g2 (u) 3 3 3 F3 u 1 1 + g1 (u) + g2 (u) 3 3 3 Using the denitions u = P f = P F , g1 = P 1 F , g2 = P 2 F , v1 = P 1 f and v2 = P 2 f we can obtain 0 P = [1 1 1] , 1 = 0 u 3 u and f = 3 u 3 0 0 0 0 , 0 2 v1 + 3 1 + v1 3 1 + v1 + 3 0 0 0 2 = 0 0 0 0 1 v2 3 2 v2 3 1 v2 3

(2.253)

(2.254)

(2.255)

Now, multiplying the 2-D discrete Boltzmann equation by P , P 1 and P 2 , we can obtain the 2-D Relaxation System for (2.247). The 2-D Boltzmann equation is f f 1 f + 1 + 2 = [F f ] t x y Multiplying the above equation by P , we obtain (P f ) (P 1 f ) (P 2 f ) 1 + + = [P F P f ] t x y Using (2.254), the above equation can be simplied to u v1 v2 + + =0 t x y Similarly, multiplying (2.256) by P 1 , we get (P 1 f ) (P 2 (P 1 2 f ) 1 1f ) + + = [P 1 F P 1 f ] t x y (2.259) (2.258) (2.257) (2.256)

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

2.9. RELAXATION SYSTEMS FOR NON-LINEAR CONSERVATION LAWS and by multiplying (2.256) by P 2 , we obtain 1 (P 2 f ) (P 2 1 f ) (P 2 2f ) + + = [P 2 F P 2 f ] t x y
2 Using (2.255), we can evaluate P 2 1 f , P 1 2 f , P 2 1 f and P 2 f as 2 2 2 2 P 2 1 f = (f1 + f3 ) , P 1 2 f = P 2 1 f = f3 and P 2 f = (f2 + f3 )

45

(2.260)

(2.261)

Using theses expressions, the above two equations get simplied to v1 1 + 2 (f1 + f3 ) + 2 f3 = [g1 (u) v1 ] t x y (2.262)

1 v2 + (2.263) 2 f3 + 2 (f2 + f3 ) = [g1 (u) v1 ] t x y Using the denitions (2.254) in (2.258), (2.262) and (2.263), after some algebraic manipulation, we obtain the 2-D Relaxation System as u v1 v2 + + =0 t x y 1 v1 + [2 (u + v1 + v2 ) 3v1 ] + [u + v1 + v2 ] = [g1 (u) v1 ] t 3 x 3 y 1 v2 + [u + v1 + v2 ] + [2 (u + v1 + v2 ) 3v2 ] = [g2 (u) v2 ] t 3 x 3 y (2.264) This Relaxation System is dierent from the non-diagonalizable Relaxation System of Jin and Xin (2.248). The above derivation was done only to see the type of multi-dimensional Relaxation System we obtain from the multi-dimensional discrete Boltzmann equation. It is not necessary, however, to use the above Relaxation System, and it is sucient to use the multi-dimensional discrete Boltzmann equation as a starting point to derive Relaxation Schemes. For the 2-D cases presented in this report the following equation is used as a starting point f f 1 f + 1 + 2 = [F f ] (2.265) t x y which, when expanded, leads to the following equations. f1 f1 1 = [F1 f1 ] t x f2 f2 1 = [F2 f2 ] t y f3 f3 f3 1 + + = [F3 f3 ] t x y

(2.266)

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

46

Governing Equations and Approximations

For 2-D Euler equations, the expanded form of the discrete Boltzmann equation is given by f1 f1 1 = [F1 f1 ] t x f2 f2 1 = [F2 f2 ] t y f3 f3 1 f3 + + = [F3 f3 ] t x y

(2.267)

where fi and Fi for each i, (i = 1, 2, 3) are vectors with 4 components each similar to the corresponding moments U, V1 , V2 , G1 and G2 . The initial condition for f is prescribed as f (x, y, t = 0) = F (U (x, y, t = 0)) (2.268) The ChapmanEnskog type analysis for the above multidimensional Relaxation System to be a dissipative approximation to the original conservation laws leads to the following condition (see [10, 41] for details of the derivation). max (A1 A2 , 2A1 A2 , A1 + 2A2 ) where A1 = G1 (U) G2 (U) and A2 = U U (2.269)

(2.270)

2.10

A Note on Numerical Methods

In the preceding sections, the governing equations of compressible uid ows are presented, along with two major alternative formulations which make the task of solving these equations simpler - the framework of Kinetic Theory of Gases and the framework of Relaxation Systems. In the next chapters, the numerical methods for solving the compressible uid ows are presented, based on each of the above framework. While the traditional numerical methods based on Euler and Navier-Stokes equations are presented briey, more emphasis is given in this course for alternative formulations.

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

Chapter 3 Analysis of Numerical Methods


Several numerical methods for scalar and vector conservation equations of compressible ows will be presented in the next chapters. To understand them better, the basic analysis of numerical methods is presented in this chapter. First, the basics of Finite Dierence Method (FDM) and the Finite Volume Method (FVM) are presented, with the example of a simple linear convection equation. Then, the concepts of consistency and stability of a numerical method are briey introduced, followed by the discussion on numerical dissipation, numerical dispersion and order of accuracy, illustrated by the analysis of Modied Partial Dierential Equations (MPDE).

3.1

Basics of Finite Dierence and Finite Volume Methods

In this course, we shall limit ourselves the application of Finite Dierence Method (FDM) and Finite Volume Method to the typical scalar and vector conservation equations, concentrating mostly on the Finite Volume Method, which is the most popular method used in compressible uid ow simulations.

3.1.1

Upwind Method in Finite Dierence Form

Consider a linear convection equation u u +c =0 t x (3.1)

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

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

48
) 0 ) 0

CHAPTER 3. ANALYSIS OF NUMERICAL METHODS


1 7 8 1 2 A B A B A B A B A B 7 8 A B C D C D C D C D C D C D C D 9 @ 2 A B A B A B A B A B A B C D C D C D C D C D C D C D 9 @

t+ t

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

ct ct xj1 xj x x
A B A B A B A B A B A B C D C D C D C D C D C D 5 A B A B A B A B A B A B C D C D C D C D C D C D % & 3 3 4 # $ 5 6 A B A B A B A B A B A B C D C D C D C D C D C D % & 3 3 4 # $ 6

A B

A B

A B

A B

A B

A B

C D

C D

C D

C D

C D

C D

C D

9 @

C D

9 @

' C D 9 @

' ( C D 9 @

xj+1

Figure 3.1: 3-Point Stencil

derivative, the simplest approximation seems to be central dierencing.


+1 n un un un j j j +1 uj 1 +c =0 (3.2) t 2x 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, actually leads to an unstable scheme! To understand why, let us see the analytical solution of the linear convection equation (3.1). The analytical solution is given by

u (x, t) = u (x ct, t = 0) which, for the 3-point stencil shown in the gure (4.1), can be written as u (x, t + t) = u (x ct, t)

(3.3)

(3.4)

So, the solution at the new time level can be found by tracing the foot of the characteristic on the line connecting the points j 1, j and j + 1 at the old time level. Obviously, it depends on the sign of the convection speed c. If c is positive, the information to the point j comes from the left, from the point j 1 and if c is negative, the information to the point j comes from the right, from the point j + 1. Therefore, the information comes only from one side, depending on the sign of c. The FTCS discretization takes information from the wrong side also, thus leading to instability. To respect the hyperbolicity of the equation, we have to introduce one sided dierencing, depending on the sign of the convection speed. To do so, let us rst split the convection speed into a positive part and a negative part as c + |c| c |c| c= + = c+ + c (3.5) 2 2 Here, c+ is always positive and c is always negative. Therefore, the linear convection equation becomes u u u + c+ + c =0 (3.6) t x x

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 hence a backward dierencing can be used. Similarly, for the c term, the information comes only from the right, and therefore, forward dierencing can be used. Such a discretization where we go up the wind and take the information is called upwind dierencing and the resulting scheme is an upwind scheme.
+1 n n un un un un j j uj 1 j +1 uj j + c+ + c =0 (3.7) t x x The above method is a Finite Dierence Method (FDM) as we have used the nite differences for the derivatives in a partial dierential equation. The upwind method can also be derived in a dierent way. Since we know the exact solution of the linear convection equation, we can use it to trace the foot of the characteristic on the 3-point stencil and use a linear interpolation between the grid points. The solution of the linear convection equation is

u (x, t + t) = u (x ct, t)

(3.8)

Now, consider a 3-point stencil as shown in gure (4.1). The foot of the characteristic falls between points j and j 1 if c > 0 and between j and j +1 if c < 0. Let us denote the foot of the characteristic by P and consider the c > 0 case rst. Using a linear interpolation between j and j 1, we can now write u(xP ) = u(xj 1 ) + Therefore, u(xP ) = u(xj 1 ) + u(xj ) u(xj 1 ) (xP xj 1 ) (xj xj 1 ) (3.9)

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

u(xj ) u(xj 1 ) (x ct) x (u(xj ) u(xj 1 )) = u(xj 1 ) + (u(xj ) u(xj 1 ) ct x t [u(xj ) u(xj 1 )] = u(xj ) c x = u(xj ) [u(xj ) u(xj 1 )]

u(t + t, xj ) = u(t, xj ) [u(t, xj +1 ) u(t, xj )] Both the cases c > 0 and c < 0 can be combined using 1 c+ = max(c, 0) = (c + |c|) where c+ 0 always 2 1 c = min(c, 0) = (c |c|) where c 0 always 2

(3.10)

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 1 1 or c = (c + |c|) + (c |c|) 2 2 u u +c =0 t x becomes u u u + c+ + c =0 t x x (3.11) or u c + |c| u c |c| u + + =0 t 2 x 2 x

and then the upwind method becomes


+1 + n n un = un un un j j uj 1 j +1 uj j

(3.12)

where =

t c |c| x 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 FVM we shall derive now is equally applicable to any conservative convection equation, linear or non-linear. 1 u g (u) + = 0 , where g (u) = u2 (3.14) t x 2 Let us now discretize our 1-D computational domain as a set of cells or nite volumes, assuming that within each cell the solution has a piecewise polynomial variation. The simplest choice is to have a piecewise constant approximation in each cell, as shown in gure (3.2). We can also choose more accurate approximations, like a piecewise linear
e b c ` a Y d e b c ` a Y d e b c ` a Y d e b c ` a Y d e b c ` a Y d e b c ` a Y d e b c ` a Y d f g f g f g f g f g e b c ` a Y d

b c

` a

b c

` a

b c

` a

Q R

I P

G H

E F

S T

U V

W X

b c

` a

Q R

I P

G H

E F

b c

` a

b c

` a

b c

` a

j3
b c b c b c b c b c b c

b c

j2
` a ` a ` a ` a ` a ` a ` a

j1
Y Y Y Y Y Y Y Y

j+1
d d d d d d d

j+2

j+3

j3/2

j1/2

j+1/2

j+3/2

Figure 3.2: Piecewise Constant Approximation approximation shown in gure (3.3) or piecewise quadratic or cubic approximations. The approximation we choose determines the order of accuracy of the disretization. Let us

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

3.1. BASICS OF FINITE DIFFERENCE AND FINITE VOLUME METHODS


51

t u

r s

p q

h i

v w

x y

t u

r s

p q

h i

j3

j2

j1

j+1

j+2

j+3

j3/2

j1/2

j+1/2

j+3/2

Figure 3.3: Piecewise Linear Approximation

now use the nite volume method, which starts with the integral form of the conservation equation in which the integration is over a nite volume or cell [xj 1 , xj + 1 ] and a 2 2 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 convection equation) is
tn+1

dt
tn

xj + 1 xj 1
2

dx

u g + =0 t x

which can be written as


xj + 1
2

tn+1 tn

xj 1
2

u dt t

tn+1

dx =

tn

xj + 1 xj 1
2

Note the changing of the order of time and space integrations in the left hand side so that a simple integration can be performed easily. Completing the integrations, we obtain
xj + 1
2 n+1 [u]t tn

g dx dt x

tn+1

xj 1
2

dx =

tn

[g (x)]xj 2 1 dt
2

xj + 1

or
xj + 1 xj 1 tn+1
2

n+1

dx =

tn

g xj + 1 g xj 1
2

dt

or
xj + 1 xj 1
2

n+1

dx =

xj + 1 xj 1
2

tn+1

tn+1

u dx

tn

g xj + 1 dt
2

g
tn

xj 1 dt
2

(3.15)

Let us now dene the cell integral averages as 1 x


xj + 1 xj 1
2 2

u (x) dx = u j

(3.16)

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

52

CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

Using the above denitions, the update formula of the nite volume method can be written as
tn+1 +1 xu n j tn+1

xu n j

tn

g xj + 1 dt
2

tn

g xj 1 dt
2

or
+1 u n =u n j j

t j 1 g 1 g 2 x j + 2
n+1

(3.17)

where

t t 1 1 dt (3.18) g xj 1 dt = g u xj 1 g j 1 = 2 2 2 t tn t tn are the time-averaged uxes. We have to now reconstruct the value of u at xj 1 , as we 2 have the cell integral averages u j (equation (3.16)) only at the cell-centres xj . (Since we converted u (x), a continuous variable, to a cell-integral average u j , we have lost the variation of u and now that we require the variation of u at the cell interfaces, we have to reconstruct the variation of u.) Reconstruction of the variation of u in each cell simply means that we need to assume a prole for u in each cell. The simplest prole is a constant value, which means a piece-wise constant reconstruction of u. A better prole is a linear prole, which means a piece-wise linear reconstruction of u. Recollect that we have already assumed the prole shape of u in the beginning of the nite volume approximation. So, we need to just make use of the existing proles of u in each cell, to reconstruct 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 means left and right cell centroid values or the cell-integral values) to reconstruct u. Referring to the gure (3.2), we can approximate the reconstructed value of u at the cell interface at xj + 1 as
2

n+1

u xj + 1
2

u n j if c > 0 u n j +1 if c < 0 u n j 1 if c > 0 u n j if c < 0

(3.19)

Similarly, we can write u xj 1


2

(3.20)

From (3.18) g j + 1
2

1 = t
tn+1 tn

tn+1 tn

g u xj + 1 , t dt
2

Since g (u) = cu, we will obtain g j + 1


2

1 = t

cu j (t) f or c > 0 cu j +1 (t) f or c < 0

dt

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. To complete 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 but let us use a simple variation of u between tn and tn+1 as u j (t) = (1 ) u j (tn ) + u j tn+1 (3.21)

where takes the values between 0 and 1 (0 1) and represents the interpolation factor (in time). Therefore
tn+1 tn +1 u j (t) dt = (1 ) u n n t j + u j

(3.22)

Thus, we obtain g j + 1 =
2

1 t t

or g j + 1 =
2

+1 c (1 ) u n n f or c > 0 j + u j n +1 n c (1 ) u j +1 + u j +1 f or c < 0

(3.23)

Similarly, we can derive g


1 j 2

+1 n c (1 ) u n f or c > 0 j + u j n+1 n c (1 ) u j +1 + u j +1 f or c < 0 +1 f or c > 0 c (1 ) u n n j 1 + u j 1 n+1 c (1 ) u n + u f or c < 0 j j

(3.24)

(3.25)

Substituting the expressions for above uxes in the update formula (3.17), we obtain
n+1 u j =u n j

t x

or
+1 u n =u n j j

+1 +1 f or c > 0 c (1 ) u n n n u n j u j 1 + c u j j 1 n+1 n+1 n n f or c < 0 j +1 u j c (1 ) u j +1 u j + c u

If we now take = 0, then we obtain


+1 u n =u n j j

t (1 ) |c| x c+ 2 t x

c+|c| 2

u n j

+1 +1 u n u n j j 1 +

u n j 1

c| + c| u n n j +1 u j 2 c|c| +1 +1 u n n j +1 u j 2

(3.26)

c + |c| 2

u n n j u j 1 +

c |c| 2

u n n j +1 u j

(3.27)

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

t x

c + |c| 2

+1 +1 u n u n j j 1 +

c |c| 2

+1 +1 u n n j +1 u j

(3.28)

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 . +1 n+1 +1 Note that, In this implicit method, we need to solve for the values of un and un j 1 , uj 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 average of both the above methods, known as Crank-Nicolson method. The explicit method is easier to program, as no matrix inversion is needed. However, an implicit method will not have a stability restriction as in the explicit method and larger values of the time-step are allowed, leading to faster convergence. We can see that the piecewise constant approximation with the upwinding in nite volume method yields the rst order accurate upwind nite dierence method. This equivalence is possible for a linear convection equation. The main advantage of the upwind nite 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 the general nite volume update formula (3.17) for all the N nite volumes or cells in our 1-D domain. N N N t n+1 n n n (3.29) g j u j j u j = 1 g 1 +2 2 x j =1 j =1 j =1 or
N +1 u n j j =1 N

=
j =1

u n j

t n n n n n n n n n n N N N g N g 3 g 1 + g 5 g 3 + g 7 g 5 + + g 1 g 3 + g 1 2 2 +1 2 2 2 2 2 2 2 x 2 (3.30)

or

N +1 un j j =1

=
j =1

u n j

t n n g 1 g 1 2 x N + 2

(3.31)

Thus, all the uxes in the middle of the domain cancel and only the uxes at the boundaries remain, and the net ux (outgoing ux minus the incoming ux) balances the rate of change of the conservative variable. Thus, the nite volume method preserves conservation at the discrete level and hence the positions of the discontinuities like the shocks or contact discontinuities are automatically captured correctly on an average. This property of all the uxes in the middle of the domain getting canceled is called the telescoping property of the uxes. This is a unique property of the Finite Volume Method (FVM).

3.2

Modied Partial Dierential Equations

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

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

3.2. MODIFIED PARTIAL DIFFERENTIAL EQUATIONS

55

expansions into the numerical method, to recover the actual equation we are solving exactly. The resulting equation is called as Modied Partial Dierential Equation or Equivalent Dierential Equation. For the linear convection equation u u +c =0 t x the upwind method is
n+1 n + n un uj = un un j +1 uj j j uj 1

(3.32)

(3.33)

(c + |c|) t (c |c|) t and = (3.34) 2 x 2 x The above equation is an approximation to the linear convection equation as we have discretized the derivatives. If we are not solving the linear convection equation exactly, but only approximately, then which equation are we solving exactly? To answer this question, let us expand the terms in the upwind method using Taylor series. where + = uj n+1 = u (xj , t + t) = uj n + t u t
n

+
j

t2 2 u 2 t2

+
j

t3 3 u 6 t3

+ 0(t4 ) (3.35)
j

n un j +1 = u (xj + x) n j n

un j +1

= uj

u + x x

n j

x2 2 u + 2 x2

x3 3 u + 6 x3

+ 0(x4 )
j

(3.36)

n un j 1 = u (xj x)

un j 1

= uj

u x x

n j

x2 2 u + 2 x2

n j

x3 3 u 6 x3

+ 0(x4 )
j

(3.37)

Substituting (3.35), (3.36) & (3.37) in (3.33) and dividing it by t, we get u n t + t j 2 + x t t2 2u + t2 j 6 x2 u n x j 2


n

3u t3 2u x2

+ u n x2 2 u = x + t x j 2 x2 j n n 3 3 4 x u x ) + 0(t3 , 3 6 x j t j

n j

x3 3 u 6 x3

n j

To simplify the above equation, we have to replace the time derivatives by space derivatives for which we use the original linear convection equation itself. u [u] [u] u +c = 0 or = c t x t x (3.38)

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

56

CHAPTER 3. ANALYSIS OF NUMERICAL METHODS u u [ ] [c ] 2 2u t = c x = c2 u = t2 t x x2

(3.39)

3u = c t3 Using the above formulae, we obtain


n

[c2

2u ] 3 x2 = c3 u x x3
n

(3.40)

t2 3 3 u u n t 2 2 u + c c 3 j t j 2 x2 j 6 x n n + 2 2 x3 u x u = x + t x j 2 x2 nj 6 n 2 x3 x 2 u u + x t x j 2 x2 j 6 u t
n j

3u x3 3u x3

n j n

+ 0(t3 ,
j

x4 ) t
n

u + + x t x

n j

u + x t x

x2 2 u = c 2 2t x2 j j n 4 t2 x3 3 u 3 x + + c 3 ) (3.41) + 0( t , 6 6t x3 j t
+ 2 t

c + |c| + x = t 2 c |c| x = t 2 From the above two equations we get + = |c| Therefore, we obtain u t
n

(3.42)

t t and + + = c x x

(3.43)

+
j

c + |c| 2

u x

2u |c|t |c|x 1 2 2 x x2 j j j n 4 c2 t 2 3u cx2 3 x 1+ t ) (3.44) + + 0( t , 6 x2 x3 j t + u x =

c |c|

Therefore u u +c t x
n j

|c|x 1 || 2

2u x2

+
j

cx2 2 1 6

3u x3

+ 0(t3 ,
j

x4 )(3.45) t

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

3.2. MODIFIED PARTIAL DIFFERENTIAL EQUATIONS If x = constant and we drop t u u +c t x


n j

57

3u x3

term, then we obtain 2u x2


n

|c|x = 1 || 2

+ 0(t2 , x2 )
j

Therefore, the scheme is I order accurate in time and space. To understand the terms in the truncation error better, let us consider the momentum equation of conservation laws for a uid in expanded form. u u 1 p 2u +u + = 2 t x x x (3.46)

The second order term on right hand side represents a viscous term. Therefore, the |c|x 2u upwind scheme has introduced an articial viscosity term, 1 || and the 2 x2 method is rst order accurate. That is u u +c = 0(t, x) t x (3.47)

What is the role of articial viscosity? Just as the physical viscosity has the stabilizing eect on uid ows, articial viscosity stabilizes the numerical methods, keeping the errors without growing (or damping them). We can rewrite the upwind method as follows.
+1 n n + un un un = un j +1 uj j uj 1 j j +1 un j

(3.48) (3.49) (3.50)

un j

n n un un c + |c| c |c| j uj 1 j +1 uj ( )t ( )t 2 x 2 x n n n n n ct uj +1 uj 1 |c|t uj +1 2uj + uj 1 + 2 x 2 x n un j +1 uj 1

+1 un j

un j

n n un j +1 2uj + uj 1 |c|t = ct + x (3.51) 2x 2 x2 If we omit the last term on the right hand side, we get the Forward Time and Centered u u +c = 0, Space (FTCS) approximation to t x +1 un j

un j

+1 un un j j +c t

n un j +1 uj 1

2x

=0

Therefore, the upwind method has added an articial viscosity term to the central dif|c|t 2u . We know that ferencing method, and this articial viscosity term is x 2 x2 FTCS is unstable. The articial diusion stabilizes the FTCS method. Thus, there are two routes to obtain a stable scheme, as explained in the following part.

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

58

CHAPTER 3. ANALYSIS OF NUMERICAL METHODS 1. By adding explicit articial viscosity to the central dierencing scheme. 2. By using an upwind scheme which has an inherent (implicit) articial viscosity.

The second one is preferable, as there are no tuning parameters which are problem dependent. For the rst option,the tuning parameters come in while answering the question How much articial viscosity is to be added? The MPDE for FTCS method is u u c2 t 2 u + 0(t3 , x3 ) +c = t x 2 x2 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 dierence scheme with explicit articial viscosity for Euler equations. But, because of the tuning parameters, central dierence 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 local truncation error vanishes when the grid-spacing and the time-step go to zero. As an example, consider the linear convection equation u u +c =0 t x and the upwind scheme for the above equation given by
+1 un = un j j

(3.52)

(c + |c|) t n (c |c|) t n uj un uj +1 un j 1 j x x

(3.53)

We have seen in the previous section that the Modied Partial Dierential Equation (MPDE) for the above upwind scheme is given by u u +c t x
n j

|c|x 1 || 2

2u x2

+
j

cx2 2 1 6

3u x3

+ 0(t3 , x4 ) (3.54)
j

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

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

3.4. STABILITY ANALYSIS

59

3.4

Stability Analysis

While designing and using numerical methods for partial dierential equations, it is important to know if the numerical method is stable or not. Before studying the stability analysis, let us rst understand the Fourier series in complex wave form, which we will use in the stability analysis.

3.4.1
Let

Fourier series in complex waveform

f (x) = a +
m=1

am cos(m x) + bm sin(m x)

From eiwm x = cos (wm x) + i sin (wm x) and eiwm x = cos (wm x) i sin (wm x) we can write cos(m x) = and sin(m x) = Therefore am cos(m x) + bm sin(m x) = am = 1 im x 1 im x e + eim x + bm e eim x 2 2i 1 im x e + eim x 2 1 im x e eim x 2i (3.55)

(am ibm )eim x + (am + ibm )eim x 2 (3.56)

am cos(m x) + bm sin(m x) = cm eim x + cm eim x where cm = (am ibm ) 2 & c m =

(am + ibm ) 2 (3.57)

f (x) = a +
m=1

cm eim x + cm eim x

If we dene c0 = a, We can write

f (x) =
m=

cm eim x

(3.58)

2 i mx 2 m . Therefore, when m = 0, eim x = e L = We have used the fact that m = L 0 e = 1. The complex form simplies the algebraic manipulations and is easier to use.

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

60

CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

3.4.2

Stability analysis of Numerical Methods [12]


u u +c = 0 f or c > 0 t x

We know that FTCS method for LCE (3.59)

given by

+1 n un un un j j +1 uj 1 j +c = 0 is unstable and the FTBS method (upwind t 2x method) given by +1 n un un un j j uj 1 j +c =0 (3.60) t x 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 nd stability conditions for numerical methods? Just like a solid body having dierent 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 two kinds of obvious errors in numerical approximations : 1. A truncation error of the numerical method 2. A round-o error Truncation error or the Discretization error is the dierence between the exact analytical solution of the PDE and the exact (round-o-free) solution of the corresponding dierence equation. If A is the analytical solution of the PDE, N is the numerical solution from the computer and E is the exact solution of the dierence equation, then Discretization error = A E and Round o error = = N E . By denition, E is the exact solution to the dierence equation. Therefore, E exactly satises the dierence equation. Let us consider FTCS case which leads to
n+1 n n n Ej Ej Ej +1 Ej 1 +c =0 t 2x

(3.62)

Numerical solution is obtained by solving the dierence equation. Therefore, N should satisfy the following dierence equation.
n Njn+1 Njn Njn +1 Nj 1 +c =0 t 2x

(3.63)

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

3.4. STABILITY ANALYSIS Since = N E , and N = E +


n+1 (Ej + n+1 j n Ej t n j)

61

+c

n (Ej +1 +

n j +1

n Ej 1 2x

n j 1 )

=0

(3.64)

Using (3.62), we obtain


n n n j j +1 j 1 +c =0 (3.65) t 2x Therefore, round o error should satisfy the dierence equation. As we go from nth time level to (n + 1)th time level, the errors should decrease or at most stay the same for stability. If the errors are amplied by the numerical method, then the instability sets in. Therefore n+1 j n j n+1 j

1 for stability

(3.66)

Let the round o error at the starting of the nth iteration have an initial random distribution. At any given time, let us express that the random variation of with x analytically using Fourier series as (x) = Am eim x (3.67)
m

Since e = cos(m x) + isin(m x) the above equation represents both sine and a cosine series. Here, m is the wave number, Am is the amplitude and the above equation gives the spatial variation of the error . We also need temporal variation. Therefore, we assume Am = Am (t). (x, t) = Am (t)eim x (3.68)
m

im x

What is wave number? Consider a sine function y = sin( 2x ) (3.69)

where is the wave length. In the notation we have used, y = sin(m x) 2 Therefore, m = . If we t two sine waves in an interval L, 2 2 m = = 2. Similarly, if we t 3 sine waves in L, m = L L ( ) 2 waves in an interval L, the wave number is given by m = 2 m L (3.70) then y = sin(m x) with 2 2 = 3. If we t m L L ( ) 3 (3.71)

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 should be 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 2L 2 min = 2x. Therefore min = 2x = . . Therefore, we have m = 2L (N 1) (N 1) m = 2 N 1 L 2 (N 1) 2 (3.74) (3.73)

Therefore, the maximum member of waves = mmax = Thus (x, t) =


m=1

(N 1) 2

(N 1) 2

Am (t)eim x

(3.75)

Since errors tend to grow or decay quickly, we can assume an exponential variation for the amplitude. Am (t) = eat (3.76)
(N 1) 2

(x, t) =
m=1

eat eim x

(3.77)

Let us now substitute the above into the error equation, which is
n+1 j

n j

+c

n j +1

n j 1 =0 2x

(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 summation in (3.77) and use (x, t) = eat eim x (3.79) Substituting (3.79) in (3.78), we get ea(t+t) eim x ea(t) .eim x ea(t) eim (x+x) ea(t) eim (xx) +c =0 t 2x

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

3.4. STABILITY ANALYSIS Dividing by ea(t) eim x , we obtain eim x eim x eat 1 +c =0 t 2x eat = 1 But eim x eim x = 2 i sin(m x) Therefore eat = 1 ct 2 i sin(m x) 2x ct im x e eim x 2x

63

(3.80)

(3.81)

eat = 1 i sin(m x) ct where = . The condition for stability is x


n+1 j n j n+1 j n j

(3.82) 1. The amplication factor,

, is
n+1 j n j

ea(t+t) eim x eat eim x


n+1 j n j

That is,

= |ea(t) | 1

n+1 j n j

|ea(t) | 1 1 isin(m x) 1 12 + 2 sin2 (m x) 1 Hence Since sin2 () is always positive, the above condition can never be satised, whatever the values of x and t may be. Therefore, the FTCS scheme is unconditionally unstable. We performed the von-Neumann stability analysis based on the round-o error, for simplicity. The concept of stability is actually based on the behaviour of the solution itself, not only on round-o error. We can write u(x) = m Am eim x , where Am is the amplitude of the 1 + 2 sin2 (m x) 1 for stability (3.83)

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

64

CHAPTER 3. ANALYSIS OF NUMERICAL METHODS


+1 An m and |G| 1 Am

mth harmonic of the solution. Then, the amplication factor is G =

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 Am eim x and Am = eat . That means, we are assuming the solution to be periodic. Is this assumption a reasonable one? When a numerical method is unstable, usually it produces oscillations in the solution. Therefore, to study the stability requirements and to understand the instabilities, expressing the solution in a Fourier series is a reasonable choice. Stability analysis for the upwind scheme : u u +c =0 t x c>0 (3.84) (3.85) ct x (3.86) (3.87)

+1 n un un un j j uj 1 j +c =0 t x +1 n n un = un j (uj uj 1 ) where = j

u(x, t) =
m

eat eim x

Since the dierence eqn (3.86) is linear, when we substitute (3.87) in (3.86), each term in (3.87) behaves like the entire expression. Therefore, we can omit the summation and write u(x, t) = eat eim x
+1 un = u(x, t + t) = ea(t+t) eim x j at im (xx) un j 1 = u(x x, t) = e e

(3.88)

Substituting (3.88) in (3.86), we get eat eat eim x eat eim x eat eim x eat eim x eim x +c =0 t x Dividing by eat eim x , we obtain 1 eim x eat 1 +c =0 t x eat = 1 (1 eim x ) eat = 1 (1 cos(m x) + i sin(m x)) (3.89)

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

3.4. STABILITY ANALYSIS Amplication factor = G =


+1 ea(t+t) An m = = eat at An e m

65

G = 1 + cos(m x) i sin(m x) |G| = 1 + cos(m x) + sin(m x)


2 2
1 2

(3.90)

|G| = 1 + 2 22 cos(m x) 2 + 2 cos(m x) + 2 (cos2 (m x) + sin2 (m x)) |G| = 1 + 2 + cos(m x)(2 + 2) 2 + 2 |G| = 1 + 22 2 + (2 2)(1 2 sin2 ( Because cos() = 1 2 sin2 ( ) 2 |G| = 1 + 22 2 + (2 2) 2(2 2) sin2 ( m x |G| = 1 4 sin ( )(1 ) 2 m x = 1 and sin2 ( ) =0 2 min
2
1 2 1 2

1 2

m x ) 2

1 2

m x ) 2

1 2

sin2 (

m x ) 2

max

when > 1 4(1) is negative. Therefore, 14(1) sin2 ( Then

m x m x ) has a maximum for sin2 ( ) = 1. 2 2


1 2

|G|max = 1 4(1 ) |G|max = 1 4 + 42 |G|max = (1 2) |G|max > 1 Therefore, the method is unstable if > 1 when < 1 4(1) is positive. Therefore, 14(1) sin2 (
2
1 2

1 2

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

m x m x ) has a minimum for sin2 ( ) = 0. 2 2

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

66

CHAPTER 3. ANALYSIS OF NUMERICAL METHODS

2 Then, |G|2 max = 1 and this satises the condition |G|max 1 0r |G|max 1. Therefore, ct 1. the method is stable if 1 or x Thus, the stability condition xes the time-step in the numerical method, based on x the grid-spacing. For the upwind scheme, we obtained t . We take, in practice, c x t = where is a positive constant such that 1. The stability condition can be c rewritten as x x c or c 1 or c x t t t

which means that the grid speed must be greater than the convection speed or x ct (3.91)

which means that the numerical domain of dependence must include the physical domain of dependence (see gure (3.4.2)). This is the well-known CFL (Courant-Friedrichs-Lewy) condition.
i j d n o n o n o n o n o n o k p i j n o p q p q p q p q p q p q p q d n o n o n o n o n o n o k p n o p q p q p q p q p q p q p q

t+ t

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

n o

n o

n o

n o

n o

n o

k p

n o

p q

p q

p q

p q

p q

p q

p q

e f

e f

g h

xj1

ct x ct j x x
n o n o n o n o n o n o k p n o p q p q p q p q p q p q e f l m e f h k

p q

xj+1

Physical domain of dependence Numerical domain of dependence

Figure 3.4: 3-Point Stencil

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

Chapter 4 Central Discretization Methods for Scalar and Vector Conservation Laws
4.1 A Brief History of Numerical Methods for Hyperbolic Conservation Laws

Historically, central discretization methods were the rst to be used for solving hyperbolic equations. The important central discretization methods are - Lax-Friedrichs method [13], Lax-Wendro method [14], MacCormack method [15] and Jameson-Schmidt-Turkel method [16]. The upwind methods, which were developed in the 80s became more popular than the central discretization methods. The upwind methods for solving Euler equations can be broadly classied 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 Dierence Splitting methods of Roe [18] and Osher [19] belong to the category of Approximate Riemann Solvers. The Beam Scheme of Sanders and Prendergast [20] was the rst Kinetic Scheme (also the rst Kinetic Flux Vector Splitting scheme), which was followed by several Kinetic Schemes - the Equilibrium Flux Method of Pullin [21], the Kinetic Numerical Method 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 BGK scheme of Prendergast and Kun Xu [26]. The Relaxation Schemes were rst introduced 67

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

68

Central Discretization Methods

by Jin and Xin [8]. Other relaxation schemes of interest were introduced by AregbaDriollet 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 of the above categories - the Adevective Upstream Splitting Method (AUSM) of Meng Sing Liou [28] and the Hybrid Upwind Splitting (HUS) method of Coquel and Liou [29] and the Convective Upwind Split Pressure (CUSP) method of Jameson [30]. Some of he upwind methods for scalar and vector conservation equations will be presented separately in the next two chapters. In this chapter, two of the central discretization methods, namely, Lax-Friedrichs method and Lax-Wendro method are presented.

4.2

Lax-Friedrichs Method

Consider a linear convection equation, which is the simplest convection equation, given by u u +c =0 (4.1) t x In conservation form, the above equation is u g (u) + = 0 where g (u) = cu t x (4.2)

On a 3-point stencil consisting of points j 1, j and j + 1, the simplest scheme we can think of for the above equation is the Forward Time Centered Space (FTCS) discretization, given by +1 n n un un gj j j +1 gj 1 + =0 (4.3) t 2x which can be rearranged as
+1 un = un j j

t n n gj +1 gj 1 2x

(4.4)

But, this simple scheme is unstable for the hyperbolic equation cosidered above, as it does not respect the hyperbolicity of the linear convection equation. In the Lax-Friedrichs [13] method, the rst term on the right hand side of the above expression is replaced by an average of the values of the dependent variable u at the points j + 1 and j 1, thereby stabilizing the scheme.
+1 un = j

1 n t n uj +1 + un g n gj j 1 1 2 2x j +1 1 n t n n n gj uj +1 2un +1 gj 1 + j + uj 1 2x 2

(4.5)

We can rearrange the above scheme as


+1 un = un j j

(4.6)

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 scheme for the linear convection equation in a way such that central dierencing of the uxes is supplemented by an articial viscosity term as
+1 un = un j j

t n n n n n gj +1 gj 1 + uj +1 2uj + uj 1 2x

(4.7)

Here, last term is an approximation for the second derivative of u and hence represents the articial viscosity term, added to the central dierence term (last but one term) for stability. represents the coecient of articial viscosity. Any scheme can be rearranged in the above form, to nd out the amount of articial viscosity present. The von Neumann stability analysis of such a general scheme gives the condition 2 1 ct where = 2 2 x (4.8)

If we take the coecient of viscosity as the maximum value permitted by the above 1 stability condition, that is, = , we obtain the Lax-Friedrichs scheme derived above! 2 That means, Lax-Friedrichs scheme has the maximum amount of articial viscosity permitted by the stability condition. Therefore, Lax-Friedrichs method, which is a rst order accurate method, by itself is not usually preferred for solving practical problems. The Lax-Friedrichs scheme can also be obtained in a dierent way. The exact solution of the linear convection equation (4.1) is given by u(t, x) = u(0, x ct) If we know the solution at t, then we can write u(t + t, x) = u(t, x ct) (4.10) (4.9)

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

t+ t

t u

| }

| }

t u

| }

| }

xj1

ct ct xj x
~ r s ~  r s 

v w

xj+1

Figure 4.1: 3-point stencil

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

70 points j + 1 and j 1. Therefore, un+1 (xj ) = un (xj 1 ) +


+1 un = un j 1 + j +1 un = un j 1 + j +1 un = un j 1 + j +1 un = j

Central Discretization Methods

un (xj +1 ) un (xj 1 ) (xP xj 1 ) 2x


n un j +1 uj 1 (x ct) 2x

(4.11) (4.12) (4.13) (4.14)

n un ct j +1 uj 1 n x un j +1 uj 1 2x 2x

ct n 1 n uj +1 un uj +1 un j 1 j 1 2 2x

1 n ct n uj 1 + un u un (4.15) j +1 j 1 2 2x j +1 For a non-linear scalar conservation law, Lax-Friedrichs method can still be applied without much modication. Consider the 1-D Burgers equation u2 u g (u) + = 0 where g (u) = t x 2 The Lax-Friedrichs method for the above Burgers equation is given by
+1 un = j

(4.16)

t 1 n g (un )j +1 g (un )j 1 uj 1 + un j +1 2 2x

(4.17)

which is obtained by central dierencing the ux term and replacing the variable un j by the average value of the values at the neighbours j + 1 and j 1. Note, however, that the interpretation of exact solution with a linear interpolation between the points j 1 and j + 1 will not now lead to the same scheme. The non-linearity of the ux makes it dierent. For non-linear vector conservation equations (Euler equations) also, the LaxFriedrichs method can be applied easily as Ujn+1 = 1 n t G (U n )j +1 G (U n )j 1 Uj 1 + Ujn +1 2 2x (4.18)

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

4.3

Lax-Wendro Method

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

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

4.3. LAX-WENDROFF METHOD

71

Lax-Wendro scheme for the linear convection equation, let us expand the variable u in Taylor Series and retain the terms upto the second order.
n+1 uj = u(t + t, x) = un j + t

u t

n j

t2 2 u 2 t2

n j

+ O t3

(4.19)

Let us replace time derivatives by space derivatives. u u 2u = c & 2 = t x t t


+1 Therefore, un = un j + ct j

u t

= c t

u c t

=c

u x2

u t2 2 u + O t3 + c2 x 2 x2

Let us use 2nd order central dierences for the derivatives. u (uj +1 uj 1 ) = + 0(x2 ) x 2x 2u (uj +1 2uj + uj 1 ) = + 0(x2 ) 2 x x2 ct c2 t2 3 3 = un + uj +1 2un u u + j +1 j 1 j j + uj 1 + O x , t 2x 2x2

+1 Therefore, un j

This is the Lax-Wendro scheme, which is second order accurate in both time and space. We can also derive this method in a dierent way. Consider a 3-point stencil as shown in the gure (4.1). The exact solution of the linear convection equation is given by u (t + t, xj ) = u (t, xj ct) (4.20)

To obtain the value of xP on the 3-point stencil, let us now use a quadratic interpolation of the values of u at the points xj 1 , xj and xj +1 . Considering the point xj as the origin and assuming a quadratic variation, we can write u (x) = a (x xj )2 + b (x xj ) + c 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) (4.21)

With the above three equations, the three unknowns a, b and c can be evaluated using the expression (4.21) as a= uj +1 uj 1 uj 1 2uj + uj +1 , b= and c = uj 2 2x 2x (4.23)

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

72

Central Discretization Methods

Therefore, the exact solution of the convection equation with the above quadratic interpolation gives u (t + t, xj ) = = = = u (t, xj ct) un (xP ) a (xj ct xj )2 + b (xj ct xj ) + c a (ct)2 b (ct) + c c2 t2 n ct n n n u 2un + u u = un j + uj 1 j 1 j 2x j +1 2x2 j +1

(4.24)

Thus, we have obtained the Lax-Wendro method by tracing the foot of the characteristic with a quadratic interpolation! The Lax-Wendro method has the least amount of articial viscosity allowed by the stability condition. For non-linear scalar conservation equations, the Lax-Wendro method can be derived with a little more care as follows. Consider the inviscid Burgers equation u 1 + [g (u)] = 0 where g (u) = u2 t x 2 Therefore, we can obtain g (u) u = t x (4.26) (4.25)

2u u g (u) g (u) g (u) u = = = = 2 t t t t x x t x u t (4.27) 2u g (u) g (u) g (u) g (u) or 2 = = a (u) where a (u) = t x u x x x x Let us now use Taylor Series expansion to obtain
+1 un = u(t + t, x) = un j + t j

u t

+
j

t2 2

2u t2

+ O t3
j

(4.28)

Let us now replace the time derivatives by space derivatives derived above to obtain
+1 un j

un j

g (u) x

n j

t2 + 2 x

g (u) a (u) x

+ O t3
j

(4.29)

Now, let us replace the space derivatives by central dierences. The rst order space derivative on the right hand side is simple to deal with and we can use g (u) g (uj +1 ) g (uj 1 ) = x x (4.30)

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 grid points xj and xj 1 and then use the central dierencing. Thus, we have a uj + 1
2

a (u)

g (u) x

= a uj + 1
2

g (u) x

1 j+ 2

a uj 1
2

g (u) x

1 j 2

x g (uj +1 ) g (uj ) a uj 1 2 x x

g (uj ) g (uj 1 ) x

(4.31)

Using the above central dierences for the space derivatives, we obtain the Lax-Wendro method for the non-linear scalar conservation equation as
+1 un = un j j

t [g (uj +1 ) g (uj 1 )] 2x (4.32) t2 a uj + 1 {g (uj +1 ) g (uj )} a uj 1 {g (uj ) g (uj 1 )} + 2 2 2x2

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 + 1
2

=a

uj + uj +1 2

(4.33)

g = u. For vector conservation laws (Euler equations) For the Burgers equation, a (u) = u the Lax-Wendro method can be derived in a similar way as Ujn+1 = Ujn t [G (Uj +1 ) G (Uj 1 )] 2x

t2 + A Uj + 1 {G (Uj +1 ) G (Uj )} A Uj 1 {G (Uj ) G (Uj 1 )} 2 2 2x2

(4.34)

where U and G are conserved variable and ux vectors and A is the ux Jacobian matrix, G . We can notice that the Lax-Wendro method requires the evaluation dened by A = U of the derivatives, and hence is computationally not ecient. Instead, an equivalent twostep Lax-Wendro method was used in practice, which does not require the evaluation of Jacobians and is also simpler in multi-dimensions. The Lax-Wendro method, being second order accurate, generates wiggles near the captured shocks. The Lax-Wendro method does not have sucient numerical dissipation to capture the expansion waves at sonic points (where the wave speed changes sign) correctly and is usually supplemented with a dose of articial viscosity.

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

74

Central Discretization Methods

4.4

Two-Step Lax-Wendro Method and MacCormack Method

Richtmyer and Morton [33] presented a two-step Lax-Wendro method, which avoids the evaluation of ux Jacobian matrices, when applied to vector conservation laws. This method contains two steps - a predictor step and a corrector step. Consider the scalar conservation equation u g (u) + =0 (4.35) t x In the predictor step, the Lax-Friedrichs method is used at the mid-points between the grid points, obtaining
2 Predictor : uj + 1 = 2

n+ 1

1 n t n uj +1 + un g un j j +1 g uj 2 2x
n+ 1
2

(4.36)

2 , which can be obtained replacing j by j 1 A similar expression is used to obtain uj 1

in the above step. In the corrector step, a centered time and centered space (CTCS) approximation is used as
+1 Corrector : un = un j j
1 t n+ 2 n+ 1 gj + 1 gj 12 2 2 x

(4.37)

For a linear ux (as in the case of linear convection equation), this two-step scheme will be identical to the Lax-Wendro scheme, which can be obtained by substituting the predictor step expressions in the corrector step. Another two-step method which reduces to the Lax-Wendro scheme for a linear ux is the MacCormack method [15], in which the predictor step is given by Predictor : u
1 n+ 2 j

= un j

t n g un j +1 g uj x

(4.38)

and the corrector step is given by


+1 Corrector : un = j

t 1 n n+ 1 n+ 1 n+ 1 uj + uj 2 g uj 2 g uj 12 2 x

(4.39)

Note that the predictor step uses a forward dierence while the corrector step uses a backward dierence, which can be interchanged. MacCormack method can also be written as t n+ 1 n g un Predictor : uj 3 = un (4.40) j j +1 g uj x t n+ 1 n+ 1 n+ 1 n+ 2 g uj 3 g uj 13 (4.41) Corrector : uj 3 = uj 3 x

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

4.4. TWO-STEP LAX-WENDROFF METHOD AND MACCORMACK METHOD 75 1 n n+ 2 (4.42) uj + uj 3 2 This method will also be identical to Lax-Wendro method for a linear ux. In the non-linear case, all the three methods are dierent. The two-step Lax-Wendro method and MacCormack method do not need the evaluation of the ux Jacobian matrices, when applied to vector conservation laws. Another central dierence scheme which became popular is the scheme of Jameson, Schmidt and Turkel [16], which has higher order articial viscosity controlled by tuning parameters and Runge-Kutta time stepping for stability. But, these tuning parameters are problem dependent and are not universal. Because of these reasons, the upwind methods, which were introduced later, became more popular. Upwind dierence schemes will be presented in the next chapters.
+1 un = j

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

76

Central Discretization Methods

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

Chapter 5 Upwind Methods for Scalar Conservation Laws


In the third chapter, we learnt about the upwind method for the linear convection equation. For a linear convection equation given by u g (u) + = 0 where g (u) = cu t x (5.1)

the upwind method is developed by splitting the wave-speed, c, into a positive part and c + |c| c |c| a negative part as c = c+ + c = + and using upwind discretization based 2 2 on these split wave-speeds, either in nite dierence form or in nite volume form. For example, the upwind nite dierence method is
+1 un un j j + c+ t

u x

+ c
Backwarddif f erence

u x

=0
F orwarddif f erence

(5.2)

Note that the wave-speed c is taken out of the space dierentiation term and the discretization is done with the non-conservative form of the equation. This is OK for the linear convection equation since the wave-speed is a constant. What about a situation in which the wave-speed is a variable? In the case of Burgers equation, 1 g (u) = u2 2 the wave-speed is given by g (u) =u u and the non-conservative form of the equation is a= u u +u =0 t x 77 (5.4) (5.3)

(5.5)

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, which is the unknown! Thus, non-linearity increases the complexity. In such cases, it is better to use the conservative form of the equation, as it is well-known that only conservative formulations 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 challenge is to combine wave-speed splitting with the conservative form. In this chapter, four dierent strategies in which this question is answered will be presented, namely, ux splitting method, the method of a Riemann Solver, the approach of Kinetic Schemes and nally the strategy of Relaxation Schemes. After these basic strategies for the simpler case of scalar but non-linear conservation equations, the corresponding methods for vector conservation equations (Euler equations) are presented in the next chapter.

5.1

Flux Splitting Method


u g (u) 1 + = 0 where g (u) = u2 t x 2 (5.6)

Consider the 1-D Burgers equation

Let us rewrite the expression for the ux in such a way that it contains the wave speed, g (u) a= and the conserved variable, u. u 1 1 g (u) g (u) = u2 = u u = aku where a = and k = a constant 2 2 u (5.7)

The ux now contains the wave-speed explicitly and the constant k is introduced such that we can tackle both Burgers equation and linear convection equation together in the same conservative discretization. k= 1 for linear convection equation 1 for Burgers equation 2 c for linear convection equation u for Burgers equation (5.8)

a=

(5.9)

We can now introduce wave-speed splitting as a = a+ + a = a + |a| a |a| + 2 2 (5.10)

and introduce it in the denition of the ux in conservative form as g (u) = aku = a+ + a ku (5.11)

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

5.1. FLUX SPLITTING METHOD Therefore, the ux now splits into two parts as g (u) = a+ ku + a ku = g + + g The scalar conservation equation now becomes u g + g + + =0 t x x

79

(5.12)

(5.13)

and now the ux derivatives are separated based on positive and negative wave-speeds. We can now introduce upwind dierencing to obtain an upwind ux splitting nite dierence scheme as u + t or g + x +
Backwarddif f erence

g x

=0
F orwarddif f erence

(5.14)

+ + u gj gj 1 gj +1 gj + + =0 (5.15) t x x If we now discretize the transient term (time derivative of u) by forward dierencing and use an explicit discretization for the space discretiztaion, we obtain the rst order ux split upwind scheme for a scalar conservation equation as +1 + + un un gj gj gj j j 1 +1 gj + + =0 t x x
n n n n

(5.16)

To derive a nite volume method based on ux splitting, let us consider the integral formulation as xj + 1 tn+1 u g (u) 2 + dxdt = 0 (5.17) t x tn x 1
j 2

t n n g 1 gj 1 2 x j + 2 To evaluate the uxes at the cell interfaces in an upwind way, we can write u n+1 j = u n j gj + 1 =
2

which becomes

(5.18)

(ak u )j if aj > 0 (ak u )j +1 if aj +1 < 0

(5.19)

which can be written as gj + 1 = a + k u


2

+ a k u

j +1

+ = gj + gj +1

(5.20)

Similarly, we can derive gj 1 = a + k u


2

j 1

+ a k u

+ = gj 1 + gj

(5.21)

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

80

CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

and the update formula for the rst order upwind nite volume method becomes
+1 u n =u n j j

t n n g 1 gj 1 2 x j + 2

(5.22) (5.23) (5.24)

where
+ + gj gj + 1 = gj +1
2

and
+ gj 1 = gj 1 + gj
2

5.2

Approximate Riemann Solver of Roe

An original innovative idea of tackling the problem of designing an upwind method for the non-linear scalar conservation equations using a conservative formulation was given by Godunov [17]. At the edge of each nite volume or cell interface, he proposed to solve a Riemann problem. A Riemann problem for the equation u g (u) + =0 t x is the problem with the initial condition u (x, t = 0) = ulef t for x < 0 uright for x > 0 (5.25)

(5.26)

Since we are assuming piecewise polynomial variation within each cell, at the cell interfaces there is always a discontinuity in the solution and hence a Riemann problem exists at each cell interface. Godunov proposed to solve the Riemann problem exactly at the cell interfaces. Such upwind methods are known as exact Riemann solvers. Roe [18] proposed to solve an approximate Riemann problem at the cell interfaces, which simplies the procedure, without losing the accuracy. In this section, the approximate Riemann solver of Roe is presented for scalar conservation equations. Consider the scalar conservation equation u g (u) + =0 t x (5.27)

Integrating the above equation over a nite volume (or equivalently a cell), we obtain t n n g 1 gj (5.28) 1 2 x j + 2 In obtaining the conservative uxes at the cell interfaces, we have to solve the Riemann problem ulef t for x < xj + 1 u g (u) 2 + = 0 with uj + 1 = (5.29) 2 uright for x > xj + 1 t x
+1 = un un j j
2

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

5.2. APPROXIMATE RIEMANN SOLVER OF ROE or, using the quasilinear form of the equation, the Riemann problem u u +a = 0 with uj + 1 = 2 t x where ulef t for x < xj + 1 2 uright for x > xj + 1
2

81

(5.30)

g (u) (5.31) u is the wave-speed. Let us now replace the above Riemann problem by an approximate Riemann problem a= u u +a = 0 with uj + 1 = 2 t x ulef t for x < xj + 1 2 uright for x > xj + 1
2

(5.32)

where a is now linear and hence the equation is easier to solve and let a be a function of both left and right states as a = a (ulef t , uright ) (5.33) Since we have replaced the nonlinear a by a linear a , obviously, we should connect both somehow. Let us now put two conditions on a . 1. a (ulef t , uright ) = u if ulef t = uright = u 2. g = a u The rst condition is a simple consistency condition such that when the left and right states are the same, the approximate Riemann problem should get reduced to the actual Riemann problem. The second condition actually comes from the conservation condition G (U ) = AU for the vector conservation laws, modied for this scalar case for ux and conservative variable dierences here. More importantly, the second condition is actually the Rankine-Hugoniot condition or the jump condition across a discontinuity. Let us now select a such that both these conditions are satised. can be written as The second condition at the cell interface j + 1 2 gj +1 gj =a j + 1 2 uj +1 uj or gj +1 gj = a j + 1 (uj +1 uj )
2

(5.34)

(5.35)

Since this is the Rankine-Hugoniot condition, aj + 1 is actually the speed of a discontinuity, 2 which we can denote by s. The above condition does not distinguish between a left-moving and right-moving discontinuity. More importantly, the above condition does not give us an interface ux, gj + 1 . Therefore, let us split the speed of the discontinuity into two parts - a
2

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

82

CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

s s s+

j1 j1/2

j j+1/2

j+1

positive one representing the right-moving discontinuity and a negative one representing the left-moving discontinuity, as shown in the gure above. s = s+ + s = s + |s| s |s| + 2 2 (5.36)

Then, we can rewrite the second condition as gj + 1 gj = s (uj +1 uj )


2

(5.37) (5.38)

and gj +1 gj + 1 = s+ (uj +1 uj )
2

Since we denoted the wave speed by the speed of the discontinuity, we can write gj + 1 gj = a (uj +1 uj ) j+ 1
2 2

(5.39)

and + (uj +1 uj ) gj +1 gj + 1 = a j+ 1
2 2

(5.40)

Subtracting the equation (5.40) from (5.39), we get a 2gj + 1 = (gj + gj +1 ) + (uj +1 uj )( a + ) j+ 1 j+ 1
2 2 2

or Here

1 1 gj + 1 = (gj + gj +1 ) + ( + aj + 1 a 1 )(uj +1 uj ) j+ 2 2 2 2 2 1 ( a 1 |aj + 1 |) a 1 = j+ 2 2 2 j+ 2 1 1 1 1 a + a j + 1 |a j + 1 | a j + 1 |a 1| 1 a 1 = j+ 2 j+ 2 2 2 2 2 2 2 2 j+ 2 a a + = |aj + 1 | j+ 1 j+ 1


2 2 2

(5.41) (5.42)

(5.43)

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

5.2. APPROXIMATE RIEMANN SOLVER OF ROE gj + 1 =


2

83 (5.44)

1 1 (gj + gj +1 ) |a 1 | (uj +1 uj ) 2 2 j+ 2 1 1 (gj 1 + gj ) |a 1 | (uj uj 1 ) 2 2 j 2

Similarly, we can obtain gj 1 =


2

(5.45)

Now that we have an expression for the interface uxes, let us nd out the right value of the interface wave speed. For the Burgers equation a j + 1 =
2

1 2 1 2 uj 2 uj gj +1 gj = 2 = uj +1 uj uj +1 uj

1 2

(uj +1 uj ) (uj +1 + uj ) 1 = (uj + uj +1 ) uj +1 uj 2

(5.46)

Therefore, we have obtained an update formula for the approximate Riemann solver which satises the second condition. Let us now verify whether the wave speed so obtained satises the rst condition. 1 (5.47) a j + 1 = (uj + uj +1 ) 2 2 When uj = uj +1 = u, the above expression gives a j + 1 = u, which is the wave speed of 2 the original conservation law for the Burgers equation. Thus, the rst condition is also satised.

5.2.1

Entropy Fix for Roes Scheme


1 1 (gj + gj +1 ) j + 1 (uj +1 uj ) 2 2 2

Let us now rewrite the expression for the interface ux for Roes scheme as gj + 1 =
2

(5.48)

The rst term on the right hand side leads to the central discretization and the second term on the right hand side leads to the dissipation part. Therefore, j + 1 represents 2 the coecient of numerical diusion. Comparing with the actual expression we derived before, we can see that j + 1 = |aj + 1 | (5.49)
2 2

where aj + 1 is the wave-speed. Therefore, the numerical diusion varies linearly with the 2 wave-speed in Roes scheme. This creates a problem as the wave-speed goes to zero, as the numerical diusion also goes to zero! Such points where the wave-speed changes sign are called sonic points. Near sonic points, we are left with only central discretization, as the numerical diusion vanishes, and thus the numerical method does not respect the hyperbolicity. Therefore, Roes scheme produces an unphysical expansion shock instead of capturing an expansion fan. To correct this behaviour, a residual dissipation is usually introduced at the sonic points. This residual dissipation prevents the scheme from producing an expansion shock and the expansion fan is captured well because of its presence. Let us now, derive such a numerical dissipation x, called as the entropy x.

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 residual dissipation in this region, instead of letting the dissipation go to zero. Since the variation of dissipation with respect to the wave-speed is linear outside this region, the simplest way of doing this is to force a quadratic variation, by choosing the dissipation versus wave-speed curve to be a parabola instead of straight lines, as shown in the gure (5.1) below. Let us select the width of the small region in which the residual dissipation is to
j+1/2

/2 aj+1/2

Figure 5.1: Entropy Fix for Roes Scheme be forced to be of width on the wave-speed axis. Let us keep the residual dissipation in 1 the axis representing the coecient of numerical diusion, as . Assuming a parabolic 2 variation, we can write = k1 a2 + k2 a + k3 (5.50) where a is the wave-speed, k1 , k2 and k3 are constants and is the coecient of diusion. 1 Since the residual diusion is , we have the condition 2 1 (a = 0) = 2 Therefore 1 k3 = 2 and the equation of the parabola becomes 1 = k1 a2 + k2 a + 2 Now, we require a symmetrical variation of with respect to a. Therefore (a) = (a) or 1 1 k1 (a)2 + k2 (a) + = k1 a2 + k2 (a) + 2 2 (5.54) (5.51)

(5.52)

(5.53)

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

5.2. APPROXIMATE RIEMANN SOLVER OF ROE which gives k2 = 0 Therefore, the equation of the parabola becomes 1 = k1 a2 + 2

85

(5.55)

(5.56)

Let us now connect this parabola to the linear variation that we are starting back at a = | |. Therefore (a = ) = a and (a = ) = a (5.57) Therefore 1 k1 ( )2 + = 2 1 k1 (+ )2 + = 2 1 k1 2 = 2 or k1 = 1 2 (5.60) (5.58)

and

(5.59)

Both the above equations lead to

Therefore, the equation of the parabola becomes = or = a2 + 2 2 (5.61) 1 2 1 a + 2 2

Thus, we x the values of the numerical dissipation as a2 + 2 for aj + 1 < 2 = 2 1 = |a 1 | for a 1 j+ j+ j+


2 2 2

j + 1
2

(5.62)

The value of has to be xed by numerical experimentation so that the unphysical expansion shock given by Roes scheme is removed and the expansion fan is captured correctly.

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 equation with a B-G-K model and a suitably selected Maxwellian (equilibrium distribution) such that we get the right moments. Let us consider the 1-D case. The Boltzmann equation with the B-G-K model is f F f f +v = (5.63) t x tR Here, f is the molecular velocity distribution function, v is the molecular velocity and F is the Maxwellian distribution function. The Maxwellian (equilibrium) distribution is selected in such a way that we can get the right moments. u 2 F = u e (v 2 ) (5.64) The moments are u= f =

f dv = F =

F dv

(5.65)

and g (u) = vf =

vf dv = vF =

vF dv

(5.66)

Note that does not have any physical signicance here, as there is no energy equation (no pressure or temperature). just plays the role of a constant, which determines the shape of the equilibrium distribution. The Burgers equation can be recovered as a moment of the above Boltzmann equation, given by the following mathematical expression. f F f f +v = t x tR where f =

(5.67)

f dv

(5.68)

This approach is valid for recovering any scalar conservation law, as long as the Maxwellian (equilibrium) distribution is suitably dened. To recover the linear convection equation, the Maxwellian is given by 2 F = u e (vc) (5.69) We now use the splitting method to separate the linear convection term on the left hand side of the Boltzmann equation with the B-G-K model from the non-linear source term on the right hand side, leading to the following two steps as : Collision Step : F f df = (5.70) dt tR

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

5.3. KINETIC FLUX SPLITTING METHOD Convection Step :

87

f f +v =0 (5.71) t x To simplify further, we take the relaxation time tR in the collision step to be zero, thereby forcing instantaneous relaxation. This simplies the collision step to a relaxation step. Thus, we have two steps : Relaxation Step : f =F (5.72) Convection step : f f +v =0 (5.73) t x Therefore, all we have to do is to take the initial distribution function as a Maxwellian and 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 yield an upwind scheme for the scalar conservation equation. Let us now apply an upwind method to the above linear convection equation of the convection step. First, let us rewrite the above equation in conservative form as (vf ) f + =0 t x (5.74)

Note that molecular velocity v is not a function of the space coordinate x, as v changes only due to molecular collisions (the model we have used in Kinetic Theory is just free ow with collisions, the free ow being represented by the above equation). Let us now split the molecular velocity into a positive part and a negative part as v = v+ + v = Therefore, we obtain v + |v | v |v | + 2 2 (5.75)

f (v + + v ) f + =0 t x f (v + f ) (v f ) + + =0 (5.76) t x x Since we have separated the wave speed (v in this case) into positive and negative parts, we can now introduce upwind dierencing on a 3-point stencil of points [j 1, j, j + 1] as (v + f )j (v + f )j 1 (v f )j +1 (v f )j f + + =0 t x x (5.77)

Using a simple explicit Euler time-stepping to discretize the transient term and using an explicit discretization of the space terms, we obtain fjn+1 fjn (v + f )j (v + f )j 1 (v f )j +1 (v f )j + + =0 t x x
n n n n

(5.78)

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

88 or

CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

t n n n n v + f j v + f j 1 + v f j +1 v f j x n n Since we have fj = Fj from the Relaxation Step, the above equation becomes fjn+1 = fjn fjn+1 = Fjn t x v+F
n j

(5.79)

v+F

n j 1

+ vF

n j +1

vF

n j

(5.80)

Let us now take moments of the above upwind scheme so that we obtain an upwind scheme for the scalar conservation equation considered as fjn+1 = Fjn or fjn+1 = Fjn t x v+F
n j

t x

v+F

n j

v+F

n j 1

+ vF

n j +1

vF

n j

(5.81)

v+F

n j 1

vF

n j +1

vF

n j

(5.82)

By denition, f = F = u and vf = g . Therefore, the above equation becomes


+1 un = un j j

t x

+ + gj gj 1 + gj +1 gj

(5.83)

where g = vF are the split uxes. Let us evaluate the split uxes.

(5.84)

g+ = v+F =

v + |v | F dv 2

(5.85)

or g+ =
0

vF dv

(5.86)

since v is positive. Therefore

g =
0

u 2 vu e (v 2 ) dv
0

or

g = u
+

ve (v 2 ) dv

u 2

(5.87)

To evaluate this integral, let us use the substitution w= v u 2 (5.88)

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

5.3. KINETIC FLUX SPLITTING METHOD Therefore v= and

89

u 2

1 dv = dw since u is the mean the molecular velocity. The limits are : As v As v As v 0 w w

u w s where s = 2

Therefore

or

u w 2 1 w + dw g = u e s 2 u 1 w 2 2 + we dw + ew dw g = u s 2 s
+

(5.89)

Let us now evaluate the integrals in the above equation. I1 =


s

wew dw
2

(5.90)
2

0 s s

I1 =
0

wew dw + I1 =

wew dw

1 2 wew dw 2 0 where we have used the table of integrals supplied in the rst chapter. Let us use the change of variable as z = w2 ; therefore dz = 2wdw As w 0, z 0; as w s z s2 I1 = 1 2
s 0

1 2 2wdwew 2
2

1 1 s z e dz I1 = 2 2 0 1 1 s2 I1 = [ez ] 0 2 2 1 1 s2 I1 = e e0 2 2

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

90

CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS I1 = 1 1 s2 e 1 2 2 1 1 2 1 I1 = es + 2 2 2 (5.91)

1 2 I1 = es 2 Let us now evaluate the second integral.

Therefore

I2 =
s

ew dw
2

(5.92)
2

0 s s 0

I2 =
0

ew dw + 2
s

ew dw ew dw
2

I2 = I2 =

2 + ez dz where z = w 2 0 Let us now use the denition of the error function 2 erf (s) = Therefore
s 0

ew dw

(5.93)

I2 = + erf (s) 2 2 or I2 = [1 + erf (s)] 2 Therefore, the split ux expression becomes 1 s2 u + g = u e + {1 + erf (s)} 2 2 2 or where u g + = gA+ + B 2

(5.94)

(5.95)

1 + erf (s) 1 2 and B = es g = u2 , A+ = 2 2 Similarly, we can evaluate the negative split ux


0

(5.96)

g =

ve (v 2 ) dv
u

(5.97)

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

5.4. RELAXATION SCHEMES as u g = gA B 2 A = Note that here 1 erf (s) 2

91

(5.98)

where

(5.99) (5.100)

1 1 g = u2 and s = u 2 2 Both the split uxes can be written as u g = gA B 2

(5.101)

5.4

Relaxation Schemes
u g (u) 1 + = 0 where g (u) = u2 t x 2

Consider the Burgers equation (5.102)

The Relaxation System of Jin and Xin for the above conservation law is given by u v + =0 t x (5.103)

u 1 v + 2 = [v g (u)] where 0 (5.104) t x Equivalently, the diagonal form of the above Relaxation System leads to the discrete Boltzmann equation as (see chapter 1) f f F f + = with t x where f1 f2 1 1 2 u 2 v = 1 1 u+ v 2 2 0 0 0 (5.105)

f=

(5.106)

(5.107)

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

92 and

CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

F =

F1 F2

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

1 1 2 u 2 g (u) = 1 1 u + g (u) 2 2

(5.108)

5.4.1

Relaxation Scheme
u v + =0 t x

Let us now take the Relaxation System (5.109)

v u 1 + 2 = [v g (u)] (5.110) t x Thus, we have to solve two convection equations, one with a source term. The update formulae are +1 un un 1 j j n n vj (5.111) + 1 v 1 = 0 +2 j 2 t x and n+1 n vj vj 2 1 n (5.112) g un un + un = vj 1 j j j+ 1 2 2 t x Since the Relaxation System has two characteristic variables f1 and f2 which travel with the frozen characteristic speeds and , upwinding will be applied to these two characteristic variables, based on the characteristic speeds. Therefore f1,j + 1 = f1,j +1 for the characteristic speed
2

(5.113) (5.114) (5.115)

and f2,j + 1 = f2,j for the characteristic speed


2

Therefore and

1 1 1 1 uj + 1 vj + 1 = uj +1 vj +1 2 2 2 2 2 2

1 1 1 1 uj + 1 + v j + 1 = uj v j (5.116) 2 2 2 2 2 2 We now have two equations with two unknowns, namely, uj + 1 and vj + 1 . Solving these 2 2 two equations, we obtain uj + 1 =
2

1 1 (uj + uj +1 ) (vj +1 vj ) 2 2

(5.117)

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

5.4. RELAXATION SCHEMES and

93

1 (5.118) vj + 1 = (uj +1 uj ) + (vj + vj +1 ) 2 2 2 The expressions for uj 1 and vj 1 can be obtained from the above expressions by substi2 2 tuting j 1 for j . Substituting the above into the update equation, we obtain
+1 un = un j j

t t n n n n vj u 2un +1 vj 1 + j + uj 1 2x 2x j +1

(5.119)

and
n+1 n vj = vj

t n t n 2 t n n n uj +1 un vj +1 2vj + vj v j g un j 1 + 1 j 2x 2x

(5.120)

We can use the initial condition v (x, t = 0) = g {u (x, t = 0)}. For the value of , experiments have shown that any small value such that 104 will work. Jin and Xin used = 108 and this value is recommended for use. Alternatively, we can also develop a Relaxation Scheme by upwind dierencing the Discrete Boltzmann equation directly. Such a Discrete Kinetic Scheme is presented in the next section.

5.4.2

Discrete Kinetic Scheme


u g (u) 1 + = 0 with g (u) = u2 t x 2

Consider the 1-D Burgers equation (5.121)

The diagonal form of the Relaxation System for the above equation is the discrete Boltzmann equation, given by f f 1 + = [F f ] (5.122) t x where F is the Maxwellian dened by F1 F2 u g (u) 2 = 2 u g (u) + 2 2

F =

(5.123)

Let us now apply a splitting method for the discrete Boltzmann equation, obtaining a Relaxation Step as 1 df = [F f ] (5.124) dt and a Convection Step as f f + =0 (5.125) t x

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 relaxation), obtaining f = F as the Relaxation Step. Therefore, we just have to solve the two linear convection equations of the above Relaxation System f1 h1 + = 0 where h1 = f1 t x and (5.126)

f2 h2 + = 0 where h2 = f2 (5.127) t x with the constraints f1 = F1 and f2 = F2 . Let us now apply upwinding to the above two equations. The nite volume method applied to the above equations leads to n+1 = f n t hn 1 hn 1 f 1,j 1,j 1,j 2 x 1,j + 2 n+1 = f n t hn 1 hn 1 f 2,j 2,j 2,j 2 x 2,j + 2 We can obtain upwind uxes in the above two equations by using h1,j + 1 = h1,j +1 as wave speed is and information comes from right
2

(5.128) (5.129)

(5.130) (5.131) (5.132) (5.133)

h2,j + 1 = h2,j as wave speed is and information comes from left


2

Similarly, h1,j 1 = h1,j as wave speed is and information comes from right
2

h2,j 1 = h2,j 1 as wave speed is and information comes from left


2

The above scheme is the simpler Upwind Relaxation Scheme obtained as the Discrete Kinetic Scheme. The conserved variable can be obtained as a moment as +1 n+1 + f n+1 u n =f (5.134) j 1,j 2,j Let us now check what is obtained by such an Upwind Relaxation Scheme for the Burgers equation. By substituting the upwind uxes in the update formulae, we obtain
+1 n n n+1 + f n+1 t hn hn =f u n 1,j + h2,j h2,j 1 1,j 2,j j x 1,j +1

(5.135)

or
+1 u n =u n j j

t x

n n u n gj u n gj j +1 +1 j + 2 2 2 2

n n u n gj u n gj j j 1 1 + 2 2 2 2 (5.136)

t t n n n gj u j +1 2 un n (5.137) +1 gj 1 + j +u j 1 2x 2x Therefore, the upwind relaxed scheme leads to a central dierencing of the uxes plus a numerical dissipation term, with the coecient of numerical dissipation being proportional to the parameter introduced in the Relaxation System, .
+1 u n =u n j j

or

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 of Roe (which can capture steady discontinuities exactly, without numerical dissipation). Recently, Raghurama Rao and Balakrishna [52] developed a low dissipation Relaxation Scheme which can capture steady discontinuities exactly, like Roes scheme. That low dissipation Relaxation Scheme, named An Accurate Shock Capturing Algorithm with a Relaxation System (ASCARS) is described below. The two equations of the convection step are f1 f1 =0 t x f2 f2 + =0 t x which can be integrated over the nite volume to obtain n+1 = f n t hn 1 hn 1 f 1,j 1,j 1,j 2 x 1,j + 2 and n+1 = f n t hn 1 hn 1 f 2,j 2,j 2,j 2 x 2,j + 2 h1 = f1 , h2 = f2 and x = xj + 1 xj 1
2 2

(5.138)

and

(5.139)

(5.140)

(5.141) (5.142)

where The cell-integral averages are dened by 1 f 1,j = x and 1 f 2,j = x


xj + 1
2

f1 dx

(5.143)

xj 1

xj + 1
2

f2 dx

(5.144)

xj 1

We can dene the uxes at the cell interfaces as h1,j + 1 =


2

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

(5.145)

where d1,j + 1 is the diusive ux added to the central dierences represented by the rst 2 two terms on the right hand side. The general form of the diusive ux is 1 d1,j + 1 = 1,j + 1 f 1,j +1 f1,j 2 2 2 (5.146)

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

96

CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

Similarly, h2,j + 1 =
2

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

(5.147)

and

1 d2,j + 1 = 2,j + 1 f 2,j +1 f2,j 2 2 2

(5.148)

Here, 1,j + 1 and 2,j + 1 are the coecients of numerical diusion. 2 2 The basic idea of the new scheme, ASCARS, is to x the coecients of the numerical dissipation 1,j 1 and 2,j 1 in such a way that the resulting scheme satises the Rankine2 2 Hugoniot (jump) condition for the original non-linear conservation law. With this aim, we keep these coecients open, without xing their values, and substitute them in the ux expressions to obtain the update formulae as n+1 = f 1,j n + t f n n f 1,j 1,j +1 f1,j 1 2x + and n+1 = f 2,j n n n + t f f 2,j +1 f2,j 1 2,j 2x + t n n 1 f f 2,j 2x 2,j + 2 2,j +1 t n f n 1 f 2,j 1 2x 2,j 2 2,j (5.150) t n n 1 f f 1,j 2x 1,j + 2 1,j +1 t n f n 1 f 1,j 1 2x 1,j 2 1,j (5.149)

+1 n+1 n+1 n n Since un = f1 j ,j + f2,j , we obtain, after using the simplied relaxation step fj = Fj and the simplication 1,j 1 = 2,j 1 = j 1 , the following update formula.
2 2 2

+1 un = un j j

t n g n gj 1 2x j +1 (5.151)

t 1 un un j 2x j + 2 j +1 t n j 1 un j uj 1 2 2x

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

5.4. RELAXATION SCHEMES which can be rewritten as


+1 un = un j j

97

t n n g 1 gj 1 2 x j + 2

(5.152)

where gj + 1 =
2

1 1 [gj + gj +1 ] j + 1 [uj +1 uj ] 2 2 2

(5.153) (5.154)

and

1 1 [gj 1 + gj ] j 1 [uj uj 1 ] 2 2 2 2 With a little algebraic manipulation, we can rewrite the expression (5.153) as gj 1 =
+gj + 1 gj + j [uj +1 uj ] = 0 +1
2 2

+ gj +1 + gj + 1 + j [uj +1 uj ] +1
2 2

(5.155)

where
j = +1
2

2 Therefore, the expression for the ux can be split into the following two parts :
+ [uj +1 uj ] gj +1 gj + 1 = j +1
2 2

j + 1 |j + 1 |
2 2

(5.156)

(5.157) (5.158)

and
gj + 1 gj = j [uj +1 uj ] +1
2 2

Let us now compare the uxes in (5.157) and (5.158) with the uxes that satisfy RankineHugoniot condition. To derive such uxes satisfying the Rankine-Hugoniot condition, assume that there is a shock located between the grid points xj and xj +1 , moving with a speed sj + 1 . To distinguish the shock moving to the right from the shock moving to the 2 and a negative part s where left, we split the shock speed into a positive part s+ j+ 1 j+ 1
2 2

s = j+ 1
2

sj + 1 |sj + 1 |
2 2

(5.159)

The Rankine-Hugoniot condition (g = su) for the above two cases are given by (see [53]) gj +1 gj + 1 = s+ [uj +1 uj ] (5.160) j+ 1
2 2

and [uj +1 uj ] gj + 1 gj = s j+ 1
2 2

(5.161)

Comparing the expressions (5.157) and (5.158) with the Rankine-Hugoniot condition for the shock moving to the right (5.160) and left (5.161), we can x the coecients j as +1
2

+ j = s+ and j = s +1 +1 j+ 1 j+ 1
2 2 2 2

(5.162)

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

98

CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

from which we can obtain the expression for the coecient of numerical diusion as j + 1 = |sj + 1 |
2 2

(5.163)

Similarly, we can obtain the expression for the other coecient of numerical diusion as j 1 = |sj 1 |
2 2

(5.164)

For the scalar conservation law, dening the shock speed s by s= we obtain gj +1 gj if uj = uj +1 uj +1 uj g |j if uj = uj +1 u g u (5.165)

sj + 1 =
2

(5.166)

and

sj 1 =
2

gj gj 1 if uj = uj 1 uj uj 1 g |j if uj = uj 1 u

(5.167)

Therefore, the new Relaxation Scheme which satises the Rankine-Hugoniot condition is given by the following algorithm. n+1 = f n t hn 1 hn 1 f 1,j 1,j 1,j 2 x 1,j + 2 n+1 = f n t hn 1 hn 1 f 2,j 2,j 2,j 2 x 2,j + 2 h1 = f1 , h2 = f2 , x = xj + 1 xj 1
2

1 h1,j + 1 = [h1,j + h1,j +1 ] d1,j + 1 2 2 2 1 d1,j + 1 = 1,j + 1 f 1,j +1 f1,j 2 2 2 1 h2,j + 1 = [h2,j + h2,j +1 ] d2,j + 1 2 2 2 1 d2,j + 1 = 2,j + 1 f 2,j +1 f2,j 2 2 2

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

5.4. RELAXATION SCHEMES g g j +1 j | if u j = u j +1 | u u j +1 j = g j = u j +1 | |j if u u g g j j 1 | | if u j = u j 1 u u j j 1 = g j = u j 1 | |j if u u n+1 + f n+1 u n+1 = f


j 1,j 2,j

99

j + 1

(5.168)

j 1

This low dissipation Relaxation Scheme (ASCARS) for a scalar conservation law, in the nal analysis, is equivalent to the approximate Riemann solver of Roe, though the implementation is dierent, as well as the linearisation. The coecient of numerical dissipation, j 1 is linearly proportional to the numerical wave-speed and thus the dissipation 2 goes to zero when the wave-speed goes to zero. This happens near the sonic points where the wave-speed changes sign. Since zero dissipation leads to the violation of the entropy condition, we modify the coecient of numerical diusion by forcing a quadratic variation instead of a linear variation and by keeping a residual dissipation near the sonic points, as done to the Roes scheme by an entropy x. Note that this is the entropy x of Harten (see [35] for details).

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

100

CHAPTER 5. UPWIND METHODS FOR SCALAR CONSERVATION LAWS

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

Bibliography
[1] Anderson, J.D., Modern Compressible Flows : MacGraw-Hill, 1990. With Historical Perspective,

[2] K.F. Riley, M.P. Hobson and S.J. Bence, Mathematical Methods for Physics and Engineering, Cambridge University Press, 1998. [3] J.D. Homann, 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, Rareed 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, Physical Review, 94, pp. 511-???, 1954. [8] S. Jin and Z. Xin, The Relaxation Schemes for Systems of Conservation Laws in Arbitrary Space Dimensions, Communications in Pure and Applied Mathematics, vol. 48, pp. 235276, 1995. [9] R. Natalini, A Discrete Kinetic Approximation of Entropy Solutions to Multidimensional Scalar Conservation Laws, Journal of Dierential Equations, vol. 148, pp. 292317, 1999. [10] D. Aregba-Driollet and R. Natalini, Discrete Kinetic Schemes for Multidimensional Systems of Conservation Laws, SIAM Journal of Numerical Analysis, vol. 37, no. 6, pp. 19732004, 2000. [11] R. Natalini, Recent mathematical results on hyperbolic relaxation problems, Analysis of systems of conservation laws, Pitman Research Notes in Mathematics Series, Longman, Harlow, 1998. 101

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 computation, Communications in Pure and Applied Mathematics, 7, pp.159-193, 1954. [14] P.D. Lax and B. Wendro, Systems of conservation laws, Communications in Pure and Applied Mathematics, 13, pp. 217-237, 1960. [15] R.W. MacCormack, The eect of Viscosity in Hypervelocity Impact Cretaring, AIAA Paper No. AIAA-69-0354. [16] A. Jameson, W. Schmidt and E. Turkel, Numerical Solution of Euler Equations by Finite Volume Methods Using Runge-Kutta Time Stepping Schemes, AIAA Paper no. AIAA-81-1259. [17] S.K. Godunov, Schemes, AIAA Paper no. AIAA-81-1259, A Dierence Scheme for Numerical Computation of Discontinuous Solutions of Hydrodynamic Equations, Math. Sbornik, 47, pp. 271-306, 1959. English translation in U.S. Joint Publications Research Service, JPRS 7226, 1969. [18] P.L. Roe, Approximate Riemann Solvers, Parameter Vectors and Dierence Schemes, Journal of Computational Physics, 43, pp. 357-372, 1981. [19] S. Osher and F. Solomon, Upwind Dierence Schemes fo Hyperbolic Systems of Equations, Mathematics of Computation, 38, pp. 339-374, 1982. [20] R.H. Sanders and K.H. Prendergast, The Possible Relation of the 3-KILOPARSEC Arm 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 the Boltzmann Equation, Journal of Computational Physics, 42, 108, 1981. [23] S.M. Deshpande, Kinetic Theory based New Upwind Methods for Inviscid Compressible 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 Method for Inviscid Compressible Flows, Computational Fluid Dynamics Journal, 3, 4, 415, 1995.

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 solvers for general pressure laws in uid dynamics, SIAM Journal of Numerical Analysis, 35, 6, pp. 2223-2249, 1998. [28] Meng Sing Liou and C.J. Steen, A New Flux Splitting Scheme, Journal of Computational Physics, 107, pp.23-39, 1993. [29] F. Coquel and Meng Sing Liou, Hybrid Upwind Splitting (HUS) by a eld-by-eld decomposition, NASA TM-106843, Icomp-95-2, 1995. [30] A. Jameson, Analysis and Design of Upwind Schemes for Gas Dynamics II : Articial Diusion and Discrete Shock Structure, International Journal of Computational Fluid Dynamics, v, pp. 171-218, 1995. [31] C. Hirsch, Numerical Computation of Internal and External Flows, Vol. 1: Fundamentals of Numerical Discretization, John Wiley & Sons, 1988. [32] C. Hirsch, Numerical Computation of Internal and External Flows, Vol. 2: Computational Methods for Inviscid and Viscous Flows, John Wiley & Sons, 1990. [33] R.D. Richtmyer and K.W. Morton, Dierence 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 Practical Introduction, 2nd Edition, Springer, 1999. [35] Culbert B. Laney, Computational Gasdynamics, Cambridge University Press, 1998. [36] S.M. Deshpande, Kinetic Flux Splitting Schemes, Computational Fluid Dynamics Review 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 of Conservation Laws, Applied Mathematics Series 118, SpringerVerlag, 1996. [38] Quirk, A contribution to the great Riemann solver debate, International Journal of Numerical Methods in Fluids, vol. 18, pp. 555-574, 1994. [39] S. Jin, RungeKutta Methods for Hyperbolic Conservation Laws with Sti Relaxation Terms, Journal of Computational Physics, vol. 122, pp. 5167, 1995.

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

104

BIBLIOGRAPHY

[40] R.J. Leveque ad M. Pelanti, A Class of Approximate Riemann Solvers and Their Relation to Relaxation Schemes, Journal of Computational Physics, 172, pp. 572-59. 2001. [41] S. Balasubramanyam, A New GridFree Upwind Relaxation Scheme for Compressible Flows, M.Sc.(Engg.) thesis, Department of Aerospace Engineering, Indian Institute of Science, Bangalore, India, 2002. [42] A.K. Ghosh and S.M. Deshpande, Least Squares Kinetic Upwind Method for Inviscid Compressible Flows, AIAA paper, 95-1735, 1995. [43] S. Balasubramanyam and S.V. Raghurama Rao, A New Grid Free Relaxation Scheme for Euler Equations, Fluid Mechanics Report No: 2001 FM 07, Dept. of Aerospace Engg., IISc, Bangalore. [44] S. Balasubramanyam and S.V. Raghurama Rao, A New Grid Free Relaxation Scheme for 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 Scheme for Conservation Laws, 2nd International Conference on Computational Fluid Dynamics, July 2002 , Sydney, Australia (accepted for presentation and the full paper to be published by Springer). [46] S.V. Raghurama Rao and Sachin Khosla, A New Unsplit Relaxation Scheme for Hyperbolic Conservation Laws, Fluid Mechanics report, Department of Aerospace Engineering, Indian Institute of Science, Bangalore, India, 2002. [47] S.V. Raghuramarao and Sachin Khosla, An Unsplit Relaxation Scheme for Hyperbolic Conservation Laws, 2nd International Conference on Computational Fluid Dynamics, July 2002, Sydney, Australia (accepted for presentation and proceedings to be published by Springer). [48] M.V. Subba Rao and S.V. Raghurama Rao, Method of Interpolation with a Relaxation Approximation for Conservation Laws (MIRACL), in preparation. [49] R. Leveque, Nonlinear Conservation Laws and Finite Volume Methods for Astrophysical Fluid Flow, in Computational Methods for Astrophysical Fluid Flow, R. J. Leveque, D. Mihalas, E. Dor,and E. Mueller, 27th Saas-Fee Advanced Course Lecture Notes, Edited by O. Steiner and A. Gautschy, Springer-Verlag, 1998. [50] G. Strang, On the Construction and Comparison of Dierence Schemes, SIAM Journal of Numerical Analysis, No. 5, pp. 506-571, 1968.

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

BIBLIOGRAPHY

105

[51] B. Manoj Kumar, S.V. Raghurama Rao R. Balasubramanian S.M. Deshpande, Kinetic Flux Vector Splitting for NavierStokes equatons based on ChapmanEnskog distribution, 97 FM 9, Fluid Mechanics reports, Department of Aerospace Engineering, Indian Institute of Science, Bangalore, India, 1997. [52] S.V. Raghurama Rao and K. Balakrishna, An Accurate Shock Capturing Algorithm with a Relaxation System for Hyperbolic Conservation Laws, AIAA Paper No. AIAA2003-4145, 2003. [53] J.C. Tannehil, D.A. Anderson and R.H. Pletcher, Computational Fluid Mechanics and Heat Transfer, 2nd edition, Taylor & Francis, 1997. [54] Dominic Denver John Chander, S.V. Raghurama Rao and S.M. Deshpande, A One Point Shock Capturing Kinetic Scheme for Hyperbolic Conservation Laws, Fluid Mechanics Report No. 2004 FM ??, Department of Aerospace Engineering, Indian Institute of Science, Bangalore, India, 2004. [55] Meng-Sing Liou and Steen, A New Flux Splitting Method, Journal of Computational Physics, vol. , pp. , . [56] J.L. Steger and F.F. Warming, Flux Vector Splitting of the Inviscid Gas Dynamics Equations with Applications to Finite Dierence Methods, Journal of Computational Physics, 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.

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