Runge–Kutta characteristic methods for first-order linear hyperbolic equations

45
Runge Kutta Characteristic Methods for First-Order Linear Hyperbolic Equations Hong Wang, 1 Mohamed Al Lawatia, 1 Aleksey S. Telyakovskiy 2 1 Department of Mathematics University of South Carolina Columbia, South Carolina 29208 2 Department of Mathematics University of Wyoming Laramie, Wyoming, 82071 Received January 17, 1997; accepted June 9, 1997 We develop two RungeKutta characteristic methods for the solution of the initial-boundary value problems for first-order linear hyperbolic equations. One of the methods is based on a backtracking of the charac- teristics, while the other is based on forward tracking. The derived schemes naturally incorporate inflow boundary conditions into their formulations and do not need any artificial outflow boundary condition. They are fully mass conservative and can be viewed as higher-order time integration schemes improved over the ELLAM (EulerianLagrangian localized adjoint method) method developed previously. Moreover, they have regularly structured, well-conditioned, symmetric, and positive-definite coefficient matrices. Exten- sive numerical results are presented to compare the performance of these methods with many well studied and widely used methods, including the PetrovGalerkin methods, the streamline diffusion methods, the continuous and discontinuous Galerkin methods, the MUSCL, and the ENO schemes. The numerical ex- periments also verify the optimal-order convergence rates of the RungeKutta methods developed in this article. c 1997 John Wiley & Sons, Inc. Numer Methods Partial Differential Eq 13: 617661, 1997 Keywords: characteristic methods; EulerianLagrangian methods; numerical solution of f irst-order hyper- bolic equations; RungKutta methods I. INTRODUCTION First-order linear hyperbolic partial differential equations arise in the modeling of fluid dynam- ics, gas dynamics, enhanced oil recovery, seismic, and many other important applications. The solutions of these equations often present steep fronts or even shock discontinuities, which need Correspondence to: Hong Wang Contract grant sponsor: DOE and ONR Contract grant numbers: DE-FG05-95ER25266 and N00014-94-1-1163 c 1997 John Wiley & Sons, Inc. CCC 0749-159X/97/060617-45

Transcript of Runge–Kutta characteristic methods for first-order linear hyperbolic equations

Runge Kutta Characteristic Methods forFirst-Order Linear Hyperbolic EquationsHong Wang,1 Mohamed Al Lawatia,1 Aleksey S. Telyakovskiy2

1Department of MathematicsUniversity of South CarolinaColumbia, South Carolina 29208

2Department of MathematicsUniversity of WyomingLaramie, Wyoming, 82071

Received January 17, 1997; accepted June 9, 1997

We develop two Runge–Kutta characteristic methods for the solution of the initial-boundary value problemsfor first-order linear hyperbolic equations. One of the methods is based on a backtracking of the charac-teristics, while the other is based on forward tracking. The derived schemes naturally incorporate inflowboundary conditions into their formulations and do not need any artificial outflow boundary condition. Theyare fully mass conservative and can be viewed as higher-order time integration schemes improved over theELLAM (Eulerian–Lagrangian localized adjoint method) method developed previously. Moreover, theyhave regularly structured, well-conditioned, symmetric, and positive-definite coefficient matrices. Exten-sive numerical results are presented to compare the performance of these methods with many well studiedand widely used methods, including the Petrov–Galerkin methods, the streamline diffusion methods, thecontinuous and discontinuous Galerkin methods, the MUSCL, and the ENO schemes. The numerical ex-periments also verify the optimal-order convergence rates of the Runge–Kutta methods developed in thisarticle. c© 1997 John Wiley & Sons, Inc. Numer Methods Partial Differential Eq 13: 617–661, 1997

Keywords: characteristic methods; Eulerian–Lagrangian methods; numerical solution of f irst-order hyper-bolic equations; Rung–Kutta methods

I. INTRODUCTION

First-order linear hyperbolic partial differential equations arise in the modeling of fluid dynam-ics, gas dynamics, enhanced oil recovery, seismic, and many other important applications. Thesolutions of these equations often present steep fronts or even shock discontinuities, which need

Correspondence to: Hong WangContract grant sponsor: DOE and ONRContract grant numbers: DE-FG05-95ER25266 and N00014-94-1-1163c© 1997 John Wiley & Sons, Inc. CCC 0749-159X/97/060617-45

618 WANG, AL LAWATIA, AND TELYAKOVSKIY

to be resolved accurately in practice. However, the numerical simulation of these equations isplagued with severe difficulties. Space-centered finite difference and finite element methodsusually generate numerical solutions with nonphysical undershoot and overshoot about the truesolutions, unless the underlying grid is impractically refined, which is not a feasible alternativedue to the excessive computational requirements. Classical upwind or artificial viscosity meth-ods greatly reduce these oscillations, but introduce considerable numerical dispersion and yieldnumerical solutions with serious over-damping that smears out important information along thesteep fronts of the solutions, where complex and important chemistry and physics take place[1, 2].

Extensive research has been conducted to develop numerical methods that can overcome thesedifficulties and generate accurate numerical solutions with reasonable computational effort. Twogeneral classes of approximations can be identified from the literature. The first is the classof Eulerian methods, while the second is the class of characteristic methods. Eulerian methodsuse fixed grids without using characteristic tracking, and are relatively easy to formulate andimplement. Included in this class are the optimal test function methods [3–5]. These methodsattempt to minimize the error in approximating spatial derivatives and yield an upstream biasin the resulting numerical schemes. While they generally work well for steady state advection-dominated problems, they tend to be ineffective for unsteady transport equations, since they aresusceptible to time truncation errors that introduce excessive numerical dispersion. Also includedin the class of Eulerian methods are the Petrov–Galerkin finite element methods [6–8], whichattempt to reduce the overall truncation error by using the temporal error to cancel the spa-tial error.

Among the class of Eulerian methods are the streamline diffusion finite element method(SDM) [9–12], and the continuous and discontinuous Galerkin finite element methods (CGM andDGM) [13–15]. The SDM method uses space–time piecewise-polynomial trial and test functionsover a space–time domain (the spatial domain × the current time interval), and adds numericaldispersion only in the direction of the characteristics (streamlines) to suppress oscillations withoutintroducing any cross-wind dispersion. However, the SDM contains an undetermined parameterin the test functions that needs to be chosen very carefully to obtain accurate numerical results.If the parameter chosen is too small, the numerical solutions might exhibit oscillations. On theother hand, if it is too large the SDM introduces excessive numerical dispersion and smears thenumerical solutions. An optimal choice of the parameter is not clear and problem-dependent.Moreover, the SDM usually has more degrees of freedom than other Eulerian or characteristicmethods. For example, when piecewise-linear functions are used, the number of unknowns inthe SDM is roughly twice as many as that in other methods. The CGM and DGM are definedelement-wise on the space–time domain. In these methods one needs to solve only a locallinear system on each element (whose order is equal to the degrees of freedom on the element).These methods can be viewed as a high-order upwind discretization of advection term, and areclosely related to the SDM. The SDM, CGM, and DGM methods exhibit correct (hyperbolic)domain of dependence properties as the diameter of the space–time partition tends to zero withouttracking characteristics. However, in the CGM and DGM methods, the sides of all the space–timeelements have to be kept away from the characteristic direction by a certain angle, which couldcause considerable complexities in practice since the velocity field could be fairly complicated.

Moreover, the numerical methods from computational fluid dynamics, including the Godunovmethods, the total variation diminishing (TVD) method, the essentially nonoscillatory (ENO)method, and other high resolution methods [16–25], are also in the class of Eulerian methods.These methods are well suited for the solution of nonlinear hyperbolic equations (e.g., conserva-tion laws, Euler equations) and resolve shock discontinuities in the solutions without excessive

RUNGE KUTTA CHARACTERISTIC METHODS 619

smearing or spurious oscillations. Since most of these methods are explicit, they are typicallysubject to the CFL condition.

The second general class of numerical methods in the approximation to advection-dominatedequations is the class of characteristic methods. Because of the hyperbolic nature of advectivetransport, characteristic analysis has been widely utilized in designing numerical methods forhyperbolic equations and has led to many related approximation techniques, including the methodof characteristics [26, 27], the characteristic Galerkin method [28], the Eulerian–Lagrangianmethod [29], the transport-diffusion method [30], the modified method of characteristics [2, 31],the operator-splitting method [32, 33], and the Lagrangian–Galerkin method [34]. In characteristicmethods the governing equations are rewritten in the Lagrangian coordinates by combining theadvection term with the temporal derivative, so the corresponding discretization of the governingequations in the characteristics (instead of in the temporal direction as in the Eulerian methods)significantly reduces the temporal truncation errors and yields accurate numerical solutions evenif large time steps are used, and eases the restrictions of the CFL conditions in the Eulerianmethods. The principal drawback of many characteristic methods is that they fail to conservemass and that they might not treat boundary conditions in a physically reasonable way, which areof essential importance in many applications.

The Eulerian–Lagrangian localized adjoint method (ELLAM), which was first proposed byCelia et al. for one-dimensional constant-coefficient advection–diffusion equations [35], pro-vides a consistent framework for solving advection-dominated equations with general boundaryconditions in a mass conservative manner. Various ELLAM schemes were then developed forone-dimensional linear and nonlinear advection–diffusion equations [36–42]. Ewing and Wangdeveloped and analyzed ELLAM schemes for first-order linear hyperbolic equations with aninitial condition and an inflow boundary condition [43–47]. In [48] Russell and Trujillo devel-oped multidimensional ELLAM schemes and addressed various related issues. In [47] Wangdeveloped an ELLAM simulator for two-dimensional advection–dispersion equations by com-bining forward and backward tracking algorithms and proved optimal-order error estimates forthe derived schemes [47]. Some of the results were reported in [44, 45, 47]. Binning andCelia developed a backtracked finite-volume ELLAM formulation for unsaturated transport intwo dimensions [49, 50]. Celia also explored the development of an ELLAM scheme for three-dimensional advection–dispersion equations. The two-dimensional numerical comparison ofELLAM schemes with many other widely used methods can be found in [51, 52]. A different butrelated method for advection–diffusion equations is the ‘‘characteristic-mixed finite-element’’method of Arbogast and Wheeler [53], which uses piecewise-constant space–time test functions.As with the standard mixed method, a coupled system results for both the concentration and thediffusive flux.

Because characteristic methods (including the ELLAM methods and the characteristic mixedfinite element method) usually require extra implementational effort and raise many implemen-tational and analytical issues that need to be addressed, they have traditionally been developedwith the backward-Euler discretization in characteristics, due to its simplicity and stability. Con-sequently, the derived schemes are only first-order accurate in time (or characteristic direction).In this article we develop two Runge–Kutta characteristic methods for the solution of the initial-boundary value problems for first-order linear hyperbolic equations. One of the methods is basedon a backtracking of the characteristics, while the other is based on a forward tracking. The derivedmethods naturally incorporate inflow boundary conditions into their formulations and do not needany artificial outflow boundary conditions. They are fully mass conservative and have higher-order convergence rates compared with many existing characteristic methods. Moreover, theyhave regularly structured (tridiagonal for one-dimensional problems), well-conditioned, symmet-

620 WANG, AL LAWATIA, AND TELYAKOVSKIY

ric, and positive-definite coefficient matrices. Thus, the discrete algebraic systems can be solvedvery efficiently by the Thomas algorithm for one-dimensional problems and by standard iterativemethods such as the conjugate gradient method for multidimensional problems without using anypreconditioners. These methods can be viewed as higher-order time integration schemes of theELLAM schemes developed previously [43–47]. Extensive numerical results are presented tocompare the performance of the Runge–Kutta methods with many well studied and widely usedmethods, which demonstrate the strong promise of these methods. The numerical results alsoverify the optimal-order convergence rates of the Runge–Kutta characteristic methods developedin this article.

The remainder of this article is organized as follows. In Section II, we derive a genericRunge–Kutta variational formulation based on an exact tracking of the characteristics. In SectionsIII and IV, we develop backtracked and forward-tracked Runge–Kutta characteristic methods,respectively. In Section V we outline a multidimensional generalization. In Section VI we brieflyrecall some other widely used numerical methods for first-order linear hyperbolic equations. InSection VII we perform extensive numerical experiments to compare the performance and theconvergence rates of these schemes with many well studied and widely used methods, includingthe Galerkin and Petrov–Galerkin finite element methods, the streamline diffusion finite elementmethods, the continuous and discontinuous Galerkin methods, the monotonic upstream-centeredscheme for conservation laws (MUSCL) scheme, the essentially nonoscillatory (ENO) scheme,and the ELLAM schemes. Section VIII contains discussion and conclusions.

II. SPACE–TIME VARIATIONAL FORMULATION

For simplicity of exposition, in most parts of the article we consider the following initial-boundaryvalue problem for a first-order linear hyperbolic equation in one space dimension:

Lu ≡ ut + (V (x, t)u)x +K(x, t)u = f(x, t), x ∈ (a, b), t ∈ (0, T ),u(a, t) = g(t), t ∈ (0, T ),u(x, 0) = u0(x), x ∈ [a, b], (2.1)

where V (x, t) is a velocity field and K(x, t) is a reaction coefficient. Without loss of generality,V (a, t) and V (b, t) are assumed positive, so x = a and x = b are the inflow and outflowboundaries, respectively. In Section V we will consider a multidimensional analogue of problem(2.1). We remind the readers that problem (2.1) contains only an inflow boundary condition andan initial condition, which is well posed mathematically and reasonable physically. However,problem (2.1) causes difficulties in numerical simulation, because many numerical schemes needan artificial outflow boundary condition to close the system. How to choose an appropriateartificial outflow boundary condition is not clear in general and is often problem dependent.In contrast, the numerical methods developed in this article incorporate the inflow boundarycondition in a systematic way and do not need any artificial outflow boundary condition at all.

Let I and N be two positive integers. We define a space-time partition

0 = t0 < t1 < · · · < tN−1 < tN = T,

a = xn0 < xn1 < · · · < xnI−1 < xnI = b, n = 0, 1, . . . , N. (2.2)

Here the superscript n indicates that the spatial partition may depend on the time level tn. Thisdependence allows us to re-mesh at certain time levels if it is desired. The numerical procedure

RUNGE KUTTA CHARACTERISTIC METHODS 621

uses a time-marching algorithm. Thus, one only needs to focus on the current time interval[tn−1, tn]. For simplicity we drop the superscript n in the notation xni .

Multiplying Eq. (2.1) by continuous and piecewise-smooth space–time test functions w thatvanish outside [a, b]× (tn−1, tn] and are discontinuous in time at time tn−1, and then integratingthe equation over (a, b)× (0, T ), one obtains a space–time variational formulation∫ b

a

u(x, tn)w(x, tn)dx+∫ tn

tn−1

u(b, t)w(b, t)V (b, t)dt−∫ tn

tn−1

∫ b

a

u(wt + V wx −Kw)dxdt

=∫ b

a

u(x, tn−1)w(x, t+n−1)dx+∫ tn

tn−1

∫ b

a

fwdxdt+∫ tn

tn−1

g(t)w(a, t)V (a, t)dt, (2.3)

where w(x, t+n−1) = limt→t+n−1

w(x, t) because w(x, t) is discontinuous at time tn−1.

To eliminate the last term on the left-hand side of Eq. (2.3), we require the test functions w tosatisfy the adjoint equation of (2.1):

L∗w ≡ −wt(x, t)− V (x, t)wx(x, t) +K(x, t)w(x, t) = 0. (2.4)

To expose this condition, we first look at the characteristics of Eq. (2.1). Given a point (x, t)with t ∈ [tn−1, tn], the characteristic X(θ; x, t) passing through (x, t) is determined by theinitial-value problem

dX

dθ= V (X, θ)

X(θ; x, t)|θ=t = x. (2.5)

Then Eq. (2.4) is rewritten

− d

dθw(X(θ; x, t), θ) +K(X(θ; x, t), θ)w(X(θ; x, t), θ) = 0,

w(X(θ; x, t), θ)|θ=t = w(x, t), (2.6)

leading to the following expression for the test functions w:

w(X(θ; x, t), θ) = w(x, t)e−∫ tθK(X(γ;x,t ),γ)dγ

. (2.7)

In Eqs. (2.6) and (2.7) the point (x, t) is either at time tn or at the space-time outflow boundaryΓ(O)n = (b, s)|s ∈ [tn−1, tn]. For any point at time tn, i.e., (x, t) = (x, tn) with x ∈ [a, b], we

define the test functionsw by backtracking the characteristicsX(θ; x, t) from θ = tn to θ = tn−1,with an exception near the inflow boundary where we backtrack the characteristicsX(θ; x, t) fromθ = tn untilX(θ; x, t) intersects the space–time inflow boundary Γ(I)

n = (a, s)|s ∈ [tn−1, tn].More precisely, we say that θ ∈ [t∗(x), tn], where t∗(x) refers to the time when the characteristicX(θ;x, tn) backtracks to the inflow boundary Γ(I)

n (i.e., X(t∗(x);x, tn) = a) and t∗(x) = tn−1

otherwise. For any point at the space–time outflow boundary Γ(O)n , i.e., (x, t) = (b, t) ∈ Γ(O)

n ,we track the characteristics X(θ; b, t) from the point (b, t) at time θ = t to θ = tn−1. Namely,θ ∈ [tn−1, t]. Thus, once the test functions w(x, t) are defined at time tn and at the outflowboundary Γ(O)

n , they are determined completely inside the domain [a, b]× [tn−1, tn] by Eq. (2.7).

622 WANG, AL LAWATIA, AND TELYAKOVSKIY

III. BACKTRACKED RUNGE–KUTTA CHARACTERISTIC (BRKC) SCHEME

A. Derivation of a Backtracked Reference Equation

Using the variational formulation (2.3) and the test functions w in (2.7), we now derive a back-tracked reference equation satisfied by the exact solution u of Eq. (2.1). To avoid confusion,we replace the dummy variable x by y in the first term on the right-hand side of Eq. (2.3).Let x and x∗ be the points at time tn and tn−1, respectively, such that x = X(tn−1; x, tn) andx∗ = X(tn−1;x, tn). For y ∈ [a, b∗] and y ∈ [b∗, b] at time tn−1, one has y = X(tn−1;x, tn) fora unique x ∈ [a, b] and y = X(tn−1; b, t) for a unique t in [tn−1, tn]. We split the first term onthe right-hand side of Eq. (2.1) as an integral on [a, b∗] and one on [b∗, b] at time tn−1, translatethe first integral to [a, b] at time tn and the second one to [tn−1, tn] at x = b, and obtain thefollowing equation:∫ b

a

u(y, tn−1)w(y, t+n−1)dy

=∫ b∗

a

u(y, tn−1)w(y, t+n−1)dy +∫ b

b∗u(y, tn−1)w(y, t+n−1)dy

=∫ b

a

Ψ(1)(tn−1;x, tn)u(x∗, tn−1)w(x, tn)dx

+∫ tn

tn−1

Ψ(2)(tn−1; b, t)u(b∗(t), tn−1)w(b, t)dt, (3.1)

where b∗(t) = X(tn−1; b, t),Ψ(1)(θ;x, tn) and Ψ(2)(θ; b, t) are

Ψ(1)(θ;x, tn) = Xx(θ;x, tn)e−∫ tnθ

K(X(γ;x,tn),γ)dγ

Ψ(2)(θ; b, t) = −Xt(θ; b, t)e−∫ tθK(X(γ;b,t),γ)dγ

. (3.2)

We can similarly evaluate the second term on the right-hand side of Eq. (2.3). We firstsubstitute y and θ for the dummy variables x and t in this term. Notice that y ∈ [a,X(θ; b, tn)]and y ∈ [X(θ; b, tn), b] at time θ ∈ [tn−1, tn] can be written as y = X(θ;x, tn) for a uniquex ∈ [a, b] and y = X(θ; b, t) for a unique t in [θ, tn]. We split this integral in the following way:∫ tn

tn−1

∫ b

a

f(y, θ)w(y, θ)dydθ

=∫ tn

tn−1

∫ X(θa,tn)

a

f(y, θ)w(y, θ)dydθ +∫ tn

tn−1

∫ X(θ;b,tn)

X(θa,tn)f(y, θ)w(y, θ)dydθ

+∫ tn

tn−1

∫ b

X(θ;b,tn)f(y, θ)w(y, θ)dydθ. (3.3)

We apply the trapezoidal rule to evaluate the second term∫ tn

tn−1

∫ X(θ;b,tn)

X(θ;a,tn)f(y, θ)w(y, θ)dydθ

=∫ b

a

∫ tn

tn−1

Ψ(1)(θ;x, tn)f(X(θ;x, tn), θ)w(x, tn)dθdx

RUNGE KUTTA CHARACTERISTIC METHODS 623

=∫ b

a

∆t2f(x, tn)w(x, tn)dx

+∫ b

a

∆t2

Ψ(1)(tn−1;x, tn)f(x∗, tn−1)w(x, tn)dx+R2(f, w), (3.4)

where ∆t = tn − tn−1 and R2(f, w) is

R2(f, w) =∫ b

a

w(x, tn)∫ tn

tn−1

(θ − tn)(θ − tn−1)2

× [f(X(θ;x, tn), θ)Ψ(1)(θ;x, tn)]θθdθdx. (3.5)

We interchange the order of integration in the first term on the right-hand side of Eq. (3.3) andapply the trapezoidal rule to the inner integral along the characteristics, leading to the followingequation: ∫ tn

tn−1

∫ X(θ;a,tn)

a

f(y, θ)w(y, θ)dydθ

=∫ a

a

∫ tn

t∗(x)Ψ(1)(θ;x, tn)f(X(θ;x, tn), θ)w(x, tn)dθdx

=∫ a

a

∆t(x)2

f(x, tn)w(x, tn)dx

+∫ a

a

∆t(x)2

Ψ(1)(t∗(x);x, tn)f(a, t∗(x))w(x, tn)dx+R1(f, w), (3.6)

where ∆t(x) = ∆t for x ≥ a and ∆t(x) = tn− t∗(x) otherwise, with t∗(x) being defined below(2.7). R1(f, w) is given by

R1(f, w) =∫ a

a

w(x, tn)∫ tn

t∗(x)

(θ − tn)(θ − t∗(x))2

× [f(X(θ;x, tn), θ)Ψ(1)(θ;x, tn)]θθdθdx. (3.7)

We can similarly treat the third term in Eq. (3.3) and obtain∫ tn

tn−1

∫ b

X(θ;b,tn)f(y, θ)w(y, θ)dydθ

=∫ tn

tn−1

∫ t

tn−1

Ψ(2)(θ; b, t)f(X(θ; b, t), θ)w(b, t)dθdt

=∫ tn

tn−1

(t− tn−1)2

f(b, t)w(b, t)V (b, t)dt

+∫ tn

tn−1

(t− tn−1)2

Ψ(2)(tn−1; b, t)f(X(tn−1; b, t), tn−1)w(b, t)dt+R3(f, w), (3.8)

with

R3(f, w) =∫ tn

tn−1

w(b, t)∫ t

tn−1

(θ − t)(θ − tn−1)2

[f(X(θ; b, t), θ)Ψ(2)(θ; b, t)]θθdθdt. (3.9)

624 WANG, AL LAWATIA, AND TELYAKOVSKIY

Incorporating (3.1)–(3.9) into Eq. (2.3), we obtain a backtracked reference equation

∫ b

a

u(x, tn)w(x, tn)dx+∫ tn

tn−1

u(b, t)w(b, t)V (b, t)dt

=∫ b

a

Ψ(1)(tn−1;x, tn)u(x∗, tn−1)w(x, tn)dx

+∫ tn

tn−1

Ψ(2)(tn−1; b, t)u(b∗(t), tn−1)w(b, t)dt

+∫ b

a

∆t(x)2

f(x, tn)w(x, tn)dx+∫ tn

tn−1

(t− tn−1)2

f(b, t)w(b, t)V (b, t)dt

+∫ tn

tn−1

(t− tn−1)2

Ψ(2)(tn−1; b, t)f(b∗(t), tn−1)w(b, t)dt

+∫ tn

tn−1

g(t)w(a, t)V (a, t)dt+∫ b

a

∆t2

Ψ(1)(tn−1;x, tn)f(x∗, tn−1)w(x, tn)dx

+∫ a

a

∆t(x)2

Ψ(1)(t∗(x);x, tn)f(a, t∗(x))w(x, tn)dx+R(f, w), (3.10)

where

R(f, w) = R1(f, w) +R2(f, w) +R3(f, w) +∫ tn

tn−1

∫ b

a

u(wt + V wx −Kw)dxdt

=∫ b

a

w(x, tn)∫ tn

t∗(x)

(θ − tn)(θ − t∗(x))2

[f(X(θ;x, tn), θ)Ψ(1)(θ;x, tn)]θθdθdx

+∫ tn

tn−1

w(b, t)∫ t

tn−1

(θ − t)(θ − tn−1)2

[f(X(θ; b, t), θ)Ψ(2)(θ; b, t)]θθdθdt

+∫ tn

tn−1

∫ b

a

u(wt + V wx −Kw)dxdt. (3.11)

B. Approximations of Characteristics and Test Functions

Because one cannot solve problem (2.5) exactly for the characteristics, in general, one has toapproximate them by numerical means. In this article we use a second-order Runge–Kutta(Heun’s) method to define an approximate characteristic Y (θ; x, t) for X(θ; x, t):

Y (θ; x, t) = x+(θ − t)

2[V (x, t) + V (x+ (θ − t)V (x, t), θ)]. (3.12)

If (x, t) = (x, tn) with x ∈ [a, b], then Eq. (3.12) approximates X(θ;x, tn) numerically forθ ∈ [t∗B(x), tn], where t∗B(x) refers to the time when the approximate characteristic Y (θ;x, tn)backtracks to the inflow boundary Γ(I)

n (i.e., X(t∗B(x);x, tn) = a) and t∗B(x) = tn−1 otherwise.

If (x, t) = (b, t) ∈ Γ(O)n , then Eq. (3.12) approximates X(θ; b, t) numerically for θ ∈ [tn−1, t].

RUNGE KUTTA CHARACTERISTIC METHODS 625

We are now in a position to define the test functions at time tn and at the outflow boundaryΓ(O)n . At time tn we define the test functionswi(x, tn) (i = 1, 2, . . . , I−1) to be the hat functions

wi(x, tn) =

x−xi−1

∆xi, x ∈ [xi−1, xi],

xi+1−x∆xi+1

, x ∈ [xi, xi+1],0, otherwise,

(3.13)

where

∆xi = xi − xi−1(i = 1, 2, . . . , I),

and

w0(x, tn) =

x1−x∆x1

, x ∈ [x0, x1],0, otherwise,

wI(x, tn) =

x−xI−1

∆xI, x ∈ [xI−1, xI ],

0, otherwise.(3.14)

We now define the test functions at the outflow boundary Γ(O)n . Let Cr = max(V )∆t/∆xI ,

and IC = 1 for Cr < 1 and IC be the integer part of Cr otherwise. We partition the outflowboundary Γ(O)

n as follows:

tn,i = tn − i∆tf , i = 0, 1, . . . , IC with ∆tf =∆tIC

. (3.15)

Note that tn,0 = tn and tn,IC = tn−1. For Cr < 2 no subdivision is introduced on the outflow

boundary Γ(O)n . For Cr ≥ 2 we partition the outflow boundary Γ(O)

n into uniform subintervals[tn,i−1, tn,i] to ensure that the numerical schemes are suitable even for large Courant numbers.

Consequently, we define the test functions at the outflow boundary Γ(O)n by

wI+i(b, t) =

tn,i−1−t

∆tf, t ∈ [tn,i−1, tn,i],

t−tn,i+1∆tf

, t ∈ [tn,i, tn,i+1],0, otherwise,

(3.16)

for i = 1, . . . , IC − 1, and

wI(b, t) =

t−tn,1∆tf

, t ∈ [tn,1, tn],0, otherwise,

wI+IC(b, t) =

tn,IC−1−t

∆tf, t ∈ [tn,IC−1, tn−1],

0, otherwise.(3.17)

After the test functionswi(x, t) (i = 0, 1, . . . , I+IC) are defined at time tn and at the outflowboundary Γ(O)

n , they are determined completely inside the domain [a, b]×(tn−1, tn] by Eq. (2.7).In the numerical scheme we should define the test functions along the approximate characteristicsY (θ; x, t) and evaluate the integral in (2.7) by the trapezoidal rule, yielding

wi(Y (θ; x, t), θ) = wi(x, t)e−(t−θ)

2 [K(x,t )+K(Y (θ;x,t ),θ)], (3.18)

where for (x, t) = (x, tn) with x ∈ [a, b], θ ∈ [t∗B(x), tn]. For (x, t) = (b, t) ∈ Γ(O)n , θ ∈

[tn−1, t].

626 WANG, AL LAWATIA, AND TELYAKOVSKIY

C. Backtracked Numerical Scheme

In the numerical scheme we use piecewise-linear trial functions at time tn and at the outflowboundary Γ(O)

n for n = 1, 2, . . . , N given by

U(x, tn) =I∑i=0

U(xi, tn)wi(x, tn), x ∈ [a, b],

U(b, t) =IC∑i=0

U(b, tn,i)wI+i(b, t), t ∈ [tn−1, tn]. (3.19)

Then we replace the exact solution u and the test functions w in Eq. (3.10) by the trial functionU and the test functions wi (i = 0, 1, . . . , I + IC) defined in (3.18). Because the approximatecharacteristic Y (θ; x, t) is used instead of the true characteristic X(θ; x, t), we need to makethe corresponding adjustments in the scheme. Furthermore, since U(a, tn) = g(tn) is knownfrom the prescribed inflow boundary condition and U(b, tn−1) is known from the solution at theprevious time level tn−1, no equation is needed for i = 0 or i = I + IC, which corresponds tothe point (b, tn−1). To conserve mass all the nodal basis of the test functions should sum to onewhen no reaction is present [35]. Taking all these points into account, we derive the followingscheme for i = 1, 2, . . . , I + IC − 1:∫ b

a

U(x, tn)wi(x, tn)dx+∫ tn

tn−1

U(b, t)wi(b, t)V (b, t)dt

=∫ b

aB

Ψ(1)B (tn−1;x, tn)U(x∗B , tn−1)wi(x, tn)dx

+∫ tn

tn−1

Ψ(2)B (tn−1; b, t)U(b∗B(t), tn−1)wi(b, t)dt

+∫ b

a

∆tB(x)2

f(x, tn)wi(x, tn)dx+∫ tn

tn−1

(t− tn−1)2

f(b, t)wi(b, t)V (b, t)dt

+∫ tn

tn−1

(t− tn−1)2

Ψ(2)B (tn−1; b, t)f(b∗B(t), tn−1)wi(b, t)dt

+∫ tn

tn−1

g(t)wi(a, t)V (a, t)dt+∫ b

aB

∆t2

Ψ(1)B (tn−1;x, tn)f(x∗B , tn−1)wi(x, tn)dx

+∫ aB

a

∆tB(x)2

Ψ1(t∗B(x);x, tn)f(a, t∗B(x))wi(x, tn)dx, (3.20)

where w1 = w1 +w0, wi = wi for i = 2, 3, . . . , I+IC−2, and wI+IC−1 = wI+IC−1 +wI+IC .xB is a point at time tn defined by x = Y (tn−1; xB , tn). x∗B and b∗B(t) are the points at timetn−1 determined by x∗B = Y (tn−1;x, tn), and b∗B(t) = Y (tn−1; b, t). ∆tB(x) = ∆t for x ≥ aBand ∆tB(x) = tn− t∗B(x) otherwise, with t∗B(x) being defined below (3.12). Ψ(1)

B (θ;x, tn) and

Ψ(2)B (θ; b, t) are given by

RUNGE KUTTA CHARACTERISTIC METHODS 627

Ψ(1)B (θ;x, tn) = Yx(θ;x, tn)e−

(tn−θ)2 [K(x,tn)+K(Y (θ;x,tn),θ)]

=

1 +(θ − tn)

2[Vx(x, tn) + [1 + (θ − tn)Vx(x, tn)]

× Vx(x+ (θ − tn)V (x, tn), θ)]e−

(tn−θ)2 [K(x,tn)+K(Y (θ;x,tn),θ)],

(3.21)

and

Ψ(2)B (θ; b, t) = −Yt(θ;x, tn)e−

(t−θ)2 [K(b,t)+K(X(θ;b,t),θ)]

=12[V (b, t) + V (b+ (θ − t)V (b, t), θ)]− (θ − t)[Vt(b, t) + [−V (b, t)

+ (θ − t)Vt(b, t)]Vx(b+ (θ − t)V (b, t), θ)]e− (t−θ)2 [K(b,t)+K(X(θ;b,t),θ)].

(3.22)

In the numerical implementation, the sixth term on the right-hand side of Eq. (3.20) is trans-formed to time level tn:∫ tn

tn−1

g(t)wi(a, t)V (a, t)dt =∫ aB

a

Ψ(3)(x, tn)g(t∗B(x))wi(x, tn)V (a, t∗B(x))dx, (3.23)

with Ψ(3)(x, tn) being given by

Ψ(3)(x, tn) = −dt∗B(x)dx

e−∆tB(x)

2 [K(x,tn)+K(a,t∗B(x))]

=d∆tB(x)

dxe−

∆tB(x)2 [K(x,tn)+K(a,t∗B(x))]. (3.24)

Equations (3.20) form a closed system, and have a well-conditioned, tridiagonal, symmetricand positive-definite coefficient matrix without any artificial boundary condition being added.This scheme is second-order accurate in both space and time with a very small temporal errordue to the application of characteristic tracking and approximation. Moreover, the scheme con-serves mass.

Many forward-tracked characteristic or particle tracking methods advance the grids and com-pute the numerical solutions following the characteristics. Even though they are uniform at theinitial time t0, the underlying grids could become severely distorted after several time steps andgreatly complicate the solution procedures. Because of this, many characteristic methods havetraditionally been developed using a backtracking algorithm to avoid the distortion of grids andassociated difficulties. The backtracked Runge–Kutta scheme given by Eqs. (3.20) falls into thiscategory.

IV. FORWARD-TRACKED RUNGE–KUTTA CHARACTERISTIC (FRKC) SCHEME

Backtracked characteristic methods have their own difficulties in the evaluation of the first twoterms on the right-hand side of Eqs. (3.20), which is crucial to the accuracy of backtrackedcharacteristic methods [54]. We take only the first term as an example to describe the problem.

628 WANG, AL LAWATIA, AND TELYAKOVSKIY

There are basically two approaches in backtracked characteristic methods. The first is to tracethe characteristics backward to determine the image [x∗i−1, x

∗i ] of the element [xi−1, xi] for i =

1, 2, . . . , I (to avoid double subscripts we have dropped the subscript B in x∗i−1 and x∗i ). Thenwe numerically integrate a product U(y, tn−1)wi(y, t+n−1) on [x∗i−1, x

∗i ]. In the present one-

dimensional case, we can subdivide the interval [x∗i−1, x∗i ] into several subintervals on which

U(y, tn−1) is linear, then apply quadrature rules on these subintervals to compute the integralaccurately. But for multidimensional problems this approach requires significant effort, due to theneed to define the geometry at time tn−1, which requires mapping of points along the boundary ofthe element and subsequent interpolation and mapping onto the fixed spatial grid at the previoustime level tn−1. This approach is computationally very intensive, especially when part or all ofthe element being mapped intersects a space–time boundary [50].

The other approach is to rewrite this term as an integral at time tn with a standard valueof wi(x, tn) but backtracking to evaluate U(x∗, tn−1), where x∗ is the point at the foot ofthe characteristic corresponding to x at the head. Unfortunately, the evaluation of this termis also problematic in practice [34]. Because when x varies on [xi−1, xi] at time tn, x∗ maymove across several elements at time tn−1, on which U(x∗, tn−1) is piecewisely smooth as afunction of x∗ (piecewise-linear when the velocity is constant). Thus, if we apply a numeri-cal quadrature to this term on [xi−1, xi] at time tn, we are numerically integrating a productΨ(1)(tn−1;x, tn)U(x∗, tn−1)wi(x, tn) of a smooth function Ψ(1)(tn−1;x, tn), linear functionwi(x, tn) with a piecewisely smooth function U(x∗, tn−1) on [xi−1, xi]. Without careful imple-mentation, this nonexact integration may cause oscillations or errors in mass conservation [34,38, 48]. In the present one-dimensional case, we can subdivide the interval [xi−1, xi] into sev-eral subintervals on which U(x∗, tn−1) is smooth (linear for a constant velocity field), applyingquadrature rules on these subintervals to compute the integral accurately. In other words, weneed to find out all the nodes xj 's at time tn−1 that fall in the interval [x∗i−1, x

∗i ] by numerically

solving the implicit equation xj = Y (tn−1; xj , tn) for xj ∈ [xi−1, xi] for i = 1, 2, . . . , I , whereY (θ; x, t) is defined in Eq. (3.12). This could be an extensive process. For multidimensionalproblems this approach also faces great challenges, due to the need to define the subdivision ofan element at time tn that requires mapping of points along the boundary of an element at timetn−1 by numerically solving the equations defining characteristics. This process is also compu-tationally very expensive, especially when part or all of the element being mapped intersects aspace–time boundary [50, 55].

A. Derivation of a Forward-Tracked Reference Equation

In this subsection we develop an alternative forward-tracked Runge–Kutta characteristic schemefor Eq. (2.1), which does not suffer from the difficulties in the backtracked schemes describedbefore or the complication of grids in the traditional forward-tracked scheme even for multidi-mensional problems.

We first derive a forward-tracked reference equation by using Eqs. (2.3) and (3.10). UsingEq. (3.1) in a reverse order, we can replace the first two terms on the right-hand side of Eq. (3.10)by the two terms on the right-hand side of the first equal sign in Eq. (3.1). We evaluate the fifth,seventh, and eighth terms on the right-hand side of Eq. (3.10) in a similar fashion and obtain∫ tn

tn−1

(t− tn−1)2

Ψ(2)(tn−1; b, t)f(b∗(t), tn−1)w(b, t)dt

=∫ b

b∗

∆t(O)(y)2

f(y, tn−1)w(y, t+n−1)dy, (4.1)

RUNGE KUTTA CHARACTERISTIC METHODS 629

where

∆t(O)(y) = t(y)− tn−1

with t(y) being defined by b = X(t(y); y, tn−1),

∫ b

a

∆t2

Ψ(1)(tn−1;x, tn)f(x∗, tn−1)w(x, tn)dx =∫ b∗

a

∆t2f(y, tn−1)w(y, t+n−1)dy, (4.2)

and ∫ a

a

∆t(x)2

Ψ(1)(t∗(x);x, tn)f(a, t∗(x))w(x, tn)dx

=∫ a

a

∆t(x)2

Xx(t∗(x);x, tn)f(a, t∗(x))w(a, t∗(x))dx

=∫ tn

tn−1

(tn − t)2

f(a, t)w(a, t)V (a, t)dt. (4.3)

Substituting these terms into Eq. (3.10), we obtain a forward-tracked reference equation∫ b

a

u(x, tn)w(x, tn)dx+∫ tn

tn−1

u(b, t)w(b, t)V (b, t)dt

=∫ b∗

a

u(y, tn−1)w(y, t+n−1)dy +∫ b

b∗u(y, tn−1)w(y, t+n−1)dy

+∫ b

a

∆t(x)2

f(x, tn)w(x, tn)dx+∫ tn

tn−1

(t− tn−1)2

f(b, t)w(b, t)V (b, t)dt

+∫ b∗

a

∆t2f(y, tn−1)w(y, t+n−1)dy +

∫ b

b∗

∆t(O)(y)2

f(y, tn−1)w(y, t+n−1)dy

+∫ tn

tn−1

(tn − t)2

f(a, t)w(a, t)V (a, t)dt+∫ tn

tn−1

g(t)w(a, t)V (a, t)dt+R(f, w), (4.4)

where R(f, w) is defined below Eq. (3.10).

B. Forward-Tracked Numerical Scheme

In the numerical scheme we still use the trial function U defined in (3.19). The test functionsw are defined by (3.13) and (3.14) at time tn and (3.16) and (3.17) at the outflow boundaryΓ(O)n . Note that the temporal expression of the test functions wi in (3.18) was obtained by using

the trapezoidal quadrature along a backtracked approximate characteristic in the evaluation ofthe integral in (2.7). Hence, this expression needs to be modified slightly by using a forwardtracking algorithm, which will be discussed later. Let b∗F and tF (y) be the points at time tn−1

and at the outflow boundary Γ(O)n such that b = Y (tn; b∗F ; tn−1) and b = Y (tF (y); y, tn−1). A

forward-tracked numerical scheme for i = 1, 2, . . . , I + IC − 1 is given by

630 WANG, AL LAWATIA, AND TELYAKOVSKIY∫ b

a

U(x, tn)wi(x, tn)dx+∫ tn

tn−1

U(b, t)wi(b, t)V (b, t)dt

=∫ b∗F

a

U(y, tn−1)wi(y, t+n−1)dy +∫ b

b∗F

U(y, tn−1)wi(y, t+n−1)dy

+∫ b

a

∆tB(x)2

f(x, tn)wi(x, tn)dx+∫ tn

tn−1

(t− tn−1)2

f(b, t)wi(b, t)V (b, t)dt

+∫ b∗F

a

∆t2f(y, tn−1)wi(y, t+n−1)dy +

∫ b

b∗F

∆t(O)F (y)2

f(y, tn−1)wi(y, t+n−1)dy

+∫ tn

tn−1

(tn − t)2

f(a, t)wi(a, t)V (a, t)dt+∫ tn

tn−1

g(t)wi(a, t)V (a, t)dt, (4.5)

where wi (i = 1, 2, . . . , I + IC − 1) are defined below (3.20), and ∆t(O)F (y) = tF (y)− tn−1.

In Eqs. (4.5), the two terms on the left-hand side and the third and fourth terms on the right-hand side are standard in finite element methods, while the remaining terms on the right-hand sideare not. We take the first term on the right-hand side as an example to describe the algorithm. Inthis term, the value of trial function U(y, tn−1) is known from the solution at time tn−1, but thatof the test functions wi(y, t+n−1) = limt→t+

n−1wi(y, t) is not standard. As mentioned previously,

the evaluation of this term in backtracked characteristic methods becomes much more challengingin multiple dimensions, due to the multidimensional deformation of each finite element on whichthe test functions are defined as the geometry is backtracked from time tn to time tn−1.

The most practical approach for evaluating this term is to use a forward-tracking algorithm[47, 48, 51, 52, 53]. To describe this algorithm we first define (the temporal variations of) the testfunctionswi in Eq. (4.5). Let yF and aF (t) be the points at time tn given by yF = Y (tn; y, tn−1)and aF (t) = Y (tn; a, t), while tF (y) is defined before (4.5). Then the test functions wi arecalculated by evaluating the integral in Eq. (2.7) with the trapezoidal rule along a forward-trackedapproximate characteristic

wi(Y (θ; a, t), θ) = wi(aF (t), tn)e−(tn−θ)

2 [K(aF (t),tn)+K(a,t)],

θ ∈ [t, tn], t ∈ [tn−1, tn],

wi(Y (θ; y, tn−1), θ) = wi(yF , tn)e−∆t2 [K(yF ,tn)+K(y,tn−1)],

θ ∈ [tn−1, tn], y ∈ [a, b∗F ],

wi(Y (θ; y, tn−1), θ) = wi(b, tF (y))e−(tF (y)−tn−1)

2 [K(b,tF (y))+K(y,tn−1)],

θ ∈ [tn−1, tF (y)], y ∈ [b∗F , b]. (4.6)

In particular, we have the following expressions for the values of the test functions wi at timetn−1 and at the inflow boundary Γ(I)

n :

wi(a, t) = wi(aF (t), tn)e−(tn−t)

2 [K(aF (t),tn)+K(a,t)], t ∈ [tn−1, tn],

wi(y, t+n−1) = wi(yF , tn)e−∆t2 [K(yF ,tn)+K(y,tn−1)], y ∈ [a, b∗F ],

wi(y, t+n−1) = wi(b, tF (y))e−∆t(O)F

(y)

2 [K(b,tF (y))+K(y,tn−1)], y ∈ [b∗F , b]. (4.7)

After we have defined the test functions wi we now describe the forward-tracked numericalprocedure. We again take the evaluation of the first term on the right-hand side of Eq. (4.5) as an

RUNGE KUTTA CHARACTERISTIC METHODS 631

example to describe the procedure. This would enforce the integration quadrature at time tn−1with respect to a fixed spatial grid [xi−1, xi] (i = 1, 2, . . . , I) on which U(y, tn−1) is a standardpiecewise-linear function defined on the fixed grid at time tn−1, the difficult evaluation is the testfunctionwi(y, t+n−1). Rather than backtracking the geometry and estimating the test functions bymapping the deformed geometry onto the fixed grid or rewriting this term as an integral at timetn, as in backtracked characteristic methods, discrete quadrature points chosen on the fixed gridat tn−1 in a regular fashion (say, standard Gaussian points) are tracked forward to time tn, wherethe evaluation of wi is carried out by using Eqs. (4.7). Algorithmically, this is implemented byevaluating U(y, tn−1) at a quadrature point yp ∈ [xi−1, xi] at time tn−1, then tracking the pointyp forward from tn−1 to ypF = Y (tn; yp, tn−1) at time tn and determining which test functionsare nonzero at (yp, tn). Then the amount of mass ωpU(yp, tn−1)wi(yp, t+n−1) associated withyp, where ωp is the weight in the quadrature and wi(yp, t+n−1) is computed by using the secondequation in (4.7), can be added to the corresponding position in the right-hand side vector in theglobal discrete linear algebraic system. Notice that this forward-tracking procedure has been usedin evaluating the value of the test functions wi only, so it has no effect on the underlying grids orthe data structure of the discrete system. Therefore, the forward-tracking algorithm used here doesnot suffer from the complication of distorted grids, which complicates many forward-trackingalgorithms and is a major attraction of the backtracking in characteristic methods.

V. MULTIDIMENSIONAL GENERALIZATIONS

We consider the following initial-boundary value problems for first-order linear hyperbolic equa-tions:

Lu ≡ ut(x, t) +∇ · (Vu(x, t)) +Ku = f(x, t), x ∈ Ω, t ∈ (0, T ),u(x, t) = g(x, t), x ∈ ∂Ωin, t ∈ [0, T ],u(x, 0) = u0(x), x ∈ Ω, (5.1)

where V(x, t) is a velocity field and K(x, t) is a first-order reaction coefficient. Ω ∈ Rd isa bounded domain in the d-dimensional Euclidean space with a Lipschitz continuous boundary∂Ω, which can be decomposed as a union ∂Ω = ∂Ω(I) ∪ ∂Ω(N) ∪ ∂Ω(O) of an inflow boundary∂Ω(I) = x ∈ ∂Ω|V (x, t) ·n(x) < 0, a no-flow boundary ∂Ω(N) = x ∈ ∂Ω|V (x, t) ·n(x) =0, and outflow boundaries ∂Ω(O) = x ∈ ∂Ω|V (x, t) · n(x) > 0 with n(x) being the unitoutward normal.

In this section we briefly outline a plausible generalization of the Runge–Kutta characteristicmethods for problem (5.1) to demonstrate that the numerical methods developed in this article areextensible to multidimensional problems. However, a rigorous development of multidimensionalRunge–Kutta methods is beyond the scope of this article.

Multiplying Eq. (5.1) by any continuous and piecewise-smooth space-time test functions wthat vanish outside Ω× (tn−1, tn] and are discontinuous in time at time tn−1, and then integratingthe equation over Ω× (0, T ), we obtain a space-time variational formulation that is analogous toEq. (2.3): ∫

Ωu(x, tn)w(x, tn)dx +

∫ tn

tn−1

∫Γ(O)

V(x, t) · n(x)u(x, t)w(x, t)dSdt

−∫ tn

tn−1

∫Ωu(wt + V · ∇w −Kw)dxdt

632 WANG, AL LAWATIA, AND TELYAKOVSKIY

=∫

Ωu(x, tn−1)w(x, t+n−1)dx +

∫ tn

tn−1

∫Ωfwdxdt

−∫ tn

tn−1

∫Γ(I)

V(x, t) · n(x)g(x, t)w(x, t)dSdt. (5.2)

Based on Eq. (5.2) we can develop a multidimensional Runge–Kutta scheme for equation(5.1) with a backtracking or forward-tracking algorithm, in parallel to what was done in SectionsIII and IV. As discussed in Section IV, the most practical approach is to use a forward-trackingalgorithm, which will be outlined in this section. We take a two-dimensional problem as anexample. Depending on whether a triangular partition or a rectangular partition is used, we usepiecewise-linear or piecewise-bilinear trial and test functions at time tn and at the space–timeoutflow boundary ∂Ω(O)× [tn−1, tn]. We still use a second-order Runge–Kutta (Heun’s) methodto track the characteristic forward. For example,

Y(θ; y, tn−1) = y +(θ − tn−1)

2[V(y, tn−1) + V(y + (θ − tn−1)V(y, tn−1), θ)] (5.3)

numerically tracks the characteristic from (y, tn−1) forward to Ω at time tn or the space–timeoutflow boundary. At an interior node that is not related to the boundary, a forward-trackedRunge–Kutta scheme is given by∫

ΩU(x, tn)w(x, tn)dx

=∫

ΩU(y, tn−1)w(y, t+n−1)dy +

∫Ω

∆t2f(x, tn)w(x, tn)dx

+∫

Ω

∆t2f(y, tn−1)w(y, t+n−1)dy, (5.4)

where the test functions w are defined similarly to those in (4.7).In principle, one can derive the scheme near the boundary similarly. The two-dimensional

Runge–Kutta scheme has a well-conditioned, sparse, symmetric, and positive-definite coefficientmatrix, so the standard iterative methods such as the conjugate gradient method can be used tosolve Eq. (5.1) efficiently without using any preconditioners. Moreover, the scheme conservesmass. However, as in all the Lagrangian type numerical methods, practical implementationof the schemes in multiple spatial dimensions requires careful algorithm development. We re-fer the readers to the multidimensional ELLAM schemes developed previously on these issues[39, 47–52].

VI. DESCRIPTION OF SOME OTHER METHODS

In this section we briefly describe some well-studied and widely used numerical methods for first-order linear hyperbolic equations, with which we will perform extensive numerical experimentsto compare the BRKC and FRKC schemes in the next section.

A. Galerkin and Petrov–Galerkin Finite Element Methods

Let the trial function U(x, tn) be defined by the first equation in (3.19) with U(a, tn) = g(tn),and the test functions wi(x) (i = 0, 1, . . . , I) be continuous and piecewise polynomials. Thenthe Galerkin finite element method (GAL), the quadratic Petrov–Galerkin finite element method

RUNGE KUTTA CHARACTERISTIC METHODS 633

(QPG) [3, 5, 35], and the cubic Petrov–Galerkin finite element method (CPG) [6, 8], with theCrank–Nicholson temporal discretization can be uniformly written∫ b

a

U(x, tn)wi(x)dx+∆t2

[−∫ b

a

V (x, tn)U(x, tn)wix(x)dx

+∫ b

a

K(x, tn)U(x, tn)wi(x)dx+ V (b, tn)U(b, tn)wi(b)

]

=∫ b

a

U(x, tn−1)wi(x)dx− ∆t2

[−∫ b

a

V (x, tn−1)U(x, tn−1)wix(x)dx

+∫ b

a

K(x, tn−1)U(x, tn−1)wi(x)dx+ V (b, tn−1)U(b, tn−1)wi(b)

]

+∫ b

a

∆t2

[f(x, tn) + f(x, tn−1)]wi(x)dx (6.1)

for i = 1, 2, . . . , I . In the GAL method the test functions wi(x) (i = 1, 2, . . . , I) are givenby (3.13) and (3.14) [where wi(x) were denoted by wi(x, tn)]. In the QPG method, the testfunctions are constructed by adding an asymmetric perturbation to the original piecewise-linearhat functions:

wi(x) =

x−xi−1

∆xi+ νi

(x−xi−1)(xi−x)∆x2

i

, x ∈ [xi−1, xi],xi+1−x∆xi+1

− νi+1(x−xi)(xi+1−x)

∆x2i+1

, x ∈ [xi, xi+1],

0, otherwise.

(6.2)

Here νi = 3[coth(V∆xi2D )− 2D

V∆xi] for constant V andD, whereD is the diffusion coefficient for

an advection–diffusion equation. Since Eq. (2.1) can be viewed as a limiting case of D → 0, thelimit of νi is 3. In the CPG method, the test functions are defined as the original piecewise-linearhat functions with a symmetric cubic perturbation added to each nonzero piece:

wi(x) =

x−xi−1

∆xi+ γi

(x−xi−1)(xi−x)(xi−1+xi−2x)∆x3

i

, x ∈ [xi−1, xi],xi+1−x∆xi+1

− γi+1(x−xi)(xi+1−x)(xi+xi+1−2x)

∆x3i+1

, x ∈ [xi, xi+1],

0, otherwise.

(6.3)

Here γi = 5Cr2i with Cri = V∆t

∆xibeing the mesh Courant number. For variable V one replaces

V by its arithmetic mean on each element.

B. Streamline Diffusion Finite Element Method (SDM)

The streamline diffusion finite element method (SDM) [9, 10, 14] applies to a nonconservativeform of Eq. (2.1):

Lu ≡ ut + V (x, t)ux + (K(x, t) + Vx(x, t))u = f(x, t), x ∈ (a, b), t ∈ (0, T ),u(a, t) = g(t), t ∈ (0, T ),u(x, 0) = u0(x), x ∈ [a, b]. (6.4)

The linear SDM method reads as follows: find a continuous and piecewise-linear functionU(x, t)on the slab [a, b]×[tn−1, tn], which is discontinuous in time at tn−1 and tn and satisfies the inflow

634 WANG, AL LAWATIA, AND TELYAKOVSKIY

boundary condition U(a, t) = g(t) for t ∈ [tn−1, tn], such that∫ tn

tn−1

∫ b

a

[Ut + V Ux + (K + Vx)U ][w + δ(wt + V wx)]dxdt+∫ b

a

u+nw

+n dx

=∫ tn

tn−1

∫ b

a

f(x, t)[w + δ(wt + V wx)]dxdt+∫ b

a

U−n w+n dx, (6.5)

for any test function w, which is continuous and piecewise-bilinear (linear in time) on [a, b] ×[tn−1, tn], discontinuous in time at tn−1 and tn, and satisfiesw(a, t) = 0 for t ∈ [tn−1, tn]. Herew+n = limt→t+

n−1w(x, t) and w−n−1 = limt→t−

n−1w(x, t), U−0 = u0(x).δ is typically chosen to

be δ = C h√1+V 2 with h being the diameter of the space–time partition and C being a properly

chosen constant.The SDM method adds numerical diffusion only in the direction of streamlines to suppress

the oscillations. However, the SDM generally increases the dimension of the problem by one(although the measure in this dimension is small). For the one-dimensional problem (6.4), Eqs.(6.5) are defined on the two-dimensional space–time domain [a, b] × [tn−1, tn]. For the linearSDM that uses piecewise-linear space–time trial and test functions, Eqs. (6.5) have twice as manyunknowns as those in the GAL, QPG, CPG, BRKC, and FRKC schemes in this article. Moreover,the undetermined constant C has a significant effect on the accuracy of the numerical solutions.If C is chosen too small, Eqs. (6.5) may not have enough coercivity and the numerical solutionswill exhibit oscillations. If C is too big, Eqs. (6.5) may have too much numerical dispersionand could seriously smear the numerical solutions. Unfortunately, it is not clear how to choosea priori optimal C, in general. While the SDM will capture a jump discontinuity of the exactsolution in a thin region, the numerical solution may develop over- and under-shoots about theexact solution within this layer. A modified SDM with improved shock-capturing properties wasproposed [10, 11]. However, it leads to a nonlinear scheme even though the underlying governingequation is linear and involves another undetermined parameter. We will not discuss this further.

C. Continuous and Discontinuous Galerkin Methods (CGM and DGM)

In the CGM and DGM methods [13–15] the space–time domain Σ = (a, b) × (0, T ) is dividedinto a quasi-uniform triangulation of the diameter h. With the solution at the previous element(or the prescribed boundary and initial conditions at the beginning), the linear DGM method isformulated as follows: Find an approximation U(x, t) ∈ P1(T ) [where Pk(T ) is the space ofpolynomials of degree less or equal to k on T ] and is discontinuous across the boundary of theelement T , such that∫T

[Ut + V Ux + (K + Vx)U ]w(x, t)dxdt−∫

Γ(I)(T )U+w+V · ndS

=∫Tfwdxdt−

∫Γ(I)(T )

U−w+V · ndS, ∀w ∈ P1(T ), (6.6)

where V(x, t) = (V (x, t), 1) defines the characteristic (streamline) direction and n(x, t) is theunit outward normal. U(x, t)±(x, t) = limε→0+ U((x, t)± εn(x, t)).

The CGM method [13] is also defined element-wise, but the trial functions are required tobe continuous over the global space-time domain Σ. The lowest-order CGM method reads asfollows: Find U(x, t) ∈ P2(T ) for each T that is continuous over Σ, such that Eq. (6.6) holdsfor all the test functions w(x, t) ∈ P2−ρ(T )(T ), where ρ(T ) is the number of inflow sides that

RUNGE KUTTA CHARACTERISTIC METHODS 635

the element T has. Because the trial function U(x, t) is continuous, the boundary terms on bothsides of Eq. (6.6) are canceled.

In the CGM and DGM methods, one needs only to solve a linear system on every element.On each element T the order of the linear system equals the degrees of freedom on the element.Thus, these methods are quasi-explicit and can be viewed as a high-order upwind discretizationof both advection and diffusion terms.

D. Monotonic Upstream-Centered Scheme for Conservation Laws (MUSCL) Schemeand the Essentially Nonoscillatory (ENO) Scheme

Godunov-type methods are another important family of methods for hyperbolic equations. Amongthis family are the MUSCL schemes [16, 25] and the ENO schemes [19, 22, 56], which can bedescribed as follows. Here we assume that the partition (2.2) is uniform and the Courant numberis less than or equal to one. In contrast to the methods discussed previously that are node-based, the ENO and the MUSCL schemes are cell-centered. Namely, their numerical solutionsU(x, tn) are defined at the points xi−1/2 (i = 1, 2, . . . , I), where xi−1/2 = (xi−1 + xi)/2 is themidpoint of the interval [xi−1, xi]. Let Un−1,i−1/2 = U(xi−1/2, tn−1), where U(x, tn−1) is theknown solution at the previous time step tn−1. To define the schemes, we first need to define anumerical slope δUn−1,i−1/2, which is different in these two schemes. In the ENO scheme theslope δUn−1,i−1/2 is defined by

δUn−1,i−1/2 =

∆+Un−1,i−1/2, if |∆+Un−1,i−1/2| ≤ |∆−Un−1,i−1/2|,∆−Un−1,i−1/2, otherwise,

(6.7)

where ∆−Un−1,i−1/2 and ∆+Un−1,i−1/2 are the backward and forward difference operators

∆−Un−1,i−1/2 =

2(Un−1,i−1/2−g(tn−1))

∆x , i = 1,Un−1,i−1/2−Un−1,i−3/2

∆x , i = 2, . . . , I,

∆+Un−1,i−1/2 =

Un−1,i+1/2−Un−1,i−1/2

∆x , i = 1, . . . , I − 1,2(h(tn−1)−Un−1,i−1/2)

∆x , i = I,(6.8)

where h(t) is a numerical outflow boundary condition.In the MUSCL scheme the slope δUn−1,i−1/2 is defined by

δUn−1,i−1/2 = min∆limUn−1,i−1/2, |∆cUn−1,i−1/2| · sgn(∆cUn−1,i−1/2), i = 1, . . . , I,(6.9)

where sgn(x) = 1 for x > 0, sign(x) = −1 for x < 0, and sgn(0) = 0, and

∆limUn−1,i−1/2 =

αi min|∆+Un−1,i−1/2|, |∆−Un−1,i−1/2|,if (∆+Un−1,i−1/2) · (∆−Un−1,i−1/2) > 0,

0, otherwise,(6.10)

with

∆cUn−1,i−1/2 =

Un−1,i+1/2−4g(tn−1)

3∆x , i = 1,Un−1,i+1/2−Un−1,i−3/2

2∆x , i = 2, . . . , I − 1,4h(tn−1)−Un−1,i−3/2

3∆x , i = I.

(6.11)

636 WANG, AL LAWATIA, AND TELYAKOVSKIY

Here the parameter αi = 2 for i = 1, 2, . . . , I − 1 and 1 otherwise, which is the upper bound thatallows the steeper representation of sharp fronts.

After we have defined the different slopes δUn−1,i−1/2 in the ENO and MUSCL schemes, wecan now define the two schemes in a uniform way:

Un,i−1/2 = Un−1,i−1/2 − ∆t∆x

(V (xi−1/2, tn−1)ULn−1,i−1/2 − V (xi−3/2, tn−1)ULn−1,i−3/2),

(6.12)

where the left state ULn−1,i−1/2 is defined by

ULn−1,i−1/2 =Un−1,i−1/2 + ∆x

2

(1− V (xi−1/2, tn−1) ∆t

∆x

)δUn−1,i−1/2, i = 1, . . . , I,

g(tn−1), i = 0.(6.13)

E. Eulerian–Lagrangian Localized Adjoint Method (ELLAM)

In deriving the ELLAM schemes for problem (2.1) we also started from the variational formulation(2.3) [44–46]. Instead of a Runge–Kutta quadrature (3.12) we used the following simpler Eulerquadrature to track the characteristics:

Y (θ; x, t) = x+ V (x, t)(θ − t), (6.14)

and to define the test functions. At time tn and at the space–time outflow boundary Γ(O)n ,

the test functions w were still defined by (3.13)–(3.17). But inside the space–time domain[a, b]× (tn−1, tn], the test functions were defined by

wi(Y (θ; x, t), θ) = wi(x, t)e−K(x,t )(t−θ), (6.15)

instead of (3.18).In [45, 46] we used (6.14) and (6.15) and the Euler quadrature to evaluate the second term

on the right-hand side of Eq. (2.3) and obtained the following backtracked ELLAM scheme ati = 1, 2, . . . , I + IC − 1:∫ b

a

U(x, tn)wi(x, tn)dx+∫ tn

tn−1

U(b, t)wi(b, t)V (b, t)dt

=∫ b

aB

Ψ(4)B (x, tn)U(x∗B , tn−1)wi(x, tn)dx

+∫ tn

tn−1

Ψ(5)B (b, t)U(b∗B(t), tn−1)wi(b, t)dt

+∫ b

a

Ψ(6)B (x, tn)f(x, tn)wi(x, tn)dx

+∫ tn

tn−1

Ψ(7)B (b, t)f(b, t)wi(b, t)dt+

∫ tn

tn−1

V (a, t)g(t)wi(a, t)dt, (6.16)

where wi (i = 1, 2, . . . , I + IC − 1), aB , x∗B , and b∗B(t) are defined below Eqs. (3.20).

Ψ(4)B (x, tn),Ψ(5)

B (b, t),Ψ(6)B (x, tn), and Ψ(7)

B (b, t) are defined by

Ψ(4)B (x, tn) = [1− Vx(x, tn)∆t]e−K(x,tn)∆t,

Ψ(5)B (b, t) = [V (b, t) + Vt(b, t)(t− tn−1)]e−K(b,t)(t−tn−1), (6.17)

RUNGE KUTTA CHARACTERISTIC METHODS 637

Ψ(6)B (x, tn) =

[

1−e−K(x,tn)∆tB(x)

K(x,tn)

] [1− Vx(x,tn)

K(x,tn)

]+ Vx(x,tn)∆tB(x)e−K(x,tn)∆tB(x)

K(x,tn) , if K(x, tn) /= 0,

∆tB(x)− Vx(x,tn)[∆tB(x)]2

2 , if K(x, tn) = 0.

(6.18)

Ψ(7)(b, t) =

[

1−e−K(b,t)(t−tn−1)

K(b,t)

] [V (b, t) + Vt(b,t)

K(b,t)

]− Vt(b,t)(t−tn−1)e−K(b,t)(t−tn−1)

K(b,t) , if K(b, t) /= 0,

V (b, t)(t− tn−1) + Vt(b,t)(t−tn−1)2

2 , if K(b, t) = 0.

(6.19)

In Eqs. (6.16)–(6.19) it is understood that the Euler tracking (6.14) should be used whenever theRunge–Kutta tracking (3.12) is involved in the respective definitions.

In the ELLAM scheme (6.16) we dropped the last term on the left-hand side of Eq. (2.3),which accounts for the advection missed by the errors in tracking characteristics. We obtained animproved backtracked ELLAM scheme by incorporating this term into the numerical formulation[45, 46], where we used the fact that although the test functions wi in (6.15) do not satisfy theadjoint Eq. (2.3) exactly, they satisfy the following approximate adjoint equation:

−wt(Y (θ;x, t), θ)− V (x, t)wY (Y (θ;x, t), θ) +K(x, t)w(Y (θ;x, t), θ) = 0. (6.20)

We refer the readers to the work of Healy and Russell [38] for a forward-tracked finite volumeELLAM scheme for one-dimensional advection–diffusion equations.

VII. NUMERICAL EXPERIMENTS

In this section we perform extensive numerical experiments to compare the performance of thebacktracked and forward-tracked Runge–Kutta characteristic (BRKC, FRKC) schemes with thewell-studied and/or widely used methods reviewed in the last section. We also investigated theconvergence rates of the BRKC and FRKC schemes.

A. Comparison of the BRKC and FRKC Schemes with Other Methods

In this subsection we apply the GAL, QPG, CPG, SDM, CGM, DGM, MUSCL, ENO, BRKC,and FRKC methods to solve problem (2.1) and compare the performance of these methods. Wechoose problems with known analytical solutions that are either smooth or have steep fronts.

1. Model Problem I: Transport of a Gaussian Pulse

We consider the transport of a one-dimensional Gaussian pulse. The initial configuration centeredat x = 0 with a standard deviation σ is given by

u0(x) = exp[− x2

2σ2

]. (7.1)

The corresponding analytical solution for Eq. (2.1) with the initial condition (7.1) is

u(x, t) = exp[−(K(x, t)t+

(x− V (x, t)t)2

2σ2

)]. (7.2)

638 WANG, AL LAWATIA, AND TELYAKOVSKIY

The right-hand side f(x, t) is computed accordingly. In particular, f(x, t) ≡ 0 if V (x, t) andK(x, t) are constant.

In the numerical experiments the data are chosen as follows: The space domain is (a, b) =(0, 1.4) and the time interval [0, T ] = [0, 1], so the Gaussian pulse is centered at the inflowboundary initially. The velocity field V = 1 + 0.1x and the reaction coefficient K = 0. InEqs. (7.1) and (7.2) σ = 0.0316 (which gives 2σ2 = 0.002). In the numerical experimentsthe inflow Dirichlet boundary condition is computed using u(x, t) in Eq. (7.2). The spatialgrid size ∆x = 1

60 . The BRKC and FRKC solutions are plotted against the analytical one inFig. 1(a) for ∆t = 1

10 . In addition, the initial condition that is the right half of the Gaussian pulseis also plotted in Figure 1(a). The left half of the pulse that is not present is furnished via theinflow boundary condition. The ELLAM solutions are presented in Fig. 1(b) for ∆t = 1

10 and∆t = 1

20 , respectively. The GAL, QPG, and CPG solutions are plotted against the analytical onein Figs. 2(a)–(c) for ∆t = 1

10 ,1

100 , and 1200 , respectively. The CPG solution is not presented for

∆t = 110 in Fig. 2(a), because the CPG method works only when the Courant number is around

one. In fact, the CPG solution is unbounded in this case. The CGM and DGM solutions arepresented with the analytical one in Figs. 3(a)–(c) for ∆t = 1

10 ,160 , and 1

100 , respectively. TheMUSCL and ENO solutions are plotted against the analytical in Figs. 4(a)–(c) for ∆t = 1

65 ,1

100 ,and 1

200 , respectively. Here the time step ∆t = 165 is the largest allowable time step for these

methods to give a reasonable solution. Finally, the SDM solutions are plotted in Figs. 5(a)–(c)for ∆t = 1

10 ,160 , and 1

100 , respectively. Each of these figures contains the SDM solutions withC = 1, 0.1, and 0.0001 with the exception that the SDM solution for C = 0.0001 and ∆t = 1

10is not presented, because in this case the SDM solution is unbounded.

These figures demonstrate the following facts. With a time step ∆t = 110 , both the BRKC and

the FRKC schemes yield very accurate numerical solutions that coincide with the analytical one.With the same time step, the GAL and QPG schemes generate excessively oscillatory solutions thatdo not resemble the analytical one at all, while the CPG scheme generates an unbounded solution.With a time step ∆t = 1

100 , all the GAL, QPG, and CPG solutions converge to the analytical onewith some undershoot behind the peak. The GAL solution has the worst oscillations behind thepeak. The QPG solution has less oscillation, while the CPG solution is the best among the three.As the time step ∆t decreases to 1

200 , the errors in all these three solutions are further reducedwith the CPG solution being the best. The SDM scheme also yields fairly accurate solutions,when the undetermined parameter is chosen properly. In this example, the SDM yields the mostaccurate solution withC = 0.0001, while it yields a very diffusive solution withC = 1. But witha coarse time step ∆t = 1

10 , the SDM with C = 0.0001 generates an unbounded solution, whilethe SDM with C = 1 or 0.1 still produces a solution that is better than the GAL, QPG, and CPGsolutions with the same time step. It seems that a near-optimal value for the C in this exampleis C = 0.1. These results also show that the accuracy of SDM solutions strongly depends onthe selection of the parameter δ through the choice of C, whose optimal choice is not clear, ingeneral.

The Godunov type schemes MUSCL and ENO are fairly efficient as one can see in thecomparison of the CPU time described later. These methods are subject to the restriction of theCFL condition. In fact, the time step ∆t = 1

65 is the largest allowable time step for these methodsto generate reasonable solutions. The numerical solutions exhibit overshoot around the peak ofthe analytical solution and have some big errors behind the peak. As the time step ∆t is decreasedto 1

100 , the MUSCL solution is quite close to the analytical one except the big error behind thepeak, while the ENO solution is a little diffusive around the peak. As the time step ∆t is decreasedto 1

200 , both solutions become worse. This shows that in these schemes the time step should notbe too small. With a time step ∆t = 1

10 , the CGM and DGM yield more accurate solutions than

RUNGE KUTTA CHARACTERISTIC METHODS 639

FIG. 1(a). Analytic, BRKC, and FRKC, ∆x = 160 ,∆t = 1

10 .

FIG. 1(b). Analytic and ELLAM with ∆x = 160 ,∆t = 1

10 and 120 .

640 WANG, AL LAWATIA, AND TELYAKOVSKIY

FIG. 2(a). GAL and QPG, ∆x = 160 ,∆t = 1

10 .

FIG. 2(b). GAL, QPG, and CPG, ∆x = 160 ,∆t = 1

100 .

RUNGE KUTTA CHARACTERISTIC METHODS 641

FIG. 2(c). GAL, QPG, and CPG, ∆x = 160 ,∆t = 1

200 .

FIG. 3(a). CGM and DGM, ∆x = 160 ,∆t = 1

10 .

642 WANG, AL LAWATIA, AND TELYAKOVSKIY

FIG. 3(b). CGM and DGM, ∆x = 160 ,∆t = 1

60 .

FIG. 3(c). CGM and DGM, ∆x = 160 ,∆t = 1

100 .

RUNGE KUTTA CHARACTERISTIC METHODS 643

FIG. 4(a). MUSCL and ENO, ∆x = 160 ,∆t = 1

65 .

FIG. 4(b). MUSCL and ENO, ∆x = 160 ,∆t = 1

100 .

644 WANG, AL LAWATIA, AND TELYAKOVSKIY

FIG. 4(c). MUSCL and ENO, ∆x = 160 ,∆t = 1

200 .

FIG. 5(a). SDM with C = 1 and 0.1,∆x = 160 ,∆t = 1

10 .

RUNGE KUTTA CHARACTERISTIC METHODS 645

FIG. 5(b). SDM with C = 1, 0.1, and 0.0001,∆x = 160 ,∆t = 1

60 .

FIG. 5(c). SDM with C = 1, 0.1, and 0.0001,∆x = 160 ,∆t = 1

100 .

646 WANG, AL LAWATIA, AND TELYAKOVSKIY

TABLE I. A comparison of the L2 and L1 errors and the CPU time used, for ∆x = 1/60 and the best ∆t.

Method ∆t ∆x L2 Error L1 Error CPU seconds

FRKC 1/10 1/60 3.290658× 10−3 1.263278× 10−3 1.6BRKC 1/10 1/60 3.213730× 10−3 1.113512× 10−3 2.2ELLAM 1/10 1/60 3.191915× 10−2 1.237712× 10−2 1.4

1/20 1/60 1.608549× 10−2 6.383331× 10−3 2.4MUSCL 1/100 1/60 4.033227× 10−2 1.628829× 10−2 2.6ENO 1/100 1/60 5.467402× 10−2 2.825749× 10−2 2.6GAL 1/200 1/60 1.322887× 10−2 9.174170× 10−3 47.1QPG 1/200 1/60 2.797399× 10−2 1.395935× 10−2 48.7CPG 1/200 1/60 6.137471× 10−3 3.661677× 10−3 48.4CGM 1/60 1/60 5.700471× 10−2 2.693255× 10−2 23.7

1/100 1/60 4.413567× 10−2 1.956668× 10−2 39.5DGM 1/60 1/60 4.142737× 10−2 2.075059× 10−2 27.9

1/100 1/60 3.038246× 10−2 1.456226× 10−2 46.6SDM, 1/60 1/60 3.829122× 10−2 2.011438× 10−2 76.5C = 0.0001 1/100 1/60 2.310571× 10−2 1.238859× 10−2 109.8

other methods compared except for BRKC and FRKC solutions. As the time step ∆t is decreasedto 1

60 , the solutions are improved considerably. As the time step ∆t is reduced to 1100 , the CGM

solution is further improved but the DGM solution introduces some overshoot around the peak.Finally, we discuss the CPU time used by each method during the example runs. All the

numerical experiments and the CPU times taken were performed and measured on a SGI work-station. We present the results in Table I. From this table one has the following observations.The Runge–Kutta schemes generated the most accurate numerical solutions with the largest timestep (∆t = 1

10 in this example) and consequently the least CPU time among all the numericalmethods compared. The FRKC is slightly faster than the BRKC in this example run. The ELLAMsolutions are second only to the BRKC and FRKC solutions in terms of efficiency and accuracy.Although the MUSCL and ENO schemes are the most efficient per time step, they had to usemuch finer time steps in the numerical simulations and the overall CPU time is more than thatused by the BRKC and FRKC schemes. In addition, even with the fine time step ∆t = 1

100 , theirerrors are more than 10 times bigger than those by BRKC and FRKC schemes with ∆t = 1

10 ,which can also be seen from Figure 4(b). As the time step ∆t is reduced from 1

60 to 1100 , the

error in CGM is reduced about 25%. The corresponding CPU times are 23.7 and 39.5 s, whichare about 10 and 20 times as much as the CPU time used by BRKC and FRKC schemes. TheDGM yields slightly better results than the CGM but uses slightly more CPU time, too. The CPUtimes used by the GAL, QPG, and CPG methods are about 20 times larger than that used by theBRKC and FRKC schemes. While the SDM generates fairly accurate numerical solutions, theyused the most CPU times among all the methods compared. Here we have not taken into accountthe CPU time used by the SDM to find a near-optimal value for the parameter. In summary, theRunge–Kutta characteristic schemes developed in this article outperform other methods comparedin this article in terms of the accuracy and efficiency.

2. Model Problem II: Transport of a Square Pulse

To observe the performance of all the methods for problems with steep fronts, we consider thetransport of a one-dimensional square wave. The initial condition u0(x) is

RUNGE KUTTA CHARACTERISTIC METHODS 647

u0(x) =

1, if x ∈ [xl, xr] ⊂ (a, b),0, otherwise.

(7.3)

We assume that the one-dimensional transport equation has constant coefficients so that wecan find the analytical solution in a closed form. A homogeneous inflow Dirichlet boundarycondition is specified at x = a. The analytical solution u(x, t) can be expressed as

u(x, t) = exp(−Kt)u0(x− V t). (7.4)

In the numerical experiments the data are chosen as follows. The space domain is (a, b) =(0, 2), the time interval [0, T ] = [0, 1], V = 1,K = 0, and f = 0. In (7.3) xl = 0.2 andxr = 0.7. The grid size ∆x = 1

100 . The BRKC and FRKC solutions are plotted against theanalytical one in Fig. 6 for ∆t = 1

10 . In addition, the initial condition is also plotted in thefigure. Since this example has a constant velocity field and has a homogeneous source term, theELLAM schemes reviewed in Section VI.E are identical to the BRKC scheme developed in thisarticle. The BRKC (ELLAM) and FRKC solutions coincide with the analytical one even thoughthe analytical solution has shock discontinuities. The GAL, QPG, and CPG solutions are plottedin Figs. 7(a)–(c) for ∆t = 1

100 ,1

400 , and 1800 , respectively. To view the numerical solutions

clearly, we do not plot the analytical solution in these figures. With the time step ∆t = 1100

the GAL solution exhibits global oscillations. The CPG solution exhibits the largest oscillationsnear the square among these three methods, but has virtually no oscillations outside. The QPGsolution has the least oscillations around the square and some oscillations behind the square. Asthe time step ∆t is reduced to 1

400 , the QPG solution is improved considerably. The CPG solutionis improved significantly around the square, but some small global oscillations are observed. The

FIG. 6. Analytic, BRKC, and FRKC, ∆x = 1100 ,∆t = 1

10 .

648 WANG, AL LAWATIA, AND TELYAKOVSKIY

FIG. 7(a). GAL, QPG, and CPG, ∆x = 1100 ,∆t = 1

100 .

FIG. 7(b). GAL, QPG, and CPG, ∆x = 1100 ,∆t = 1

400 .

RUNGE KUTTA CHARACTERISTIC METHODS 649

FIG. 7(c). GAL, QPG, and CPG, ∆x = 1100 ,∆t = 1

800 .

GAL solution is also improved, but not as much as the other two solutions. As the time step ∆tis further reduced to 1

800 , there is no obvious improvement observed.The CGM and DGM solutions are presented in Figs. 8(a)–(c) for ∆t = 1

10 ,1

100 , and 1200 ,

respectively. With the time step ∆t = 110 , both the solutions are very diffusive. With the time

step ∆t = 1100 , both the solutions converge to the analytical with small wiggles around the shock

discontinuities. At the time step ∆t = 1200 , no visible improvement is seen. The MUSCL and

ENO solutions are plotted in Figs. 9(a)–(c) for ∆t = 1105 ,

1200 , and 1

300 , respectively. Theyalready generate fairly accurate solutions with the time step ∆t = 1

100 . No obvious improvementis observed as the time step ∆t is further refined to 1

200 and 1300 . The SDM solutions are presented

in Figs. 10(a)–(c) for ∆t = 110 ,

1100 , and 1

200 , respectively. Figures 10(b) and 10(c) con-tain the SDM solutions with C = 1, 0.1, and 0.0001. Figure 10(a) contains only the SDMsolution with C = 1, because the SDM solutions with C = 0.1, 0.0001 have minimum val-ues −3.6591,−0.9713 and maximum values 4.3460, 1.2242, respectively. With the time step∆t = 1

10 and C = 1, the SDM solution is fairly diffusive. With the time step ∆t = 1100 ,

the SDM generates significantly improved solutions. As the time step ∆t is decreased to 1200 , the

solutions are improved slightly. The modified SDM with a ‘‘shock capturing’’ property shouldgenerate better numerical solutions than those shown here. However, one has to solve a nonlinearsystem even though the governing Eq. (2.1) is linear, and to face the choice of one additionalundetermined parameter. Hence, we did not use this scheme.

In summary, in this subsection we conducted extensive numerical experiments to compare theperformance of the BRKC and FRKC schemes with many well studied and widely used methods.In model problem I the analytical solutions are smooth, while in model problem II the solutionshave shock discontinuities. In both examples, the BRKC and FRKC schemes generate accurate

650 WANG, AL LAWATIA, AND TELYAKOVSKIY

FIG. 8(a). CGM and DGM, ∆x = 1100 ,∆t = 1

10 .

FIG. 8(b). CGM and DGM, ∆x = 1100 ,∆t = 1

100 .

RUNGE KUTTA CHARACTERISTIC METHODS 651

FIG. 8(c). CGM and DGM, ∆x = 1100 ,∆t = 1

200 .

FIG. 9(a). MUSCL and ENO, ∆x = 1100 ,∆t = 1

105 .

652 WANG, AL LAWATIA, AND TELYAKOVSKIY

FIG. 9(b). MUSCL and ENO, ∆x = 1100 ,∆t = 1

200 .

FIG. 9(c). MUSCL and ENO, ∆x = 1100 ,∆t = 1

300 .

RUNGE KUTTA CHARACTERISTIC METHODS 653

FIG. 10(a). SDM with C = 1, 0.1, and 0.0001,∆x = 1100 ,∆t = 1

10 .

FIG. 10(b). SDM with C = 1, 0.1, and 0.0001,∆x = 1100 ,∆t = 1

100 .

654 WANG, AL LAWATIA, AND TELYAKOVSKIY

FIG. 10(c). SDM with C = 1, 0.1, and 0.0001,∆x = 1100 ,∆t = 1

200 .

numerical solutions with the least CPU time used. This fully illustrates the strong promise ofthese schemes.

B. Convergence Rates of BRKC and FRKC Schemes

In this subsection we perform numerical experiments to investigate the convergence rates of theBRKC and FRKC schemes. We also compare the convergence rates of these schemes with theELLAM scheme developed previously [35, 47]. The BRKC and FRKC schemes can be viewedas a higher-order time (characteristics) integration scheme improved over the ELLAM schemesdeveloped previously. In the experiments we use the linear regression to fit the convergence ratesand the associated constants in the expression

‖U(x, T )− u(x, T )‖L2(a,b) ≤ Cα(∆t)α + Cβ(∆x)β . (7.5)

We perform two kinds of computations. The first tests the temporal convergence rate of theerror, where we fix a small spatial grid size ∆x and compute the constant Cα and the rate α withrespect to ∆t; the other tests the spatial convergence rate, where we choose a small time step ∆tand calculate the constant Cβ and the rate β with respect to ∆x.

1. Advective Transport

We consider the one-dimensional transport of the Gaussian pulse used in model problem I withthe same data used there. We present the results in Tables II and III, fitting the pairs (Cα, α) and(Cβ , β), respectively.

Table II shows that both the BRKC and the FRKC schemes are second-order accurate intime, while the ELLAM scheme is first-order as expected. Moreover, the absolute errors of the

RUNGE KUTTA CHARACTERISTIC METHODS 655

TABLE II. Convergence rates for the BRKC, FRKC, and ELLAM schemes, test for rate α.

Method ∆t ∆x L2 Error L1 Error

BRKC 1/5 1/1000 1.027084× 10−2 3.710124× 10−3

1/10 1/1000 2.593847× 10−3 9.836570× 10−4

1/15 1/1000 1.222070× 10−3 4.797817× 10−4

1/20 1/1000 7.402055× 10−4 2.927665× 10−4

α = 1.9040 α = 1.8357Cα = 0.2154 Cα = 0.0698

FRKC 1/5 1/1000 1.079289× 10−2 4.371862× 10−3

1/10 1/1000 2.680049× 10−3 1.086343× 10−3

1/15 1/1000 1.195247× 10−3 4.839186× 10−4

1/20 1/1000 6.830193× 10−4 2.705461× 10−4

α = 1.9935 α = 2.0059Cα = 0.2658 Cα = 0.1103

ELLAM 1/5 1/1000 9.148948× 10−2 3.853929× 10−2

1/10 1/1000 4.445315× 10−2 1.891420× 10−2

1/15 1/1000 2.937669× 10−2 1.255274× 10−2

1/20 1/1000 2.193947× 10−2 9.394517× 10−3

α = 1.0305 α = 1.0185Cα = 0.4792 Cα = 0.1981

BRKC and the FRKC schemes are much smaller than the ELLAM scheme. This justifies thedevelopment of the BRKC and FRKC schemes as an improvement of the ELLAM scheme. TableIII shows that all three schemes possess second-order accuracy in space and that the absolute errorsare comparable. These results are basically of theoretical interest, since the major attraction inapplying characteristic methods is that they allow large time steps in simulations with little loss of

TABLE III. Convergence rates for the BRKC, FRKC, and ELLAM schemes, test for rate β.

Method ∆t ∆x L2 Error L1 Error

BRKC 1/500 1/40 2.086197× 10−2 1.200467× 10−2

1/500 1/50 1.208269× 10−2 5.965425× 10−3

1/500 1/60 7.573348× 10−3 3.407976× 10−3

1/500 1/80 3.636773× 10−3 1.469881× 10−3

β = 2.5244 β = 3.0291Cβ = 232.7520 Cβ = 843.6667

FRKC 1/500 1/40 3.952843× 10−2 1.832306× 10−2

1/500 1/50 3.587406× 10−2 1.556620× 10−2

1/500 1/60 2.772448× 10−2 1.173278× 10−2

1/500 1/80 6.934534× 10−3 2.788073× 10−3

β = 2.5108 β = 2.7099Cβ = 551.5961 Cβ = 528.2510

ELLAM 1/500 1/40 1.977526× 10−2 1.173080× 10−2

1/500 1/50 1.167591× 10−2 6.126383× 10−3

1/500 1/60 7.414853× 10−3 3.543713× 10−3

1/500 1/80 3.690229× 10−3 1.527014× 10−3

β = 2.4273 β = 2.9456Cβ = 153.8395 Cβ = 615.4650

656 WANG, AL LAWATIA, AND TELYAKOVSKIY

accuracy, and, hence, significantly enhance the efficiency. Finally, in the numerical experimentsCα is much less than Cβ . This reflects the fact that the solutions of Eq. (2.1) are not smooth inspace but are smooth along the characteristics, and justifies the principle of the BRKC, FRKC,and ELLAM schemes (characteristic analysis). The magnitude of the Cβ is not surprising if onerecalls that the solution u(x, t) is not smooth in space (so it has a large higher-order Sobolevnorms). In fact, one can explicitly evaluate the norm for u(x, t) given in (7.2) with a linearvelocity field V (x, t) and K = 0:

‖u(·, t)‖2L2(−∞,∞) =√πσ

1− Vx(x, t)t,

‖ux(·, t)‖2L2(−∞,∞) =√π(1− Vx(x, t)t)

2σ,

‖uxx(·, t)‖2L2(−∞,∞) =7√π(1− Vx(x, t)t)3

8σ3 . (7.6)

In the current context, ‖u(·, 1)‖H2(−∞,∞) = 189.

2. Advective Transport with Reaction

To demonstrate the viability of the BRKC and FRKC schemes when the reaction and the velocityfield have a rapid change, we consider the transport of a one-dimensional Gaussian pulse as inmodel problem I but with a different velocity field V (x, t) = 1− 0.5x and reaction coefficientK(x, t) = 0.5 ∗ sin(πt). Consequently, the analytical solution first decreases and then increasesup to its initial magnitude at the final time T = 1. We present the results in Tables IV and V,fitting the pairs (Cα, α) and (Cβ , β), respectively.

Even though the velocity field V (x, t) and the reaction coefficient K(x, t) have a fairly rapidchange in this test run, we still come up with similar observations to those in the problem of theprevious subsection. Namely, we obtain second-order convergence rates in space for the BRKC,

TABLE IV. Convergence rates for BRKC, FRKC, and ELLAM schemes, test for rate α.

Method ∆t ∆x L2 Error L1 Error

BRKC 1/5 1/500 7.907880× 10−2 2.584911× 10−2

1/10 1/500 1.741996× 10−2 6.148706× 10−3

1/15 1/500 7.985722× 10−3 2.839060× 10−3

1/20 1/500 4.724466× 10−3 1.675640× 10−3

α = 2.0396 α = 1.9787Cα = 2.0339 Cα = 0.6101

FRKC 1/5 1/500 7.800523× 10−2 2.428938× 10−2

1/10 1/500 1.648010× 10−2 5.473903× 10−3

1/15 1/500 7.206083× 10−3 2.446206× 10−3

1/20 1/500 4.075852× 10−3 1.435481× 10−3

α = 2.1338 α = 2.0484Cα = 2.3550 Cα = 0.6396

ELLAM 1/5 1/500 1.954307× 10−1 6.883471× 10−2

1/10 1/500 8.879074× 10−2 3.233185× 10−2

1/15 1/500 5.811090× 10−2 2.139500× 10−2

1/20 1/500 4.327098× 10−2 1.601149× 10−2

α = 1.0894 α = 1.0531Cα = 0.4792 Cα = 0.3716

RUNGE KUTTA CHARACTERISTIC METHODS 657

TABLE V. Convergence rates for BRKC, FRKC, and ELLAM schemes, test for rate β.

Method ∆t ∆x L2 Error L1 Error

BRKC 1/500 1/70 5.261035× 10−3 2.173461× 10−3

1/500 1/80 3.689213× 10−3 1.504509× 10−3

1/500 1/90 2.853709× 10−3 1.164374× 10−3

1/500 1/100 2.200475× 10−3 9.034285× 10−4

β = 2.4379 β = 2.4378Cβ = 232.7520 Cβ = 67.3447

FRKC 1/500 1/70 1.000949× 10−2 4.092607× 10−3

1/500 1/80 6.633886× 10−3 2.704987× 10−3

1/500 1/90 4.330715× 10−3 1.661018× 10−3

1/500 1/100 4.071392× 10−3 1.577079× 10−3

β = 2.5609 β = 2.8460Cβ = 551.5961 Cβ = 701.2127

ELLAM 1/500 1/70 5.301211× 10−3 2.030079× 10−3

1/500 1/80 3.883309× 10−3 1.413312× 10−3

1/500 1/90 3.136585× 10−3 1.105230× 10−3

1/500 1/100 2.681642× 10−3 9.257961× 10−4

β = 1.9112 β = 2.2025Cβ = 153.8395 Cβ = 22.8038

the FRKC, and the ELLAM schemes. We also obtain a second-order temporal convergence for theBRKC and FRKC schemes and a first-order temporal convergence for the ELLAM scheme. Witha fine time step all three schemes yield comparable results. On the other hand, with a coarse timestep that is the main interest in practice, the BRKC and FRKC schemes generate more accuratenumerical solutions than the ELLAM scheme.

VIII. DISCUSSION AND CONCLUSION

In this article we developed two Runge–Kutta characteristic methods for the solution of theinitial-boundary value problems for first-order linear hyperbolic equations in one space dimen-sion. One is a forward-tracked characteristic scheme (FRKC) while the other is a backtrackedscheme (BRKC). The derived schemes conserve mass and treat the inflow boundary conditionsin a systematic way without requiring any artificial outflow boundary condition. Our extensivenumerical experiments showed that both schemes outperform many other widely used and well-studied methods in terms of accuracy and efficiency. In particular, both the BRKC and the FRKCschemes can be viewed as an improved high-order time integration scheme over the ELLAMschemes developed previously [35, 37, 44–46]. In concluding this article we want to make thefollowing remarks:

1. Both the BRKC and FRKC schemes need only the values of the velocity field at discretetime levels. In practice, Eq. (2.1) is often coupled to a pressure equation, whose numericalsolution defines the velocity field in Eq. (2.1). The coupling is relatively weak in manyapplications, so a sequential time marching algorithm can be fairly efficient [2, 47, 57].Consequently, as the numerical solution to the pressure equation, the velocity field is onlyavailable at discrete time levels. Both the BRKC and FRKC schemes can be applieddirectly in solving the coupled system. Furthermore, these two schemes can be tailored

658 WANG, AL LAWATIA, AND TELYAKOVSKIY

to the properties of the velocity field. Under the assumption that the velocity field isconstant or varies linearly within each time interval, one can use micro time steps withina global time step to track characteristics by either the Euler or Runge–Kutta quadrature.Another way is to utilize the special form of the numerical velocity field (say, given by theRaviart–Thomas space) and to use a semi-analytical technique to solve the characteristicsanalytically on a cell-by-cell basis [38, 58–60].

2. Traditional forward-tracked characteristic methods advance the grids following the char-acteristics, which could make the grids severely distorted even though the initial grids areuniform. This greatly complicates the solution procedures. Many characteristic methods(including most ELLAM schemes) have been developed using a backtracking algorithm toavoid these problems [2, 31–33, 35, 40, 42, 44–46, 49, 50, 53]. The BRKC scheme in thisarticle has also been developed with this merit. However, for multidimensional problemsbacktracked characteristic methods require significant effort, due to the need to define thegeometry at time tn−1, which requires mapping of points along the boundary of the elementand subsequent interpolation and mapping onto the fixed spatial grid at the previous timelevel tn−1. This approach is computationally very intensive, especially when part or all ofthe element being mapped intersects a space-time boundary [50, 55]. The FRKC schemeemploys the forward tracking approach used in [36, 38, 47, 48, 51, 52]. Algorithmically,this is implemented by tracking quadrature points at time tn−1 in evaluating the terms onthe right-hand side of (4.5). Thus, this forward tracking has no effect on the underlyinggrid or the data structure of the discrete system. Hence, it is the most practical approachfor the solution of multidimensional problems.

3. Finally, we want to point out that, in general, the Eulerian methods are relatively easy toformulate and implement. On the other hand, due to the use of the Lagrangian coordinates,characteristic methods, including the ELLAM, BRKC, and FRKC schemes, require moreimplementational work, especially for multidimensional problems.

References

1. M. B. Allen, III, G. A. I. Behie, and J. A. Trangenstein, ‘‘Multi-phase flow in porous media,’’ LectureNotes in Engineering, Springer–Verlag, New York 1988.

2. R. E. Ewing, Ed., The Mathematics of Reservoir Simulation. Frontiers in Applied Mathematics, Vol. 1,SIAM, Philadelphia, 1984.

3. J. W. Barrett and K. W. Morton, ‘‘Approximate symmetrization and Petrov–Galerkin methods fordiffusion–convection problems,’’ Comp. Meth. Appl. Mech. Engrg. 45, 97–122 (1984).

4. M. A. Celia, I. Herrera, E. T. Bouloutas, and J. S. Kindred, ‘‘A new numerical approach for theadvective–diffusive transport equation,’’ Numerical Methods for PDE's 5, 203–226 (1989).

5. I. Christie, D. F. Griffiths, and A. R. Mitchell, ‘‘Finite element methods for second order differentialequations with significant first derivatives,’’ Int. J. Num. Engrg. 10, 1389–1396 (1976).

6. E. T. Bouloutas and M. A. Celia, ‘‘An improved cubic Petrov–Galerkin method for simulation oftransient advection–diffusion processes in rectangularly decomposable domains,’’ Comp. Meth. Appl.Mech. Engrg. 91, 289–308 (1991).

7. R. A. Cox and T. Nishikawa, ‘‘A new total variation diminishing scheme for the solution of advective–dominant solute transport,’’ Water Resour. Res. 27, 2645–2654 (1991).

8. J. J. Westerink and D. Shea, ‘‘Consider higher degree Petrov–Galerkin methods for the solution of thetransient convection-diffusion equation,’’ Int. J. Numer. Meth. Engrg. 28, 1077–1101 (1989).

9. T. J. R. Hughes and A. N. Brooks, ‘‘A multidimensional upwinding scheme with no cross-winddiffusion,’’ Finite Element Meth. Convect. Dominated f lows 34, Hughes, Ed., ASME, New York,1979.

RUNGE KUTTA CHARACTERISTIC METHODS 659

10. T. J. R. Hughes and M. Mallet, ‘‘A new finite element formulation for computational fluid dynamics:III. The general streamline operator for multidimensional advective-diffusive systems,’’ ComputerMeth. Applied Mech. Eng. 58, 305–328 (1986).

11. C. Johnson, A. Szepessy, and P. Hansbo, ‘‘On the convergence of shock-capturing streamline diffusionfinite element methods for hyperbolic conservation laws,’’ Math. Comp. 54, 107–129 (1990).

12. C. Johnson, ‘‘A new approach to algorithm for convection problems which are based on exact transport+ projection,’’ Comput. Methods Appl. Mech. Engrg. 100, 45–62 (1992).

13. R. Falk and G. R. Richter, ‘‘Local error estimates for a finite element method for hyperbolic andconvection-diffusion equations,’’ SIAM J. Numer. Anal. 29, 730–754 (1992).

14. C. Johnson and J. Pitkaranta, ‘‘An analysis of discontinuous Galerkin methods for a scalar hyperbolicequation,’’ Math. Comp. 46, 1–26 (1986).

15. G. R. Richter, ‘‘An optimal-order error estimate for the discontinuous Galerkin method,’’ Math. Comp.50, 75–88 (1988).

16. P. Colella, ‘‘A direct Eulerian MUSCL scheme for gas dynamics,’’ SIAM J. Sci. Stat. Comput. 6,104–117 (1985).

17. B. Einfeldt, ‘‘On Godunov-type methods for gas dynamics,’’ SIAM J. Numer. Anal. 25, 294–318 (1988).

18. B. A. Finlayson, Numerical Methods for Problems with Moving Fronts, Ravenna Park, Seattle, 1992.

19. A. Harten, B. Engquist, S. Osher, and S. Chakravarthy, ‘‘Uniformly high order accurate essentiallynon-oscillatory schemes, III,’’ J. Comput. Phys. 71, 231–241 (1987).

20. R. J. LeVeque, Numerical Methods for Conservation Laws, Birkhaser Verlag, Basel, 1992.

21. B. J. Lucier, ‘‘Error bounds for the methods of Glimm, Godunov, and LeVeque,’’ SIAM J. Numer. Anal.22, 1074–1081 (1985).

22. C. Shu and S. Osher, ‘‘Efficient implementation of essentially non-oscillatory shock capturingschemes,’’ J. Comput. Phys. 77, 439–471 (1988).

23. P. K. Sweby, ‘‘High resolution schemes using flux limiters for hyperbolic conservation laws,’’ SIAMJ. Numer. Anal. 21, 995–1011 (1984).

24. E. Tadmor, ‘‘Numerical viscosity and the entropy condition for conservative difference schemes,’’Math. Comp. 43, 369–381 (1984).

25. B. van Leer, ‘‘On the relation between the upwind-differencing schemes of Godunov, Engquist–Osher,and Roe,’’ SIAM J. Sci. Stat. Comput. 5, 1–20 (1984).

26. J. P. Benque and J. Ronat, ‘‘Quelques difficulties des modeles numeriques en hydraulique,’’ in Com-puting Methods in Applied Sciences and Engineering, Glowinski and Lions, Eds., North–Holland,Amsterdam, 1982, pp. 471–494.

27. G. F. Pinder and H. H. Cooper, ‘‘A numerical technique for calculating the transient position of thesaltwater front,’’ Water Resour. Res. 6, 875–882 (1970).

28. E. Varoglu and W. D. L. Finn, ‘‘Finite elements incorporating characteristics for one-dimensionaldiffusion-convection equation,’’ J. Comp. Phys. 34, 371–389 (1980).

29. S. P. Neuman, ‘‘An Eulerian–Lagrangian numerical scheme for the dispersion-convection equationusing conjugate space-time grids,’’ J. Comput. Phys. 41, 270–294 (1981).

30. O. Pironneau, ‘‘On the transport-diffusion algorithm and its application to the Navier–Stokes equa-tions,’’ Numer. Math. 38, 309–332 (1982).

31. J. Douglas, Jr. and T. F. Russell, ‘‘Numerical methods for convection-dominated diffusion problemsbased on combining the method of characteristics with finite element or finite difference procedures,’’SIAM J. Numer. Anal. 19, 871–885 (1982).

660 WANG, AL LAWATIA, AND TELYAKOVSKIY

32. H. K. Dahle, M. S. Espedal, R. E. Ewing, and O. Sævareid, ‘‘Characteristic adaptive subdomainmethods for reservoir flow problems,’’ Numerical Methods for PDE's, 6, 279–309 (1990).

33. M. S. Espedal and R. E. Ewing, ‘‘Characteristic Petrov–Galerkin sub-domain methods for two-phaseimmiscible flow,’’ Comp. Meth. Appl. Mech. Engrg. 64, 113–135 (1987).

34. K. W. Morton, A. Priestley, and E. Suli, ‘‘Stability of the Lagrangian-Galerkin method with nonexactintegration,’’ RAIRO M2 AN 22, 123–151 (1988).

35. M. A. Celia, T. F. Russell, I. Herrera, and R. E. Ewing, ‘‘An Eulerian–Lagrangian localized adjointmethod for the advection–diffusion equation,’’ Advances in Water Resources 13, 187–206 (1990).

36. H. K. Dahle, R. E. Ewing, and T. F. Russell, ‘‘Eulerian–Lagrangian localized adjoint methods for anonlinear convection-diffusion equation,’’ Comp. Meth. Appl. Mech. Engrg. Vol. 122, Nos. 3–4, 1995,pp. 223–250.

37. R. E. Ewing, ‘‘Operator splitting and Eulerian–Lagrangian localized adjoint methods for multi-phaseflow,’’ in The Mathematics of Finite Elements and Applications VII, Whiteman, Ed., Academic Press,San Diego, 1991, pp. 215–232.

38. R. W. Healy and T. F. Russell, ‘‘A finite-volume Eulerian–Lagrangian localized adjoint method forsolution of the advection-dispersion equation,’’ Water Resour. Res. 29, 2399–2413 (1993).

39. I. Herrera, R. E. Ewing, M. A. Celia, and T. F. Russell, ‘‘Eulerian–Lagrangian localized adjoint methods:the theoretical framework,’’ Numerical Methods for PDE's 9, 431–458 (1993).

40. T. F. Russell, ‘‘Eulerian–Lagrangian localized adjoint methods for advection-dominated problems,’’in Proceedings of the 13th Dundee Conference on Numerical Analysis, Griffiths and Watson, Eds.,Pitmann Research Notes in Mathematics Series, Vol. 228, Longman Scientific & Technical, Harlow,U.K., 1990, pp. 206–228.

41. H. Wang, R. E. Ewing, and T. F. Russell, ‘‘ELLAM for variable-coefficient convection-diffusionproblems arising in groundwater applications,’’ Computational Methods in Water Resources IX. Vol. I:Numerical Methods in Water Resources, Computational Mechanics Publications and Elsevier AppliedScience, London and New York, 1992, pp. 25–31.

42. H. Wang, R. E. Ewing, and T. F. Russell, ‘‘Eulerian–Lagrangian localized adjoint methods forconvection-diffusion equations and their convergence analysis,’’ IMA J. Num. Anal. 15, 405–459(1995).

43. R. E. Ewing and H. Wang, ‘‘Eulerian–Lagrangian localized adjoint methods for linear advection equa-tions,’’ Computational Mechanics '91, Springer International, New York 1991, pp. 245–250.

44. R. E. Ewing and H. Wang, ‘‘Eulerian–Lagrangian localized adjoint methods for linear advection oradvection-reaction equations and their convergence analysis,’’ Computational Mechanics 12, 97–121(1993).

45. R. E. Ewing and H. Wang, ‘‘An Eulerian–Lagrangian localized adjoint method for variable-coefficientadvection-reaction problems,’’ Advances in Hydro-Science and Engineering 1(B), Wang, Ed., Univer-sity of Mississippi Press, 1993, pp. 2010–2015.

46. R. E. Ewing and H. Wang, ‘‘An optimal-order error estimate to Eulerian–Lagrangian localized adjointmethod for variable-coefficient advection-reaction problems,’’ SIAM Numer. Anal. 33, 318–348 (1996).

47. H. Wang, ‘‘Eulerian–Lagrangian localized adjoint methods: analyses, numerical implementations andtheir applications,’’ Ph. D. Thesis, Department of Mathematics, University of Wyoming, 1992.

48. T. F. Russell and R. V. Trujillo, ‘‘Eulerian–Lagrangian localized adjoint methods with variablecoefficients in multiple dimensions,’’ Computational Methods in Surface Hydrology, Gambolati, etal., eds., Springer–Verlag, Berlin, 1990, pp. 357–363.

49. P. J. Binning, ‘‘Modeling unsaturated zone flow and contaminant in the air and water phases,’’ Ph. D.Thesis, Department of Civil Engineering and Operational Research, Princeton University, 1994.

RUNGE KUTTA CHARACTERISTIC METHODS 661

50. P. J. Binning and M. A. Celia, ‘‘A finite volume Eulerian–Lagrangian localized adjoint method forsolution of the contaminant transport equations in two-dimensional multi-phase flow systems,’’ WaterResour. Res. 32, 103–114 (1996).

51. H. Wang, R. C. Sharpley, and S. Man, ‘‘An ELLAM scheme for advection-diffusion equations inmulti-dimensions,’’ Aldama et al., Eds., Computational Methods in Water Resources XI. Vol. II: Com-putational Methods in Surface f low and Transport Problems, Computational Mechanics Publications,Southampton and Boston, 1996, pp. 99–106.

52. H. Wang, H. K. Dahle, R. E. Ewing, M. S. Espedal, R. C. Sharpley, and S. Man, ‘‘An Eulerian–Lagrangian localized adjoint method for advection-dispersion equations in two dimensions and itscomparison to other schemes,’’ to appear.

53. T. Arbogast and M. F. Wheeler, ‘‘A characteristic-mixed finite element method for advection-dominatedtransport problems,’’ SIAM J. Numer. Anal. 32, 404–424 (1995).

54. A. M. Baptista, ‘‘Solution of advection-dominated transport by Eulerian–Lagrangian methods usingthe backwards method of characteristics,’’ Ph. D. Thesis, Massachusetts Institute of Technology, 1987.

55. M. A. Celia, ‘‘Eulerian–Lagrangian localized adjoint methods for contaminant transport simulations,’’in Computational Methods in Water Resources X. Vol. I., Peters et al. Eds., Water Science and TechnologyLibrary, Vol. 12. Kluwer Academic Publishers, Dordrecht, Netherlands, 1994, pp. 207–216.

56. C. N. Dawson, ‘‘Godunov-mixed methods for advective flow problems in one space dimension,’’ SIAMJ. Numer. Anal. 28, 1282–1309 (1991).

57. J. Douglas, Jr., R. E. Ewing, and M. F. Wheeler, ‘‘A time-discretization procedure for a mixed finiteelement approximation of miscible displacement in porous media,’’ R.A.I.R.O. Analyze Numerique 17,249–265 (1983).

58. N. Lu, ‘‘A semianalytical method of path line computation for transient finite-difference groundwaterflow models,’’ Water Resou. Res. 30, 2449–2459 (1994).

59. D. W. Pollock, ‘‘Semianalytical computation of path lines for finite-difference models,’’ Ground Water26, 743–750 (1988).

60. A. L. Schafer–Perini and J. L. Wilson, ‘‘Efficient and accurate front tracking for two-dimensionalgroundwater flow models,’’ Water Resou. Res. 27, 1471–1485 (1991).

61. C. N. Dawson, T. F. Russell, and M. F. Wheeler, ‘‘Some improved error estimates for the modifiedmethod of characteristics,’’ SIAM J. Numer. Anal. 26, 1487–1512 (1989).

62. L. Demkowitz and J. T. Oden, ‘‘An adaptive characteristic Petrov–Galerkin finite element method forconvection-dominated linear and nonlinear parabolic problems in two space variables,’’ Comp. Meth.Appl. Mech. Engrg. 55, 63–87 (1986).

63. R. E. Ewing, T. F. Russell, and M. F. Wheeler, ‘‘Simulation of miscible displacement using mixedmethods and a modified method of characteristics,’’ SPE 12241, 71–81 (1983).